How To Start Learning Web Programming
azeem left an interesting question on my free programming advice offer (offer which is still valid, by the way) and it read as follows:
Hi, I am interested in web programming.
Actually i have experience in ABAP programming (SAP (ERP) proprietary lang ) .
But I am interested in coding on the side.
What should i start with?
Since you already have programming experience, learning another language shouldn’t be that hard. You might not even need to purchase any books, and instead read tutorials on the internet. However I still recommend getting at least one book, because they can also serve as a great reference and document many features in detail. If you wish to concentrate on web development, there are three topics you should look at: PHP, XHTML/CSS and MySQL.
Of course you need to know XHTML/CSS, because that is used to format the pages you see on the World Wide Web. You could also learn HTML, but I am strongly against that. There are no good books on XHTML and CSS, because they are very simple typesetting languages. But I can recommend a very good website, W3Schools, that offers a tutorial on XHTML, CSS and loads of very useful reference tables.
I am quite sure that you don’t want to write only static pages, so you should learn PHP. PHP is one of the most popular server-side web programming languages out there, and it is supported by almost every webhost (even the free ones). This basically means that a program on your web server will interpret the PHP code first, and spit out XHTML code to the browser. The book I would suggest is the WROX: Professional PHP. The book might be very thick and contain a lot of topics you don’t need, but it is organized in such a way that you can pick what sections to skip and return back to them when you need them. There is also a “Beginning PHP” book from the same publisher, but I have never read it so I cannot vouch for it.
You will also need a database, and MySQL is the best choice since it is free and quite powerful. If you are going to be doing just simple web programming, then you do not need to know much about the more complicated syntax so there is no point in buying an entire book on it. The WROX: Professional PHP book mentioned earlier has an excellent chapter on the MySQL language, and I believe it also documents other databases too.
Finally you will need a web host to show off all your pages to the world. For testing, I suggest installing a web server on your desktop computer, because this maked editing files much easier. The popular Apache web server is free for download, and the WROX: Professional PHP book includes instructions for configuring PHP to work with Apache. For your production server, I suggest starting out with a free web server until you get used to it. I suggest using FreeHostia, because they offer professional services on their free hosting accounts.