How to be an instant Web me-2.0 developer

If you're so smart, how come you ain't rich?

5 things you didn’t know about cloud backup

What does the P in LAMP stand for?

The best way to go about any small-to-medium scale web 2.0 development is to use LAMP. Others may advocate Microsoft's tools and platforms if they wish, but I have been terminally put off by the remarks of one insider.

This leads on to the question: what does the 'P' stand for? For me, it must always mean PHP. Perl is just too bizarre-looking, and carries more than a whiff of 1996. I was put off Python by an early Bayesian spam filter that ran dog slow and had the habit of irreparably corrupting its database every few weeks. PHP is easy, sensible and quick.

By the way, while we are here, I am baffled by Coding Horror's suggestion that PHP sucks because it has a lot of standard library functions beginning with 'A'.

Huh? 'Lots of functions' is surely good. It means we can call them, instead recoding them again already. That's how it is with the library thing. Would he really think it better if it only had three functions - say add() for addition, arcsin() for a bit of token trig, and aaaaargh() for throwing an error? I'd genuinely like to know.

Despite Mr Atwood, the PHP library continues to grow apace, and think it is a good thing. I believe the pester_victim_with_stupid_emails() function was added only last month, to help out everybody writing Facebook applications.

We should pause to consider Ruby on Rails

Ok, done that.

AJAX for a cleaner kitchen

Finally, having established that PHP is what you need on the server, you may be wondering what tools I recommend for client side use. That is, after all, why we are here. The following table should make my position clear.

Tools for Web 2.0 coding
Tool What is it? Pros Cons Verdict
Delphi for PHP 2.0 A PHP-generating IDE that lets you drop Javascript widgets on a form. It's better than Delphi for PHP 1.0. It's mad. It mixes PHP and Javascript event handlers in the same source code file. Something else for Embarcadero to look into.
Dojo A framework library of AJAX Javascript classes, including widgets. It has various competitors, but is a reasonable candidate for the best of the bunch. Open source, surprisingly good docs. Widgets are uniformly designed and reasonably handsome.  Hard to use. You have to build up your screen layouts by hand, one dreary <div> at a time. Get a tag or attribute wrong, and the whole thing goes spectacularly yet nearly untraceably pear-shaped. Perhaps come back in a year, if they make a design environment to go with.
GWT ie Google Web Kit AJAX and Java libraries plus a Javascript-to-Java translating tool. It's from Google. They practically invented Web 2.0. A Java-to-Javascript translator? Icky! Icky! Icky! Euuggh! What were they thinking?
Flash and Flex Adobe's ubiquitous web enricher, based on a superior flavour of Javascript. Flex is the cheaper, techie-oriented IDE. Flash programmers are often from a designer background, are easily impressed by code expertise such as knowing how to write a sort. Or indeed a loop. It's Flash. The application arrives as a big ugly lump of proprietary gunk. And have you seen how much wonga they want for the Flash development environment? No way. If I use this, the Open Source Erics will lynch me.
Java applets You remember. The status bar. 'Applet loading…' Supported by Netscape 2. If I write the word 'crapplet', does that make this article NSFW? I bet Sun hopes that everybody had forgotten.
OpenLaszlo Open source alternative to Flash that practically nobody has heard of. Sounds like a good idea. Can either use the Flash runtime, or DHTML. When I looked at the OpenLaszlo site with Firefox, the basic layout came out all wrong - a major turn off in the circs. It's one thing to go out on a limb, but this feels like going out on a twig.
Silverlight Microsoft's 'Flash killer', about to go into a new version. Version 1.0 was reputedly a weedy effort; it is said that the inclusion of .NET languages will improve version 2.0 It's Microsoft, for heaven's sake. They of the terrible websites. Apart from everything else, at time of writing it's a beta.

There, I trust that has sorted out your Web 2.0 toolchain for you. If you want more information, I found a useful-if-naturally-biased comparison on the Dojo site, and several good Wikipedia pages. But I am getting dangerously close to supplying useful information, so I had better stop. Best of British. ®

Boost IT visibility and business value

More from The Register

next story
Intel's Raspberry Pi rival Galileo can now run Windows
Behold the Internet of Things. Wintel Things
The Return of BSOD: Does ANYONE trust Microsoft patches?
Sysadmins, you're either fighting fires or seen as incompetents now
Munich considers dumping Linux for ... GULP ... Windows!
Give a penguinista a hug, the Outlook's not good for open source's poster child
Microsoft cries UNINSTALL in the wake of Blue Screens of Death™
Cache crash causes contained choloric calamity
Eat up Martha! Microsoft slings handwriting recog into OneNote on Android
Freehand input on non-Windows kit for the first time
Linux kernel devs made to finger their dongles before contributing code
Two-factor auth enabled for Kernel.org repositories
prev story


5 things you didn’t know about cloud backup
IT departments are embracing cloud backup, but there’s a lot you need to know before choosing a service provider. Learn all the critical things you need to know.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Build a business case: developing custom apps
Learn how to maximize the value of custom applications by accelerating and simplifying their development.
Rethinking backup and recovery in the modern data center
Combining intelligence, operational analytics, and automation to enable efficient, data-driven IT organizations using the HP ABR approach.
Next gen security for virtualised datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.