Humble Beginnings in Web Development - Advice for NewbiesGnomie Tom “Mousey” Lovelady writes:

Hey there Chris,

I’m attempting to delve into the world of coding and Web development in order to successfully begin creating applications for mobile devices as well as for Web sites; I hope at some point to be able to integrate the two. I’ve just purchased an HTC Desire (the original Desire) which is on its way to me and I’ll be diving into some mobile development and testing my skills with a few friends. I’ve seen loads of threads floating about on LockerGnome from people asking how they should get started learning how to code and learn programming languages in order to start off on their own journeys. But I’d like to kill two birds with one stone here. For starters, have you ever dabbled much into coding? Having a basic knowledge of PHP and HTML is very useful in a lot of different scenarios, especially when it comes to maintaining a Web site of any complexity. So I’m just wondering if you have any experience yourself with diving into the source code and really getting your fingertips sweaty with some coding?

I’d like to suggest purchasing some of the “For Dummies” books off of Amazon because they’re always cheap and the desk references especially are absolutely fantastic. If there’s anything they can’t teach you, well, you probably don’t need to be asking how to start out with coding. Another good suggestion is to download open source Web software such as phpBB for forums or Joomla! for content management systems and start tearing into some of the source code. Join up with their communities and start asking questions. As long as you ask politely and provide any information they may need with as much detail as possible, the communities will often get back to you promptly and can really help out when you’ve got a goal set that you aren’t sure how to get to.

If you’re looking into Web development and you’ve never done it before, the first two you’ll need are HTML for Dummies and PHP for Dummies — or something comparable. CSS is also an invaluable language to learn because CSS dictates styling information and usually controls how everything looks on a Web site. Every other language is typically for functionality, and CSS is for aesthetic appeal.

Any aspiring Web developers looking to tear apart software should look into a gem I found on Wikipedia: the Free Software Portal.

I’m far from a brilliant coder — if anything, I’m bloody terrible — but by tearing apart some of the more basic Web applications that I found at the Free Software Portal and eventually working my way up to tearing down some of the more complicated ones and even adding my own bits and pieces here and there, I’ve managed to develop my skills a lot in the past few weeks and I’m hoping to put those to good use in other areas. Maybe someday I’ll even be doing it for money on the side.

The key thing I’d have to stress is persistence. Yes, it sucks when you get a 404 error. Yes, it sucks when your database craps out on you. Yes, it sucks when you get endless streams of PHP errors and have to go digging through lots of files looking for any tiny things you might have missed out on the server side script. But just think of that sweet, sweet air punching moment when your script finally runs properly! When it’s all displaying properly and you can click through it knowing that everything that page is doing is something that you made it do.

A useful tip if you aren’t the patient type is to code for little segments at a time instead of a fanatical 36-hour binge followed by a two-hour nap, a Red Bull, and another 24 hours in Dreamweaver. I tend to code for half an hour at a time, or until I’m frustrated (whichever comes first), at which point I go make a nice hot cup of coffee, go for a brief walk,¬†and come back to the task when my mind’s fresh and I’ve had a quick think over what I could have missed out during the coding.

Coding’s a very rewarding hobby if you give the rewards time to come to you. I hope this helps anybody looking to get started!