Keeping Programming Fun?
nb caffeine asks: "Having recently graduated, and now working as a developer, I've discovered that after 9 hours of programming at work, I have little interest in coming home and working on my personal programming projects. I've become upset with this fact, because while I was in college, I spent quite a bit of time working on personal projects for my own use. I also noticed this trend during my summer internship, and I have a feeling that it isn't going to get any better. It's not to say that I don't get to work with cool technologies at my job, but they aren't anything that I would pick up in my spare time. So, how do my fellow programming geeks balance work related projects and personal projects? Or, if you've already discovered that after 9 hours of programming, the last thing you want to see is a computer, what hobbies does the Slashdot crowd enjoy after they've ruined their hobby by turning it into a job?"
You might not have to swich careers in order to keep it a hobbie. If you code C all day and you come home and... code C all night, then yeah, it's going to get old. But some people (such as myself) are okay with coding C during the day, and doing crazy stuff in Ruby at home.
Either way, it's better to have non tech hobbies as well.
My advice is to work your tail off right now, focus on your job and move up in the company until you achieve a management position. At that point, your job will mostly be personal interaction, aerial views of ongoing projects, and helping develop specifications. That won't burn you out on programming, so you'll be fresh enough to do personal projects. You'll also stay in the loop on current technologies, but not be forced to slog through code unless you want to.
Well, be prepared to live poor, but happy. I'm currently between 2 jobs, and I'm much more actively working on my own projects that trying to find a new job...
:)
Well, unless I'm very lucky and my business get of and finally gets me money, I will soon have to start working for somebody else than myself, because I'm quite running out of money. However, my plan is to work, hum... 1 year, and pay myself a little 3 months of cool developing... again
As I said in another post a while ago, money not only buys cars and houses, it buys time. Try to save money for that, instead of wasting money on useless crap, getting into debt, and then being *forced* to work because of these debts.
perception is reality
When I first started programming professionally, my personal projects just stopped -- I was new, so I felt like I had to really prove myself... and this led naturally to excessive hours on work projects, and stress burnout. After some experimentation, though, I managed to sort out my work life so I could be happy, and still have some energy left over at the end of the day.
If your professional life goes anything like mine, you'll figure out a way to make sure you get enough sleep at night (that alone will give your productivity during the day a big jump, in fewer hours!), and you'll find you have more freedom to push back and control how you spend your time as you gain experience/respect. And once you're more comfortable at work, your taste for personal projects may pick up again.
Just give yourself a year or two to find a niche at work that you like, then see how you feel. Once you're more comfortable in your domain at work, it'll take less out of you during the day -- so you'll have more energy in the evenings to do what you want (this is where a social life might come in too, btw).
Really, it'll depend a lot on how your work life pans out -- if you can score super projects at work that you love (and that demand all of your creative energy during the day)... do you still really need those personal projects? Most people dream of doing what they love *and* getting paid for it. Personally, I *like* my work, but the needs of the business don't always correspond with what would be most fun for me... so I have extra energy left to use.
Good luck!
There are only 10 types of people: those who understand decimal, those who don't, and, uh, 8 other types I forget.
Your quandry is this: you found programming to be fun. Got an education, and found a job programming.
Whoops - once programming became your job, it also became work, not fun.
Really you have only two choices: don't program for a living, or don't program for a hobby.
The best advice is to find some other interests and leave the programming for work. It will make you a happier person, a more balanced individual, and will expand your circle of friends to a group larger than just programmers. All of those will help you to enjoy your work more which just might make programming fun again.
Three Squirrels
So, how do my fellow programming geeks balance work related projects and personal projects?
I cancelled my cable TV subscription, and now I can never think of anything better to do.
Or you could do what I do - spend time with my family. If you don't have one, maybe you should work on getting one?
And the men who hold high places must be the ones who start
To mold a new reality... closer to the heart
This has come up many times; especially at game/graphics/"fun" companies almost everyone has the "or crud" moment when they realize that it's work now. It even has a somewhat tacky acronym (TGINAG--Thank God I'm Not A Gynecologist). Of all the solutions I've heard, only two have worked consistantly for me.
Either:
or
-- MarkusQ
I am a C#/Windows programmer in my current job, but have taken up Linux as a serious hobby on the side. I would recommend doing something similar. Start programming your side projects in a different language or environment. If you are like me, you enjoy learning new things and this change of pace might just be the ticket.
Great ideas often receive violent opposition from mediocre minds. - Albert Einstein
I was in the same boat: love programming, got a job, program all day, personal projects weren't as fun. I decided it was my computing environment being the same old thing I see at work every day. So I downloaded Mandrake a year ago. I started shell scripting, then Tcl/Tk, read The C Programming Language (it's better with a *nix box), started learning assembly (which I've always wanted to learn to do well), and am currently enjoying learning my new favorite editor - vi.
My advice is to make your computing experience at home as different as possible from work. Don't use the language you'd normally use at work. Learn a new one. It's the thrill of discovery, mastering something new that you enjoy, and accomplishment that drew you to programming in the first place. You need to get all that back in the mix. The experience won't hurt your career either.
Like many posts, I recommend you find a way to alter your career path. Many many jobs out there need someone who understands programming but does not do much of it. One person mentioned management. You could consider this path: learn project management. My ideal job (because I'm such a ADHD scatter-brain) is one that has a lot of variety. My current job is close to it, too.
I work in a lab with people who are building a system. There are scientists, engineers, business people, clients, etc. Each has needs, and I try to be available to interface with many as I design and write the software. Well, the software is a little behind schedule. So? The other people have gotten help from me, so the overall project is doing better than it would. And everyone comes to me when they need to brainstorm a solution to their problem, whether it's related to science, engineering, marketing, logistics. I get a lot of breaks from the code, and have a nice bit of variety in my day.
Pick a direction of interest for you other than computers. Look for (or work to create) a position that allows you to do more of the new interest and less programming. Ultimately, some hot shot will come along with more and up-to-date skills than you have in computers. But competition will be scarce for someone with both of your specialties. Perhaps, down the road, you'll grow tired of this one. So, pick a related third. Specialize and diversify. You may find that this leads you into projects at work that are so stimulating to you that you have a hard time leaving the office! With a little focus and determination, you can get there.
That's my 2 cents.
There's no time to stop for gas, we're already late.
Like the old aphorism says: find a job that you love, and you'll never work a day in your life.
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
I totally understand what you mean. Once you have to start using UML diagrams and have to work out other people's design the work can get.........dull. Especially when all you're doing is coding the Nth update for some dull application that you can't brag to your friends about as cool.
;)
My advice : Become a network administrator. This way you get get to fiddle around with networks at work & still have enough enthousiasm to code something cool at night. Also, if you pick the right job and have got your network running efficiently you can squeeze in a few hours of coding our projects each day at work.
Another option is to become a freelance web developer. Pick the right projects and you too can have a 4 day weekend to code in
Just my $0,02
Try magic mushrooms, that will get you in a creative mood again. See the world from a differnt point of view but keeping focus. You'll find that the worlds best minds see things from a 'mushroom' type point of view.
I've found myself in a similar situation. I had tons of pet projects when I was in school, even when I co-op'd, but as my development jobs got more intense and difficult I didn't have the same urge to go do more of the same at home. What I found works for me and still scratches the somewhat the same itch is to read GOOD computer books, the classics in the field. This excersizes your brain in a slightly different way, and will give you food for thought as you reflect on all the development you've been doing during the day.
I'll leave you with this thought. While some of the greatest hackers spend nearly all of their time hacking, this might not be the path that leads you to be the best hacker you can be. Myself (not the greatest hacker in the world, but I'm no slouch), I find that I program better when I've come back refreshed from other activities, such as playing musical instruments, excersizing, reading a book about a whole new field, etc.
Just some thoughts, don't feel guilty about not programming all the time, give yourself some space from it so you can enjoy it!
I went through the same thing you're going through. What finally did it for me was scheduling a specific time during the week where I work on code at home. I take it easy at work that/those day(s) and make sure my family is prepared. During the other parts of the week when I'm at work and not programming, like when I'm in a meeting, I'll put some thought into what I want to accomplish on my programming day(s). Because I have a family I can't use the same time every week, but I always try to schedule at least a couple of hours.
I find that this works for several reasons.
1. If everyone is prepared to leave me along I have a better chance of getting some work done.
2. I know what I'm going to do before I sit down, so I'm not just tooling around, I'm trying to accomplish something.
3. I'm not doing it every night, so I'm not burnt out.
I'm confident that you'll eventually find something that works for you. If you really desire it you'll find a way.
10: PRINT "Everything old is new again."
20: GOTO 10
They work on personal projects while at work.
There's some truth to this.
Good developers like exploring new technologies and trying new things out. That's how they stay good developers. Smart companies allow for this. Some places, like Google, have formal policies saying that it's ok to spend a certain percentage of your time on personal projects. At others, it's an informal thing.
The alternatives are to a) make your developers miserable, driving away the good, creative ones, or b) make them sneaky. Neither is such a good thing.
First thing you should consider is working less hours. Yes that may not be easy (switching jobs, or quit working overtime - they don't appreciate it anyway), but after 9 hours in front of a computer, going back home to sit again in front of another computer isn't good for your health. You should consider exercise instead, so you would get healthier and that will give you longer concentration capabilities and attention span, then dedicate your projects some hours in the weekend.
You must also sleep well, and quit caffeine completely. From your nick I infer you're into caffeine and that simply shortens your productive hours.
In short: try to keep fit and quit consuming caffeine. 12 hours a day in front of your computer are bad for you. Extra weight and back problems affect your programming performance negatively. Trust me.
OP: Doom III comes out this week.
... I can justify to myself the day to day regular job I attend 40-50 hours each week, loving every minute of it (but I'm still new there so give me some time.)
If that doesn't fix your 'I don't wanna do computer stuff no more' blues, then it is time to start a new path in life, one without computers.
I have found that by occasionally buying myself new things like computers, cars, motorcycles, toys, lap-dances, clothes, healthy food, paying my rent and bills, and the like
I'm not developing real time guidance systems for rockets, nor count-down or proximity devices for nuclear weapons, nor re-entry modules for NASA - I'm doing IT for an insurance company. Hardly exciting, unless I want to look for reasons to get excited. I got a new AIX box last week, a nice quad CPU toy. Got another new AIX box (quad CPU) the week before that. Got a new laptop this week, with VPN access from the house. So basically they gave me two quad CPU AIX boxes to play with at work / from the house.
And if that wasn't enough, they pay me enough to go out and buy a copy of Doom III this week. Makes it all worth while, when I think about it.
Glonoinha the MebiByte Slayer
Teach a kid or two to program. Especially a disadvantaged kid. There are a lot of 10-15 year olds without anything good going on in their lives who need something to grab onto.
I noticed this too and I adapted. I've been writing code for a living and for fun for a while now.
Actually, I still enjoy doing the stuff I get paid for, so I guess I'm ahead in the game.
My thoughts:
Good luck.