SlideShare a Scribd company logo
1 of 26
Application in 24h
Quick prototyping of application using JavaScript


            by Yuriy V. Silvestrov, Mikhail Valkov
About us
Yuriy V. Silvestrov
10+ years record in IT, 8+ years devoted to managing
projects. Now working for Ciklum, managing a team
of 30+ persons making different software for Danish
financial organizations; also I am CTO in
PromoRepublic startup.
Twitter: @ysilvestrov
Please visit my website

http://yuriy.silvestrov.com
for more info or contact me at

yuriy@silvestrov.com.
About us

Mikhail Valkov
10+ years record in IT. 2+ years devoted to system
architecture. Now working for   Ciklum.


for more info contact me at

valkov.net@gmail.com.
   Based on our own         About lection
    experience

   Useful for startups
    and pet projects

   Not the right way, not
    the best way, but the
    fast one.

   Divide and conquer 
⌛ < 60

Time is counting
   Have tried to do a startup?

   Have experience with JavaScript/HTML5?

   Participated in Hakatons or similar events?

   Is AngularJS/RequireJS expert?




   We’ll try to adapt
How many of you
   Startup mode ON
    ◦ When do we need quick prototyping?
    ◦ How to quick prototype an app?
   JavaScript tricks
    ◦   MVC in JavaScript
    ◦   jQuery and jQuery plugins
    ◦   AngularJS
    ◦   RequireJS, Modules and AMD
   Design tips
    ◦ Using bootstraps (twitter etc.)
    ◦ Responsive design
   Q&A

Content
 A way to write something useful and not
  to spend years on it
 Fits to Minimum Valuable Product
  approach
    ◦ If you’ll fail, it would be fast
    ◦ If not, you’ll have plenty of time to refactor the
      application
    ◦ …while the “prototype” is still in use




Prototyping
   Alarm clocks with skinning and time
    synchronization

   See on BitBucket:
    ◦ http://bitbucket.org/ysilvestrov/alarm-clock


   See online demo:
    ◦ http://jayostudio.net/app/




Demo application
   What is startup?

   Act like startup!

   Implement main idea only

   Throw away everything else




Startup mode ON
   Lack of resources

   Fast show results

   If to fail at all – fail fast!




Why quick prototyping?
   Choose platform
   Download seed for chosen platform
   Quick UI
   Choose vital functionality to prototype
   Find the frameworks/solutions realizing
    the functionality
   Compose all together
   …
   PROFIT


How to prototype
   Client-Side JS & HTML5

   Development perspective

   Platform independency




Client-side JavaScript
   Use 3-rd party components

   Existing online services
    ◦ Prefer ones implementing REST interface

   Use dependency managers to integrate




Component development
JavaScript MVC
   85% of WebApps made with jQuery

   Pros
    ◦   Modularity
    ◦   Speed
    ◦   Small footprint
    ◦   Json

    Visit http://jquery.com/ for more details




jQuery and plugins
   One of 20+ MVC JS frameworks
   Supported by Google
   Integrated
    ◦   Templates
    ◦   Directives and filters
    ◦   Module systems
    ◦   Resources
    ◦   Asynchronous programming

Visit http://angularjs.org for details



Angular JS
   Dependency isolation

   Dependency management

   Modules loading and cashing

Visit http://requirejs.org/ for details




RequireJS
   AMD = Asynchronous Module Definition




   CommonJS

See https://github.com/amdjs/amdjs-api



Modules and AMD
   Use advanced CSS and JS

   Throw away old browsers

   Build one version of web app for all the
    devices

   Responsive design and mobile first



Design tips
   Twitter bootstrap
    http://twitter.github.com/bootstrap/
    ◦ Made for everyone




    ◦ Packed with features




Bootstrap usage
   Jasny bootstrap(http://jasny.github.com/bootstrap/)
    ◦ Row links, Input mask, File upload
    ◦ … and much more
   Kickstrap (http://getkickstrap.com/)
    ◦ Bootstrap with blackjack and hookers
    ◦ actually, with apps and themes




Twitter bootstrap extensions
                                    @ysilvestrov, @valkovnet
 Using media queries
 Mobile first




Responsive design
https://github.com/angular/angular-seed
https://github.com/ysilvestrov/angular-seed

Angular Seed
???

Questions?
yuriy@silvestrov.com

valkov.net@gmail.com

Thank you!
Waiting for your demos

More Related Content

What's hot

Making sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developersMaking sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developersLewiz
 
Fronted development trends - past, present and the future
Fronted development trends - past, present and the futureFronted development trends - past, present and the future
Fronted development trends - past, present and the futureHarijs Deksnis
 
JS Framework Comparison - An infographic
JS Framework Comparison - An infographicJS Framework Comparison - An infographic
JS Framework Comparison - An infographicInApp
 
Web development today
Web development todayWeb development today
Web development todayJaydev Gajera
 
JavaScript in Universal Windows Platform apps
JavaScript in Universal Windows Platform appsJavaScript in Universal Windows Platform apps
JavaScript in Universal Windows Platform appsTimmy Kokke
 
Starters with Django
Starters with Django Starters with Django
Starters with Django BeDjango
 
Get Started with JavaScript Frameworks
Get Started with JavaScript FrameworksGet Started with JavaScript Frameworks
Get Started with JavaScript FrameworksChristian Gaetano
 
jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013dmethvin
 
Latest Javascript MVC & Front End Frameworks 2017
Latest Javascript MVC & Front End Frameworks 2017Latest Javascript MVC & Front End Frameworks 2017
Latest Javascript MVC & Front End Frameworks 2017AmarInfotech
 
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...Prasid Pathak
 
jQuery Conference Toronto
jQuery Conference TorontojQuery Conference Toronto
jQuery Conference Torontodmethvin
 
Front-End 개발의 괜찮은 선택 ES6 & React
Front-End 개발의 괜찮은 선택  ES6 & ReactFront-End 개발의 괜찮은 선택  ES6 & React
Front-End 개발의 괜찮은 선택 ES6 & React지수 윤
 
Getting Started with React.js
Getting Started with React.jsGetting Started with React.js
Getting Started with React.jsSmile Gupta
 
JavaScript Framework Smackdown
JavaScript Framework SmackdownJavaScript Framework Smackdown
JavaScript Framework Smackdownmeghantaylor
 
Node.JS Tools for Visual Studio and Azure
Node.JS Tools for Visual Studio and AzureNode.JS Tools for Visual Studio and Azure
Node.JS Tools for Visual Studio and AzureExcella
 
CraftCamp for Students - Introduction to JHipster
CraftCamp for Students - Introduction to JHipsterCraftCamp for Students - Introduction to JHipster
CraftCamp for Students - Introduction to JHipstercraftworkz
 
Sandeep Chauhan | Top java script frameworks in 2020
Sandeep Chauhan | Top java script frameworks in 2020Sandeep Chauhan | Top java script frameworks in 2020
Sandeep Chauhan | Top java script frameworks in 2020Sandeep Chauhan
 

What's hot (20)

Making sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developersMaking sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developers
 
Fronted development trends - past, present and the future
Fronted development trends - past, present and the futureFronted development trends - past, present and the future
Fronted development trends - past, present and the future
 
JS Framework Comparison - An infographic
JS Framework Comparison - An infographicJS Framework Comparison - An infographic
JS Framework Comparison - An infographic
 
Web development today
Web development todayWeb development today
Web development today
 
JavaScript in Universal Windows Platform apps
JavaScript in Universal Windows Platform appsJavaScript in Universal Windows Platform apps
JavaScript in Universal Windows Platform apps
 
Starters with Django
Starters with Django Starters with Django
Starters with Django
 
WebSite development using WinJS
WebSite development using WinJSWebSite development using WinJS
WebSite development using WinJS
 
Get Started with JavaScript Frameworks
Get Started with JavaScript FrameworksGet Started with JavaScript Frameworks
Get Started with JavaScript Frameworks
 
jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013
 
Latest Javascript MVC & Front End Frameworks 2017
Latest Javascript MVC & Front End Frameworks 2017Latest Javascript MVC & Front End Frameworks 2017
Latest Javascript MVC & Front End Frameworks 2017
 
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...
 
jQuery Conference Toronto
jQuery Conference TorontojQuery Conference Toronto
jQuery Conference Toronto
 
A team 43 C
A team 43 CA team 43 C
A team 43 C
 
Intro to Web Development
Intro to Web DevelopmentIntro to Web Development
Intro to Web Development
 
Front-End 개발의 괜찮은 선택 ES6 & React
Front-End 개발의 괜찮은 선택  ES6 & ReactFront-End 개발의 괜찮은 선택  ES6 & React
Front-End 개발의 괜찮은 선택 ES6 & React
 
Getting Started with React.js
Getting Started with React.jsGetting Started with React.js
Getting Started with React.js
 
JavaScript Framework Smackdown
JavaScript Framework SmackdownJavaScript Framework Smackdown
JavaScript Framework Smackdown
 
Node.JS Tools for Visual Studio and Azure
Node.JS Tools for Visual Studio and AzureNode.JS Tools for Visual Studio and Azure
Node.JS Tools for Visual Studio and Azure
 
CraftCamp for Students - Introduction to JHipster
CraftCamp for Students - Introduction to JHipsterCraftCamp for Students - Introduction to JHipster
CraftCamp for Students - Introduction to JHipster
 
Sandeep Chauhan | Top java script frameworks in 2020
Sandeep Chauhan | Top java script frameworks in 2020Sandeep Chauhan | Top java script frameworks in 2020
Sandeep Chauhan | Top java script frameworks in 2020
 

Viewers also liked

Mistä ne puhuu? Mikä on some ja mikä twiitti?
Mistä ne puhuu? Mikä on some ja mikä twiitti?Mistä ne puhuu? Mikä on some ja mikä twiitti?
Mistä ne puhuu? Mikä on some ja mikä twiitti?Pasi Siltakorpi
 
R E S U M E W R I T I N G
R E S U M E  W R I T I N GR E S U M E  W R I T I N G
R E S U M E W R I T I N Gvivek170388
 
Tuotan-Olen olemassa. Sisältöä sosiaaliseen mediaan
Tuotan-Olen olemassa. Sisältöä sosiaaliseen mediaanTuotan-Olen olemassa. Sisältöä sosiaaliseen mediaan
Tuotan-Olen olemassa. Sisältöä sosiaaliseen mediaanPasi Siltakorpi
 
Live@Edu Demo Presentation
Live@Edu Demo PresentationLive@Edu Demo Presentation
Live@Edu Demo PresentationMausom
 
SMiB09 Peter Crosby
SMiB09 Peter Crosby SMiB09 Peter Crosby
SMiB09 Peter Crosby smibevents
 
Inscape Corporate Brochure
Inscape Corporate BrochureInscape Corporate Brochure
Inscape Corporate Brochureroe905
 
Intro Ppt
Intro PptIntro Ppt
Intro PptMausom
 
The be into(はまりもの)
The be into(はまりもの)The be into(はまりもの)
The be into(はまりもの)ripper0217
 
96 The Esplanade
96 The Esplanade96 The Esplanade
96 The Esplanaderobventer
 
Kids Bible Study -- Be content
Kids Bible Study  -- Be content Kids Bible Study  -- Be content
Kids Bible Study -- Be content yinglingyy
 
Customer development oxford 14.02.2015
Customer development   oxford 14.02.2015Customer development   oxford 14.02.2015
Customer development oxford 14.02.2015Lino Velev
 
Constitution herd
Constitution  herdConstitution  herd
Constitution herdacolyte26
 
Social Networking Pp Draft 1 TEST
Social Networking Pp Draft 1 TESTSocial Networking Pp Draft 1 TEST
Social Networking Pp Draft 1 TESTCornell
 
Workwear
WorkwearWorkwear
Workwearkausarh
 
Com Ensenyar Llengua A Xinesos Lh
Com Ensenyar Llengua A Xinesos LhCom Ensenyar Llengua A Xinesos Lh
Com Ensenyar Llengua A Xinesos LhArnau Cerdà
 
Presentation from Gianfranco Burzio at parallel session on Human factors and...
Presentation from Gianfranco Burzio at parallel session on  Human factors and...Presentation from Gianfranco Burzio at parallel session on  Human factors and...
Presentation from Gianfranco Burzio at parallel session on Human factors and...euroFOT
 

Viewers also liked (20)

Mistä ne puhuu? Mikä on some ja mikä twiitti?
Mistä ne puhuu? Mikä on some ja mikä twiitti?Mistä ne puhuu? Mikä on some ja mikä twiitti?
Mistä ne puhuu? Mikä on some ja mikä twiitti?
 
R E S U M E W R I T I N G
R E S U M E  W R I T I N GR E S U M E  W R I T I N G
R E S U M E W R I T I N G
 
Tuotan-Olen olemassa. Sisältöä sosiaaliseen mediaan
Tuotan-Olen olemassa. Sisältöä sosiaaliseen mediaanTuotan-Olen olemassa. Sisältöä sosiaaliseen mediaan
Tuotan-Olen olemassa. Sisältöä sosiaaliseen mediaan
 
Live@Edu Demo Presentation
Live@Edu Demo PresentationLive@Edu Demo Presentation
Live@Edu Demo Presentation
 
SMiB09 Peter Crosby
SMiB09 Peter Crosby SMiB09 Peter Crosby
SMiB09 Peter Crosby
 
Inscape Corporate Brochure
Inscape Corporate BrochureInscape Corporate Brochure
Inscape Corporate Brochure
 
Intro Ppt
Intro PptIntro Ppt
Intro Ppt
 
簡報1
簡報1簡報1
簡報1
 
The be into(はまりもの)
The be into(はまりもの)The be into(はまりもの)
The be into(はまりもの)
 
96 The Esplanade
96 The Esplanade96 The Esplanade
96 The Esplanade
 
Grammar tenses
Grammar tensesGrammar tenses
Grammar tenses
 
Kids Bible Study -- Be content
Kids Bible Study  -- Be content Kids Bible Study  -- Be content
Kids Bible Study -- Be content
 
Customer development oxford 14.02.2015
Customer development   oxford 14.02.2015Customer development   oxford 14.02.2015
Customer development oxford 14.02.2015
 
Constitution herd
Constitution  herdConstitution  herd
Constitution herd
 
Social Networking Pp Draft 1 TEST
Social Networking Pp Draft 1 TESTSocial Networking Pp Draft 1 TEST
Social Networking Pp Draft 1 TEST
 
Workwear
WorkwearWorkwear
Workwear
 
Com Ensenyar Llengua A Xinesos Lh
Com Ensenyar Llengua A Xinesos LhCom Ensenyar Llengua A Xinesos Lh
Com Ensenyar Llengua A Xinesos Lh
 
Presentation from Gianfranco Burzio at parallel session on Human factors and...
Presentation from Gianfranco Burzio at parallel session on  Human factors and...Presentation from Gianfranco Burzio at parallel session on  Human factors and...
Presentation from Gianfranco Burzio at parallel session on Human factors and...
 
Profile
ProfileProfile
Profile
 
lee
leelee
lee
 

Similar to Quickly Prototype Apps in 24h with JavaScript

full stqack guktgktktykytkyyyjrneyrynye5n
full stqack guktgktktykytkyyyjrneyrynye5nfull stqack guktgktktykytkyyyjrneyrynye5n
full stqack guktgktktykytkyyyjrneyrynye5nGoogleDSCDibrugarhUn
 
Pain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr SugakPain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr SugakSigma Software
 
Angular JS - Develop Responsive Single Page Application
Angular JS - Develop Responsive Single Page ApplicationAngular JS - Develop Responsive Single Page Application
Angular JS - Develop Responsive Single Page ApplicationEdureka!
 
Webinar on Angular JS titled 'Develop Responsive Single Page Application'
Webinar on Angular JS titled 'Develop Responsive Single Page Application'Webinar on Angular JS titled 'Develop Responsive Single Page Application'
Webinar on Angular JS titled 'Develop Responsive Single Page Application'Edureka!
 
KnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVCKnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVCLearnNowOnline
 
Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017Matt Raible
 
AngularJS : Superheroic JavaScript MVW Framework
AngularJS : Superheroic JavaScript MVW FrameworkAngularJS : Superheroic JavaScript MVW Framework
AngularJS : Superheroic JavaScript MVW FrameworkEdureka!
 
Seminar: Become a Reliable Web Programmer
Seminar: Become a Reliable Web ProgrammerSeminar: Become a Reliable Web Programmer
Seminar: Become a Reliable Web ProgrammerAchmad Solichin
 
AngularJS : Superheroic Javascript MVW Framework
AngularJS : Superheroic Javascript MVW FrameworkAngularJS : Superheroic Javascript MVW Framework
AngularJS : Superheroic Javascript MVW FrameworkEdureka!
 
Angular JS - Introduction
Angular JS - IntroductionAngular JS - Introduction
Angular JS - IntroductionSagar Acharya
 
The State of Front-end At CrowdTwist
The State of Front-end At CrowdTwistThe State of Front-end At CrowdTwist
The State of Front-end At CrowdTwistMark Fayngersh
 
AngularJS: A framework to make your life easier
AngularJS: A framework to make your life easierAngularJS: A framework to make your life easier
AngularJS: A framework to make your life easierWilson Mendes
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkTroy Miles
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | IntroductionJohnTaieb
 
Build and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsBuild and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsJeff Hull
 
Angular JS, A dive to concepts
Angular JS, A dive to conceptsAngular JS, A dive to concepts
Angular JS, A dive to conceptsAbhishek Sur
 
JSFest 2019: Technology agnostic microservices at SPA frontend
JSFest 2019: Technology agnostic microservices at SPA frontendJSFest 2019: Technology agnostic microservices at SPA frontend
JSFest 2019: Technology agnostic microservices at SPA frontendVlad Fedosov
 

Similar to Quickly Prototype Apps in 24h with JavaScript (20)

full stqack guktgktktykytkyyyjrneyrynye5n
full stqack guktgktktykytkyyyjrneyrynye5nfull stqack guktgktktykytkyyyjrneyrynye5n
full stqack guktgktktykytkyyyjrneyrynye5n
 
Pain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr SugakPain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr Sugak
 
Angular JS - Develop Responsive Single Page Application
Angular JS - Develop Responsive Single Page ApplicationAngular JS - Develop Responsive Single Page Application
Angular JS - Develop Responsive Single Page Application
 
Webinar on Angular JS titled 'Develop Responsive Single Page Application'
Webinar on Angular JS titled 'Develop Responsive Single Page Application'Webinar on Angular JS titled 'Develop Responsive Single Page Application'
Webinar on Angular JS titled 'Develop Responsive Single Page Application'
 
KnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVCKnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVC
 
Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017
 
AngularJS : Superheroic JavaScript MVW Framework
AngularJS : Superheroic JavaScript MVW FrameworkAngularJS : Superheroic JavaScript MVW Framework
AngularJS : Superheroic JavaScript MVW Framework
 
Seminar: Become a Reliable Web Programmer
Seminar: Become a Reliable Web ProgrammerSeminar: Become a Reliable Web Programmer
Seminar: Become a Reliable Web Programmer
 
Jquery
JqueryJquery
Jquery
 
AngularJS : Superheroic Javascript MVW Framework
AngularJS : Superheroic Javascript MVW FrameworkAngularJS : Superheroic Javascript MVW Framework
AngularJS : Superheroic Javascript MVW Framework
 
Angular JS - Introduction
Angular JS - IntroductionAngular JS - Introduction
Angular JS - Introduction
 
The State of Front-end At CrowdTwist
The State of Front-end At CrowdTwistThe State of Front-end At CrowdTwist
The State of Front-end At CrowdTwist
 
AngularJS: A framework to make your life easier
AngularJS: A framework to make your life easierAngularJS: A framework to make your life easier
AngularJS: A framework to make your life easier
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | Introduction
 
Build and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsBuild and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 Mins
 
jQuery
jQueryjQuery
jQuery
 
jQuery templates
jQuery templatesjQuery templates
jQuery templates
 
Angular JS, A dive to concepts
Angular JS, A dive to conceptsAngular JS, A dive to concepts
Angular JS, A dive to concepts
 
JSFest 2019: Technology agnostic microservices at SPA frontend
JSFest 2019: Technology agnostic microservices at SPA frontendJSFest 2019: Technology agnostic microservices at SPA frontend
JSFest 2019: Technology agnostic microservices at SPA frontend
 

More from Yuriy Silvestrov

How to run asp.net on virtual server for $5 per mo
How to run asp.net on  virtual server for $5 per moHow to run asp.net on  virtual server for $5 per mo
How to run asp.net on virtual server for $5 per moYuriy Silvestrov
 
Startups intro to agile (по-русски)
Startups intro to agile (по-русски)Startups intro to agile (по-русски)
Startups intro to agile (по-русски)Yuriy Silvestrov
 
Developing the startup (in Russian)
Developing the startup (in Russian)Developing the startup (in Russian)
Developing the startup (in Russian)Yuriy Silvestrov
 
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russianStartup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russianYuriy Silvestrov
 
Agile antipatterns - AgileBC
Agile antipatterns - AgileBCAgile antipatterns - AgileBC
Agile antipatterns - AgileBCYuriy Silvestrov
 
Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)Yuriy Silvestrov
 

More from Yuriy Silvestrov (8)

How to run asp.net on virtual server for $5 per mo
How to run asp.net on  virtual server for $5 per moHow to run asp.net on  virtual server for $5 per mo
How to run asp.net on virtual server for $5 per mo
 
Startups intro to agile (по-русски)
Startups intro to agile (по-русски)Startups intro to agile (по-русски)
Startups intro to agile (по-русски)
 
Developing the startup (in Russian)
Developing the startup (in Russian)Developing the startup (in Russian)
Developing the startup (in Russian)
 
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russianStartup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
 
Developing the ideas
Developing the ideasDeveloping the ideas
Developing the ideas
 
Agile antipatterns - AgileBC
Agile antipatterns - AgileBCAgile antipatterns - AgileBC
Agile antipatterns - AgileBC
 
Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)
 
Catch agile
Catch agileCatch agile
Catch agile
 

Quickly Prototype Apps in 24h with JavaScript

  • 1. Application in 24h Quick prototyping of application using JavaScript by Yuriy V. Silvestrov, Mikhail Valkov
  • 2. About us Yuriy V. Silvestrov 10+ years record in IT, 8+ years devoted to managing projects. Now working for Ciklum, managing a team of 30+ persons making different software for Danish financial organizations; also I am CTO in PromoRepublic startup. Twitter: @ysilvestrov Please visit my website http://yuriy.silvestrov.com for more info or contact me at yuriy@silvestrov.com.
  • 3. About us Mikhail Valkov 10+ years record in IT. 2+ years devoted to system architecture. Now working for Ciklum. for more info contact me at valkov.net@gmail.com.
  • 4. Based on our own About lection experience  Useful for startups and pet projects  Not the right way, not the best way, but the fast one.  Divide and conquer 
  • 5. ⌛ < 60 Time is counting
  • 6. Have tried to do a startup?  Have experience with JavaScript/HTML5?  Participated in Hakatons or similar events?  Is AngularJS/RequireJS expert?  We’ll try to adapt How many of you
  • 7. Startup mode ON ◦ When do we need quick prototyping? ◦ How to quick prototype an app?  JavaScript tricks ◦ MVC in JavaScript ◦ jQuery and jQuery plugins ◦ AngularJS ◦ RequireJS, Modules and AMD  Design tips ◦ Using bootstraps (twitter etc.) ◦ Responsive design  Q&A Content
  • 8.  A way to write something useful and not to spend years on it  Fits to Minimum Valuable Product approach ◦ If you’ll fail, it would be fast ◦ If not, you’ll have plenty of time to refactor the application ◦ …while the “prototype” is still in use Prototyping
  • 9. Alarm clocks with skinning and time synchronization  See on BitBucket: ◦ http://bitbucket.org/ysilvestrov/alarm-clock  See online demo: ◦ http://jayostudio.net/app/ Demo application
  • 10. What is startup?  Act like startup!  Implement main idea only  Throw away everything else Startup mode ON
  • 11. Lack of resources  Fast show results  If to fail at all – fail fast! Why quick prototyping?
  • 12. Choose platform  Download seed for chosen platform  Quick UI  Choose vital functionality to prototype  Find the frameworks/solutions realizing the functionality  Compose all together  …  PROFIT How to prototype
  • 13. Client-Side JS & HTML5  Development perspective  Platform independency Client-side JavaScript
  • 14. Use 3-rd party components  Existing online services ◦ Prefer ones implementing REST interface  Use dependency managers to integrate Component development
  • 16. 85% of WebApps made with jQuery  Pros ◦ Modularity ◦ Speed ◦ Small footprint ◦ Json Visit http://jquery.com/ for more details jQuery and plugins
  • 17. One of 20+ MVC JS frameworks  Supported by Google  Integrated ◦ Templates ◦ Directives and filters ◦ Module systems ◦ Resources ◦ Asynchronous programming Visit http://angularjs.org for details Angular JS
  • 18. Dependency isolation  Dependency management  Modules loading and cashing Visit http://requirejs.org/ for details RequireJS
  • 19. AMD = Asynchronous Module Definition  CommonJS See https://github.com/amdjs/amdjs-api Modules and AMD
  • 20. Use advanced CSS and JS  Throw away old browsers  Build one version of web app for all the devices  Responsive design and mobile first Design tips
  • 21. Twitter bootstrap http://twitter.github.com/bootstrap/ ◦ Made for everyone ◦ Packed with features Bootstrap usage
  • 22. Jasny bootstrap(http://jasny.github.com/bootstrap/) ◦ Row links, Input mask, File upload ◦ … and much more  Kickstrap (http://getkickstrap.com/) ◦ Bootstrap with blackjack and hookers ◦ actually, with apps and themes Twitter bootstrap extensions @ysilvestrov, @valkovnet
  • 23.  Using media queries  Mobile first Responsive design