SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
Starting new Rails development ?




         not_act_as_sheep
                     
Ruby




       
Ruby 1.8.x
        Exists since 2003
    ●



        Current stable version
    ●



        All gems should be compatible
    ●



        Slowest version
    ●



        Problems with garbage collector
    ●




                             
Ruby Enterprise edition
        Developed by Phusion team
    ●



        Fully compatible with Ruby 1.8.6
    ●



        Memory print optimisation
    ●



        Garbage collection improvement
    ●




                             
Ruby 1.9.x
        Stable (since 1.9.1)
    ●



        Memory print improvement
    ●



        Garbage collector improvement
    ●



        Not all gems are compatible
    ●




                                
Web server and App server




                 
Web servers and App servers
        Web server
    ●



            Apache
        ●



            Lighthttpd
        ●



            Nginx
        ●




        App server
    ●



            Mongrel
        ●



            Thin
        ●



            Passenger (aka Mod_Rails)
        ●




                                 
Databases




         
Different databases available
        Sqlite3
    ●




        Mysql
    ●




        PostgreSql
    ●




        Oracle
    ●




                       
Testing




        
TDD vs BDD
        What's Test-Driven Development ?
    ●



            Software design method
        ●


            Short development iteration
        ●




        What's Behaviour-Driven Development ?
    ●



            Software design method
        ●



            Use comprehensive specification in your native
        ●


            language



                                  
Testing Frameworks
                     (and friends)
    Testing frameworks
●


        Test::Unit
    ●


        Rspec
    ●


        Shoulda
    ●




    Mocking
●


        Mocha
    ●


        Flexmock
    ●


        RR
    ●




    Working with fixtures
●


        Fixtures
    ●


        Factory girl
    ●


        Machinist
    ●




                             
Templating




          
Templating format

        Html/Erb
    ●




        HAML
    ●




        Textile (using RedCloth)
    ●




        Markaby
    ●




        Markdown (using BlueCloth)
    ●



                              
Plugins




        
Authentication

        Restful_Authentication
    ●


            Historically the oldest
        ●


            Probably currently the most used
        ●


            The most complete
        ●




        Cleareance
    ●


            Easy setup
        ●


            Easy syntax
        ●




        Authlogic
    ●


            Lighter implementation
        ●




                                         
Attachment

        Attachement_fu
    ●



            Historically the first Rails attachment plugin
        ●



            Polymorphism
        ●



            Complex but customizable
        ●




        Paperclip
    ●



            Newer
        ●



            Lighter
        ●



            No polymorphism
        ●



            Works without Rmagick
        ●



                                      
Other useful plugins
        Will_paginate
    ●




        act_as_rated
    ●




        act_as_comentable
    ●




        Thinking Sphinx
    ●




                             
Conclusion




          
What should I choose ?




    There is not better solution than the
       one you're comfortable with !!

              not_act_as_sheep




                       
Slides provided by Nicolas Alpi




                          Credits


    http://www.flickr.com/photos/kattenmeisje/501105007/
                         Nuovola icons
                               

Contenu connexe

Tendances

Opal chapter 4_a_new_hope
Opal chapter 4_a_new_hopeOpal chapter 4_a_new_hope
Opal chapter 4_a_new_hopeForrest Chang
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?Balajihope
 
Opal - Ruby Style!! Ruby in the browser
Opal - Ruby Style!!  Ruby in the browserOpal - Ruby Style!!  Ruby in the browser
Opal - Ruby Style!! Ruby in the browserForrest Chang
 
The Transparent Web: Bridging the Chasm in Web Development
The Transparent Web: Bridging the Chasm in Web DevelopmentThe Transparent Web: Bridging the Chasm in Web Development
The Transparent Web: Bridging the Chasm in Web Developmenttwopoint718
 
AJS — Asynchronous Templating in Node
AJS — Asynchronous Templating in NodeAJS — Asynchronous Templating in Node
AJS — Asynchronous Templating in NodeEvan Owen
 
Advance java session 9
Advance java session 9Advance java session 9
Advance java session 9Smita B Kumar
 
MVVM Windows UWP apps with Template 10
MVVM Windows UWP apps with Template 10MVVM Windows UWP apps with Template 10
MVVM Windows UWP apps with Template 10Jiri Danihelka
 
Async ... Await – concurrency in java script
Async ... Await – concurrency in java scriptAsync ... Await – concurrency in java script
Async ... Await – concurrency in java scriptAthman Gude
 
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...Hariharan Ganesan
 
Speeding up Page Load Times by Using Starling
Speeding up Page Load Times by Using StarlingSpeeding up Page Load Times by Using Starling
Speeding up Page Load Times by Using StarlingErik Osterman
 
Introduction to Web Sockets
Introduction to Web SocketsIntroduction to Web Sockets
Introduction to Web SocketsJumping Bean
 
So R Debugging
So R DebuggingSo R Debugging
So R Debuggingwear
 
WebAssembly overview. KievJS meetup
WebAssembly overview. KievJS meetupWebAssembly overview. KievJS meetup
WebAssembly overview. KievJS meetupAlexandr Skachkov
 
image_upload Plugin 2007/12/7
image_upload Plugin 2007/12/7image_upload Plugin 2007/12/7
image_upload Plugin 2007/12/7Yasuko Ohba
 
Clojure Lightning Talk
Clojure Lightning TalkClojure Lightning Talk
Clojure Lightning TalkGiltTech
 
Cassandra: Not Just NoSQL, It's MoSQL
Cassandra: Not Just NoSQL, It's MoSQLCassandra: Not Just NoSQL, It's MoSQL
Cassandra: Not Just NoSQL, It's MoSQLEric Evans
 

Tendances (18)

Opal chapter 4_a_new_hope
Opal chapter 4_a_new_hopeOpal chapter 4_a_new_hope
Opal chapter 4_a_new_hope
 
MEAN Stack
MEAN StackMEAN Stack
MEAN Stack
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?
 
Opal - Ruby Style!! Ruby in the browser
Opal - Ruby Style!!  Ruby in the browserOpal - Ruby Style!!  Ruby in the browser
Opal - Ruby Style!! Ruby in the browser
 
The Transparent Web: Bridging the Chasm in Web Development
The Transparent Web: Bridging the Chasm in Web DevelopmentThe Transparent Web: Bridging the Chasm in Web Development
The Transparent Web: Bridging the Chasm in Web Development
 
AJS — Asynchronous Templating in Node
AJS — Asynchronous Templating in NodeAJS — Asynchronous Templating in Node
AJS — Asynchronous Templating in Node
 
Advance java session 9
Advance java session 9Advance java session 9
Advance java session 9
 
MVVM Windows UWP apps with Template 10
MVVM Windows UWP apps with Template 10MVVM Windows UWP apps with Template 10
MVVM Windows UWP apps with Template 10
 
Async ... Await – concurrency in java script
Async ... Await – concurrency in java scriptAsync ... Await – concurrency in java script
Async ... Await – concurrency in java script
 
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
 
Speeding up Page Load Times by Using Starling
Speeding up Page Load Times by Using StarlingSpeeding up Page Load Times by Using Starling
Speeding up Page Load Times by Using Starling
 
Introduction to Web Sockets
Introduction to Web SocketsIntroduction to Web Sockets
Introduction to Web Sockets
 
So R Debugging
So R DebuggingSo R Debugging
So R Debugging
 
WebAssembly overview. KievJS meetup
WebAssembly overview. KievJS meetupWebAssembly overview. KievJS meetup
WebAssembly overview. KievJS meetup
 
image_upload Plugin 2007/12/7
image_upload Plugin 2007/12/7image_upload Plugin 2007/12/7
image_upload Plugin 2007/12/7
 
Clojure Lightning Talk
Clojure Lightning TalkClojure Lightning Talk
Clojure Lightning Talk
 
SmpleGroovyexampleinmule
SmpleGroovyexampleinmuleSmpleGroovyexampleinmule
SmpleGroovyexampleinmule
 
Cassandra: Not Just NoSQL, It's MoSQL
Cassandra: Not Just NoSQL, It's MoSQLCassandra: Not Just NoSQL, It's MoSQL
Cassandra: Not Just NoSQL, It's MoSQL
 

En vedette

Strategic planning in advertising
Strategic planning in advertising Strategic planning in advertising
Strategic planning in advertising N. Bilge Ispir
 
prankinENG1102powerpointpresentation2
prankinENG1102powerpointpresentation2prankinENG1102powerpointpresentation2
prankinENG1102powerpointpresentation2prankin
 
metales
metalesmetales
metales7ortiz
 
LEAR AANY 2008
LEAR AANY 2008LEAR AANY 2008
LEAR AANY 2008finance16
 
LEAR 2005_lehmanbrothers
 LEAR 2005_lehmanbrothers LEAR 2005_lehmanbrothers
LEAR 2005_lehmanbrothersfinance16
 
D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...
D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...
D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...7ortiz
 

En vedette (7)

Strategic planning in advertising
Strategic planning in advertising Strategic planning in advertising
Strategic planning in advertising
 
prankinENG1102powerpointpresentation2
prankinENG1102powerpointpresentation2prankinENG1102powerpointpresentation2
prankinENG1102powerpointpresentation2
 
metales
metalesmetales
metales
 
LEAR AANY 2008
LEAR AANY 2008LEAR AANY 2008
LEAR AANY 2008
 
LEAR 2005_lehmanbrothers
 LEAR 2005_lehmanbrothers LEAR 2005_lehmanbrothers
LEAR 2005_lehmanbrothers
 
D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...
D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...
D:\Documents And Settings\Usuario\Escritorio\Copia De Seguridad Packard Bell\...
 
itw10q 3q04
itw10q 3q04itw10q 3q04
itw10q 3q04
 

Similaire à Starting a new ruby on rails development

Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory CourseRuby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Coursepeter_marklund
 
Smart Client Development
Smart Client DevelopmentSmart Client Development
Smart Client DevelopmentTamir Khason
 
Crate Packaging Standalone Ruby Applications
Crate  Packaging Standalone Ruby ApplicationsCrate  Packaging Standalone Ruby Applications
Crate Packaging Standalone Ruby Applicationsrailsconf
 
Rails Conf Europe 2007 Notes
Rails Conf  Europe 2007  NotesRails Conf  Europe 2007  Notes
Rails Conf Europe 2007 NotesRoss Lawley
 
ruote stockholm 2008
ruote stockholm 2008ruote stockholm 2008
ruote stockholm 2008John Mettraux
 
Les Tests avec Ruby on Rails et RSpec (in French)
Les Tests avec Ruby on Rails et RSpec (in French)Les Tests avec Ruby on Rails et RSpec (in French)
Les Tests avec Ruby on Rails et RSpec (in French)Jean-Michel Garnier
 
Xen_and_Rails_deployment
Xen_and_Rails_deploymentXen_and_Rails_deployment
Xen_and_Rails_deploymentAbhishek Singh
 
J Ruby Power On The Jvm
J Ruby Power On The JvmJ Ruby Power On The Jvm
J Ruby Power On The JvmQConLondon2008
 
Modern Webdevelopment With Ruby On Rails
Modern Webdevelopment With Ruby On RailsModern Webdevelopment With Ruby On Rails
Modern Webdevelopment With Ruby On RailsRobert Glaser
 
Ola Bini J Ruby Power On The Jvm
Ola Bini J Ruby Power On The JvmOla Bini J Ruby Power On The Jvm
Ola Bini J Ruby Power On The Jvmdeimos
 
Rails hosting
Rails hostingRails hosting
Rails hostingwonko
 
Functional Scala 2022 - scalajs Alexis.pdf
Functional Scala 2022 - scalajs Alexis.pdfFunctional Scala 2022 - scalajs Alexis.pdf
Functional Scala 2022 - scalajs Alexis.pdfssusercd195b
 
Crate - ruby based standalone executables
Crate - ruby based standalone executablesCrate - ruby based standalone executables
Crate - ruby based standalone executablesJeremy Hinegardner
 
RoR (Ruby on Rails)
RoR (Ruby on Rails)RoR (Ruby on Rails)
RoR (Ruby on Rails)scandiweb
 
Introduction to JRuby
Introduction to JRubyIntroduction to JRuby
Introduction to JRubyAmit Solanki
 
Practical Intro Merb
Practical Intro MerbPractical Intro Merb
Practical Intro MerbPaul Pajo
 

Similaire à Starting a new ruby on rails development (20)

Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory CourseRuby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Course
 
Smart Client Development
Smart Client DevelopmentSmart Client Development
Smart Client Development
 
Crate Packaging Standalone Ruby Applications
Crate  Packaging Standalone Ruby ApplicationsCrate  Packaging Standalone Ruby Applications
Crate Packaging Standalone Ruby Applications
 
Rails Conf Europe 2007 Notes
Rails Conf  Europe 2007  NotesRails Conf  Europe 2007  Notes
Rails Conf Europe 2007 Notes
 
ruote stockholm 2008
ruote stockholm 2008ruote stockholm 2008
ruote stockholm 2008
 
Les Tests avec Ruby on Rails et RSpec (in French)
Les Tests avec Ruby on Rails et RSpec (in French)Les Tests avec Ruby on Rails et RSpec (in French)
Les Tests avec Ruby on Rails et RSpec (in French)
 
Xen_and_Rails_deployment
Xen_and_Rails_deploymentXen_and_Rails_deployment
Xen_and_Rails_deployment
 
J Ruby Power On The Jvm
J Ruby Power On The JvmJ Ruby Power On The Jvm
J Ruby Power On The Jvm
 
Modern Webdevelopment With Ruby On Rails
Modern Webdevelopment With Ruby On RailsModern Webdevelopment With Ruby On Rails
Modern Webdevelopment With Ruby On Rails
 
Ola Bini J Ruby Power On The Jvm
Ola Bini J Ruby Power On The JvmOla Bini J Ruby Power On The Jvm
Ola Bini J Ruby Power On The Jvm
 
Workin On The Rails Road
Workin On The Rails RoadWorkin On The Rails Road
Workin On The Rails Road
 
re7olabini
re7olabinire7olabini
re7olabini
 
Capistrano
CapistranoCapistrano
Capistrano
 
Rails hosting
Rails hostingRails hosting
Rails hosting
 
Functional Scala 2022 - scalajs Alexis.pdf
Functional Scala 2022 - scalajs Alexis.pdfFunctional Scala 2022 - scalajs Alexis.pdf
Functional Scala 2022 - scalajs Alexis.pdf
 
Os Wilhelm
Os WilhelmOs Wilhelm
Os Wilhelm
 
Crate - ruby based standalone executables
Crate - ruby based standalone executablesCrate - ruby based standalone executables
Crate - ruby based standalone executables
 
RoR (Ruby on Rails)
RoR (Ruby on Rails)RoR (Ruby on Rails)
RoR (Ruby on Rails)
 
Introduction to JRuby
Introduction to JRubyIntroduction to JRuby
Introduction to JRuby
 
Practical Intro Merb
Practical Intro MerbPractical Intro Merb
Practical Intro Merb
 

Dernier

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Dernier (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

Starting a new ruby on rails development

  • 1. Starting new Rails development ? not_act_as_sheep    
  • 2. Ruby    
  • 3. Ruby 1.8.x Exists since 2003 ● Current stable version ● All gems should be compatible ● Slowest version ● Problems with garbage collector ●    
  • 4. Ruby Enterprise edition Developed by Phusion team ● Fully compatible with Ruby 1.8.6 ● Memory print optimisation ● Garbage collection improvement ●    
  • 5. Ruby 1.9.x Stable (since 1.9.1) ● Memory print improvement ● Garbage collector improvement ● Not all gems are compatible ●    
  • 6. Web server and App server    
  • 7. Web servers and App servers Web server ● Apache ● Lighthttpd ● Nginx ● App server ● Mongrel ● Thin ● Passenger (aka Mod_Rails) ●    
  • 9. Different databases available Sqlite3 ● Mysql ● PostgreSql ● Oracle ●    
  • 11. TDD vs BDD What's Test-Driven Development ? ● Software design method ● Short development iteration ● What's Behaviour-Driven Development ? ● Software design method ● Use comprehensive specification in your native ● language    
  • 12. Testing Frameworks (and friends) Testing frameworks ● Test::Unit ● Rspec ● Shoulda ● Mocking ● Mocha ● Flexmock ● RR ● Working with fixtures ● Fixtures ● Factory girl ● Machinist ●    
  • 14. Templating format Html/Erb ● HAML ● Textile (using RedCloth) ● Markaby ● Markdown (using BlueCloth) ●    
  • 16. Authentication Restful_Authentication ● Historically the oldest ● Probably currently the most used ● The most complete ● Cleareance ● Easy setup ● Easy syntax ● Authlogic ● Lighter implementation ●    
  • 17. Attachment Attachement_fu ● Historically the first Rails attachment plugin ● Polymorphism ● Complex but customizable ● Paperclip ● Newer ● Lighter ● No polymorphism ● Works without Rmagick ●    
  • 18. Other useful plugins Will_paginate ● act_as_rated ● act_as_comentable ● Thinking Sphinx ●    
  • 20. What should I choose ? There is not better solution than the one you're comfortable with !! not_act_as_sheep    
  • 21. Slides provided by Nicolas Alpi Credits http://www.flickr.com/photos/kattenmeisje/501105007/ Nuovola icons