Trends & Strategy

The Rich Web Development Landscape

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.

Regular Ajax

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!)

ASP.NET Ajax has a low learning-curve. Standard ASP.NET skills along with a grasp of Ajax concepts are all that are required for you to use it effectively since all the plumbing Javascript code is taken care of. It’s appropriate for basic applications (for example Quotiki) using mostly standard ASP.NET controls and requiring infrequent updates.

But for highly-dynamic applications with lots of updates or a graphics-intensive user interface (think Google Maps), you’ll need to use a Javascript Ajax framework. Although I haven’t used it in anger, I’ve played with and heard good things about Ext and I’m quite impressed with it. Google Web Toolkitis very compelling since it lets you write applications in Java (which it compiles it to Javascript) and boasts some other great features.

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.

Mobile

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.

Standard

One thought on “The Rich Web Development Landscape

  1. Pingback: iOS Development with .NET « Akshay Luther

Leave a comment