Ask HN: What's the best way to make the switch from web-designer to programmer?
What's the best way to make the switch from web-designer to programmer? Obviously it would be to learn to program, but how would you transition and learn to work in a programming environment after being a web-designer?
I know HTML/CSS, Javascript, some PHP, some python, some C. I have very basic programming skills.
I'm wondering how I can leave the web designer/developer field and move in to a programming community. What steps should I take to emerse myself in the programming world. Knowing to program is obvious but what kind of work is out there for an entry level programmer? It seems like all the jobs out there want pros.
9 comments
[ 2.6 ms ] story [ 36.1 ms ] threadIf you're serious about it, I recommend The Art of Computer Programming by Donald Knuth. You should start with volume 1.
If you're already a web-designer I'd suggest learning HTML and CSS which are used to turn your designs into marked up and styled pages. Then a easy transition is learning JavaScript which is a programming language and will nail down the basics of programming and how they apply to what you are already familiar with.
Then you move on to Knuth books when you want to branch out from JavaScript.
With JS or PHP, learn what they're actually for, and then come up with something useful you can create with it. Doing is learning. Reading alone is useless.
I'm wondering how I can leave the web designer/developer field and move in a programming community. What steps should I take to emerse myself in the programming world. Knowing to program is obvious but how do I find work being an entry level programmer? It seems like all the jobs out there want pros.
They want an expert kernel programmer willing to work for $10 an hour? Great! You're an expert and you know the kernel inside out.
Those idea guys where you get 50% and no pay? Perfect, talk to those guys, they will give you all the experience you need.
Once you have a few of those under your belt and some sample code, go show the guys looking for pros.
Alternatively, you can go to the LKML or Google Chrome or Firefox dev sites. Download the source, work on documentation, find some simple bugs to fix, etc. Pretty much any open source project would love contributors, go contribute., worst comes to worst they reject your patch, but keep submitting til the quality is up to par.
Basically, just go do it. Whatever you want to learn, just start doing it. It sounds like you're trying to give yourself a list of reasons why you can't do it.
If your looking to transition from a field where you have years of experience to a field where you have little and expecting to bump your salary all in one go I have to say it's pretty unlikely that's going to happen. However, if you're willing to put in time and effort you will have no problem transitioning over a period of time.
The simple facts are that it takes 10 years of programming to have 10 years of experience programming. I spent 5 years doing PHP / C#. Another 5 years writing C# / Perl.
When I wanted to transition to iOS coding I bought a dev license installed XCode and started coding an app for myself and put it in the app store (it took about 1 to 2 months). I've made $30 bux on that app, but the point was not to retire from the app store but to learn iOS. Whatever you want to do, just start doing it, and see it through to the fruition that people are looking for. (eg. on iOS store all anybody cares about is that you've gotten it into the store).
If you're getting paid anything to learn to code you're 10,000 times further ahead of everyone else who are paying lots of money to learn theory, rather than practice. (eg. How many iOS courses actually result in people putting an app in the store?)
If you're in the decent programmer category who your friends are matters far more than what you can do. (I'm pretty sure this is true at any level in any industry). Plus, who doesn't want more friends?
As others have pointed out, Meetups are a great way to learn, particularly specialized and cutting-edge stuff, not to mention the networking-with-others potential. Same for joining an open source project and contributing as you learn.
Finally, if there's the equivalent of a Hacker Dojo (http://goo.gl/B2ats) local to you, drop in. People love to help and mentor others.
Good luck to you!