DevOps Zone is brought to you in partnership with:

Benjamin is an independent agile consultant and developer from London, currently working on Devops related projects in the banking and finance industry. He is the maintainer of the DevOps Friday mailing list (www.devopsfriday.com). Ben is a DZone MVB and is not an employee of DZone and has posted 14 posts at DZone. You can read more from them at their website. View Full User Profile

The State of the Modern Web App Landscape

12.17.2012
| 4138 views |
  • submit to reddit

 

With so many tools, techniques, and industry trends crossing over into the mainstream, 2012 is shaping up to be one of the most interesting years in software development in a long while.  The landscape is literally changing underneath us developers at the moment.

Cloud Computing

Businesses are finally allowing their applications and data out of the door and onto external infrastructure such as Amazon and EC2.

Cloud, with its ability to scale up and down has definite implications in how we design and build our applications for horizontal scalability.

A more agile infrastructure where developers and operations staff can requisition environments and servers as needed is indeed a brave new world.

Platform As A Service

PAAS is a natural evolution of cloud.

Though we can simply buy a cloud server on which to host our applications, it may also make sense to buy higher level platforms off the shelf that incorporate infrastructure such as application servers, databases, and messaging.

By using off the shelf platforms like this, this further reduces the plumbing code that we have to write and manage, allowing developers to get started faster and work at a higher level of abstraction.

DevOps

With cloud and PAAS, people are talking about the merger of Development and Operations into a new field.

DevOps really places a label on a set of tasks that developers and system adminstrators may have previously found themselves doing, and introduced the notion of using code and scripts to automate these tasks & treat operations as a more repeatable activity.

NoSQL

NoSQL is reaching widespread adoption now, giving us some realistic choices of production proven data stores for our applications that offer real benefits over RDBMS.

We can choose databases that are tailored to the particular requirements of the application and store a database.

NoSQL datbases are also often inherently horizontally scalable.

Mobile Devices

Any new web application has to consider the range of devices that are accessing the sytem and code to support them. Mobile and tablet based access to the web is growing at an enormous pace.

This presents challenges to developers and designers who need to may need to explicitly render mobile views, support a range of different devices, and provide a good user experience to boot.

Restful APIs

APIs and access to data continues to grow unabated. Most people signing up

Again in relation to mobile and diverge in frontends, there’s a requirement to seperate business logic and expose APIs.

Any modern web application needs to explicitly consider exposing the data as an API and JSON and REST are the weapons of choice.

HTML 5

HTML 5 represents a huge toolkit in helping us to build modern web applications

Gelocation and Offline storage in the mobile setting

Responsive Frontend

A few years ago, most people would have been accessing the web and web based software via their laptops or desktop PCs.

Nowadays, they’ll be accessing via.

Published at DZone with permission of Ben Wootton, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)