

Ask HN: Best way to dive into web development. - roundsquare

So, a little background.  I got my computer science degree 3.5 years ago and have done a good amount of development.  At the time, I was not at all interested in web development but (in large part due to HN) I have been gaining interest.  Recently, I had an idea that I'm really excited to try out, but I have no idea how to get started.  Hence, I'm asking how to start learning.  I want to learn both the theory and practice.<p>Summary:<p>I know how code and have dealt with some fairly large projects in the past.<p>I am a complete web newbie.<p>Any suggestions on how I can get started?<p>Thanks in advance!
======
scorchin
There are two main areas that you'd need to learn: front-end development and
back-end development.

Front-end development knowledge points: HTML, CSS and JavaScript

Back-end development knowledge points: Server administration, databases and
interpreted languages.

I'm biased towards open-source technologies, so I'd recommend you learn
Django, Ruby on Rails or one of the PHP frameworks (personal preference is
Symfony). Then tie that in with MySQL or PostgreSQL. Most of these
technologies have great documentation, especially Django and Symfony, and
shouldn't be too hard to get started with.

For learning front-end development the quickest way would be to go and buy a
book rather than attempt to follow the myriad of tutorials out there. I'd
recommend the standardistas book: <http://www.webstandardistas.com/book/>
After learning the knowledge in the book, follow on to using javascript
libraries such as jQuery and YUI to get some funky front-end interaction
working.

Finally, tie all the knowledge in by attempting a few pet projects.

------
radu_floricica
If by any change you've programmed a lot in Java, you have a fair chance to be
able to keep the language. Just stay away from anything that remotely sounds
like enterprise or uses XML and you'll be fine. I also personally prefer
Apache Velocity instead of JSP - easier to learn, too.

About client-side programming... good CSS takes a while to master. Many people
will probably disagree, but if your goal is to make something relatively fast,
you may want to KISS and use a table or two instead of just divs and CSS.

Also spend a bit of time with JavaScript. It'll bring a fair amount of
benefits for a relatively modest investment.

