I'm a coder, a Linux sysadmin, soon to be security certified and explorer of new technologies
961 words
maximecote.me @cotemaxime

Productivity system - part 1

For over a year now I’ve been trying to optimize my productivity and increase my output. Moreover, I also was slowly working on saving more information and outputs from previous works and organize my personal knowledge, links, quotes, etc. During that time I experimented with various ways of doing things and various tools, Toodledo, Notion, Google Keep, Google Task, Gmail to finally stabilize with a longer term workflow that lasted for months.

My previous workflow was based on Todoist, Calendar and Standard Notes.

–The information would go into Todoist inbox as the days go by and I had emails, picture, ideas, tasks to process from all sources.
–From the inbox once or twice a day I would go through and put the information and links in Standard Notes, sorted by categories.
–The task would go in categories in Todoist with a date or in a project if I had one already in there.

In each tool there would be general categories to organize things, for example, housing -> maintenance, work -> coding -> java or personal -> life -> health; each being distinct in their app since they all grew separately. The projects in Todoist would be the main big projects planned for this month/year or from work; for example, learning Japanese, migration of our hosting company, rebuilding my code for the web chat (still going on as this blog is a proof). All those projects would usually generate new tasks on the fly as they progress, get completed, until they were over.

From there the main workflow and process would be
–Daily: check and process things from inbox
–Daily: create new tasks as project advance
–Weekly: look over the coming week
–Weekly: look into what’s left for the month in planned projects/tasks
–Monthly: look into yearly projects planned and create tasks for the month
–Monthly: look into incoming months to see the events coming
–Yearly: look into dreams and life project to see what I could do and turn those into yearly projects

A couple of problems grew from there, after a while I felt like I didn’t have enough visibility into my work. Another problem was the lack of progress or what felt like lack of progress with “mega” project. Those spawned weeks or even months with tasks always keep coming and adding themselves, it was hard to get a feel for the progress made. There are days where I ended up feeling like I accomplished nothing, yet was busy all day with meaningful tasks. Those problems were slowly starting to make me doubt the system and my use of it.

Then I found out, from one of my read later articles, about the P.A.R.A. method from Thiago Forte. The method is based on organizing your files and output based on a hierarchy of your current project. From there I looked into his other ideas and method that made P.A.R.A. work or complimented it. Things clicked into places with the way I was kinda already doing things and the way I was seeing things. The 2 main principles I now integrated into my workflow to change things are JIT (Just in Time) Project Management and P.A.R.A. to keep it all organized and easy to find/access.

In the next post, I’ll go over how I implemented and made that work.

Sometimes less is more

Sometimes with CSS, as with many other things in life, less is more as I've learned with CSS grids today. The idea was simple since I was using grids for the main templating of the app, I would use it also for the actual lines in chat make them all multi-row grids with columns for time, badge, nick and message. The implementation of that idea was fairly simple and worked well until I added a very long message to the test data, then things started to get harder. The result was this:

The line was mostly correct except the text was being restricted to its own column instead of overflowing under or to another row. Then came the research and experimentation to try and get the text to overflow correctly. Finally, after spending a lot of times I just got back to less and got my solution, instead of using grid the easiest and working way was to simply go with

and let the overflow being handled by the browser and then I finally could reach the right result:

So, in the end, less was more and simple was better with CSS as with so many other things.

Next project, vue.js

For my first documented project we're going with a migration from single file JavaScript + Bootstrap to a Vue.js, CSS3, CSS Grid and Typescript project.

Decided to go with that stack since coming from a object oriented and strongly typed background Typescript helps with a lot of JavaScript typing I'm used to, CSS with grids is a lot lighter than a full bootstrap mostly only used for the grid and finally to learn Vue.js to help with component splitting and also it's "reactivity".

I like a lot that each component can have its own style scoped and can hold all of its own logic and data, it makes things a lot simpler when you don't have to take the full project into account for CSS or naming. The other killer feature, in my opinion, is the way you can separate all the logic with the live change of data, simply change the data and it will be reflected on the page.

Now the real challenge comes with actually migrating everything over and not just small proof of concepts.


Ohi there, let's try this blog thing. I'll try to use this place to note, resume and explain when I'm working on project, for myself and it might help others.