Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How do you juggle time spent on learning vs. time building things?
42 points by geeko on Jan 18, 2010 | hide | past | favorite | 42 comments
Hi, I started work at a big coorporation with a three letter acronym about a year ago. The consulting job is quite challenging and fun. Most of all, I get to learn how to deal with people.

However there's one general thing which bugs me about work life: During my uni time, I always found time to study beyond the "required stuff" (i.e. to pass the exam) and focus on the fun part (aka. study for f's sake). Looking back over the last year, I haven't been able to read any scientific book, learn a new programming language, read any fundamental papers nor any published specification of my field. It just feels like there's no time for things which are important but not urgent and instantly useful.

I assume this problem doesn't only apply to people in a big corporation but even more so for people in a startup, where time is scarce and execution is king.

How do HN people organize their time in this regard? How much time do you spend in actively learning fundamentals vs. time spent on building stuff?




I came to a similar conclusion as you have about seven months ago. My conclusion was that 9-to-5 takes far too much time and energy out of my own life; I'm essentially giving all of that time to someone just for the ability to pay bills and enjoy eating out on the weekends.

I had very little time to do any of my personal self education or projects (not all of them are programming related either).

I chose to resign from a great company and a great job to pursue my own interests. I've been pinching pennies everyday for the last seven months living off of what passive income I have. I've been (with more-or-less consistency) rising at 6AM every day, showering then meditating and running a spaced repetition program for thirty minutes. Three days are dedicated to projects and two days dedicated to self education.

When I speak of self education I am not speaking exclusively of programming which seems to be the common interpretation amongst techies - it's a full fledged curriculum involving Mathematics, Logic, Rhetoric, Psychology, Physics, Philosophy, and etc...

I've completed two major projects in that time and actually read more books in the last seven months than I ever did in the three years I spent in the work force. 9-to-5 is quite a sham, unless you happen to have a job working in the R&D department of some corporation where you have the opportunity to explore, learn, and be creative that the other cubicle workers do not share.

After seven months though, I'm a bit weary of pinching pennies - I want to be able to eat out at a nice restaurant when I want to or buy that new computer because I want to; or go sailing for the weekend with my girlfriend and friends. Many things require money. My solution here? No job, but contract work - I now have a two month contract that will make me enough money to live for another seven months. I've also considered going into part time contracting so that I can continue to make money but also have enough time to pursue my polymath interests.

Good luck, leaving the group mind is worth the risk (it really turns out there isn't much risk) - you will feel much more free with your intellectual pursuits, projects, and personal development.


@Ixiaus, are you on twitter? Would love to continue reading how you're doing. Your homepage link works as well of course.

Feel free to drop me an email (vp[at]dinhmail.de) when you're traveling to Germany. Beers on me :-)


I'm also intending of following down this path. There are so much things that I want to learn that I neglected to do when I had copious amounts of free time (hint university). I would also like to know how you're handling this.


The site you would use to market your part-time contracting could later be re-used as a sort of shop for related products, so you turn it into passive income and cash in on your marketing efforts twice.


I could, but only if I felt the products produced value - if anything it would be a great way of selling my own software if I ever did get around to it.

My primary interest is not in a web startup though - my true love is Aerospace; I'm refining my math and other skills/knowledge so that I can minimize the amount of time I might have to spend doing pre-requisites and get the heart of an engineering degree.

I'm still on the fence about school, but I would love to pursue aerospace engineering.


"I assume this problem doesn't only apply to people in a big corporation but even more so for people in a startup, where time is scarce and execution is king."

I found that I stopped learning things when I started working for someone else. Then when I started working on my startup, I started learning things again.

In a startup, getting stuff done is the most important thing. There's no one else to get stuff done, so if you need something and you don't know how to do it, you have to learn how. And unless you're an amazing programmer, it's usually predictably awful.


I was recently laid off from (oddly) a Three-Letter-Corporation after a 3.5 year run of things, but probably not the one you work for. For the last 20 years, I've been passionate about technology, and for more than half of that, I've been publishing technical articles (or at least rants) on my findings. It's now been a little over a week since I was let go and you'd think I'd be up to my elbows in projects and knowledge... but now, I'm having trouble mustering up the drive and passion I used to have. It's like my soul is gone.


Such things take time. Take a break and if you've got the monetary reserves go travel on your own or start learning to play guitar.


I play bass guitar and I love it. I don't have much cash on hand, but the misses and I can probably make it last to the beginning of march. Definitely not enough for me to fly off somewhere. It's also too cold in Kansas City for me to go one one of my bicycle camping adventures. I should probably get out and ride some more, though. Maybe that'll help.


If you like cycling, maybe moving someplace nicer for it would be a good idea and a good change of pace.


I ride to work (and for errands) year round despite the weather. It's not that big of a deal. Riding my bike 40 miles out of town then camping in this stuff, though, would be a tall order with the gear I have. Mostly, the camping part would suck.


I tend to alternate between two extremes. One extreme is "get shit done anyway you know how ASAP!" The other is "learn, explore, take your time, and do things right." I let my own ambitions determine which zone I'm in, and they last from a couple weeks to months. What I learn while I'm in the "take it slow" zone always helps me be more productive in the "do it now" zone. And the do it now zone helps keep me motivated to learn more stuff, and the cycle repeats :)


Are you doing anything to nurture these two extremes? Or do they just come naturally to you?

Your comment reminds me of a discussion I had with my cofounder long time ago (yes I have tried the startup path multiple times). We were discussing how this pattern of wildness, of strong desire to produce things follows an almost relaxing, reflecting period. The discussion arose while we were learning about the coding and refactoring cycle during the extreme programming days in Karlsruhe, Germany where I used to study.


No, not anything in particular. It's mostly natural because if I spend too much time in the "just work hard" extreme I get burned out eventually. I'm also too antsy to spend a lot of time in the learning extreme because I like to see concrete results eventually. Since I'm comfortable with my long-run track record of learning and producing, I never let myself feel guilty for doing either extreme.

The only other factor is time of year. I tend to learn during Christmas because when I was in college I used that time for reading and reflecting between semesters. I still get the urge to just sit and read and explore around that time of year.


The assumption is that learning things increases your execution time. In the very short term this is true. However, if you'd spent all the time learning the things that you wanted to learn, how much more productive would you be?

It's like Jeff Bezos said:

"I always tell people, if we have a good quarter it's because of the work we did three, four, and five years ago. It's not because we did a good job this quarter."

This is a pattern that I've (anecdotally) noticed in successful entrepreneurs and programmers... the ability to focus on the long term at the expense of the short term (but without sacrificing the short-term).

Long story short, if you are in an employment situation where your employer will not let you spend any more time learning new things, you should consider employment elsewhere.


In consulting, it's usually not your employer that pushes you. It's your clients. In a startup, it's either your investors or your customer (hopefully). Either way, there's always forces that want you to execute instead of learn. There's no direct visible gain from you learning. It's like climate change. It's important, but noone in power cares.

I totally agree with your long term statement. And I do also agree with you on the fact that just learning without execution renders your learning useless.

The thing is, how do you juggle between these two extremes? @imp notes below:

"I let my own ambitions determine which zone I'm in, and they last from a couple weeks to months."

The cycle seems to come naturally to him. For others like @Ixiaus it takes more conscious effort (I assume, since he quit his job to be able to learn the things which matter to him).


Part of it is that you need to find ways to justify learning things. It's really easy to learn things that have a direct impact on your job. You may be different, but I know programmers who won't even learn things that directly impact their jobs. And unless it will take a very significant chunk of time, it's usually pretty easy to make this kind of learning transparent to clients and managers. You might be surprised at how much you can learn just by spending the extra couple of hours learning to do something the "right way" rather than just sticking to what you know.

Of course, if that's something you're already doing, kudos. Now, if we're talking about things that don't apply to anything at all, your choices are either going to have to be:

1. Find a way to "sneak in" an hour or two a week if it doesn't interfere with your tasks. 2. Learn it on your own time.

If your management/clients aren't going to allow option 1, you may just have to decide whether you want to learn on your own time or if you want to find a job where you can spend a bit of time learning.


I have been, in effect, "working two full time jobs" -- one for a paycheck, and the other spending a great deal of time resolving my health problems. Getting more efficient and healthier has gradually started providing me some time, energy and mental focus for doing more than just getting through the damn day. For many people in this trap, I think that general approach may be the only way out.


I learn by building stuff.

Being able to show off something you've built is better than showing a certificate for something you studied for.


It sounds easy to do so. Too often however, I find myself reading how-tos and copy-pasting tutorials while building stuff...and forgetting everything after I finished.

I have the feeling that google has significantly changed the way I store things in my head (for the better or worse). Instead of remembering how things are done and why so, I at best save a mental hyperlink to the information or worse, I just rely on google to be available and give me the tutorial/code snippet I need at that very moment (and again forgetting all afterwards).

Being forced to reproduce what you've learned at least once without having google is actually useful (at least for the way my brain works).


Read a book on Zen.

Approach everything with a "beginner's mind". Never blow through a new tutorial cutting and pasting even if you are very experienced in the area. Take your time, learn as a beginner, but leverage your experience to instantly jump from beginner to expert once you have the necessary domain knowledge.


Is there a specific book you found helpful?


I enjoyed http://www.amazon.ca/Zen-Mind-Beginners-Shunryu-Suzuki/dp/08...

A well written combination biography + philosophy book on Zen.


My solution is to make my first project in a language too complicated to be able to search around and find code snippets to incorporate. That's not to say I don't spend a ton of time searching around for tutorials or things like that, it's just that most of the things I find are at best tangentially related to what I'm doing, and just copy/pasting isn't enough to actually help me: I need to adapt what I find.

When I do this, I find I get a better understanding of things faster and also retain it for a lot longer.


Then find out why these snippets work better than you're doing.

Favor books over the web. Books generally have better exposition.


The trick is to not use the How-Tos.

Build something you actually care about. You can refer to the tutorials to get the basic skeleton up, but fleshing out the details is where you'll learn and retain.


Ok, seems like I'm the only one with googlelitis.


I had a similar experience in my first year after college working for BigCo IT. I'm somewhat surprised that you went through this at a tech company, so I guess "big" is an important factor.

Initially I thought that as with my high school programming job, I'd learn a lot at work. I also bought into a certain sense of obligation: "I'm salaried, so work doesn't stop after 8 hours a day!" I came to realize that work wouldn't be completely intellectually fulfilling, and that I value intellectual growth over corporate loyalty. I decided to explicitly dedicate time for intellectual advancement apart from my regular job responsibilities.

So, my first antidote to intellectual stagnation was to apply for tuition reimbursement and enroll as a part-time grad student. I made arrangements to work half days on MWF or take very long lunches TT. Real-life lectures are better than online ones because you can ask questions, and the homeworks and exams are very helpful for giving you an objective reference on your progress.

That didn't help my salary or my future job prospects (as far as I can tell), but I'm very glad I did it. I think it worked out well for my employer during that time, too, because it kept me happy enough stick around at a lowish salary for a couple years when I was performing very well but not feeling very challenged at work.

The second thing is that I maintained my ACM membership and read Queue and CACM. I think that helps me to stay somewhat aware of the progress of the field. I've used the digital library several times to help me with particularly thorny programming problems at work.

Finally, if you're not doing new stuff at work, try to motivate yourself to do something new at home. Maybe you just implement an algorithm you read about from CACM Research Highlights or whatever, or maybe you join a programming club and volunteer to teach a topic. I think it's very important to keep doing and not just reading.


I work at my own startup where I manage my own time and usually, the best time to read/learn is when I get stuck in the process of building something.

Reading hacker news, stack overflow or even researching ideas on how to get through the problem in what I´m building allows me to "merge" learning and building.

It´s hard to build stuff in Erlang and learning Lisp at the same time, for example.

Try to merge both activities in some way and you will be good.


What you're saying is similar to what I am trying to do:

Take up projects which are 60% stuff you know how to do and 40% things you'd like to learn (the numbers are just made up, but you get the point). Even better, get paid for learning (e.g. competition with prizes or learning in a corporate environment)


Exactly, getting paid for learning is the sweet spot.


I also work 9-5 at a big corporation. I take time to learn and keep up with the latest developments in the programming world while I'm on the clock. This usually amounts to an hour or so every morning reading through my RSS reader. I've found that supervisors tend to appreciate that kind of motivation and self improvement. I'm sure there are places that would not appreciate this activity. You may be able to conduct this kind of self-education on the clock anyway with no noticeable decrease in productivity. Some people will see this as unethical, but it's likely that it will ultimately be a net win for your employer because of your increased output as a result of the knowledge. Otherwise, you may want to look for a different job that is more friendly to your proactive view of education.


If you are working in consulting for a big corp which used to be a hardware company, then became a services company and is now trying to be a software company, then you need to get out of consulting. The odds are stacked against you and chances are you'll waste your carrier being pushed around from project to project while being treated like a number.

However, an advantage of a large company is that there are many opportunities to do very different things. Look for job rotation opportunities. Seek out R&D organizations and try to move there. If you are so inclined, look for opportunities in emerging products and try to hop on board to help with marketing, sales, or anything business related.


The dedication to continual education is difficult and something that you have to fight for. Some employers are more understanding than others. If you fail to keep learning, your skills will be obsolete and it will be harder to find work.


Worse if down the road, you find yourself not being able to build the stuff you'd like to build.

Finding a job is hard. Finding your passion is much harder.


I am struggling with that same problem since I started my first job after graduation. For many times I had the feeling to have sacrificed myself and my personal interest for my career (= someoneelse).

Only recently, I realized that this was a good experience nevertheless, but which has to stop now. It was good because it made it clear to me, what my preferences were as well as my strength and weaknesses. In other words who I am. Now I am taking my time for my interests (meditation, art and self-consciousness). This leads me to the following main messages as answer to your questions:

1.) You need to learn what you really want from life. And this, like every learning process, takes time and detours.

If you want to learn technology-related stuff, then you chances are pretty high that you may find an employee that is willing to give you freedom for personal projects, where you can learn and experience on your own (i.e. google's "Innovation Time Off"). If this isn't possible where you are now, then you may consider looking for another job where you can bargain this as part of your contract.

If, instead, we are talking about learning for personal growth or "self education" as Ixiaus wrote, then it becomes really interesting. Here I agree with Ixiaus. One way is to make some sacrifices for what you really want to do: e.g. earning less money but having more time for "self education". If your are ready for that, then look for a part-time job indeed, or build-up a sustainable startup were you don't have to make millions a year and report to a venture capitalist, but instead where earning some $10k is enough.

2.) Admit and be aware of your weaknesses. Several times, I find myself blaming myself for not being able to do this or to do that in the way and speed I wish it to be done. And when I have the time, I sometimes find myself spending that rare time with whatever.

But this is ok, as long as I continue working on my self, gradually improving the conscience use of my time. In particular, consider this: 6 hours of deep sleep are enough. This gives me some extra hours in the early morning and/or late evening for practising whatever I want to (meditation and yoga). Discipline is key, I always have to remember!

3.) The more dependent you are (the more money you want or believe to need or need), the less time you will have for "self education".

The dependencies can come from difference sources: your employees, your venture capitalist, your customers, your spouse, your children, ...., your expectations. Each of those relationships are chains around your neck. One first need to be aware of them, not imperatively avoid them. Then one can gently work towards reducing those dependencies, if one wishes to do so.


I build stuff quicker, and better after taking some time off to learn.


Let's say you absolutely want to stay in 9-5... than I would constantly propose interesting projects inside the company. That way over time I would work on more exciting stuff.


Better yet, prototype interesting projects. Managers love turning down proposals. They are a bit less likely to turn down something that already has working code, even if it's just a proof-of-concept.


Totally agree on this. I'm on it at this very moment :)

And I'm telling you, even then, convincing managers is not easier than convincing any other investor.


"And I'm telling you, even then, convincing managers is not easier than convincing any other investor"

You should know your manager much better than you know your investor. If you know someone, you should be better equipped to share your vision with them. Then, three things can happen a) your vision is rejected because it has a flaw you did not see b) your vision is rejected because it does not match your manager's situation (you should put more effort in getting to know your manager's situation!) or c) your idea is accepted. Of course, (b) is really hard. Then again, most programmers I know don't evaluate their corporate structures and people as thoroughly as they evaluate code.


1) I schedule my time rigorously. There's dedicated time allowances for every single thing I want to do. If my time budget doesn't allow something that's important to me, I cancel or reschedule something else.

2) I take formal classes in my areas of weakness.

3) I schedule my time rigorously.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: