Mobile Web 2: Programming Web Applications

Why attend?

In the “Mobile Web 2: Programming Web Applications” course you will learn how to program great mobile Web applications that can ship both online and in application stores.
The course is a follow-up on the very popular “Mobile Web 1: Best Practices” course (formerly known as “Introduction to Mobile Web Best Practices”).
You can take the Mobile Web 2 course without having taken the Mobile 1 course. However, check out Sections “Who Should Attend?” and “What do I need?” below to find out about the target audience and pre-requesites for this course.
Moving beyond best practices, this course covers all techniques you need to know for programming successful mobile Web applications, including:
  • Progressive enhancement and feature detection
  • HTML5 for mobile
  • Javascript APIs for geolocation, device orientation, handling touch events, using local storage, accessing the camera
  • Taking applications offline
  • Understand the specifics of developing Web applications for the mobile environment.
  • Learn the latest HTML5 and Javascript APIs that are actually usable in real-world environments.
  • Discover how to use HTML5′s AppCache to make your applications work offline.
  • Be informed about what technologies are coming next so that you will be ready to use them when they become broadly available.

How much time does this take?

You will need to spend around 4-6 hours per week on the course. Some weeks are busier than others and may require more time but 5 hours should be the average.

Course Outline

This course will run for 6 weeks. Each week a new chapter will be revealed together with an assignment, and you will get a chance to interact continuously with the teachers about the course’s content. Here is an outline of the overall course:

Week 1: Advantages of the Web for Mobile Application Development

We will look into the many pros and few cons of using Web technology for mobile applications, and work on a simple assignment that will help you become familiarized with the course system.

Week 2: Basics of Mobile Web Development

This lesson takes a long look at the mobile ecosystem in all its complexity and provides leads as to how to approach it without being daunted by its sheer diversity. We will also cover some of the more important best practices and will look into progressive enhancement and feature detection. With this under your belt you should be able to create a basic Web application that works well on mobile devices, though it may not make use of all the available bells and whistles.

Week 3: HTML5 for Mobile Devices

In this lesson we will look at features of HTML (proper) that are particularly useful in a mobile context as well as at novelties from CSS 3 such as media queries and transitions that can greatly enhance the user’s experience with minimal work on your part. We will also survey the principal JavaScript libraries that are used in mobile Web applications and pick one which we will apply in the rest of the course.

Week 4: JavaScript APIs

A large part of the exciting new features that are becoming available on the Web platform, especially on mobile devices, take the form of JavaScript APIs. So much so that we will be dedicating a whole week to this topic in order to cover enough of it that you may start writing useful apps. Such APIs include geolocation, device orientation, handling touch events, using local storage, accessing the camera, and quite a few others. We will also briefly discuss issues relating to the security model that operates in Web applications, and look at some common security pitfalls.

Week 5: Taking Apps Offline

Shipping applications straight to the Web is great and in many cases all that is needed. However, as people are increasingly accessing their content while moving around, a whole host of connection related challenges emerge. This week we look at ways to make sure your applications continue to work, even if the user looses connectivity.

Week 6: Conclusion and a Look at the Future

Finally, we will take a quick summarizing look at all that we have covered and turn our gazes towards the future. The Web platform evolves fast, especially on mobile devices, and a host of new features are around the corner, likely close enough that you will encounter them not long after the completion of this course. We will look at such diverse topics as new APIs to provide access to device functionality, new Web-oriented APIs, open application stores, improved CSS and JavaScript library features, as well as where the mobile ecosystem in general is headed.

How do I get a Certificate of Completion?

The course includes 5 practical tutor-marked assignments (TMAs) that all need to be completed satisfactorily if you want to receive a certificate of completion.

Who should attend?

The course is for you if:
  • you understand the basics of Web development and would like to understand the specifics of the mobile context;
  • you know how to create mobile Web sites and would like to move on to more advanced applications;
  • you wish to update your knowledge of Web technology with more recent additions from the HTML5 and Javascript world;
  • you want to learn how to package your Web applications so that they can work offline or as native applications.

What do I need?

This course covers the essentials of mobile Web application development, but it does rely on some prior knowledge. In general, the following basics are assumed:
  • HTML: you need to be comfortable putting together an HTML document, assigning IDs and classes, loading scripts, and other such basic tasks. And no need to be an expert in the latest improvements to HTML5.
  • CSS: in this course, minimal familiarity with CSS, if only knowing how to apply some simple properties to specific elements, will come in handy at times. But not need to be an able graphics designer.
  • DOM: extensive knowledge of the DOM is not necessary, but the ability to work with some of its more basic methods (getElementById, appendChild, etc.) is required.
  • JavaScript: Web applications are written in JavaScript, and therefore you need to be able to read and write reasonably correct code.
  • Mobile Web and Application Best Practices: those two W3C documents (MWBP and MWABP) are a recommended reading (over the running time of the whole course). Look for the next scheduled teaching session of the Mobile Web and Application Best Practices course, if you haven’t already followed it.
Ideally, as well as a desktop or laptop computer, you should have access to:
  • A smartphone with either a suitable data plan or support for wifi. In the absence of this, it is possible to rely on emulators. However, an actual mobile device is a better option*.
  • A text editor (for HTML, CSS, Javascript)
  • Facilities for putting documents online. If you don’t have a Web server through which you can easily do this, we recommend you consider using one of the many free web hosting services available such as x10hosting and Free Web Hosting Area (there are many others to choose from too). These are limited accounts (they’re free!) but they should allow you sufficient flexibility to complete the course.
For more information, see How does this work?

Terms and Conditions

  • W3C will deliver the course in line with the published description for the advertised fee.
  • Payment must be made, in full, at the time of registration.
  • Payment is processed using either a credit card or a PayPal account.
  • Refunds will only be made if the participant withdraws up until the end of the first week of the online course.
  • W3C intends to continue to make the course material available to registered participants for at least 2 months after the course has ended.
  • All material, including that produced by participants, in assignments and correspondence is copyrighted property and cannot be copied, duplicated, posted on another Web site, or otherwise used without the original author’s consent. Conversations and posted messages are private and cannot be copied, duplicated, forwarded, or conveyed to anyone else without the original author’s permission.

0 yorum: