The Mobile Web

Resources

The Mobile Web refers to browser-based applications created for mobile devices, like smartphones and tablets, wirelessly connected to the internet.

Think of the mobile web as a usage scenario instead of just a form factor. Using an application in a totally different environment than the typical desktop application is used in changes the way users access and consume websites.

Mobile device characteristics are important but there's more to it than just screen size.

Mobile compared to desktop platforms:

Things to consider:

Why do we need mobile sites/WebApps now?

Defining some commonly used terminology

Web Apps?

There is no clear definition of what a web app really is, but it usually involves a program running in a web browser window with interactivity and similar characteristics that are well suited for technologies commonly referred to as HTML5.

Apps have an emphasis on interactivity and accomplishing tasks, as opposed to serving content. Also, apps have layouts that fits single screens and actions that don't need to rebuild the whole UI.

HTML 5

By saying HTML5, people can mean a number of things but usually it is the combination of the evolving HTML5 and CSS3 standards plus JavaScript and the likewise evolving standards for device APIs (geolocation, offline storage etc).

The above standards are the core pieces for building modern, interactive web applications.

Responsive Web Design (RWD)

A set of techniques used to make a web site adapt its layout according to the user's browser window. This is usually done by switching the style sheets depending on consumer.

A responsive web design, built with HTML5 and CSS3, allows a website to work across multiple devices and screens.

RWD is perhaps the simplest and quickest ways to make a website built for desktop work on a lot of devices using the skills you already have.

Application Categories

Three Categories:

Native Applications

Applications built using the provided SDK for the designated platform. A subcategory of native applications is the Cross-Platform Native Frameworks (CPNF) that aim to use a single codebase and generate native code for multiple platforms.

For the CPNF's most of the cons listed goes away while the pros should mostly apply.

Tools

By building native apps you’ll be able to build a very responsive app with access to all device APIs and the proper look & feel. This is also usually the by far most expensive and risky option. Can be the best option for complex client-side logic.

Web Apps/Sites

You can either build a single adaptable site using responsive web design techniques or build separate sites for mobile devices.

The web site strategy would mainly be suitable for a traditional site serving content and not so much when you need to build something that can take advantage of mobile device functionality.

Tools

Well suited for providing traditional site content to the largest possible audience. Less well suited for applications targeted to specific audiences.

Web Apps

Tools

Well suited for getting native-like functionality across platforms. Should often be the most suitable alternative as long as the client isn’t too complex. Lot’s of apps currently across App Stores are built like this.

You can use a full-stack framework like Sencha Touch or a “Glue framework” by picking together parts from smaller libraries and frameworks like jQuery Mobile.