Save 10% off ANY FITC event with discount code 'slideshare'
See our upcoming events at www.fitc.ca
OVERVIEW
Nick will discuss how AngularJS can be used to build omnichannel applications that leverage one codebase for all applications platforms – web, mobile, and packaged iOS and Android apps. The result? Faster time to market, better product/market fit, a better user experience, and drastically lower costs.
INTENDED AUDIENCE
Developers, designers and managers who need to deliver lean agile solutions across web, mobile web, and packaged mobile apps.
Nick Van Weerdenburg
Nick is the founder of rangle.io and leads rangle.io’s business development, consulting, and enterprise architecture activities. He’s a firm believer in the thin-server, full-JavaScript stack, and actively evanglizes this across the Toronto tech community.
15. Mobile Domination
1.Mobile First Ecosystem Dominates
2.AngularJS hits maturity
3.HTML5 > 90% coverage of users
4.MVC + HTML5 = real architecture for web apps
21. SPA Layered
Architecture
Styling- CSS
Structure- HTML
Behaviour-JavaScript
Data- RESTAPI
Dependencies are limited to
adjacent layers, with
Structure and Styling being
largely independent of Data.
22. HOW TO BUILD AN
OMNICHANNEL
APPLICATION
It’s Easy! UseAngularJS.
50. TIMEAND MARKET-FIT?
» Developing 4 apps requires a waterfall development
approach (complete specs built to spec)
» Market feedback needs to go into 4 codebases
» Many companies get stuck when they can’t find
developers
» If you miss the mark, your cost is x2 (8X more
expensive)
» You are late to market with a poor fit since you
had to use waterfall.
53. STRATEGYBEFORETACTICS
» Before debating native vs. HTML 5 mobile, figure
out your strategy!
» Do you need agile? Frequent delivery for rapid
feedback?
» Do you NEED multiple apps?
» How important is mobile web vs. app UX?
Your MVP MayDemand HTML5
55. WHATTO CONSIDER?
» mobile only?
» web site as important as mobile?
» mobile web important (no install barrier, easy
hyperlinking, occasional use)?
customer channel- appstore or other?
57. ACQUISITION CHANNELS
» App Store + App PR Channels (reviews, bloggers,
etc)
» Social Media
» Email
» Web Applications
» Desktop Applications
## Multitouch marketing- how many touches to
convert to an app user?
60. ONE CODEBASE TO RULE THEM ALL!
Asingleapplication forall channels:
>>Web
>> MobileWeb
>> iOSApp,AndroidApp,Windows
Phone,Windows 8,TV, etc.
61. HTML5Applications!
» HTML 5 + JavaScript
» MVC JavaScript Frameworks: AnglarJS, Backbone, …
» Modern CSS Frameworks: Bootstrap, Foundation,
Topcoat.io, Ionic
» Thin-servers behind a REST API
» Packaging for app stores with PhoneGap/Cordova or
similar
67. Controller Checkist
1.No $http/$resource in controllers - use services
2.No DOM manipulation - use directives
3.Few business rules - use services
4.Single Responsibility, short
5.One controller per file
6.Tests!!! (testable = modular = reusable )
69. ResponsiveWeb + PhoneGapTips
» Plan your directory structure early
» Build for PhoneGap early
» Leverage Gulp/Grunt and other build tools
» Automate tests and deployment
» Use a MVC framework to separate logic from
presentation
» Find a good mobile lab to leverage
» QA early and often!
70. OMNICHANNELSUMMARY
» 1/2 the time, 1/4 the development cost (not even
considering TCO)
» agile vs. waterfall processes
» more available developers
» front-end developers essential
» compounding benefits when responding to feedback-
i.e. the benefits of Agile development and
continuous deployment