I was about to write a long post about how I'm unable to allow a part of my free time to my dev projects (and other hobbies) but to avoid the "TL;DR" let's keep things simple: how do you make time for these things in your everyday life? Provide context if you can:
- How many hours do you work a day?
- How many do you sleep? (It does take time...)
- Do you have other unavoidable obligations? (family, parenting...)
- How much free time do you have, daily? (on average)
- How do you stay motivated when you have too little time and too much to do?
Some context on my issue
- I do have free time, possibly more than most people, but I'm not able to use it efficiently and it still seems not enough
- The things I have to do keeps piling up (even things not related to dev projects)
- It makes me feel unproductive, which is discouraging... making me even more unproductive
- I have a tendency to reduce my sleeping hours to have more free time, no need to explain why it's not a good thing
Top comments (22)
I'm not going to answer all that stuff as I think you're overcomplicating things :)
Just try and commit 30 minutes a day to do something
But most importantly turn off all distractions. For me I am such a hopeless procrastinator so i need to turn off slack, twitter etc (i also find music distracting so I turn that off too). Then just commit to the time of work and give yourself a "reward" at the end. If you have more time, repeat.
This basically: en.wikipedia.org/wiki/Pomodoro_Tec...
Other tips I would add would be
this thread is becoming one of the distractions lol
Nice advice about the distractions, I always tend to multi-task a lot but I kind of suck at it (the fact that it took me half an hour to write this reply because I use Messenger on the side is a good example 😂 ).
As for the rest, well, I do know the Pomodoro Technique but I'm not really found of it because the whole "30min then take a small break" feels like I'm just breaking my momentum.
The last time I tried this technique I just ended up expanding the 30 minutes to 45 or 1 hour to finish what I was working on because I don't like being interrupted in the middle of something, thoughts on that ?
It's hard to give concrete advice as context is everything but I'll try and give some examples
The idea of bashing out loads of code constantly over a number of hours is often romanticised in software development but in my view it's a bit overrated. You often feel productive but actually you can end up diving down massive rabbit holes.
Giving yourself time to reflect as you complete tasks is important.
Agile teaches us that working on smaller tasks are more likely to succeed. So does things like TDD. Practicing how to break down big tasks into small tasks that makes sense is an important skill in software development so it's nice to be able to practice it on your own work too.
So try and aim to finish something that you think you can do in half an hour instead. Have your break, think about what you've done and then move on to the next thing.
Yeah I guess breaking down my tasks is something I should do more and better... I'll try that.
I would add to 'Try and have a "backlog" of stuff you want to work on do': Ask yourself what will be beneficial for you in the future. It helped me a lot to clean up some bad habits (less procrastination!) and useless projects I added to my backlog.
I try to do that a lot, but even if I only keep "useful" stuff on my backlog, it still seems to be a lot. Maybe I just don't know how to correctly measure how "useful" something really is. How do you prioritize things ?
Oh my bad.
Hum, the problem is that I have a backlog really really light compared to what you sound to have, so not sure that's gonna help you but anyway:
For example in my list I have:
Write an article about how a NAT gateway works
Write an article about true colors in tmux
Move my website to netlify
Long task and not the easiest one, the language is quite tough to get your head around so not particularly fitting for a "pomodoro" during a late evening.
Short time ish task. It's related to my work so easy to work on that during my working hours,
No one really cares about this so that can wait
It's getting pretty urgent as I changed of employer and my old website is still on their servers...
So knowing the list, I'll do:
Not the "Write an article about true colors in tmux" because I know that I had the issue because of my own terminal / tmux / vim configuration so the value of this article is kinda worthless.
The 3. is quite different as well. It's a learning task so I would do this in the morning before going to work and more regularly than 1 & 2 that will be done by the end of next week during the evenings.
I don't know, I am not sure that's gonna help you ahaha
The best side projects are:
For focusing I use the 2 paradigms:
It is okay not to be as productive as you set high targets to be, but just start and move along slowly and u will get better
I recently wrote a post about this :)
How many hours do you work a day?
7-8, with no commute
How many do you sleep?
7-8, waking up without alarm
Do you have other unavoidable obligations?
Spending time with my partner, and soon we are going to get a dog! :)
How much free time do you have, daily? (on average)
What is considered free time? There are always chores, cooking, eating, etc. If we exclude this, maybe 5 hours. Of which I try to have, spread throughout the day, 2 hours of some sort of physical activity, like a walk at least.
Then there are weekends and they vary, depending on the plans.
How do you stay motivated when you have too little time and too much to do?
I do something that motivates me. I do it every day for at least 30 minutes (usually more). I keep my todo lists super short and only filled with essential things. I allow myself to rest and have fun when I need it: read books, watch youtube, play games, meet with friends.
If you have things piling up, I'd suggest to go through your priorities and decide which things you absolutely must do, which things you want to do now, and which things would be nice to do but they can be done later. Get rid of the first ones as fast as you can, and then focus on the second. The third go to a backlog which you can review periodically.
Statistically, half of todo list items are never done. I argue that they are not done because they are not that important or desired. Therefore, they can be easily scratched. Dropping things from todo lists is one of my favourite things! :D
An additional aspect of Chris James' very good suggestion, is to also make sure that you only commit 30 minutes a day to do something. For me personally, I've noticed that it gets progressively harder to commit something daily, if you tend to commit hours and hours rather than just a little bit every day.
I do get why it's easier to commit for 30min rather than 1+ hour but when I code I can't be efficient and productive if I don't have enough time, and 30min is clearly not enough to me (sometimes I try to work on a side project during my 1 hour lunch break, even then I don't have enough time to actually DO something).
Obviously you can't get a big chunk of work fully done, but that's not necessarily required. The (not so small) trick there, is to split things up sufficiently that you're able to get an atomic amount of work done in 30-45 min (for myself, I used that timeframe), in such a way that you can get a git commit done which improves your project.
Again from personal experience, the results of 5x 30min are of higher quality than e.g. 1x 2.5h, because you have to think about it beforehand, and you can't help but also think about it while not actually being busy coding.
Though, as with most things, YMMV.
Yes, I realize that not splitting things up (well, not enough at least) seems to be my main issue here, I'll try to learn how to be better at that.
Seems we're in a similar situation. I've just stopped worrying about it. That sounds like I'll never get anything done but the way I see it, my job already imposes deadlines and stress on me. Why would I keep doing that to myself. My projects are for learning and fun, so I guess that influences this attitude I'm telling you about.
I may not do stuff for days, have weeks where I do something little at a time every night, or there are fridays when I've got nothing else to do and if I find myself at 1 am in the zone, I keep going. I've done less healthy things at those times.
I appreciate this topic being addressed as this seems to be a topic faced by most developers at one point or another. Personally, I find that the amount of free-time I have seems to have a direct correlation with my level of productivity and the number of things I'd like to work on. So I have found that keeping a list or backlog of things I'd like to work on is helpful when I find myself with some spare time, as others have suggested.
Though, I still often find myself in a similar situation to what you're describing, so I'm interested to see what solution others have to offer.
The shortest answer: MOTIVATION.
The short answer: try to find motivation to do the things that you are not doing but wanna do.
The answer: take 5 minutes of your time, close your eyes, and imagine your life if you did one or more of the things you wanna do: what would change in your life? Would you improve it?
We never do anything if we don't see a reason to do them. Hence motivation is the sum of all reasons to WHY you should do something or not.
First of all, don't reduce sleep. After a while of less than 7.5-8 hrs a night, your brains gets old, literally. It works slower, it learns slower and has problems actually storing stuff. Newer research has also uncovered mild forms of brain damage when you are sleep deprived over time. One reason parents with small kids often tend to be a bit... off, myself included ;)
Second tip to get more time, skip TV, Netflix etc on the days you want to accomplish something. Even try to restrain yourself from social media and random surfing.
Third, make yourself publicly committed to a goal, 100daysofcode.com/ is one popular variant where you publicly announce on Twitter that you are starting, and then you do minimum 1 hrs of code per day, with daily updates on progress on Twitter. (As a side note, they also have similar projects for fitness, health etc., and regular exercise is proven to make you a more focused and productive knowledge worker)
Keep public/shared Trello boards of all your stuff to do. Share the dev stuff with your dev-friends, your non-dev stuff with your friends or family that are stakeholders in those activities. This also helps to grab yourself by the neck as you feel some pressure to make progress on stuff you've said you'll do.
That said, and with the exception on having time (kids remember?), I am struggling with similar issues myself. I have tons of motivation, but as I'm always tired, I have a hard time keeping focus.
I think when you talk about dev/tech projects which are not in a freelancer way done( you don't do them for money), you don't have to be worried about there is to much to do. You set the targets, nobody else.
Currently I am trying to do something everyday, even if it is only reading new blog posts(lets put everything related to research/documentation/inspiration in this) and not really coding. Every time I try to do some coding, I split the task in so small chunks, so it can be done quite fast. I have a reminder set on every day at a specific hour in the evening, when I know I am home. If I miss a day, that's fine. Sometimes it might work if you are doing some projects with someone else. Maybe that person is so motivated that he/she can push you more to your limits.
I feel the same. Agree with some guys writing here their advice.
Just say...the best tool I use to plan daily is Trello. Insert columns - Backlogs, Priority, In Progress, Done. Something like that. It keeps me motivated. Good luck!
Feeling of unproductivness is often caused by feeling of overwhelming or mess in plans, desires and obligations. You can read David Allens "Getting Things Done".
Some comments may only be visible to logged-in visitors. Sign in to view all comments.