From System Administrator to Developer?
ma11achy asks: "Recently, I have been looking at making a career change from Unix Systems Administrator to programming/software development. I have a CS degree recently obtained through distance education and have been working in the field of Unix Systems Admin for roughly seven years now (in my early thirties). I have reasonable knowledge of C, good knowledge of Perl and excellent knowledge of shell scripting. Is, is there anyone out there that has made the change and could they provide any insights into what it was like for them? Am I just barking up the wrong source tree?"
I wonder how common it is that programmers come to hate programming or even computers in general.
I know many people including myself who has burnt out on computers. We are looking for other work in other fields but in the meantime computers pay the bills. One guy I knew went off to medical school, another teaches day care. They are both much happier now than at the point they quit from computer programming.
I wonder what the burnout rate is among programmers. What is the average industry lifespan?
I have been pwned because my
(Don't go start a new project. That's the last thing the world needs, another abortive project run by a newbie.)
If programming turns out to be not your thing, you'll find out soon enough, and before you've got yourself mired in. One thing: as a Perl expert, you've most likely picked up habits that would make you an awful programmer. You will have to work hard to unlearn those.
When you go looking for professional programming work, you can point to your substantial contributions, and they will speak for you. Choose your project wisely.
I followed the same route, here's a brief rundown of what happened.
I found a project that interested me (KDE) and started trying to write my own program for it. I tried to made a graphical version of videogen, which is an XFree86 modeline generator. My version made it a little easier to play with combinations of the various parameters, and therefore scratched my personal itch. IIRC I announced it on freshmeat and got a few emails from people who wanted assistance or to request features.
Now that I had a little experience with writing for KDE, I made my own version of the classic game 'sokoban.' KDE and Qt made this really easy (even for me as a beginner) and I had it usable in a few days, though I hadn't noticed that there was already a sokoban clone in the pipeline for inclusion into KDE, so that little app died off.
At this point, I decided that kmail wasn't as good as I would like, and decided to try and help out, but I was about to lose my internet connection for some months and didn't feel that my skills were good enough to be actually putting code into live KDE apps, so I started my own mail client from scratch.
By the time I got my internet connection back, I had more confidence and started coming up with patches for KDE. From this point, I got more involved with the project and the community. I have my own application in the network module now, and though I don't have time to work on KDE actively right now, the skills I learned have helped me get my current job (where I get to use Qt, which is great for me.)
I would definitely recommend the route of scratching your itches and getting involved with a large project, assuming you are comfortable working in such an environment.
Rik
One of the concerns I hit at work is the gulf between the sysadmins and the programmers. Too few sysadmins are good at programming and too few programmers know anything about keeping the system maintainable. We just went through a bunch of sysadmin resumes and those that got attention included programming. If you are a sysadmin who can program it looks great in the interview and can build your niche as you transition. If you are considering this as a transition path, go for it! You'll put yourself ahead of others in the job search. And as you add professional experience to your degree you can move around in the career and get paid to improve yoursel