Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Possible Duplicate:
I don't program in my spare time. Does that make me a bad developer?

A lot of blogs and advice on the web seem to suggest that in order to become a great developer, doing just your day job is not enough. For example, you should contribute to open source projects in your spare time, write smartphone apps, etc. In fact a lot of this advice seems to suggest that if you don't love programming enough to do it all day long then you're probably in the wrong career.

That doesn't ring true with me. I enjoy my work, but when I come home from the office I'm not in the mood to jump straight back onto the computer and start coding away until bedtime. I only have a certain number of hours free time each day, and I'd rather spend them on other hobbies, seeing friends or going outside than in front of the computer.

I do get a kick out of programming, and do hack around outside of work occasionally. I'm committed to my personal development and spend time reading tech blogs and books as a way to keep learning and becoming better. But that doesn't extend so far as to my wanting to use all my spare time for coding.

Does this mean I'm not a 'true' software developer at heart? Is it possible to become a good software developer without doing extra outside your job? I'd be very interested to hear what you think.

share|improve this question

marked as duplicate by Tamás Szelei, Doc Brown, Thomas Owens Mar 18 '12 at 14:28

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

    
Yeah 8-10h daily on the job then your hobby should be of course programming :) You want to become some fat & ugly, no-life then of course you should devote all spare time & weekends to coding :D –  Slawek Mar 18 '12 at 22:03

3 Answers 3

In my day job I don't necessarily get exposure to all the technologies I would like to know. Doing projects in my own time is a way of getting that knowledge and experience. For instance, I've never worked on a project that used Hibernate, but I recognise that this is a very widely used ORM framework, so I put some effort into learning it in my own time. I also got myself a Mac and dabbled in iPhone programming. Although I admit some of the motivation behind that was to generate extra money. I do find it very interesting though.

On the other side of the fence, if I'm interviewing someone for a developer position in my company, I ask if the candidate has done any projects in their spare time. If they say yes, then I take that as a very good sign that the person has some degree of enthusiasm and passion for the work. It also shows initiative, and a willingness to learn. These are all good attributes to bring to a development role.

share|improve this answer

There are plenty of developers that view programming as a 9-to-5 job, and that is perfectly fine. However, the people who put more time and effort into it, will usually become better. This is like any other task, the more you practice the better you become.

I think it is important that if you want to do this on your spare time, it should be enjoyable. Do not look at it as work, and do not force yourself to do it because someone else thinks a "true" developer should be involved in open source.

Personally, I really enjoy working on various open source projects. In these cases I can choose what to implement, how I want to implement it and so on.

share|improve this answer

Someone who works on side-projects is not guaranteed to be a good programmer; they may be teaching themselves bad habits. Someone who doesn't work on side-projects is not guaranteed to be a bad programmer; indeed, in some, it helps them to focus harder while working.

But, there is certainly a correlation between time spent programming and skill level, even if it's not a straight line or a simple curve.

It makes sense. To be a master of anything, you must be willing to dedicate a significant time to learning the craft, especially a relatively new craft where the goalposts shift slightly over time.

But here's a thought: I don't think you have to code outside of work hours to learn. While I would never suggest that reading the theory of programming is a substitute for practising, I would suggest that if you're spending time reading blogs, etc., or just looking at new technologies, then applying what you learn at work then you can become a very good developer without having side-projects per se.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.