SlideShare a Scribd company logo
1 of 21
Rise of the Responsive Single
      Page Application




 “2013 Is the Year of Responsive Web Design” - Mashable

                                      Photo and Quote http://mashable.com/2012/12/11/responsive-web-design/
Design
What is Responsive Design?
                It’s not this:




http://netforbeginners.about.com/od/internet101/tp/How-Mobile-Web-Pages-Are-Different.htm
Trello: The Best
                                                   Practice
                                      • Use Media Queries
                                      • Everything is
                                        accessible on every
                                        platform
                                      • Even
                                        Navigation/Header is
                                        Responsive


http://blog.fogcreek.com/building-trello-com-for-multiple-devices/
Why Responsive?
• Better Experience
  – Unified across experiences (Don’t use iOS or
    Android’s design patterns, use your own)
  – Mobile: in browser or app
  – Consistent URL structure
  – Single page – Pages are so 2000s
  – Mobile Users Don’t Need to Do Everything that
    Web Users Need to Do – FALSE
Why Responsive?
• Better SEO
  – Decrease mobile bounce rate
  – Backlinks go to one site
• Better Deployment & Maintenance
  – Deploy once to multiple platforms
  – No (or less) versioning on API
  – Circumvent app stores on updates (Sometimes)
  – All content is in one place
Developing Responsively
        The Good                     The Ugly
• One small, talented •      More design work
  team can deliver a lot     (target every screen
• No one gets left out       size)
   – Windows Phone       •   Manage loading times
   – Blackberry          •   It’s hard


      1.5x the work = 3-4x the reward
Technology
http://www.slideshare.net/finjonkiang/phonegap-jquerymobile
http://www.slideshare.net/finjonkiang/phonegap-jquerymobile
Javascript can get messy…
Google to the rescue!




a framework for single page
       applications
Used in Production
The Angular philosophy
• Decouple the client side of an app
  from the server side. This allows
    development work to progress in parallel, and allows
    for reuse of both sides.

• Decouple DOM manipulation from app logic.

• It is very helpful if the framework guides developers
  through the entire journey of building an app: from
  designing the UI, through writing the business logic, to
  testing.

 http://www.slideshare.net/AgentK/angularjs-for-designers-and-developers
Our Dev Workflow
Speed up and improve development workflow
by

•   Enforcing code practices
•   Testing
•   Automating everything
•   Doing these things as early as possible
http://www.slideshare.net/DavidAm/gruntjs-and-yeoman-continous-integration
Our grunt workflow (346 lines)
               grunt server

               Watch when files change then
                    – Lint
                    –   Compile less to css
                    –   Compile html templates
                    –   Include development mocks
                    –   Reload the page


grunt server:test               grunt build

Above +                         Above + Minify +
• Point any browsers to the url
• Trigger tests in parallel

More Related Content

What's hot

Single page application and Framework
Single page application and FrameworkSingle page application and Framework
Single page application and FrameworkChandrasekar G
 
Single page applications
Single page applicationsSingle page applications
Single page applicationsPrafful Garg
 
Iseltech17 - Single Page Applications
Iseltech17 - Single Page ApplicationsIseltech17 - Single Page Applications
Iseltech17 - Single Page ApplicationsMonica Rodrigues
 
Single Page Application presentation
Single Page Application presentationSingle Page Application presentation
Single Page Application presentationJohn Staveley
 
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014Duy Lâm
 
Single Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSSingle Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSM R Rony
 
Rise and Fall of the Frontend Developer
Rise and Fall of the Frontend DeveloperRise and Fall of the Frontend Developer
Rise and Fall of the Frontend DeveloperRafael Casuso Romate
 
Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4Yuriy Shapovalov
 
Server rendering-talk
Server rendering-talkServer rendering-talk
Server rendering-talkDaiwei Lu
 
Modern SharePoint Development using Visual Studio Code
Modern SharePoint Development using Visual Studio CodeModern SharePoint Development using Visual Studio Code
Modern SharePoint Development using Visual Studio CodeJared Matfess
 
Building a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and BeyondBuilding a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and BeyondSpike Brehm
 
Joomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesJoomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesAndy_Gaskell
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?KMS Technology
 
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014Viktor Vogel
 

What's hot (20)

Single page application and Framework
Single page application and FrameworkSingle page application and Framework
Single page application and Framework
 
Single page applications
Single page applicationsSingle page applications
Single page applications
 
Single page applications
Single page applicationsSingle page applications
Single page applications
 
Iseltech17 - Single Page Applications
Iseltech17 - Single Page ApplicationsIseltech17 - Single Page Applications
Iseltech17 - Single Page Applications
 
Single Page Applications
Single Page ApplicationsSingle Page Applications
Single Page Applications
 
Single Page Application presentation
Single Page Application presentationSingle Page Application presentation
Single Page Application presentation
 
Single page App
Single page AppSingle page App
Single page App
 
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
 
Single Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSSingle Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJS
 
Rise and Fall of the Frontend Developer
Rise and Fall of the Frontend DeveloperRise and Fall of the Frontend Developer
Rise and Fall of the Frontend Developer
 
A Gentle Introduction to Blazor
A Gentle Introduction to BlazorA Gentle Introduction to Blazor
A Gentle Introduction to Blazor
 
Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4Single Page Applications on JavaScript and ASP.NET MVC4
Single Page Applications on JavaScript and ASP.NET MVC4
 
Server rendering-talk
Server rendering-talkServer rendering-talk
Server rendering-talk
 
Modern SharePoint Development using Visual Studio Code
Modern SharePoint Development using Visual Studio CodeModern SharePoint Development using Visual Studio Code
Modern SharePoint Development using Visual Studio Code
 
Sexy React Stack
Sexy React StackSexy React Stack
Sexy React Stack
 
Building a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and BeyondBuilding a Single-Page App: Backbone, Node.js, and Beyond
Building a Single-Page App: Backbone, Node.js, and Beyond
 
Codegen2021 blazor mobile
Codegen2021 blazor mobileCodegen2021 blazor mobile
Codegen2021 blazor mobile
 
Joomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesJoomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiences
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?
 
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
 

Viewers also liked

Responsive web design with Angularjs
Responsive web design with AngularjsResponsive web design with Angularjs
Responsive web design with AngularjsArnab Pradhan
 
Introducing to node.js
Introducing to node.jsIntroducing to node.js
Introducing to node.jsJeongHun Byeon
 
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버JungWoon Lee
 
JSConf US 2014: Building Isomorphic Apps
JSConf US 2014: Building Isomorphic AppsJSConf US 2014: Building Isomorphic Apps
JSConf US 2014: Building Isomorphic AppsSpike Brehm
 
Single-page Application
Single-page ApplicationSingle-page Application
Single-page ApplicationSangmin Yoon
 
Five stages of grief: Evolving a multi-page web app to a single page application
Five stages of grief: Evolving a multi-page web app to a single page applicationFive stages of grief: Evolving a multi-page web app to a single page application
Five stages of grief: Evolving a multi-page web app to a single page applicationCharles Knight
 
HTML5 소개 및 배우기- HTML5 Open Conference
HTML5 소개 및 배우기- HTML5 Open ConferenceHTML5 소개 및 배우기- HTML5 Open Conference
HTML5 소개 및 배우기- HTML5 Open ConferenceChanny Yun
 
Single Page WebApp Architecture
Single Page WebApp ArchitectureSingle Page WebApp Architecture
Single Page WebApp ArchitectureMorgan Cheng
 
Building single page applications
Building single page applicationsBuilding single page applications
Building single page applicationsSC5.io
 
Microservice, Micro Deployments and DevOps
Microservice, Micro Deployments and DevOpsMicroservice, Micro Deployments and DevOps
Microservice, Micro Deployments and DevOpsAlois Reitbauer
 
Web app 개발 방법론
Web app 개발 방법론Web app 개발 방법론
Web app 개발 방법론Sang Seok Lim
 
Agile - SCRUM을 통한 개발관리
Agile - SCRUM을 통한 개발관리Agile - SCRUM을 통한 개발관리
Agile - SCRUM을 통한 개발관리SangJin Kang
 
스크럼, 이걸 왜 하나요
스크럼, 이걸 왜 하나요스크럼, 이걸 왜 하나요
스크럼, 이걸 왜 하나요Insub Lee
 
Top 10 Questions about HTML5
Top 10 Questions about HTML5Top 10 Questions about HTML5
Top 10 Questions about HTML5Jonathan Jeon
 
ReactJS로 시작하는 멀티플랫폼 개발하기
ReactJS로 시작하는 멀티플랫폼 개발하기ReactJS로 시작하는 멀티플랫폼 개발하기
ReactJS로 시작하는 멀티플랫폼 개발하기Taegon Kim
 
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개태준 문
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Marraju Bollapragada V
 

Viewers also liked (20)

Responsive web design with Angularjs
Responsive web design with AngularjsResponsive web design with Angularjs
Responsive web design with Angularjs
 
Introducing to node.js
Introducing to node.jsIntroducing to node.js
Introducing to node.js
 
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
 
JSConf US 2014: Building Isomorphic Apps
JSConf US 2014: Building Isomorphic AppsJSConf US 2014: Building Isomorphic Apps
JSConf US 2014: Building Isomorphic Apps
 
Single-page Application
Single-page ApplicationSingle-page Application
Single-page Application
 
Five stages of grief: Evolving a multi-page web app to a single page application
Five stages of grief: Evolving a multi-page web app to a single page applicationFive stages of grief: Evolving a multi-page web app to a single page application
Five stages of grief: Evolving a multi-page web app to a single page application
 
HTML5 소개 및 배우기- HTML5 Open Conference
HTML5 소개 및 배우기- HTML5 Open ConferenceHTML5 소개 및 배우기- HTML5 Open Conference
HTML5 소개 및 배우기- HTML5 Open Conference
 
Single page application
Single page applicationSingle page application
Single page application
 
Top 10 web application development frameworks 2016
Top 10 web application development frameworks 2016Top 10 web application development frameworks 2016
Top 10 web application development frameworks 2016
 
Single Page WebApp Architecture
Single Page WebApp ArchitectureSingle Page WebApp Architecture
Single Page WebApp Architecture
 
Building single page applications
Building single page applicationsBuilding single page applications
Building single page applications
 
Microservice, Micro Deployments and DevOps
Microservice, Micro Deployments and DevOpsMicroservice, Micro Deployments and DevOps
Microservice, Micro Deployments and DevOps
 
Web app 개발 방법론
Web app 개발 방법론Web app 개발 방법론
Web app 개발 방법론
 
Agile - SCRUM을 통한 개발관리
Agile - SCRUM을 통한 개발관리Agile - SCRUM을 통한 개발관리
Agile - SCRUM을 통한 개발관리
 
스크럼, 이걸 왜 하나요
스크럼, 이걸 왜 하나요스크럼, 이걸 왜 하나요
스크럼, 이걸 왜 하나요
 
Top 10 Questions about HTML5
Top 10 Questions about HTML5Top 10 Questions about HTML5
Top 10 Questions about HTML5
 
ReactJS로 시작하는 멀티플랫폼 개발하기
ReactJS로 시작하는 멀티플랫폼 개발하기ReactJS로 시작하는 멀티플랫폼 개발하기
ReactJS로 시작하는 멀티플랫폼 개발하기
 
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
 
애자일의 모든것
애자일의 모든것애자일의 모든것
애자일의 모든것
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models
 

Similar to Rise of the responsive single page application

Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMukteswar Patnaik
 
PSEWEB 2013 - Make it responsive - TERMINALFOUR
PSEWEB 2013 - Make it responsive - TERMINALFOURPSEWEB 2013 - Make it responsive - TERMINALFOUR
PSEWEB 2013 - Make it responsive - TERMINALFOURTerminalfour
 
Introduction to hybrid application development
Introduction to hybrid application developmentIntroduction to hybrid application development
Introduction to hybrid application developmentKunjan Thakkar
 
A Smooth Transition to HTML5
A Smooth Transition to HTML5A Smooth Transition to HTML5
A Smooth Transition to HTML5Chris Bannon
 
Creating Large-Scale Responsive Websites
Creating Large-Scale Responsive WebsitesCreating Large-Scale Responsive Websites
Creating Large-Scale Responsive WebsitesKeith Doyle
 
Drupal Business Summit - making your sites mobile accessible, four methods.
Drupal Business Summit - making your sites mobile accessible, four methods.Drupal Business Summit - making your sites mobile accessible, four methods.
Drupal Business Summit - making your sites mobile accessible, four methods.Promet Source
 
Drupal Business Summit - making your sites mobile accessible, four methods
Drupal Business Summit - making your sites mobile accessible, four methodsDrupal Business Summit - making your sites mobile accessible, four methods
Drupal Business Summit - making your sites mobile accessible, four methodsAndy Kucharski
 
UX design for every screen
UX design for every screenUX design for every screen
UX design for every screenFour Kitchens
 
Impact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationImpact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationJoseph Labrecque
 
Responsive Web Design - Tom Robertshaw
Responsive Web Design - Tom RobertshawResponsive Web Design - Tom Robertshaw
Responsive Web Design - Tom RobertshawMeet Magento Spain
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeCaridy Patino
 
Putting Mobile First
Putting Mobile FirstPutting Mobile First
Putting Mobile FirstPrecedent
 
Seminar: Putting Mobile First
Seminar: Putting Mobile FirstSeminar: Putting Mobile First
Seminar: Putting Mobile FirstPrecedent
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting SmallAndrew Smith
 
Designing and delivering elearning in a multi-device world
Designing and delivering elearning in a multi-device worldDesigning and delivering elearning in a multi-device world
Designing and delivering elearning in a multi-device worldKineo
 
Mobile Mantras: Experience Design Best Practices for Mobile Development
Mobile Mantras: Experience Design Best Practices for Mobile DevelopmentMobile Mantras: Experience Design Best Practices for Mobile Development
Mobile Mantras: Experience Design Best Practices for Mobile DevelopmentOne to One
 
College Project - CMS/Website
College Project - CMS/Website College Project - CMS/Website
College Project - CMS/Website Hemant Katyal
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxchitrachauhan21
 
Seattle bestpractices2010
Seattle bestpractices2010Seattle bestpractices2010
Seattle bestpractices2010Olaseni Odebiyi
 

Similar to Rise of the responsive single page application (20)

Mobile web development
Mobile web development Mobile web development
Mobile web development
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile Solution
 
PSEWEB 2013 - Make it responsive - TERMINALFOUR
PSEWEB 2013 - Make it responsive - TERMINALFOURPSEWEB 2013 - Make it responsive - TERMINALFOUR
PSEWEB 2013 - Make it responsive - TERMINALFOUR
 
Introduction to hybrid application development
Introduction to hybrid application developmentIntroduction to hybrid application development
Introduction to hybrid application development
 
A Smooth Transition to HTML5
A Smooth Transition to HTML5A Smooth Transition to HTML5
A Smooth Transition to HTML5
 
Creating Large-Scale Responsive Websites
Creating Large-Scale Responsive WebsitesCreating Large-Scale Responsive Websites
Creating Large-Scale Responsive Websites
 
Drupal Business Summit - making your sites mobile accessible, four methods.
Drupal Business Summit - making your sites mobile accessible, four methods.Drupal Business Summit - making your sites mobile accessible, four methods.
Drupal Business Summit - making your sites mobile accessible, four methods.
 
Drupal Business Summit - making your sites mobile accessible, four methods
Drupal Business Summit - making your sites mobile accessible, four methodsDrupal Business Summit - making your sites mobile accessible, four methods
Drupal Business Summit - making your sites mobile accessible, four methods
 
UX design for every screen
UX design for every screenUX design for every screen
UX design for every screen
 
Impact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationImpact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher Education
 
Responsive Web Design - Tom Robertshaw
Responsive Web Design - Tom RobertshawResponsive Web Design - Tom Robertshaw
Responsive Web Design - Tom Robertshaw
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
 
Putting Mobile First
Putting Mobile FirstPutting Mobile First
Putting Mobile First
 
Seminar: Putting Mobile First
Seminar: Putting Mobile FirstSeminar: Putting Mobile First
Seminar: Putting Mobile First
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting Small
 
Designing and delivering elearning in a multi-device world
Designing and delivering elearning in a multi-device worldDesigning and delivering elearning in a multi-device world
Designing and delivering elearning in a multi-device world
 
Mobile Mantras: Experience Design Best Practices for Mobile Development
Mobile Mantras: Experience Design Best Practices for Mobile DevelopmentMobile Mantras: Experience Design Best Practices for Mobile Development
Mobile Mantras: Experience Design Best Practices for Mobile Development
 
College Project - CMS/Website
College Project - CMS/Website College Project - CMS/Website
College Project - CMS/Website
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
 
Seattle bestpractices2010
Seattle bestpractices2010Seattle bestpractices2010
Seattle bestpractices2010
 

Rise of the responsive single page application

  • 1. Rise of the Responsive Single Page Application “2013 Is the Year of Responsive Web Design” - Mashable Photo and Quote http://mashable.com/2012/12/11/responsive-web-design/
  • 3. What is Responsive Design? It’s not this: http://netforbeginners.about.com/od/internet101/tp/How-Mobile-Web-Pages-Are-Different.htm
  • 4. Trello: The Best Practice • Use Media Queries • Everything is accessible on every platform • Even Navigation/Header is Responsive http://blog.fogcreek.com/building-trello-com-for-multiple-devices/
  • 5. Why Responsive? • Better Experience – Unified across experiences (Don’t use iOS or Android’s design patterns, use your own) – Mobile: in browser or app – Consistent URL structure – Single page – Pages are so 2000s – Mobile Users Don’t Need to Do Everything that Web Users Need to Do – FALSE
  • 6. Why Responsive? • Better SEO – Decrease mobile bounce rate – Backlinks go to one site • Better Deployment & Maintenance – Deploy once to multiple platforms – No (or less) versioning on API – Circumvent app stores on updates (Sometimes) – All content is in one place
  • 7. Developing Responsively The Good The Ugly • One small, talented • More design work team can deliver a lot (target every screen • No one gets left out size) – Windows Phone • Manage loading times – Blackberry • It’s hard 1.5x the work = 3-4x the reward
  • 9.
  • 12.
  • 13. Javascript can get messy…
  • 14. Google to the rescue! a framework for single page applications
  • 16. The Angular philosophy • Decouple the client side of an app from the server side. This allows development work to progress in parallel, and allows for reuse of both sides. • Decouple DOM manipulation from app logic. • It is very helpful if the framework guides developers through the entire journey of building an app: from designing the UI, through writing the business logic, to testing. http://www.slideshare.net/AgentK/angularjs-for-designers-and-developers
  • 17. Our Dev Workflow Speed up and improve development workflow by • Enforcing code practices • Testing • Automating everything • Doing these things as early as possible
  • 19. Our grunt workflow (346 lines) grunt server Watch when files change then – Lint – Compile less to css – Compile html templates – Include development mocks – Reload the page grunt server:test grunt build Above + Above + Minify +
  • 20. • Point any browsers to the url
  • 21. • Trigger tests in parallel

Editor's Notes

  1. http://mashable.com/2012/12/11/responsive-web-design/
  2. Only 3 guys on the trello team
  3. No userfrustration on redirects/download app screens. No learning 2-3 interfaces
  4. Mobile optimized sites rank higher in mobile search – duh (responsive ranks just as high)
  5. A little bit of hard work up front pays off big time in the long run
  6. Build one site everywhere. The UI framework we use, jquery mobile, is tested on all major mobile devices and computers. The latest version 1.3 is now even responsive
  7. Build a application and host in on the web. Then just insert in on a mobile device (that way you can update without going through apple approval)
  8. If you need any native functionality use one common javascriptapi: Phonegap (an adobe company)
  9. That way you can use things like: camera, gps, notifications, contacts
  10. The problem is javascript is messy, so how can you build a large application?
  11. Google had the same problem so they built angular
  12. HBO starting to rebuild their entire site (also responsive) see: https://docs.google.com/presentation/d/1XlUpoYN2eO4VSOuEB8kq-p5t9zzKuEr334PmekycsT8/present#slide=id.g1d171640_5_0Of course google is also using it: Youtube application on PS3See more on built with angular: http://builtwith.angularjs.org/
  13. Good code is decoupled
  14. We also have a pretty cool development workflow
  15. Linting is an important practice employed at companies like Facebook and Google where you enforce consistent code style and best practices.Testacular is a test framework by google that runs your code directly on devices. So just by pulling up the right url on any device you want to test it will run those tests
  16. Instead of needing a driver like selenium Testacular injects tests into the browser, so by pointing any device to the url, you can run tests in parallel