Actual title is "4 simple software engineering habits that transformed my productivity"
Using keyboard shortcuts is one of the four. I've been using keyboard shortcuts since I was a child! I can scarcely imagine programming without them. It would be like removing half my fingers or something in terms of detrimental effects.
Could somebody even get to a high level in software engineering skills without them? I'm curious. How would you interact with the terminal? Could you completely avoid it?
I do this. I leave my code in a state where it wont compile. So the next day just hitting build will highlight where i left off - which makes it easy to get started, which makes it easier to move to the next thing.
Productivity should always be to fulfill a terminal goal that ideally should excite and benefit you. If you are being productive just for the sake of it, or to get an employer off your back, you’re doing something wrong. I made this mistake in my early 20s. If you do the above you don’t need any tricks. You just follow your curiosity, excitement, and obsession. If you’re not excited by the end goals then you will nev…
Does "pay mortgage and feed family" qualify as a terminal goal that is exciting and beneficial?
The part about finding a "sticking point" is really important - if you know what's next, you can pick up the context rather easily and get going. If you end the day feeling confused or not sure how to approach the next problem, it's going to be rough coming back to it.
I normally write uncommitted comments of what I need to work on next, e.g. a to-do for the next day
It really depends. This is just one of the tools that might or might not for you. I think it's more important to know your goal and yourself. In this case, you want to increase your productivity. As long as you can reach your goal, it's good enough.
Personally it doesn't work well for me because I need clean separations from work and be in the prolonged work mode would cause burnout. I have no problem to get started in the next morning with my own routine. It's more important for me to put things down and rest everyday.
On a meta level, experiment with what might work for you and iterate on your own work flow - it's exactly like TDD programming but for yourself
On the other hand, leaving the day feeling confused and sleeping on the problem is often times more helpful than pushing through when you're not getting anywhere in the moment. It gives time for those "aha" moments when you're not actively problem solving.
Agreed. Leaving work unfinished, knowing what to do next, is for me the best way to be unable to fall asleep at night. That code just has to get out. I have no problem stopping something when I feel stuck though.
Write it out then, quickly, before you stop. On paper, that is, with a pen/pencil. Write in pseudo-code if it helps get it on paper faster. Stick that to your monitor or under your keyboard, it'll be there the next morning. If you got it right, typing it in will be easy. If, the next day, you see things differently, you will be past the first draft.
It really depends. This is just one of the tools that might or might not for you. I think it's more important to know your goal and yourself. In this case, you want to increase your productivity. As long as you can reach your goal, it's good enough. Personally it doesn't work well for me because I need clean separations from work and be in the prolonged work mode would cause burnout. I have no problem to get started…
Do you have trouble putting work down if it's unfinished?
Productivity should always be to fulfill a terminal goal that ideally should excite and benefit you. If you are being productive just for the sake of it, or to get an employer off your back, you’re doing something wrong. I made this mistake in my early 20s. If you do the above you don’t need any tricks. You just follow your curiosity, excitement, and obsession. If you’re not excited by the end goals then you will nev…
Does "pay mortgage and feed family" qualify as a terminal goal that is exciting and beneficial?
It could if you cut costs and increase your net worth by 20-50% over the next year. Otherwise, no, not very exciting.
The part about finding a "sticking point" is really important - if you know what's next, you can pick up the context rather easily and get going. If you end the day feeling confused or not sure how to approach the next problem, it's going to be rough coming back to it.
I think the best thing in that situation is usually to empty your brain of the seemingly important observations you've made and then sleep on it.