How to Become a Web Developer
by Joaquin Lippincott, President & Founder
So you want to become a web developer? Smart move. The web is a growth industry and I don't know of any university curriculum that adequately prepares people for this career. A good web developer can pull in well more than the median annual wage and job benefits and promotion opportunity are great.
So what do you need to know?
- Programming 101
- HTML & CSS
- Read the Manual
- Pick a Content Management Systems (CMS)
- How Long Will It Take?
Programming 101
First things first, web developer is really code for web programmer. As a programmer you've got to know programming fundamentals. Concepts like an if statement and for loops allow you to create programs that do things. In my own personal experience learning programming fundamentals requires consistent exposure and rote learning followed by an epiphany, where you actually discover why you've been writing the things you've been writing down.
While you can certainly start with online tutorials, I think the best place to cut your teeth on these concepts is in a classroom, surrounded by people who are likely just as puzzled as you are. It's likely that these classes will be conducted in C, C++ or Java. Remember: you're getting core concepts, so the language doesn't matter much.
HTML & CSS
HyperText Markup Language & Cascading Style Sheets (aka HTML & CSS) are the most important elements in the display of every webpage you visit. While a basic well-formed webpage can be created in as few as 6 lines...
<!DOCTYPE html> <html> <body> Hello World </body> </html>
...the art of HTML & CSS is a long and storied tradition. Hand-coded HTML/CSS (using a text editor) and getting websites to display consistently across web browsers (FireFox, Safari, etc.) is something akin to alchemy. No matter what you do in this regard, no matter how painful it is, stay away from WYSIWYG editors, like Dreamweaver (sorry Adobe!).
NOTE: in your browser, look for the command that reads "View Source" and start examining the HTML on the websites you visit the most.
Read the Manual
Now that you've got the basics covered, it's time to go back to the beginning and read the PHP Manual. Yes, read the manual. Not only will you get a thorough review of a true web-based language, but you'll also likely pick up some brand new concepts that will broaden your horizons.
Pick a Content Management Systems (CMS)
These days knowing web-fundamentals is not enough. If you want to be marketable, you need to pick a Content Management System. I am a huge advocate of Drupal, with WordPress coming in at a close second. Both of these CMSs are built on PHP, are on fast growth curves and boast strong communities. These communities mean there is plenty of contributed code and consensus around best practices, while the fast growth curves mean jobs.
How Long Will It Take?
Why I Wrote This Article
Those people who are regular readers of the Metal Toad Blog, may be wondering why I wrote this article. Our content, in general, tends to be very technical and targeted at people already in the industry. It's a tale of two worlds. As the rest of the economy has been faltering, the internet economy has been seeing a huge boom, from ecommerce to consultancies. Many of the services and tools traditionally practiced offline have increasingly become web-enabled, while the educational system has been falling short of providing people with a good inroad into what is becoming increasingly a closed loop system. People and companies are rewarded work, based on a track record of successful projects.As an employer and as someone who cares about other people I would like to see a broader field of employees and companies competing with Metal Toad. I'd like more people riding the wave of web technology. If you are a web developer, encourage people to consider it as a career and give them pointers.
If you are transitioning to web development from another career, plan for a 3 year ramp up. Roughly speaking, Year 1, should be devoted to taking classes, stumbling around and being confused. Year 2, should be devoted to building websites for anyone and everyone who asks you for one (and there will be a lot of people) and contributing to opensource projects (like Drupal and WordPress). And Year 3, is when you should be able to expect to either start charging for your work as a freelancer or when you might be able to pickup an intro position (or internship) with a company.
No matter how far you make it in your journey to becoming a web developer, the above steps will open new doors and opportunities. You may find along the way, you prefer the discipline of Project Management or you might become an iPhone App developer or a blogger or an instructor. Pursuit of technology will enrich your life and broaden your horizons and just may put you on a career path in an industry that is destined for even more growth in the coming decades.
Want more awesome content like this? Subscribe to our newsletter!
Comments
classes
Posted by nicl on . [Reply]
Hi Joaquin,
thanks for the article. As someone who has (relatively) recently transitioned into a web career I think your advice has been born out in my experience. The exception is the classes part. I'd love to study, but (decent) opportunities to do so for people who have already studied an undergrad course other than CS seem limited. What are your thoughts on this? Was your advice targeted at younger people yet to go to university? And what kind of study opportunities did you have in mind?
Thanks again,
Nic
ps. just for context, I've looked at courses, but undergrads seem too expensive / long / low-level/ young (in terms of age). Masters, conversely, are either not very good, or impossible to get into without a CS degree/or perhaps some kind of maths/physics degree. (This is in the UK btw.)
Community College
Posted by Joaquin Lippincott on . [Reply]
Hi Nic,
The best investment seems to be centered around community college classes. Here in Portland at Portland Community College (for example) you can do programming classes for around $12 in fees per class. I haven't attended community college here in Oregon so I may be missing some costs, but this seems like an incredibly cost effective way of getting the basics under your belt, in a little more structured setting.
re: Community College
Posted by nicl on . [Reply]
Hi Joaquin,
thanks for the reply. $12 a pop seems great value - I'll have to check for similar courses over here. I guess I was looking for a full on masters/course (with some heavy maths, algorithsm - big 'O' notation, etc.) but individual classes might be a better option (much more affordable and easier to mix with actual (paid) work.
Best,
Nic
MIT OpenCourseWare
Posted by Dylan Tack on . [Reply]
I think $12 is the lab fee; the actual tuition at PCC costs a bit more but is still a good value. On the other end of the spectrum, MIT offers many CS classes online for free at http://ocw.mit.edu/!
Also consider applying for Google's Summer of Code program. You only need to be enrolled at an accredited school on the start date of the current GSoC, and part-time status still qualifies.
Good info
Posted by Erin Seale on . [Reply]
People are always asking about it; I think this is pretty dead on.
Encoraging
Posted by Steve on . [Reply]
Nice post. A lot depends on your ability and background. But starting from ground zero 3 years seems minimum assuming average abilities and no background.
How about Joomla CMS?
Posted by Bruce Lee on . [Reply]
How about Joomla CMS?
Video version
Posted by Robert Haydon on . [Reply]
We filmed a short interview based off this post here: http://youtu.be/HHQvwRDN82Q
How long time to read PHP manual ?
Posted by Adrien on . [Reply]
Great article !
I completely agree with you.
Unfortunately, I did not find your post before but, Fortunately I figure it out by myself.
I'm glad to see that I've almost followed the path you describe. I'm currently reading through all the PHP manual and I will soon embark on the journey to get PHP 5.3 certified.
I was wondering how long time would it take to get through all the manual ? Any idea ?
And for the CMS my heart is going to Drupal 7. ;)
Adrien.
Can I ask you one question ?
Posted by vengngy on . [Reply]
Can I ask you one question ? There are many kinds of language like PHP ASP or Html etc ... that can also build website so why and which different of those languages that make developer choose one of them ? I'm a beginner developer.
Career
Posted by Donny McClain on . [Reply]
I'm 20 with no idea what girection my life is heading. I was wondering if this can be a Career some one without a college degree could get into? I'm not able to afford Classes right now do to family troubles.
Self Education Required
Posted by Joaquin Lippincott on . [Reply]
Hi Donny - I have known a number of people who are very successful in the web development field who either have no college degree or nothing related to the web (music, philosophy, etc). That said, it is a career that requires drive and passion. It's a great career path for someone who finds themselves digging through websites to find out how they work, though if you don't have a computer science/programming degree it can be more challenging, because you need to get those fundamentals on your own.
Bachelors degree
Posted by Matt on . [Reply]
Joaquin. I have a BS in information systems and a BA in journalism but have not used the BS in IS. Can I leverage the journalism degree much in the web development industry?
Thank you,
Matt
agree with Joaquin
Posted by nicl on . [Reply]
Hey Donny, I got into programming pretty late (22 in my case) so it is definitely quite possible! I do have a degree but not in CS or a programming-related course.
But I agree with what Joaquin says: a degree isn't required but you do need to be willing (and motivated) to learn as you go. If you enjoy learning and reading up on stuff then you can quickly catch up and even overtake many people who come from a CS background. Being a good programmer is about constantly learning and this can be fairly academic.
So while you don't need to have a degree you do need to enjoy learning and be willing to invest time in, as Joaquin puts it, getting the fundamentals.
Good luck!
Awww...the talk of learning
Posted by Lauren on . [Reply]
Awww... the talk of learning too late is very discouraging for me (and I'm sure I'm not the only one) as I'm 29 and just learning HTML & CSS. Why does the whole world make me feel like I'm useless after 25? I really hope I'm not too old to be doing this...
You aren't at all – I'm 29 as
Posted by georg on . [Reply]
You aren't at all – I'm 29 as well, and after years of doing graphic design-related stuff (my official career was as a book designer), my current job is encouraging me to do more web-related things. I find it really interesting and thrilling to do simple HTML coding, and my work – a small agency! – will be paying for me to take online courses for web design. But I've been reading up on development, and it seems so much more interesting to me. Long story short, eff the people who make you feel old – do what you want to do! You're never too old to change paths!
Never too old
Posted by Joaquin Lippincott on . [Reply]
You are never too old to try anything new; the only limit is your tolerance for feeling out of your depth.
To try something new, you have to be prepared to get things wrong and have things not make any sense. For people who are experts in other areas, returning to padawan status can be very uncomfortable.
I'm honestly shocked at the
Posted by Steve on . [Reply]
I'm honestly shocked at the number of people thinking they're too old to learn programming. You have to stop believing the nonsense this culture tells people about aging. Ignore it and get to work.
web site idea
Posted by Mackenzi on . [Reply]
I have several ideas for websites that I would like to persue but it's impossible to move forward without a website developer. I'm afraid I would be easily squeezed out of any project because I have no skills to bring to the table, only the idea and the vision. For this reason I'm considering learning website development so I can create the website myself, is this a good reason to get into this field? Is this a popular idea?
Actually no
Posted by Joaquin Lippincott on . [Reply]
If you have an idea for a website,it's a good reason to work with an established professional - even if you are interested in web development as a career long term. If you are serious about your idea, you don't want it to fall victim to bad development practices and die on the vine. Jason Duerr (Dropkick Design) has a great little video on why you should talk to a professional - in the video he's talking about designers needing to work with CPAs, but I think the same can be said about people with a web site idea. Talk to a professional.
What he said...
Posted by Jason Duerr on . [Reply]
I'm not sure that I completely understand what the problem with bringing in a developer is. Most of the work that the majority of developers do is on behalf of a client. If you're worried that someone might think "hey, that's a great idea. I think I'll steal it.", just work with someone you trust and use a contract and NDA.
If you want to get into web development anyway, using personal projects as a platform to learn can be tremendously useful. Keep in mind that it takes time to build up some chops. I've been doing this for around 15 years and I'm certainly not an expert in every aspect of the development process. There are still plenty of situations that I work with other developers and specialists.
Thank you!!
Posted by Kwesi on . [Reply]
First, I want to thank you for this article. I've been trying to get started as a graphic design for a few years now, but have been intimidated by web. Thanks to one of the comments, I'm about to start the MIT OpenCourseWare class in Computer Programming and will follow the suggestions you laid out in the article. I must admit however that I feel a bit daunted by learning this at the tender age of 38, but I am determined to not let that stop me. Thanks again!!!
Awesome!
Posted by Joaquin Lippincott on . [Reply]
I am very happy to hear that you were inspired by this thread. I think this is a great career path and I wish you the best of luck as you move forward. As you progress, it would be great to hear you weigh in from time to time.
AGE?
Posted by Point Blank on . [Reply]
OMG, AGE, people are we that insecure? I started college @ 25, got a A.A.S in Broadcasting Technology & Mngmt, B.A. in Music Industry. Now 13 yrs later @ 43 I went back to college to get a A.A.S in Web Design and will be graduating in the Summer.
However, I didn't know at the time the difference between being a Web Designer vs Web Developer. So just when I thought I was finished, guess what? Back to school, tutorials or whatever the hell else I gotta do to make it work for my goals / vision!! I could give a rat's behind what age I am, I still feel 25 but look 35, that's what my wife tells me. :)
So to all that have doubts of returning to school or advancing themselves through education, whether via online tutorial, classes etc... GO FOR IT!! Does your success have an age descrimination? Don't let fear dictate the rest of your life, cause before you know it, game over! I'd rather go out with a bang, then on my knees saying I should have...
Peace, Love & Development!!
Thanks!!!
Posted by Maziar Kosarifar on . [Reply]
Thanks a lot. I really love your article.
I really don't know how to begin. I know programming. (since when I was 11. and I have learned, QBX, VB6, C++, Python, HTML, PHP, JS ). but I'm new to rails and ruby. I don't know any CSS (I have never used it and I'm truly new to CSS) and although I know html PHP , and JS but I don't have enough experience with them. So what is your suggestion for me ? (I'm 19 yeas old and I'm kind of self-learner)
Thanks again
Read the manual
Posted by Joaquin Lippincott on . [Reply]
If you already have your programming fundamentals, and you are interested in getting into Ruby, read the Ruby documentation. It will give you a sense of whether you like the language or not and no matter what, reading a manual from A to Z will open a few doors in terms of techniques and best practices.
Never too old - agree
Posted by Stan on . [Reply]
I am going to be 34 this year, and, while I studies some BASIC and Pascal at High School ages ago, and some HTML on my own about 8 years ago on one occasion, I am now determined to study and do what it takes to become Web Developer. Community College in my area offers Web Development sequence for 89$ an hour plus lab fees. Besides, I am studying some programming on my own - Python. I was wondering how relevant it is to know LINUX for web developers?
Front-end or Back-end?
Posted by Joaquin Lippincott on . [Reply]
These days, there's a very common specialization within the web development industry: front-end developer (HTML, JS, CSS) or back-end developer (PHP, Database, etc.). If you are planning on being a back-end developer - or a senior developer at some point in your career, I think Linux is an important fundamental. Ultimately, this career path is all about learning new things, so if you are looking for something you can learn and "be done with it" there are probably better career paths.
Age What Age??
Posted by wburki on . [Reply]
Hi, just seemed to stumbled upon this blog; I am a 40 year old trying to break into the web dev free-lance world. I am a CS major but after graduation I worked in the corporate sector and 15 years later my skills include writing emails, conducting meetings and making power point presentations. After getting laid-off I wanted to learn a skill that'll allow me freedom and I decided to jump into the web dev world. So, my question; what would be the ideal learning path for someone like me? I learned some programming back in the day, cobalt, C, & C++ but never applied it. Currently I am learning HTML5 & CSS3 through books and videos (lynda.com & net tuts). I am totally into it and spend close to 12-14 hours a day on learning these skills. So, am I shooting too high? is it realistic to learn these skills in 6-7 months?? I know the learning process never stops but I want to have enough skills to start making decent websites & get some free-lance work. I will appreciate any positive feedback and the "too old" crap is just ridiculous!
1 to 2 years
Posted by Joaquin Lippincott on . [Reply]
If you already have your programming fundamentals, then I'd expect a few years to ramp up. Normally it should be three years but you should be able to hop right into experimenting with open source CMS platforms.
What is the perfect path for me?
Posted by Thompson on . [Reply]
I have a diploma in CS and I understand programming basics. I know HTML & CSS, a bit of JavaScript, Java, C++ and PHP syntax. I am cool with VB.NET & VBA - programming is generally exciting to me. But I do not have any real world experience. I have learnt most of my skills by reading books and watching video tuts. I love Web Development but there seems to be too much to learn. I'm especially confuse about choosing what server-side scripting lang. to learn- Php, python, asp with C#, Ruby etc. I want to enroll for a training abroad, your suggestions will help me choose a good Training Institute based on their course modules or content. I'm 27yrs old from Nigeria.
What to Look for In a College
Posted by Kayla Campbell on . [Reply]
I've had some experience building websites (HTML, CSS and Wordpress) for fun and family. Now I'm thinking of making Web Development a career, but I know I need some training on the fundamentals. What would you look for in a college? Is a Bachelor's Degree worth the expense? I'm in Olympia, WA.
Not job training
Posted by Joaquin Lippincott on . [Reply]
Hi Kayla,
That's a great question, and it really boils down to what you are expecting to get out of the degree. Since it sounds like you are looking for job-specific skills, I would say it's not. There are two reasons for this:
Generally speaking, nothing about a university is something that can be practically applied as at a job, but it can make make things like finding an internship more feasible.
i hope this helps!
Make room for the old guy!
Posted by Gary Hardy on . [Reply]
Greetings all you young people. Sometimes life likes to turn your world up-side-down. I have served in the military for many years until health issues got in the way. I went on to earn a BS degree in Information Systems. Eventually, I worked for a software company as a Support Analyst. However, I left a good paying job because of health issues and my family needed a parent at home. What a role reversal! I became a House Husband -- before it became fashionable. The time is quickly coming when I'll be able to go back to work. I can't do the physical work like I used to do. So, I need a career that I can work at well into my elder years. I have decided to turn my attention to Web Development (an interest of mine for many years). If I can do this at 55 (I think of myself as thirty-something), then you younger folks should have no problem. I appreciate the postings where other people share information on learning new skills. Please keep it up.
Right on
Posted by Joaquin Lippincott on . [Reply]
Right on, Gary! :-)
Add new comment