search | site map

Scott Granneman

panorama-001.jpg
  • Writing
    • Books
    • SecurityFocus
    • Linux Magazine
    • Others
    • Swings & Misses
  • Presentations
    • Interviews
    • Ladue Chapel
  • Teaching
    • Current Courses
    • Student Evaluations
    • Washington University
    • Webster University
    • St. Louis Community College
    • Archives
  • Web Development
    • Becoming a Web Developer
    • Coding
    • Programming
    • Editors
    • Web Browsers
    • Domains
    • Hosting
    • Graphics & Multimedia
    • Content
  • Tech Info
    • Background
    • Tools
    • Intellectual Property
    • Security
    • Email
    • Networking
    • Blogs, Podcasts, RSS
    • Search
    • Linux
    • Windows
    • Education
  • Personal
    • Work
    • Movies
    • Music
    • Reading
    • Poetry
    • Prose
    • Photos
    • Journals
    • Commonplace Book
    • Our Home
    • Opinions & Editorials
Home > Web Development > Becoming a Web Developer

How Do I Become a Web Developer?

  • Recommended Books
  • RSS Feeds for the Web Developer

Someone emailed me recently and asked me what he should learn if he wanted to become a web developer. I forwarded his request to a mailing list I'm on, and my good friend Craig Buchek wrote the following excellent reply.

There's a HECK of a lot to learn to be able to do web development effectively. Just to be ABLE to do it, you have to learn:

  • HTML
  • CSS
  • PHP or some other server-side language

To do it EFFECTIVELY, you've got a lot more to learn:

  • SQL
  • JavaScript
  • libraries and frameworks
  • a bug tracking system
  • Subversion or some other revision control system
  • IDEs
  • other tools
  • Apache
  • Linux command line

To do it WELL, there's even more:

  • usability
  • unobtrusive JavaScript
  • separation of concerns (MVC, etc)
  • testing
  • customer relations
  • HTTP protocol
  • AJAX

I think that skipping PHP and the others and going straight to Rails is a good idea. Maybe. At least if he's talented. But he'll still have to learn a lot of things before he's any good at creating a site. (Don't forget that we found Rails easy to learn because we already knew a lot about web development.) He'll still have to understand HTML and CSS. The Agile Web Development with Rails books is excellent, but it takes a lot to get through. If you're the type who can read a manual to learn how to do something, then it's fine. But if you need to start out with a tutorial, then you'll need to start with a different book. If you do go this route, I'd recommend learning in this order:

  • HTML
  • CSS
  • Apache (as little as possible to get two virtual hosts running)
  • Rails
  • Subversion
  • Test-Driven Development
  • Ruby
  • SQL

If you want to make a living at it, I'd expect it to take at least a year of full-time (self-)education. Everyone learns differently, so it's hard to recommend learning materials. I'll offer some ideas though:

  • books (my favorite; I look for conciseness)
  • formal training classes
  • (community) college classes
  • local user groups (attend if topic is pertinent)
  • online videos/screencasts
  • podcasts
  • web tutorials
  • blogs (hard to get the basics though)
  • personalized training
  • mentoring

If he just wants to play around, I suppose the order is not as important. Learn things as they interest you. Eventually, you'll find you've learned a ton and enjoyed doing it.

Craig

Contact

Email scott@granneman.com
Voice 314-780-0489
Address
39 Summit Place
St. Louis, MO 63119
United States

Work

For work info, see WebSanity.

All content, unless under a Creative Commons license, is © 1997- Scott Granneman.

(Take a look around—a lot of content is licensed under a Creative Commons license, which gives YOU a lot of freedom to reuse my work.)

facebook_32.png Facebook   twitter_32.png Twitter
linkedin_32.png LinkedIn   friendfeed_32.png FriendFeed
flickr_32.png Flickr   lastfm_32.png Last.fm
youtube_32.png YouTube   rss_32.png RSS