Rapid Web Development Tools
Enjoying your Work-Life?
Work-Life ...
Writing or Reading project specifications!
Work-Life ...
Writing or Reading project specifications
Working late night
!
!
Work-Life ...
Writing or Reading project specifications
Working late night
Writing JavaScript
!
!
!
Work-Life ...
Writing or Reading project specifications
Working late night
Writing JavaScript
Debugging code done by X employee
!
!
!
!
Work-Life ...
Writing or Reading project specifications
Working late night
Writing JavaScript
Debugging code done by X employee
Or Pished off!! with frequent changes
!
!
!
!
!
RWD Helps?
How to do Rapid Web Development?
And what we have accomplished using RWD?
!
!
About Me
and My Work
At Work I use
At Work I use
At Work I use
A Bit of
Mr. Bill
Gates
I Work for GeoBeats
It's a Video Travel Guide (not like YouTube)!
I Work for GeoBeats
It's a Video Travel Guide (not like YouTube)
What to See, Eat, and Travel
!
!
I Work for GeoBeats
It's a Video Travel Guide (not like YouTube)
What to See, Eat, and Travel
More then 400 Videos
!
!
!
I Work for GeoBeats
It's a Video Travel Guide (not like YouTube)
What to See, Eat, and Travel
More then 400 Videos
Across 30 Countries
!
!
!
!
Achievements Using RWD...
Alpha version in 15 days!
Achievements Using RWD...
Alpha version in 15 days
First Beta 1.5 Months (with Administration)
!
!
Achievements Using RWD...
Alpha version in 15 days
First Beta 1.5 Months (with Administration)
Coded in normal 5 days a week, 9 to 6
!
!
!
Achievements Using RWD...
Alpha version in 15 days
First Beta 1.5 Months (with Administration)
Coded in normal 5 days a week, 9 to 6
More then a Million visits (Excluding Video
Embed)
!
!
!
!
Using RWD...
We have Survived couple of Diggs
Using RWD...
Feels great when Google picks you up :)
How To RWD?
Read 37signals' Getting Real Book
Select Any Rapid Web Development Tool
DRY (Don't Repeat Yourself)
Use Open Source (Don't reinvent the wheel)
!
!
!
!
Getting Real
Why are we doing this?
Is there an easier way?
Is this actually useful?
Are we adding value?
What problem are we
solving?
!
!
!
!
!
http://farm1.static.flickr.com/157/431036565_b059a22bbc.jpg?v=0
RWD Web Framework
CakePHP
Ruby on Rails
Django (Python)
Grails (Groovy and
Java)
MonoRails (.Net
based)
!
!
!
!
!
http://farm4.static.flickr.com/3022/2425630215_b18afbb6ff.jpg?v=1208642817
What We Use..
We started with Cakephp
Why not Pure PHP?
!
!
What We Use..
We started with Cakephp
Why not Pure PHP?
Low on productivity
!
!
!
What We Use..
We started with Cakephp
Why not Pure PHP?
Low on productivity
Maintenance of code
!
!
!
!
Why we skipped Rails?
WAS asking for extra efforts on server side!
Why we skipped Rails?
Was asking for extra efforts on server side
Heavy Monitoring Was required
!
!
Why we skipped Rails?
Was asking for extra efforts on server side
Heavy Monitoring Was required
Things have improved
!
!
!
Why we skipped Rails?
Was asking for extra efforts on server side
Heavy Monitoring Was required
Things have improved
Very easy with mod_rails (Apache) or Jruby (Java)
!
!
!
!
Why we skipped Rails?
Was asking for extra efforts on server side
Heavy Monitoring Was required
Things have improved
Very easy with mod_rails (Apache) or Jruby (Java)
Low monitoring, Profiling tools and big community
!
!
!
!
!
Our Next Application is
using
Ruby on Rails
RWD JavaScript Framework
Jquery (Firefox Fuel)!
http://farm1.static.flickr.com/203/464449077_4c1202336a.jpg?v=0
RWD JavaScript Framework
Jquery (Firefox Fuel)
Prototype
Mootools
Dojo
Yahoo UI
Ext JS
!
!
!
!
!
!http://farm1.static.flickr.com/203/464449077_4c1202336a.jpg?v=0
RWD CSS Framework/Reset
http://farm3.static.flickr.com/2209/2273327790_6f40747536.jpg?v=0
RWD CSS Framework/Reset
We use Yahoo Reset!
http://farm3.static.flickr.com/2209/2273327790_6f40747536.jpg?v=0
RWD CSS Framework/Reset
Yahoo Reset
Blueprint
Boilerplate
LogicCSS
!
!
!
!
http://farm3.static.flickr.com/2209/2273327790_6f40747536.jpg?v=0
DRY
Don't use more than one
way to express
!
http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
DRY
Don't use more than one
way to express
Headache of maintaining
!
!
http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
DRY
Don't use more than one
way to express
Headache of maintaining
Organize your code in
methods and subroutines
!
!
!
http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
DRY
Don't use more than one
way to express
Headache of maintaining
Organize your code in
methods and subroutines
We use Mailers, and
Generators
!
!
!
!
http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
Use Open Source
Review the code
Simpler is better
!
!
http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
Use Open Source
Review the code
Simpler is better
Easier to understand
!
!
!
http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
Use Open Source
Review the code
Simpler is better
Easier to understand
Know how it works
!
!
!
!
http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
Use Open Source
Review the code
Simpler is better
Easier to understand
Know how it works
Play and Test it
!
!
!
!
!
http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
What we use?
50
Gdata API from Zend Framework
Jeroen Wijering Flash Video Player
Purchased it’s license to use it in commercial website
Customized it with add-on features for GeoBeats
Currently Flash Video player is developed in House
!
!
!
!
!
What we use?
51
Gdata API from Zend Framework
Jeroen Wijering Flash Player
Purchased it’s license to use it in commercial website
Customized it with add-on features of GeoBeats
We faced a question how to write Test Cases?
And we decided to again consider open-source..
!
!
!
!
!
How You Write Test cases
BDD structure for Acceptance Criteria:
Scenario 1: Title
Given [context]
And [some more context]...
When [event]
Then [outcome]
And [another outcome]...
How You Write Test cases
Test Case 2 : Continent should not be selected along with it's country(ies)
Given : Holding down the ctrl key for multiple selections
And : India and China are selected
When : Try to select Asia
Then : Asia should not be selected
# Result
Pass
Read
Thank You
Contact:
shanlalit@geobeats.com
job@geobeats.com
Q&A

Startup and Rapid web development

  • 1.
  • 2.
  • 3.
    Work-Life ... Writing orReading project specifications!
  • 4.
    Work-Life ... Writing orReading project specifications Working late night ! !
  • 5.
    Work-Life ... Writing orReading project specifications Working late night Writing JavaScript ! ! !
  • 6.
    Work-Life ... Writing orReading project specifications Working late night Writing JavaScript Debugging code done by X employee ! ! ! !
  • 7.
    Work-Life ... Writing orReading project specifications Working late night Writing JavaScript Debugging code done by X employee Or Pished off!! with frequent changes ! ! ! ! !
  • 8.
    RWD Helps? How todo Rapid Web Development? And what we have accomplished using RWD? ! !
  • 9.
  • 10.
  • 11.
  • 12.
    At Work Iuse A Bit of Mr. Bill Gates
  • 13.
    I Work forGeoBeats It's a Video Travel Guide (not like YouTube)!
  • 14.
    I Work forGeoBeats It's a Video Travel Guide (not like YouTube) What to See, Eat, and Travel ! !
  • 17.
    I Work forGeoBeats It's a Video Travel Guide (not like YouTube) What to See, Eat, and Travel More then 400 Videos ! ! !
  • 18.
    I Work forGeoBeats It's a Video Travel Guide (not like YouTube) What to See, Eat, and Travel More then 400 Videos Across 30 Countries ! ! ! !
  • 19.
  • 20.
    Achievements Using RWD... Alphaversion in 15 days First Beta 1.5 Months (with Administration) ! !
  • 21.
    Achievements Using RWD... Alphaversion in 15 days First Beta 1.5 Months (with Administration) Coded in normal 5 days a week, 9 to 6 ! ! !
  • 22.
    Achievements Using RWD... Alphaversion in 15 days First Beta 1.5 Months (with Administration) Coded in normal 5 days a week, 9 to 6 More then a Million visits (Excluding Video Embed) ! ! ! !
  • 23.
    Using RWD... We haveSurvived couple of Diggs
  • 24.
    Using RWD... Feels greatwhen Google picks you up :)
  • 25.
    How To RWD? Read37signals' Getting Real Book Select Any Rapid Web Development Tool DRY (Don't Repeat Yourself) Use Open Source (Don't reinvent the wheel) ! ! ! !
  • 26.
    Getting Real Why arewe doing this? Is there an easier way? Is this actually useful? Are we adding value? What problem are we solving? ! ! ! ! ! http://farm1.static.flickr.com/157/431036565_b059a22bbc.jpg?v=0
  • 27.
    RWD Web Framework CakePHP Rubyon Rails Django (Python) Grails (Groovy and Java) MonoRails (.Net based) ! ! ! ! ! http://farm4.static.flickr.com/3022/2425630215_b18afbb6ff.jpg?v=1208642817
  • 28.
    What We Use.. Westarted with Cakephp Why not Pure PHP? ! !
  • 29.
    What We Use.. Westarted with Cakephp Why not Pure PHP? Low on productivity ! ! !
  • 30.
    What We Use.. Westarted with Cakephp Why not Pure PHP? Low on productivity Maintenance of code ! ! ! !
  • 31.
    Why we skippedRails? WAS asking for extra efforts on server side!
  • 32.
    Why we skippedRails? Was asking for extra efforts on server side Heavy Monitoring Was required ! !
  • 33.
    Why we skippedRails? Was asking for extra efforts on server side Heavy Monitoring Was required Things have improved ! ! !
  • 34.
    Why we skippedRails? Was asking for extra efforts on server side Heavy Monitoring Was required Things have improved Very easy with mod_rails (Apache) or Jruby (Java) ! ! ! !
  • 35.
    Why we skippedRails? Was asking for extra efforts on server side Heavy Monitoring Was required Things have improved Very easy with mod_rails (Apache) or Jruby (Java) Low monitoring, Profiling tools and big community ! ! ! ! !
  • 36.
    Our Next Applicationis using Ruby on Rails
  • 37.
    RWD JavaScript Framework Jquery(Firefox Fuel)! http://farm1.static.flickr.com/203/464449077_4c1202336a.jpg?v=0
  • 38.
    RWD JavaScript Framework Jquery(Firefox Fuel) Prototype Mootools Dojo Yahoo UI Ext JS ! ! ! ! ! !http://farm1.static.flickr.com/203/464449077_4c1202336a.jpg?v=0
  • 39.
  • 40.
    RWD CSS Framework/Reset Weuse Yahoo Reset! http://farm3.static.flickr.com/2209/2273327790_6f40747536.jpg?v=0
  • 41.
    RWD CSS Framework/Reset YahooReset Blueprint Boilerplate LogicCSS ! ! ! ! http://farm3.static.flickr.com/2209/2273327790_6f40747536.jpg?v=0
  • 42.
    DRY Don't use morethan one way to express ! http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
  • 43.
    DRY Don't use morethan one way to express Headache of maintaining ! ! http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
  • 44.
    DRY Don't use morethan one way to express Headache of maintaining Organize your code in methods and subroutines ! ! ! http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
  • 45.
    DRY Don't use morethan one way to express Headache of maintaining Organize your code in methods and subroutines We use Mailers, and Generators ! ! ! ! http://farm3.static.flickr.com/2373/2887096675_d2ffc11360.jpg?v=0
  • 46.
    Use Open Source Reviewthe code Simpler is better ! ! http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
  • 47.
    Use Open Source Reviewthe code Simpler is better Easier to understand ! ! ! http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
  • 48.
    Use Open Source Reviewthe code Simpler is better Easier to understand Know how it works ! ! ! ! http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
  • 49.
    Use Open Source Reviewthe code Simpler is better Easier to understand Know how it works Play and Test it ! ! ! ! ! http://farm2.static.flickr.com/1075/1151440434_7557328c24.jpg?v=0
  • 50.
    What we use? 50 GdataAPI from Zend Framework Jeroen Wijering Flash Video Player Purchased it’s license to use it in commercial website Customized it with add-on features for GeoBeats Currently Flash Video player is developed in House ! ! ! ! !
  • 51.
    What we use? 51 GdataAPI from Zend Framework Jeroen Wijering Flash Player Purchased it’s license to use it in commercial website Customized it with add-on features of GeoBeats We faced a question how to write Test Cases? And we decided to again consider open-source.. ! ! ! ! !
  • 52.
    How You WriteTest cases BDD structure for Acceptance Criteria: Scenario 1: Title Given [context] And [some more context]... When [event] Then [outcome] And [another outcome]...
  • 53.
    How You WriteTest cases Test Case 2 : Continent should not be selected along with it's country(ies) Given : Holding down the ctrl key for multiple selections And : India and China are selected When : Try to select Asia Then : Asia should not be selected # Result Pass
  • 54.
  • 55.
  • 56.