
Ask HN: How do prolific programmers go about their daily lives? - lollipop25
When I read the interwebz, I see other devs pumping out code to open source projects like food-to-code machines. They manage open source projects, be on top of the latest trends and even drive the hype causing these other developers to follow suit. Part of me wants to become like one of these prolific developers. I want to learn a lot of things, do a lot of things.<p>However, in contrast, I find myself out of energy after work that I just drop dead in bed only to wake up the next day. People advise me to do recreational stuff instead of writing more code on the weekends. Even my boss advises against writing code even when deadlines are just right around the corner. Forcing myself a few times, I felt like I was inches away from becoming part of the zombie horde.<p>How do these prolific developers spend their time? How do they work, do open source while staying healthy and awesome, and not become zombies at the same time?
======
donatj
Honestly until I met my wife, I spent the majority of my time at home building
open source projects I knew would save me time later at work, and probably
more time overall because the code will be less specialized to the project.
This was almost every single night after work.

My wife came along and showed me though that there is more to life than
programming and I have to thank her for that. She's a wonderful gruf woman who
changed my life. I still code at night on occasion, but not very often. I've
got better things to do. I really believe I am happier for it.

All that said, are you entirely sure programming is what you want to do the
rest of your life? After a long day of coding I need to be ripped away from
its siren song or I'd simply never stop, and I know a lot of developers that
feel the same. The job takes a lot from you, imho, and it sounds like you may
not enjoy it enough for it to be worth its cost.

~~~
tjholowaychuk
This is how I feel as well. I used to put more time into open-source and just
code in general, now it's more of a means to an end for me, with the odd
"passion" project. Life is short, don't waste it all working, even if it's
what you enjoy, there are many other things to enjoy and experience. I refuse
to work with companies now that put over 8-10 hours a day in, it's just too
much, and fosters a competitive environment.

As far as being known, just do what you enjoy. If you enjoy it you'll produce
quality work, and if you produce quality work then the rest falls into place.
Play your cards right, get yourself into a position at some startup (or your
own startup) doing what you're interested in.

I think it helps to be vocal as well, blog a lot, speak at conferences a lot,
and so on. I'm not really this kind of person but I've seen others who get
really popular from being "thought leaders", possibly more so than for any
code.

~~~
tjholowaychuk
Also, I would say, even if you think coding is fun or enjoy it, ask yourself
if that's what you want to be remembered for, or if you had a year to live
would you be happy with having blown it all away on software. I'd bet the
answer is likely no. It makes me sad when people in the community pass away
and it seems that everyone is just talking about their work, there's so much
more to a person (and life) than that.

~~~
koder2016
Substitute "coding" with "painting" or "philosophy" and suddenly it becomes OK
to be remembered solely for your masterpieces.

~~~
autoreleasepool
Yeah, I disagree with the sentiment of the gp. I wouldn't mind being
remembered for my code at all.

> if you had a year to live would you be happy with having blown it all away
> on software.

yes, honestly.

------
Randgalt
I'm on my computer, essentially, every waking hour. I've been this way since I
was a boy. I have two passions in life: programming and playing the drums. If
I'm not drumming, I'm programming and vice versa. This is what I enjoy and
thus I contribute to many OSS projects, manage an Apache project, consult to
two startups and have a full time job.

I do all these things because it's what I'm driven to do. I would go crazy
without it. There's no shame in not being like me. Do what you enjoy.

~~~
tluyben2
Exactly. Often people try to guilt me into not be behind my computer so much
because 'there is so much more'. I know there is much more but I don't enjoy
that as much as coding. And that has been the case for the past 32 years. From
the moment I wrote my first lines of code behind my father his luggable (1) I
knew this was what I wanted to do and I never got bored of it. Do what you
enjoy indeed.

(1)
[https://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Co...](https://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Cordata_PPC-400-25-200.jpg/390px-
Cordata_PPC-400-25-200.jpg)

------
eibrahim
Thanks for asking this. I have always wondered the same and I look forward to
the answers.

I am not as prolific as many of the people you are probably thinking of but I
am slightly above average. Here are a few things that WORKED FOR ME:

\- Learn & use GTD - life changing. I use omnifocus but you can do it with pen
& paper

\- Automate as much as you can - checkout keyboard maestro and many other
tools

\- Use your calendar efficiently - block time for reading, playing, OSS or
whatever

\- wake up early

\- excercise (i don't do too much but the days I do, I feel great)

\- keyboard shortcuts for everything

\- look for productivity tips for whatever tools you are using.

\- turn off facebook and distracting material

\- monitor your time - I use rescue time

\- outsource as much as you can. I use fancyhands.com to handle things like
calling the phone company, cable company, making appointments and so on. It
saved me tons of hours of BS tasks

\- I have had some success with the pomodora technique as well, give it a
shot.

\- Don't work more than 8 hours a day

\- Work from home as much as you can

\- don't burn out

\- for side projects, blogging, oss or whatever it is you want to do, i find
it better to do 1 or 2 hours a day than try to crank 8 hours on sunday.

\- spend time with friends and family - it's amazing how your productivit
improves when you are refreshed

\- take a power nap or naps

\- sleep well

I am married with infant twins so I try to be as efficient as possible with
the limited time I have infront of the computer. 1 hour of highly focused work
yields more output than 4 hours of distracted, half-ass work.

forgive the self promotion but I think it is relevant. I put together a free
ebook about mac productivity tips - might not be as helpful for techies like
you but you might at least learn a trick or 2 or find an app that you never
heard off - www.bestmactips.com

~~~
SkyMarshal
What's GDT?

~~~
jastix
"Getting Things Done"
[https://en.wikipedia.org/wiki/Getting_Things_Done](https://en.wikipedia.org/wiki/Getting_Things_Done)

------
jondubois
I think that prolific devs are the ones who joined a particular community
early and were able to ride the wave of success as that particular community
grew. They often don't have a day job - Either they have enough savings that
they dont need to work or they struggle on a daily basis to make ends meet...
Or they are fortunate enough that their employer allows them to work on OSS
during office hours.

Being a prolific developer doesn't have as much to do with talent as people
might think - Developers become well known by blogging, speaking at multiple
conferences or just being in the right place at the right time (whilst making
lots of open source contributions).

Also, famous developers tend to own/maintain many (often several hundreds) of
different open source projects instead of focusing their energy on just one
project. There are rare exceptions like Solomon Hykes of Docker - But if you
just made one popular open source project, then that's usually not enough to
be known in the community.

Also, where you live makes a difference. Your odds are much better if you live
in Silicon Valley. I know a developer who created/maintains about 5 projects
each with 2000+ GitHub stars and he is still not well known because he doesn't
benefit from network effects like devs who are living in the US.

------
chill1
Maybe you could make some life-style changes to improve your overall energy
level and/or cure your tiredness. How do you eat? Do you eat right before you
go to bed? Do you wake up with an alarm clock? Do you eat a lot of greasy,
processed foods? Soda? Do you exercise?

Other than that, maybe you could try pulling back the number of hours you're
at work. I've felt myself getting stuck in that cycle of work, eat, sleep in
the past, but I am currently pretty happy with my routine.

If you want to make some life changes, I'd recommend starting small. Pick one
thing to improve this week (don't eat less than 2 hours before going to bed).
Then next week try adding another thing. Before you know it, you'll be doing
these healthier things without even thinking about it.

~~~
bad-joke
Here is my go-to motivator for getting in at least 30 minutes of exercise per
day:

[https://en.wikipedia.org/wiki/Neurobiological_effects_of_phy...](https://en.wikipedia.org/wiki/Neurobiological_effects_of_physical_exercise)

It takes a few months for the flashy effects to kick in but you get a grab bag
of other goodies in the meantime. I know some people who schedule morning time
because they feel energized during the day, and another who does it after work
to unwind.

Me? I just like having an excuse to take hot showers at lunchtime :)

------
sotojuan
Not sure if he comes here, but Sindre Sorhus[1] is quite prolific. The answer,
though, is not satisfactory: He doesn't work. He moved to Thailand and lives
off savings.

Here's the answer you are looking for:
[https://github.com/sindresorhus/ama/issues/167](https://github.com/sindresorhus/ama/issues/167)
and you can search more related questions in the issues.

[1] [https://github.com/sindresorhus](https://github.com/sindresorhus)

~~~
mofle
I'm Sindre. I actually spent more time on open source when I did work. Some
people cook or bicycle as a hobby. I code. I'm totally addicted to making
things on the computer. I used to spend work lunches coding on open source
projects. I lived in a remote place (Lillehammer, Norway) with few people
around and not much happening, so I had a lot of free time after work. It
definitely is tough working up energy to code after doing it all day at work,
but it's different. Open source coding is the most exciting thing I've ever
done. I'm so glad I accidentally got into doing open source. It changed my
life.

~~~
AndyKelley
Hi Sindre. You have me blocked on GitHub and I'm not sure why. As far as I'm
aware I've never interacted with you directly. I tried to submit a bug fix to
one of your projects, but I wasn't allowed to even fork it. I also tried
emailing you but I got no response.

I hope that if I said something offensive in some other context that gave you
cause to block me, you'll give me another chance.

-andrewrk [https://github.com/andrewrk/](https://github.com/andrewrk/)

~~~
mofle
Just looked at your GitHub profile and you're not blocked. Couldn't find any
email from you either. Don't see why I would block you. Can't remember us
interacting before.

~~~
AndyKelley
Well, that's good news. I found the email and forwarded it to you again for
your reference, but it sounds like whatever happened is fixed. Cheers!

------
darthsr
After reading all the comments I have a few questions. How long have you been
programming and what are you running from? Prolific programmers are running
from something. Loneliness, low self-esteem, etc. while programming you don't
think about life. GTD sounds like a miserable existance to me. I've heard/read
countless articles on how to become a better programmer while reading the same
amount of articles explaining burnout. How many CEOs practice being a CEO when
they get home from work. How many mechanics are being a mechanic for fun when
they get home? Programming is a job. Every time I hear learn a new language a
year I puke a little in my mouth. How many of you remember your code 6 months
down the road. Please don't push being a workaholic on the OP. The OP is
normal and all the people trying to convince him/her otherwise are
dillusuonal.

------
nunobrito
Maybe relevant to watch this video for a first hand report of burnout from a
coding rockstar:
[https://www.youtube.com/watch?v=UIDb6VBO9os](https://www.youtube.com/watch?v=UIDb6VBO9os)

From personal experience think that programming pretty much crashes and
destroys your personal life when you really, really want to go above the rest.

    
    
       Everything changes, except you and your computer.
    

That's how I feel anyways. Don't sleep much and pass every waking hour on and
off solving some coding problem.

I remember when there was no computers. Existed more beer, fun and happiness.
But at the same time didn't felt as happy as getting something epic solved.

Maybe one day it looks as it is all worth. Maybe. Enjoy your life OP, you only
get one.

------
andretti1977
I love programming, really and since i was 6 and now i'm 38. I work as a
freelance developer and i love it. My job is passion and then a job. But i
know life is not just this so i won't give my life to computer programming: 8
full hours (really full ;) ) a day are enough to be a talented developer, work
and create something really important in your job.

But life is not job or software development and you shouldn't sacrifice it to
computer programming even if it is a passion and you love doing it.

One day you will leave this world: will you regret you should have worked more
or will you regret you didn't live your life?

------
yitchelle
Sometimes, I get the same urges as well. To contribute to as many open source
project as I can; to learn the a new language and be proficient in it; to
attend conferences to talk to other like minded folks.

However, I came down to the realisation of several things very quickly.

1) Something in my brain causes me to grasp new concepts quite slowly, no
matter how interested I am in the subject. So it takes me longer to work
through things.

2) I also enjoy my family life, so it comes down to searching for time after
the family has gone to sleep or before they wakeup to do some tech stuff. Kids
are still a bit young to do tech stuff together.

3) There are only 24 hours in a day and I wont get any more days after I dead.
I want to allocate some of the hours away from tech and experience humanities.

Sorry, I am sorry that this does not really answer your question, but I think
that this side of the coin is important as well.

My advice is to find a job that you really, really enjoy doing. Once you have
reached there, give it all you have got during the working hours. Your social
life will thank you for it.

------
TheMog
I've been coding since we considered 8 bits a luxury and I'm still at it (I'm
47 now). I do it because I enjoy it and because I'm pretty good at it, plus it
affords a decent lifestyle.

There are a couple of important points I've learned along the way that might
help you:

1) Some people can code productively 24/7, but those are very few and far
between. For starters, they have the skill to concentrate hard for a long time
and work in an environment where that is feasible. It's not feasible if the
next cubicle over has a sales person in it who spends ten hours a day on the
phone. Second, most of them tend to do it in bursts as it's extremely hard and
draining to sustain that level of concentration and effort for hours and days
on end. What you see is often the output from the bursts, but you don't see
that they're then spending a fair amount of time doing different things so
they can recharge their brains.

2) It's easier to do this when you're young and pull a couple of all nighters
a week. This makes you a hero, especially in places that thrive on hero-based
development, but you have to realize you're burning the candle at both ends.
As you age and build up experience, you tend to be more productive simply
because of your experience, but you're also not necessarily that willing and
suited to pulling 16 hour days for extended periods of time.

3) Most importantly, your brain is a muscle. Exercising it improves its
function much like exercising your body improves its function, but it also
needs rest. If you look at the way top athletes train, they push themselves
hard but they also allow for sufficient rest periods. It's the combination of
exercise and rest that leads to the improvement. Take one or the other away
and you either overextend yourself (and injure yourself) or you don't grow as
much.

Yes, I read about programming and play with languages during my off time, but
I try to satisfy my need to build things (which is what initially drew me into
software) by working on physical things instead. Things like
building/restoring a car or motorcycle, gardening, working on the honey-do
list etc. Oddly enough they're not too dissimilar from programming as you
still end up solving problems.

TL;DR - find a way to switch off, be it through meditation or whatever else
works for you. Get enough rest and exercise the other parts of your body.
Learn to recognize the signs of burning out and stop the journey before you
get there.

------
dpflan
I do not have advice on how to manage your time so you can be prolifically
productive, but I do think you've touched upon motivation being one of the
main factors for deciding to continue on projects after work, projects that
may even become your work. But discipline is the hardest yet simplest piece:
you may not always be motivated, by discipline / consistency ensures exposure,
ensures you apply yourself to your project(s) very frequently.

I suggest you read _Coders at Work_ if you haven't already. It is a good
compilation of interviews with living legends of computer science and famous
software projects, and the interviews give insight into how each approaches
his/her life. You might find some of it inspirational and insightful.

[http://www.codersatwork.com/](http://www.codersatwork.com/)

------
wesleyfsmith
If you don't feel compelled to code outside of work, it's probably because you
don't love what you are working on enough. I find that programming itself is
not enough for me to want to work constantly--I have to legitimately love what
I'm building.

~~~
munificent
> it's probably because you don't love what you are working on enough.

This is worded, negatively, but I think the positive formulation is more
meaningful: If you aren't coding outside of work, it's probably because you
love doing something else more.

------
zwischenzug
I've automated large chunks of my life.

I have a JIRA for everything I do with customized workflows, and among many
other projects I built this:

[http://hnalert.tk](http://hnalert.tk)

to mail me when subjects interesting to me come up on HN.

I recommend reading 'Getting Things Done' and working at your own pace. Focus
on the things you're motivated to do, not what you think you should be doing -
that's what a paid job is for!

~~~
thisisnotanexit
I'm getting an internal server error when I try to set up an alert on
[http://hnalert.tk](http://hnalert.tk)

~~~
zwischenzug
Fixed; apologies.

------
AndyKelley
One trick you can do is get a part time job or a consulting job where you can
work fewer than 40 hours per week. Then you'll have time where you're not
exhausted to work on open source stuff.

Exercising is for sure a net gain in time. It makes you feel healthier,
happier about yourself, and helps you think more clearly.

Here's me: [https://github.com/andrewrk](https://github.com/andrewrk)

------
zgardner
We don't spend our time on HN

~~~
honksillet
I found that I can skim HN without getting sucked in hours. Reddit however I
have had to block in /etc/hosts .

~~~
noir_lord
largely the same (also have twitter and facebook blocked in hosts file, if I
want to check them I use my phone, it's less convenient so I end up spending
less time on either).

I think it's because HN only has "one" frontpage which changes relatively
slowly rather than each subreddit I track, some of which change very rapidly.

Also half the stuff on the frontpage isn't relevant or isn't something I'm
interested in so I tend not to disappear down the rabbit hole so much.

------
akamaka
John Carmack brought along a workstation on his honeymoon so that he could
keep coding. I can't find the exact quote, but I recall him saying that he
spent so many years coding every day that he was worried he might suffer from
withdrawl if he had a week away.

I think the lesson here is that some people put their craft at the center of
their life and make it the focus of every single day.

~~~
i336_
From the perspective of someone with the opposite problem to burnout - having
been stuck on where to get started for literally months - this is a really
inspirational anecdote.

I definitely want to hear more about how the marriage situation worked out in
this case though. I expect I could learn a lot.

------
jjuliano
To be a prolific programmer requires time, effort and dedication. You can
still be a prolific programmer if you are married and performing your family
duties but the level of time and effort to do it would be less. It would
require you to work smarter and have a solid-foundation that is built and have
learned the fundamentals, before you are trying to dedicate your time to being
prolific while slicing your time between work, family, personal, etc.

It is best for the single and young because it requires you to immerse
yourself to learning, to solve problems and face difficult failures, it
requires routine, and dedicated energy to learn, requires energy to go to the
workshops/meet-ups/groups and be updated when new learning opportunity
arrives. It requires spontaneity to still be interested in other things in
order for you to refresh your energy.

------
Mz
A) Some of them do that until their body gives out and they suffer burn out.

B) Look to your health. If you want to be more productive without "paying for
it" later, you fundamentally need to increase your ability to produce. Eat
right, exercise, practice good sleep hygiene, etc.

------
philippeback
The importance of habits appears essential in order to maximize the available
coding time. The modular food idea in one of the replies is indeed a great one
that I do apply. Getting enough quality sleep is a must, especially when
learning new things. Add at least an hour. Taking 20 min naps works wonders.
If course, nothing beats putting in the hours, provided the above is taken
care of. One useful thing I do is walk the dog daily without any
music/podcast. Looks like it puts my brain in a kind of freewheel that helps
me a lot in figuring out solutions. I do that when it is dark outside, stars,
moon, night noises seem to have an impact. An additional noon walk doesn't
hurt. Being part of an open source ([http://pharo.org](http://pharo.org))
community makes me aim for higher than I would on my own. These people are
very inspiring and deliver awesome things. So I want do to it too as I see
that it is feasible. I am married and having a partner who understands the
peculiarities of the line of work helps. We have a huge wall calendar to
schedule it all.

------
jason_slack
I find that for me, coding and writing docs during the work day is enough. I
used to spend my evenings coding on my ideas also, but now, married, my wife
is not technical so we do a lot of other things. I actually really enjoy a lot
of the things we do. I am less stressed and I can give a solid days work the
next day.

On weekends, I experiment with making music, reading, playing in the snow,
etc.

------
drostie
Three tips come to mind:

1\. Get enough sleep. You've only written three paragraphs and there are
already a lot of suggestions that you need more ("I don't feel as productive
as others", "I just drop dead in bed" when well-rested people usually take
15-30 to fall asleep, "I felt like I was inches away from becoming part of the
zombie horde.")

Coding pretty intensively uses your short-term memory: "I need to take this
query which I prepared above and execute it on those variables, wait, this key
from the database gets renamed to that on the front-end, okay, test it...
dictionary does not have the right key on line 189? What's over there? Oh, I
forgot to do this critical preprocessing step, jump back to my code, 3 lines
before, add the function call, test again -- what the crap is that, switch
back to editor, aha, missed a semicolon here...". Each of those actions
requires you to not be overwhelmed by the number of details you have to
remember, whether it's where your tool for testing is located, or what the
preprocessing function was called, or what have you.

When you're even a little sleep-deprived, your short-term memory decreases
dramatically -- if most normal humans can only juggle 7 balls (7 big details
or crucial tasks occupying their memory), missing a few hours of sleep brings
it down to 4 or 3. So of course everything looks two times bigger.

Sleep deprivation also causes you to lean on substances like sugar and
caffeine, and those substances tend to cause procrastination "I'll browse
Reddit until this kicks in" \-- until their effects wear off and leave you
right back where you started with a bunch of nothing done. You can mitigate
this somewhat by giving yourself a short task to do before the caffeine kicks
in, even if it's an asinine one like "write down what you want to do today."
Speaking of the which...

2\. Write shit down, set alarms, otherwise use harebrained tools.

Those 7 balls that you can juggle need to incorporate just about everything
that is happening in both personal and professional life -- not just code. If
those things are in the mix, then you're not as effective. Just like how you
should set an alarm for "time to start brushing my teeth and getting ready to
go to bed" so that you can get enough sleep, you can set an alarm for "at this
time I need to stop everything and call the couch company to send someone to
fix the couch at home." Write those things down somewhere, set an alarm to
look at that list and do the things on it.

3\. Kill context-switches. Either lie your ass off about them or say "no" up
front or be honest -- whatever is necessary to kill them.

Take your hands, open them in front of you, spread out your fingers,
interleave them. That is 8 work tasks spread out over some distance L. Maybe
it's 8 hours of the day working on two projects, Right and Left. One gets
concluded at 4pm, the other at 5pm. We'll assume you got started at 8am and
ignore an hour for lunch.

Now separate your hands and collapse your fingers. Put your right hand above
your left hand, touching. Still 8 fingers in a row, but now you notice that
your Left project is released at 12pm before lunch, while your Right project
is still released at 5pm after. You just improved your average time-to-
completion by 2 hours with no stress, and no improvement in efficiency: you
just rushed one project out, then focused on the other.

Now interleave your fingers again and remember how each of those switches
between projects feels. You've got 7 in there, yes? Each one doesn't feel
good, does it? Because you've got to stop juggling one set of balls, put it
all down, and slowly start juggling this other set of balls. Each context
switch eats up mental energy. (It also eats up time -- if you need 15 minutes
to really get up to speed, then the 7 context switches eat up almost 2 extra
hours of your day. So there _is_ an undisclosed efficiency gain here.)

If management forces on you to be working on the two things at once with
constant status updates, strongly consider lying your butt off. (Of course,
first show your boss the trick with the fingers, it usually convinces them.)
Because if management is asking you to do worse work slower so that they can
be polite to two of their separate clients, then management has failed.
They're supposed to buffer you from all of that crap.

If you can't lie and you can't convince your management, try a firm "no." Just
say "I'm on this high-stakes Project Left right now, I can't take on Project
Right right now, maybe when Project Left is over I can. Fortunately I think
Project Left will be done by end-of-day today, possibly before, so if you
really can't find someone else, I may be able to start Project Right today." A
"no" always goes better with a nice timetable that suggests that the task will
still get accomplished in a timely manner.

Similarly, ignore those "trends" when you're coding. Trends are another
project with another context switch. Don't interleave it with anything else.

------
kolodny
As others have been saying, the "prolific programmers" have a passion to
program that doesn't get satisfied by coding from just 9 to 5. Personally I
tend to have waves of intense programming around the clock followed by a
cooling down period with either part of the cycle lasting days to weeks. Sorry
for the shameless self plug but you should start small and try making a "One
Hour Side Project" [http://kolodny.github.io/blog/blog/2015/03/03/the-one-
hour-s...](http://kolodny.github.io/blog/blog/2015/03/03/the-one-hour-side-
project/)

~~~
tonto
Your comment glosses over the fact that many open source developers do this
for a living. It's not some side project that they just do after work. Sure,
they could put extra hours in, but open source is not just a hobby

~~~
kolodny
I wouldn't know about that. It sounds like the OP is specifically asking about
people who contribute to OSS as "just a hobby"

------
ccleve
When it comes to making headway on important projects, there is no substitute
for putting in the hours. It requires extended periods of uninterrupted time.
Unfortunately, you only have a few hours a day available to you in which your
mind is firing on all cylinders.

The answer, then, is to find a way to work on these projects in the course of
your job. That's what I do, and my best guess is that that's what the people
you've heard of do as well.

Find some project that your employer really, really needs, get permission to
open source it, and spend your most productive waking hours on it.

------
ktaylor
I'm a relatively successful coder and entrepreneur. My one tip for you that
can change your productivity by an order of magnitude:

Stop wasting your time reading/posting/liking on sites like HN, Facebook, etc.

~~~
askafriend
How do you keep up with what's going on in the community?

------
shamod
You either have to grind it or love it. If you love it, then you don't feel
the grind.

Exercise helps like everyone is saying.

Recently I read a book called Pragmatic Thinking and Learning. Great tips in
there.

------
jononor
\- Work only on what you want, when you want to (as a rule, exceptions have to
be made) \- No TV, no (general) news \- No kids, no girlfriend \- Socialize
mostly around projects (not neccesarily dayjob related) There are some
tradeoffs to the above, one could say. Staying healthy is also a challenge.

But don't worry about 'being one of those people', just try to do what
like/love. And if you don't know what that is yet, find out!

~~~
jononor
But there are some simple tricks without much drawbacks. One of them is to
write/publicize everything you do. Don't consider something done until you've
released and documented it.

------
antonio-R
I would recommend reading the 4-hour workweek book from tim ferris.
[http://www.amazon.com/The-4-Hour-Workweek-Escape-
Anywhere/dp...](http://www.amazon.com/The-4-Hour-Workweek-Escape-
Anywhere/dp/0307465357)

Great advice for time management, works well for IT positions.

------
patatino
I measure my coding time in hours I'm truly concentrated and that's about four
hours a day. My main focus is to use these hours as effective as possible and
fill the rest with easy tasks. This way my mind stays fresh every day.

And exercise, best way to clear your head!

------
Jokeris
I am at university and in most part of the year I can't spend how much time I
would like to programming. My mind is too tired after several hours of
studying, especially during final sessions. Am I the only one?

------
zanewill9
"like food-to-code machines"

Great phrase - I'll be using that !

~~~
rckrd
A related quote you might also enjoy: "A mathematician is a machine for
turning coffee into theorems" \- Paul Erdos

