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.

There has been some questions about not programming on your spare time, but they all concern when you're at work. What about when you're studying? Do you also need to learn on your spare time when you're already learning during the daytime (at uni)?

share|improve this question
6  
University is for 3 things: studying, drinking and screwing, having fun and doing a program abroad. –  Job Apr 7 '11 at 14:14
10  
@Job - I think that is 5 things... –  webdad3 Apr 7 '11 at 14:18
13  
@webdad3: @Job was clearly not a math major. –  FrustratedWithFormsDesigner Apr 7 '11 at 14:38
7  
Sounds like, "I want to be a soccer player; do I need to play it after school?" –  Pavel Shved Apr 7 '11 at 18:07
8  
Spare time? I haven't the foggiest idea what your talking about. –  Bob Roberts Apr 7 '11 at 19:31
show 4 more comments

closed as primarily opinion-based by MichaelT, Bart van Ingen Schenau, Martijn Pieters, gnat, GlenH7 Feb 24 at 14:49

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

13 Answers

up vote 19 down vote accepted

If you're taking programming classes and programming regularly, there is no need to force yourself to do it in your off time. If you want to, that's good, but if you force it, you can build up a serious aversion to it, and that can hurt more in the long run.

College is stressful enough. Concentrate on your classes and your job (if you're working as well), and use what tiny fraction of spare time you have left to have fun.

share|improve this answer
6  
If coding in your spare time during college builds up an aversion to it, I'd strongly consider a different major. –  Matt Greer Apr 7 '11 at 22:02
3  
@matt: You know, before viagra, impotence was a serious problem among porn stars. It's because when you force yourself to do anything, it stops being fun. I didn't say you shouldn't program in your free time. I said you shouldn't force yourself to program in your free time. It is possible to be a decent coder and have a life too. –  Satanicpuppy Apr 7 '11 at 22:13
    
Of course. However, I've never met a person who had a successful career as a programmer who didn't enjoy coding on their own. This field simply changes too quickly and really requires us to stay on our toes and keep learning for the length of our careers. We have a difference of opinion, but I would say that if someone doesn't enjoy coding in their spare time (especially at a young age when energy is plentiful) then I'd argue they probably aren't as good of a coder as someone who does enjoy it. And if that is the case, it might simply mean programming is not the ideal career for them. Just IMO –  Matt Greer Apr 7 '11 at 22:23
1  
@matt: I agree that people who love what they do tend to be better at it, but there are plenty of competent programmers out there who have long successful careers, and don't code in their spare time. As with most careers, the majority of programmers, are just doing it because it's something that they can do which puts food on their plate, and money in their pockets. –  Satanicpuppy Apr 8 '11 at 0:32
2  
@Matt and Satanicpuppy: It's interesting. Of all the "rockstar programmers" I've worked with, I'd say it's around a 25/75 split. A sizable minority are full on "into it" and program in their spare time, OSS, etc. The other 75% treat it as "just a job", but are somehow still very good, productive and focused while on the job. In fact, one of the best rockstars I ever met didn't even own a computer at home at the time (moved to new city, never got around to it, etc, for years!)!! It works the other way around though - those who DO program in their spare time are rarely bads. –  Bobby Tables Apr 8 '11 at 5:36
show 1 more comment

I dont think that you NEED to study in your spare time, but i really think that you Should. While at the uni, its the moment to incorporate lots of new stuff so it wuold really help to see whats outside and what people are using in order to create a more panoramic view of reality.

I have seen CS students that never configured an Apache Server or a php.ini file, or does not know when is best to use Ruby or Python. So, the more experience you have, the easier it will be for you to apply the theory into day to day practice.

share|improve this answer
add comment

Some of us literally do not have the time to program in our "spare time". I'm on a full courseload with a 25hr/week per week job and a daily commute of about two hours. I don't party, I don't have a girlfriend or even a friend for that matter with whom I can hang out. I don't watch much tv except The Office and The Vampire Diaries. I haven't had a single full day off in about about oh 5 weeks now. After school, work, homework, commute and some casual web surfing I'm lucky if I get 6 hrs of sleep a night. So all the smartass comments implying a lack of passion, understand that there is a large number of students who have busy schedules and don't goof doing nothing at the end of the school day.

share|improve this answer
    
Wow that sounds pretty tough –  KaiserJohaan Apr 8 '11 at 6:52
3  
+1. I know what it's like. I had that sort of schedule as well back in my student days. –  Bobby Tables Apr 8 '11 at 7:43
add comment

I'm not going to say that it's a bad thing if you don't, because the amount of spare time you have depends on your workload, and I don't know how much programming you do for classes already. However, if you don't have projects you work on when you do have more time (like summer vacation) then I'd wonder if you really liked to program.

share|improve this answer
add comment

There is no question, that the more time you spend refining your skill as a programmer the better you will be out of the gate once you graduate. However, with that being said... You have a lifetime ahead of you, staring at monitors, hunched over your keyboard...

Enjoy your time in school. Once you get out, life begins...

share|improve this answer
    
"There is no question, that the more time you spend refining your skill as a programmer the better you will be out of the gate once you graduate." - there is, however, a point of diminishing returns. –  justkt Apr 8 '11 at 15:31
add comment

I had a hobby development project (voice chat) in my spare time in which I learned a ton, like Visual Studio development, lots of C++/C#, and just general stuff I would not have learned otherwise, and it was the merit that actually got me a job. I do suggest atleast in your last year just to try something out, like a hobby game or application.

Imho learn a good, industry-standard language and IDE like C++ in Visual studio or Java in Eclipse/Netbeans while doing a hobby project. Honestly I have no idea about Apache, php, ruby or python and in my humble opinion it's not core CS knowledge but of course it depends on what you want to do afterwards.

share|improve this answer
add comment

If you are a student and you dont have dozens of ideas that you just cant wait to tinker with in your own spare time, then maybe you're in the wrong major.

share|improve this answer
    
I was a CS and English writing double major who usually had more stories than programming ideas in my head. These days I have a lot more apps I'd like to write than stories floating around in my head. And I wouldn't mind if the situation reversed itself again. Being broadly interested/interesting should not be undervalued. –  justkt Apr 8 '11 at 15:32
add comment

In my experience, programming in your spare time tends to be extremely indicative in one direction, but not as much in the other (both at uni and later at work).

What I mean is this: I've worked with a few very talented "rockstar" programmers over the years, and they ran the gamut from literally only ever touching computers on the job - right through to the ubergeeks who had their own startup going afterhours, and/or spent every waking moment on personal projects and OSS.

This is the thing: those who DO program in their spare time are almost guaranteed to be at least decent programmers. Of course, you have to watch out for script kiddies who are just doing easy stuff over and over. But if you can confirm that they're doing reasonably serious projects in their spare time - it's very likely that they're fairly good, if not "rockstar" category. So in this direction, it's a relatively safe bet.

The other way, it's not so much. For some reason, there are some really epic rockstars out there who still somehow treat programming as just a job. They might put in long hours, and/or keep up with technology by reading, researching, and evaluating the latest technology at lunchtime or after 5pm before going home - but they still basically don't do programming outside the job. I'd say around 25 to 50% of the "rockstars" I've met are like this. And every time it happened it chipped away this myth that programmers have to be "into it 24/7" further and further.

So what does this mean for uni? - I'd say it depends on how harcore your program (as in study program) is and how much programming you're already doing (assignments, etc). Like others have said, you don't want to force yourself to do too much, because it can lead to burnout. But it definitely helps to be "into it" - and to want to experiment and learn the material very well. If you find that your interest in programming only goes as far as learning enough to pass your courses, then that's a bad sign.

share|improve this answer
    
Do those "rockstars" that you know do interesting things outside of work? Read good books, challenge themselves athletically, etc? I bet that contributes way more than you'd think to their ability to program well. Over the years I've come to have a great deal of respect for the well-rounded programmer as a programmer as well as a person. –  justkt Apr 8 '11 at 15:34
    
@justkt: Actually, one was a raging alcoholic, and another was a hardcore "this is just a job" type - who bought a lottery ticket every week and said he'd never work again if he won. The others were as you describe. But this is what I find fascinating - that there ARE these types who are very good at it despite really not seemingly being "into it" that much. It goes against all the usual wisdom about doing what you love and being good at it due to the passion. I guess some people just have very good motivation for treating something as "just as job" but still doing it well. –  Bobby Tables Apr 8 '11 at 23:42
add comment

Of course!

It's hard when you're studying at university because you're already likely trying to juggle your study, a job and a social life but there should never be a time when you say, "I've done enough today." You can never have enough practice.

That's not to say that you should never relax and take some time off, watch some TV or just go to bed early. But there's no reason to say don't bother practicing on your own time.

share|improve this answer
3  
There should never be a time when you say, "I've done enough today"? Really? Never!? That kind of attitude sounds bad for one's mental health. –  Kyralessa Apr 8 '11 at 5:34
add comment

It should require a certain amount of effort to push the keyboard away and read a chapter on history if you plan on doing this for a greater part of the rest of your life. If you're in the middle of a large programming project, the history book may be a nice break.

share|improve this answer
add comment

I would say it depends on where you are in your program. If you didn't start your program already knowing how to code, then in the beginning you get introduced to a lot of new concepts and the classwork is pretty interesting and challenging. At that point, you may not have put the ideas you've learned together into a project idea. And of course, you have other classes. I would say that if you are in your third or fourth year and you don't have some kind of a side project that might be a problem.

share|improve this answer
add comment

Do you need to? No. But there are plenty of benefits if you do. The more practice you get now the better. I feel it's easier to experiment and learn new things when your paycheck doesn't depend on it.

Also, university provides a very diverse group of peers from which to learn and absorb ideas. Spend time in the labs after hours. Work on some group projects just for fun. It's amazing how much faster you can pick things up when you open your mind to the differing methods and ideas of other students. Professors tend to focus on theory. Your peers will be all about pushing it past the theory and testing the boundaries.

share|improve this answer
add comment

It depends on what you want out of life.

If you want to me the next (insert name of programming celebrity here), then that you don't feel compelled to spend every waking hour (and chew away some of your sleeping hours) coding probably isn't a good sign.

If you want to make a good enough living doing software development that you can support a family and enjoy some other aspects of life, then I'm not sure it's such a bad thing.

Now, you have to realize that the people on this board will skew toward those with a passion for programmers, and they want to work with people who share that passion, and thus will be inclined to say everyone should do the same.

share|improve this answer
add comment

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