A few years ago if you wanted to develop a web application all you could do was build a classic synchronous web application using plain old ASP.NET, JSP or PHP depending on which camp you were in. Then along came Ajax and Web 2.0 and changed the landscape. In my last post, I touched on some of technologies that make today such an exciting time to be an Internet developer.
On the software-side, AJAX has so far been the primary reason for this, but Silverlight and Adobe AIR are blurring the lines even further. On the infrastructure-side, broadband and faster hardware have been the main catalysts, but access to cheap and reliable server-side computing resources such as Amazon’s S3 and EC2 are giving application developers unprecedented ability to scale elegantly. Throw in to the mix innovative web services from the likes of Google and Flickr and we have a wondefully-rich array of tools and technologies to build web applications with.
Now, I’d like to list some types of interesting options for types of applications and tools in this new landscape and point out some interesting developments and trends along the way. If you’re a developer or entrepreneur looking for ideas for your next project (like I am), perhaps this will give you some options you may not have considered.
Ajax is quite a mature technology now, tested and proven and with a wide range of tooling and support (listen up you conservative pointy-haired bosses!)
Rich Internet Applications
Microsoft Silverlight. Love it or hate it, it’s here to stay.
Personally, I think its a brilliant piece of technology and am a big fan of its potential. It brings the advantages of desktop applications (responsive UI, easy to build, local storage, networking) to web applications.
There’s also Adobe Airto look at for building RIAs.
Until recently, applications on mobiles were disconnected. But, just as your computer seems pretty much useless without Internet access today, mobile phones too will seem pointless without some kind of access to the cloud. Mobile applications are going to be increasingly web-based. And it seems that Apple is who is going to make it happen.
The iPhone has of course set the mobile market on fire sitting at 28% of the U.S. SmartPhone market share only eight months from release, second only to RIM (BlackBerry) at 41% (ars technica).
When it was first introduced, there was no SDK to build native iPhone applications – just web applications viewed through iPhone’s Safari browser. A couple of months ago, however, Apple unveiled their iPhone Software Roadmap and released the iPhone SDK.
In his iPhone software roadmap presentation, Jobs says, “The iPhone is really bringing the Internet to a mobile device for the first time. You really do have the Internet in your pocket.” And he appears to be right – a whopping 71% of U.S. mobile browser usage is on Safari, followed by Pocket IE at 12%.
If you’re thinking of learning Objective C, why not get stuck into it and develop an iPhone app?
Another interesting development is Google’s mobile platform Android. Definitely worth checking out.
Microsoft’s development platform in this space is ASP.NET for Mobiles. I haven’t used it so not much more to say about it except, go check it out and/or post your thoughts in a comment.