Please note that you may have been redirected (you might like to make a note of the URL in the address bar of your browser and update accordingly) This is a permanent archvie but is no longer actively maintained. Please visit http://joshuaink.com for the latest updates.

Web development advice

Thursday June 8, 2006

I got an email asking for my advice on becoming a web developer. I asked the sender if he minded me opening it up here:

I was wondering if you could give me any advice on persuing a web development career. I am attending college for Computer Information Systems, but there are very few internet-specific classes. I’m also reading my way through books about php, mySql, javascript, etc…

My advice would be understand your strengths and your weaknesses and learn to play to your strengths and to deal with you weaknesses (which in my case means finding the right person to do any job I can’t do well). The only other thing I thought of was don’t be a Jack of all trades, become a specialist and position yourself as an expert.

What advice would you give to a budding web developer?

(Comments are on… again!)

  1. Kalle

    792 days ago

    You don’t really have to be a specialist in a certain skill of webdevelopment if you just make sure to be average in the most parts. Sorry for not being able to use the language correctly, but what I’m trying to say is that being quite good with the most part of web development can sometimes be better than being a specialist in a certain area and knowing nothing (or very little) about the rest.

    As for myself, I try to understand as many parts I can in webdevelopment. Javascript for instance, I don’t have a clue how to write a kickass AJAX-application but I know the syntax and how most functions behave. It has saved my ass many times.

    Having a slight idea how things work and trying to fix them yourself instead of calling an expert who charges 17€ /hour will help you in the long run.

    Well, that’s my cup of mint tea :)

  2. Chris

    792 days ago

    I like Jeremy Keith’s phrase: “you can fake it in CSS and JavaScript, but you can’t fake it in HTML”. For me the most important thing is to firstly get a really good grip on the building blocks of every web page – HTML.

    After that, erm…

  3. John

    792 days ago

    I haven’t been in the industry for too long, but what I’ve learned is that it would be more worth your time to specialize in one or two trades, but have an understanding of others. I’ve tried dipping my feet into PHP, and I failed miserably because I feel there is a huge crossover between HTML & CSS over to the programming realm. But I did gain an understanding of how it works and that’s helped me learn content management systems and such.

    So keep a focus I’d say but don’t be naive to how other things work.

  4. Steve Tucker

    792 days ago

    A huge amount of determination is needed to make it in the area, simply because there is so much competition from others like yourself trying to make it into the same industry. You should also try your very best to have confidence in your own abilities. A big aspect of this trade is carving out a style for yourself, and knowing that you have what it takes to produce something above and beyond will go a long way towards helping you achieving that.

  5. Matthew Pennell

    792 days ago

    The best way to become a web developer is to tell everyone you know that you’re a web developer. You can read all the books you like, but until you put it into practice building actual, live sites for actual, live clients it’s not worth shit.

    Offer to build a website for your family members, their friends, your friends, your church, your school, local clubs – anything to build up a portfolio (don’t do it for free, though, as that sets a dangerous precedent).

    You learn best by learning on the job, IMO.

  6. Tom

    792 days ago

    Don’t study web at college or university, do it in your own time. I’ve found that the pace of these sort of courses will bore anyone to death. It’s up to you of course, I wish I’d picked something like fine art and english rarther than boring courses.

    You mention that you’ve been reading some books, ace. Get a newsreader and start reading blogs, pick some topics that you know and topics that you don’t. Joe Clark, Zeldman and ALA are all required reading.

    I still prefer to be someone that knows a little bit about different things rarther than a specialist, but it’s up to you.

    If you have an idea, built it, that’s where the real learning comes from.

  7. Jarkko Laine

    792 days ago

    I disagree about the notion that you shouldn’t be a Jack of all trades. In web development if anything you need to know about many diverse topics, ranging from graphic design and usability to programming and server administration. You might (and probably should) become and expert in some of these, but you need to have a fairly good grasp of all.

    My advice would be: steal from the best (rephrasing Ben Hammersley’s presentation @ Reboot last week); read as much and about as many different topics as you can; and finally, just do it, but DO it. Nothing beats practice in the field. Most of today’s great web devs have evolved without any formal education because there just isn’t much supply.

  8. John Oxton

    792 days ago

    I am not saying you shouldn’t have a good awareness of all technologies but I am deeply suspicious of people who say they can design, build and program there own sites and do the job superbly well. I think those sorts of people are very very rare indeed.

  9. Steve Tucker

    792 days ago

    @John: Not where I come from.

  10. Frode Danielsen

    792 days ago

    I’m also a computer science student (@ the University of Oslo), but I’m not taking courses there to learn about web development. Web development I think is still somewhat of a profession where you learn through wisdom passed down from the masters of the trade. Use your creativity and create your own sites from the ground up. Read blogs and articles on the web. Study the code of people well-known for their quality. Learn the best practices. And when you start to get at least a basic grip on the steps and knowledge needed to build a complete site, start taking on small clients from your friends/family/relatives/what-have-you.

    I started out at 11-12 years old (94-95) coding my very first web page. My dad gave me clues as to the basic concepts of HTML, and then I was off. It’s been more than 10 years, and I still haven’t read that many books on the relevant subjects, or taken any courses. I’m not saying books are useless, it depends a lot on you, but there’s a lot of great resources online – not the least all the official documentation when you’re talking about PHP, MySQL etc..

  11. Gustaf

    792 days ago

    The hardest part about freelance developing is negotiating a flat price! :) I absolutely hate to talk about money, and I’m totally lacking the ability to make a realistic estimation of how long it will take me to complete a project.

    As for studies I would probably skip practical technology stuff at the uni and go for more theoretical courses.. Read about languages and databases on your spare time and take courses on subjects like user experience/usability, design patterns and software architecture. Project management could be good too.

    Other than that my best advice is to do things right the first time around. If you create something—a snipplet of code for example—do it thoroughly. The “I’ll just come back and do it for real later. Right now i want it to work”-mentality is very dangerous. :)

  12. Zack GIlbert

    792 days ago

    I would have to agree with a lot of what has already been said. I recently graduated from RIT with a degree in Information Technology (Web Development Concentration). While most of my web knowledge was aquired on my own time (actually doing projects), that degree forced me to learn a lot about other areas that I normally wouldn’t have learned about (e.g., networking, video, gaming, etc.). I think the key is to never stop learning. Yes, become a specialist in 1 or 2 areas (that will bring people to you specifically), but like was mentioned, learn as much as you can of other areas. I can’t tell you how many jobs I’ve done just because I knew enough to get the job done. I would also recommend making the most out of your liberal arts courses. Take communications classes or something that would help you even if you weren’t in a technical field.

  13. Adam Spooner

    792 days ago

    There is some very good advice flowing here. I just want to reiterate some things aforementioned.

    1 – Get a good grip on the basics – Web Standards – XHTML [I’d recommend learning the Strict Doctype] – CSS – DOM Scripting. Once you understand the basics of buiding a page, then you can design away!

    2 – Read, read, read…and do it on your own. I went to school for computer science. I learned how to program some pretty cool stuff in C++. True, I learned a lot of principles that i may not have learned anywhere else, but I learned only a few practical things. Everyting I’ve learned about web developmment and design has been through a mix of online tutorials and books. The tutorials give a good, quick, “how’d they do that” kind of learn, but books give you the “I know my stuff” kind of learn.

    3 – Put it into practice. I’ve found that the more I hear cliche’s, the more I realize why they are so. Cliche are such because they are most likely to be true. I say this to warn you of this good ol’ cliche – practice makes perfect [ok, well at least better]. Use the stuff you’ve learned, and I don’t mean for fun [though it will be that]. Let people know that you are becoming an astute web developer/designer and want to build web pages. Chances are you’ll find plenty of people who are willing to let you build them a site. Oh yeah, don’t expect to get paid. the payment comes in being able to have some real world experience.

    I hope this helps. Enjoy the learning process!

    Cheers!

  14. James

    791 days ago

    I know I’m repeating others here, but my advice would be:
    1. Read lots—books, blogs, whatever.
    2. Get lots of practice. Do sites for whoever will let you. This will give you those “Ah, so that’s what they were talking about” moments.

  15. Chris Griffin

    791 days ago

    I don’t agree that you need to become a specialist, but I guess that depends on how “special” you are.

    If you are just a web designer (designs websites in photoshop, but no coding) or just a web developer (works primiarily with XHTML/CSS but no designing) then I’d say that is not the way to go. Especially if you ever plan on going the freelance route.

    I am a Web Designer/Developer. and my primary weakness is programming but I’m teaching myself Rails.

    I’m currently job seeking and I’ve been considered somewhere just because I am a “hybrid” as they call it. I could work in the design and the production department. I’m also handy with Movable Type, which is their publisher tool of choice.

    The more you know, the better chance you got to get hired anywhere. Jack of all Trades is where it’s at.

  16. Steven Clark

    791 days ago

    One caveat on the doing jobs for people to get a kick start – try not doing free work. This is already an undermining factor in our industry to some degree IMO.

    But practise makes perfect for sure.

  17. Jpix

    791 days ago

    My advide would be to know first what are your interest in web developpement.

    If you are more an artist, try to look at web design made by others like at http://www.coolhomepages.com or http://www.digitalthread.com.

    If you are more interested in coding web sites and don’t care about the way the websites looks, try to know languages like PHP, ASP, ACTION SCRIPT, JAVASCRIPT or SQL.

    Some people don’t like to actually do websites, but they like more to focus on the content of websites. People like that tend to like more ergonomy, utilisability, marketing or information architecture, for example.

    A very good employe whould know a little bit about every subject. In a big company you can specialize in one or two fields, in a small company you need to do almost everything.

    In the market, they are a lot of web designer and less people in programming.

    An advice : try to know flash (animation and coding in action script) you will get a job almost everywhere, because a few people know how to use Flash for websites and a lot know how to do regular websites.

    Also, if you don’t have any clients, get a portfolio as soon as possible by doing some research and do your own projets, because you will be only hired by companies if you show what you did and not only what you could do.

  18. the sender

    790 days ago

    Wow, when you send John Oxton an email, he gives you the hook-up.

    On education: I’m not going to school, necessarily, to become a web developer. I pretty much want to get a degree in hopes of increasing my income, and snagging an (prefferably) IT job that I don’t dread going to every morning, and using my spare time to become the next Zeldman .

    On the web: Yeah, I read a ton of blogs, and books, and I make sure all (2) of my websites validate strict before they are published…I’m all about web standards and such. I feel I’m pretty proficient in xhtml and css, I’m just trying to figure out how to cross that (one pixel wide, imaginary) line, to be able to call myself a developer.

    I guess I want to hear specific tales about how people become web developers. How people get their start, then what? Your first job, and second, and third…

  19. David Bowman

    788 days ago

    I am deeply suspicious of people who say they can design, build and program there own sites and do the job superbly well. I think those sorts of people are very very rare indeed.

    like others here, i disagree with that notion. this site’s author seems to be doing pretty well with the design+development hybrid, so i’m not sure why he would say that people that can do it all are “very rare” (other than a need for self-aggrandizement – just teasing!).

    i do everything myself – from designing logos, to coming up with page layouts and site hierarchy, to taking photos for the site, to helping clients refine their online writing voice, to tweaking my custom-built CMS to work for specific needs. i am a RISD graphic design grad and i build all my sites in valid XHTML/CSS. maybe i’m one of the “very rare” ones, but somehow i doubt it. there are so many great portfolios online that were put together by one-person shops. those people might not be able to program a bank’s back-end transaction system, but the majority of websites don’t require such complicated programming anyway.

    if my name’s going to be on the project, i want to make sure that it’s quality throughout. the only way to do that is to control every aspect of production.

  20. Phil

    787 days ago

    In my experience, the 1st thing employers look for is relevant experience. So get yourself down to a web agency and make cups of tea and worm your way into their affections. Learn how they do things, be nice; perhaps they’ll let you loose on the odd project and you’ll take away a world of experience and hopefully a sweet reference.

    Also, be confident in what you know. We all know we have weaknesses but employer’s don’t really want to hear them. Also your ability to produce valid markup will put you ahead of alot of web designers/developers out there – I kid you not.

    Not all employer’s expect you to be a whizz from day 1 especially if they’re offering a low wage (welcome to the industry) so as long as you make it plain how much you are interested in web development and how much you are willing to learn to become the next Zeldman/Cederholm/etc you’ll go far.