ABTech DME Program Website

Lectures, Tutorials, Resources, Samples and Notes for DME courses

  • Home
  • Lectures
  • Video Tutorials
  • DME Samples
  • Resources and Links
  • Workshops
< Back
  • Feb2013-Video for Businesses
  • Mobile Development Basics
  • Mobile Development Primer
  • FLEX 4
  • GIS - Google Earth and SketchUp
  • CIT2007 - Technology Tips and Tricks
  • CIT2007 - Video Editing Devices
  • CIT2007 - Effective Video Tutorials
  • Flickr - slideshows and more
  • Adobe Acrobat Tricks
  • Stand Alone Servers
  • NCCIA2010 Workshop notes
  • Working Connections 2010 Notes

Become a fan on facebook. Share projects, ideas, events... and even technical issues! Follow on Twitter.

Home > Resources and Links > Workshops > Mobile Development Basics

Mobile Development Basics

Why?... Explosive Growth!

Mobile computing is expanding rapidly and we can expect there to be an increasing need for a workforce skilled at mobile development. According to idc.com �There were more than 450 million mobile Internet users worldwide in 2009, a number that is expected to more than double by the end of 2013.� A lot of this growth has been with mobile touchscreen devices, which grew 97% in 2010 alone. Mobile access to Internet-based content is rising along with the growth of devices themselves. Infact, some analysts think that the �mobile internet will soon overtake the fixed internet� by 2015. These are staggering numbers and reflect the growing need for a mobile development workforce.

Why?... Future Employment!

It prepares our students for future employment. As web development diversifies there will be a need for both desktop-based and mobile-based web designers/developers. Already an �entry-level� web developer is expected to know about web standards... especially use of HTML, CSS and Javascript� the core technologies of HTML5. This program would focus on use of HTML5 which promises to be standardized on mobile devices long before the desktop. In addition, traditional web programming technologies like PHP/MySQL, XML, JAVA, Ajax, Actionscript and other languages are still important and would still apply to mobile development.

Plus... it is one of the fastest growing job markets out there.

Mobile Apps vs the Mobile Web

Based upon preliminary surveys, local companies (Asheville, NC) show that clients are requesting website content to be accessible on mobile devices. Using regular HTML and CSS it is possible to develop website content for either desktop or mobile, however, specialized skills are required for mobile devices as the screens and capabilities differ greatly from desktops.

These same skills can be used to create mobile apps� an application that is installed on the device itself and may or may not access internet-based content. Many mobile �web apps� access internet-based content, most notably social media apps like facebook and Twitter. Stats have revealed that mobile access to Facebook has risen 112% and Twitter has increased 347%.

Device Platforms

There are many reasons such as market share, popularity, or new features, to consider specific mobile platforms but the main focus should be on technologies that are cross-platform. This way development would support most devices, including Apple, Android, RIM, Nokia, Windows and other platforms. As for which platform to use in classrooms, the debate seems to be primarily between Apple and Android. Recent surveys show that developers favor Android over Apple long-term. Testing and deployment is easier on Android devices and offers other benefits to our students such as Android being available on most major network carriers and competitive prices for the devices. Developing for Android allows us to use existing software and equipment, whereas Apple-specific development would require Apple/MAC computer labs and devices. Still, we feel the curriculum should not focus on specific platforms, but rather on the technologies that are cross-platform.

Ways to Create Mobile �Apps�

Our program can address mobile development in number of ways:

  1. �Web� Apps and mobile websites
  2. Cross-compiler apps
  3. Native Apps

We will receive input from the planning advisory board and others, but based on preliminary surveys we feel that the �Web Apps� method is recommended because the cross-platform nature of HTML5 development. We also plan to use the �cross-compiler� method since we have classes in place to support that method and it allows more flexibility with design.

Web Apps and mobile websites

"Web Apps" are created with HTML(5), CSS(3), and Javascript APIs and are �contained� inside a native wrapper... a technique that allows the apps to run on multiple platforms. Mobile websites use the same basic technologies, but reside on a server like a traditional website. It is becoming common practice to develop websites with individual profiles for multiple devices, based upon the screen size of the device accessing the website. The main benefit to this method is the use of common technologies and the transportability of the content to any mobile device...Apple, Android, Nokia, Blackberry... or others.

Using Javascipt APIs you can access many native capabilities of devices... including geo-location, GPS, WiFi, phone status, accelerometer, multi-touch/gestures, contacts, audio/video, phone, and other functions. Javascript libraries exist to help create rich interfaces and interaction... like Worklight, XUI, YUI(yahoo), iUI, Sencha Touch, BaseJS, Mobile AJAX, Sproutcore, and I am sure, many others.

Cross-Compilers (aka �native� apps)

�Cross compilers� are used when you create code in one language, and output it to another. The best examples of this are the Flash packager and the Unity 3D Engine that package for both Apple and Android. Flash/Actionscript3 can run either as a compiled native app or as regular Flash content on an Android, but Flash can only run as a compiled native app on Apple. Using Flash (Actionscript3) you can access nearly all the native capabilities of the devices.

Native Apps

"Native" apps are those created with the native programming language for their platform such as Objective-C for Apple devices or Java for Android devices. The benefit of this method is that you can take full advantage of all the capabilities and functions of the devices. It is arguably the best method for creating apps for devices since it offers the most robust performance, however the languages are more complicated and take longer to develop. Also, applications created this way are not transportable to a different platform. Therefore, this will not be our focus, but will be addressed in the curriculum.

Conclusion

We feel as though this new program would offer our students a competitive edge in the growing mobile development market and meet the needs of employers to offer mobile development services to their clients.

TOPWebsite for A-B Tech Business Computing Technologies Digital Media Program. Contact Jonathan Ross for info.
Powered by CMSimple

Last update:
April 17. 2013 07:18:24