Learn Web Programming Easily

Today if you ever wanted to kick start learning a new programming language you would probably visit one of those popular tutorial web sites out there. I started it off with W3Schools (introduced in university) and also used Tizag to supplement and fill in the gaps. However, one disadvantage I found with these sites was the lack of interactive exercises that you can do anywhere. For example, to try HTML you would need a text editor (Notepad++ is my favorite) and at least a web browser to test your code (same with JavaScript). If you wanted to try PHP, the easiest way would be to install one of those xAMP stacks (WAMP for Windows or LAMP for Linux, my favorite being XAMPP). If you check out one of the sites previously mentioned they simply give you an explanation, followed by an example. Progress depends on whether you apply what you learn or skim through hoping it sticks in your head.

During my frequent email checks in Gmail I noticed an ad leading to http://code.he.net. I am quite familiar with HE (Hurricane Electric) and have used their services directly (IPv6 certification, DNS services and Tunnelbroker) and indirectly (they have a large global network, so most of the VPS I have use HE for connectivity). I decided to check out what this code thing was all about. At first it seemed just like any tutorial web site: a list of languages you can learn, community forums, stats etc… To be honest I thought it was one of the usual tutorial sites. I logged in with my HE account (you can either create an account with them or use your Google or Facebook account).


After logging in and selecting a language I wanted to learn (I chose PHP). On the side you get some suggested, completed and full list of exercises available to you. The main body of the page is a graph which lets you know how many exercises you have been working on over time. Don't let the number of exercises fool you though, each exercise contain many sub-exercises. I wouldn't be surprised if the exercises end up in the thousands if you take the whole site into account.

I started off with the first exercise, Strings 1 in PHP. Now this is where HE's tutorials differ from the others. You get a terminal like interface in the page. Above that is what you need to do. Rather than explaining, they let the user observe what happens. I believe this method is pretty good since the person needs to actually find the difference and figure out, rather than have it all already explained.

You need to be quite precise when trying out the exercises though. I tried the first PHP exercise and instead of "Hello World" I gave "LOL" a try. Incorrect answer. How exact do you have to be? I'm not sure since the exercises I tried were short and straightforward, but it could be annoying if they get longer and the mistake ends up being a simple spelling mistake.

I did a few exercises and noticed my progress was being tracked at the upper left side of the page. The terminal is good at showing you what the result looks like if you run the code.

If you ever wanted to learn one of the many web languages out there, I suggest you give HE's Interactive Programming site a try. I would suggest combining their exercises with the explanation found in the usual tutorial sites to strengthen your background on the topic. Note that the service is still in beta, so hopefully there are plans for improving and adding content. By the way, they provide their email at the bottom, don't hesitate to contact them, when I had trouble with their IPv6 certification exercises they did not hesitate to provide help :-).

Happy learning!


Leave a Reply