SlideShare a Scribd company logo
Ruby On Rails

 MeetUP @ Balabit



      April 22, 2010
    nucc@balabit.com




                       1
2
Agile Web Development


 Individuals and interactions over processes and tools
 Working software over comprehensive documentation
 Customer collaboration over contract negotiation
 Responding to change over following a plan




                                                         3
Installing Rails
Ubuntu
Easy way                     Suggested way

   apt-get install rails        apt-get install rubygems
                                gem install rails
                                apt-get install rake

 OSX                           Windows

   Built in, you just need      Instant rails
           to use!



                                                           4
First application
$ rails meetup.balabit




                         5
First application
$ rails meetup.balabit
    meetup.balabit/
        app
        config
        db
        doc
        lib
        log
        public
        script
        test
        tmp
        vendor



                         5
First application


                    app
                    config
                    db
                    doc
                    lib
                    log
                    public
                    script
                    test
                    tmp
                    vendor



                             5
Heart and soul
Model   Controller   View

                            app
                            config
                            db
                            doc
                            lib
                            log
                            public
                            script
                            test
                            tmp
                            vendor



                                     6
Heart and soul
Model   Controller   View

                            app
                            config
                            db
                            doc
                            lib
                            log
                            public
                            script
                            test
                            tmp
                            vendor



                                     6
Heart and soul
   Model           Controller          View

                                                          app
                                                          config
                                                          db
                                                          doc
                                                          lib
Safety net                                                log
                                                          public
                                                          script
                    Functional and     Functional Tests   test
      Unit Tests
                   Integration Tests     and Testers      tmp
                                                          vendor



                                                                   6
Configuration
 Database
  Mysql, Postgresql, Sqlite, Oracle, Mssql, Sybase
                                                     app
 Router                                              config
  Find the corresponding controller                  db
                                                     doc
  http://localhost/:controller/:action/:id           lib
 Environment specific settings                        log
                                                     public
  Production                                         script
                                                     test
  Development
                                                     tmp
  Testing                                            vendor



                                                              7
Database & migration


 Sqlite3 database files                  app
                                        config
 Migration files (upgrade & downgrade)   db
                                        doc
 rake db:migrate (VERSION=)
                                        lib
                                        log
                                        public
                                        script
                                        test
                                        tmp
                                        vendor



                                                 8
Documentation

HTML and Rdoc based documentation
                                    app
rake doc:app                        config
                                    db
                                    doc
                                    lib
                                    log
                                    public
                                    script
                                    test
                                    tmp
                                    vendor



                                             9
Lib & Vendor
 Non-third party drivers (lib)
 Third-party drivers (vendor)
                                             app
                                             config
 script/plugin install [remote repository]   db
                                             doc
                                             lib
                                             log
                                             public
                                             script
                                             test
                                             tmp
                                             vendor



                                                      10
Log files


 server.log        app
 development.log   config
                   db
 production.log    doc
                   lib
 test.log
                   log
 custom log files   public
                   script
                   test
                   tmp
                   vendor



                            11
Public files


 Images                 app
 CSS files               config
                        db
 Javascript files        doc
                        lib
 Favicon
                        log
 404, 500 error pages   public
                        script
 Other public files      test
                        tmp
                        vendor



                                 12
Script files

 console (access in terminal to the application)
                                                       app
 dbconsole (direct access to the database)             config
 generate (controller, model, plugin, migration file)   db
                                                       doc
 destroy                                               lib
                                                       log
 plugin (installing 3rd party plugins)
                                                       public
 runner (cronjob like tool)                            script
                                                       test
 server (start server application)                     tmp
 performance (checking performance tests)              vendor



                                                                13
Temporary files


 Cache files            app
 Pid files              config
                       db
 File based sessions   doc
 Sockets               lib
                       log
                       public
                       script
                       test
                       tmp
                       vendor



                                14
DEMO :)
video is comming soon...




                           15
More demo stuffs


 http://railscasts.com/

 http://peepcode.com/




                          16
Thank you!




             17

More Related Content

What's hot

The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
corehard_by
 
Web technology slideshare
Web technology slideshareWeb technology slideshare
Web technology slideshare
GuruAbirami2
 
PIL - A Platform Independent Language
PIL - A Platform Independent LanguagePIL - A Platform Independent Language
PIL - A Platform Independent Language
zefhemel
 
llvm-py: Writing Compilers In Python
llvm-py: Writing Compilers In Pythonllvm-py: Writing Compilers In Python
llvm-py: Writing Compilers In Python
mdevan
 
LinkedIn - Disassembling Dalvik Bytecode
LinkedIn - Disassembling Dalvik BytecodeLinkedIn - Disassembling Dalvik Bytecode
LinkedIn - Disassembling Dalvik Bytecode
Alain Leon
 
Web programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh MalothWeb programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh Maloth
Bhavsingh Maloth
 
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
corehard_by
 
Web Programming UNIT VIII notes
Web Programming UNIT VIII notesWeb Programming UNIT VIII notes
Web Programming UNIT VIII notes
Bhavsingh Maloth
 
WEB PROGRAMMING UNIT V BY BHAVSINGH MALOTH
WEB PROGRAMMING UNIT V BY BHAVSINGH MALOTHWEB PROGRAMMING UNIT V BY BHAVSINGH MALOTH
WEB PROGRAMMING UNIT V BY BHAVSINGH MALOTH
Bhavsingh Maloth
 
Fast and Reliable Swift APIs with gRPC
Fast and Reliable Swift APIs with gRPCFast and Reliable Swift APIs with gRPC
Fast and Reliable Swift APIs with gRPC
Tim Burks
 
Team Development and Release Management
Team Development and Release ManagementTeam Development and Release Management
Team Development and Release Management
Salesforce Partners
 
Networked APIs with swift
Networked APIs with swiftNetworked APIs with swift
Networked APIs with swift
Tim Burks
 
Beginning with Composer - Dependency manager in php
Beginning with Composer  - Dependency manager in php Beginning with Composer  - Dependency manager in php
Beginning with Composer - Dependency manager in php
Yogesh Salvi
 
Ese 2008 RTSC Draft1
Ese 2008 RTSC Draft1Ese 2008 RTSC Draft1
Ese 2008 RTSC Draft1
drusso
 
Creating Great REST and gRPC API Experiences (in Swift)
Creating Great REST and gRPC API Experiences (in Swift)Creating Great REST and gRPC API Experiences (in Swift)
Creating Great REST and gRPC API Experiences (in Swift)
Tim Burks
 
Single Sourcing Techniques for RAP and RCP
Single Sourcing Techniques for RAP and RCPSingle Sourcing Techniques for RAP and RCP
Single Sourcing Techniques for RAP and RCP
Ralf Sternberg
 
Introduction of c language
Introduction of c languageIntroduction of c language
Introduction of c language
farishah
 
Cloud Native API Design and Management
Cloud Native API Design and ManagementCloud Native API Design and Management
Cloud Native API Design and Management
AllBits BVBA (freelancer)
 
Implementing OpenAPI and GraphQL services with gRPC
Implementing OpenAPI and GraphQL services with gRPCImplementing OpenAPI and GraphQL services with gRPC
Implementing OpenAPI and GraphQL services with gRPC
Tim Burks
 
Part II: LLVM Intermediate Representation
Part II: LLVM Intermediate RepresentationPart II: LLVM Intermediate Representation
Part II: LLVM Intermediate Representation
Wei-Ren Chen
 

What's hot (20)

The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
 
Web technology slideshare
Web technology slideshareWeb technology slideshare
Web technology slideshare
 
PIL - A Platform Independent Language
PIL - A Platform Independent LanguagePIL - A Platform Independent Language
PIL - A Platform Independent Language
 
llvm-py: Writing Compilers In Python
llvm-py: Writing Compilers In Pythonllvm-py: Writing Compilers In Python
llvm-py: Writing Compilers In Python
 
LinkedIn - Disassembling Dalvik Bytecode
LinkedIn - Disassembling Dalvik BytecodeLinkedIn - Disassembling Dalvik Bytecode
LinkedIn - Disassembling Dalvik Bytecode
 
Web programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh MalothWeb programming UNIT II by Bhavsingh Maloth
Web programming UNIT II by Bhavsingh Maloth
 
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
 
Web Programming UNIT VIII notes
Web Programming UNIT VIII notesWeb Programming UNIT VIII notes
Web Programming UNIT VIII notes
 
WEB PROGRAMMING UNIT V BY BHAVSINGH MALOTH
WEB PROGRAMMING UNIT V BY BHAVSINGH MALOTHWEB PROGRAMMING UNIT V BY BHAVSINGH MALOTH
WEB PROGRAMMING UNIT V BY BHAVSINGH MALOTH
 
Fast and Reliable Swift APIs with gRPC
Fast and Reliable Swift APIs with gRPCFast and Reliable Swift APIs with gRPC
Fast and Reliable Swift APIs with gRPC
 
Team Development and Release Management
Team Development and Release ManagementTeam Development and Release Management
Team Development and Release Management
 
Networked APIs with swift
Networked APIs with swiftNetworked APIs with swift
Networked APIs with swift
 
Beginning with Composer - Dependency manager in php
Beginning with Composer  - Dependency manager in php Beginning with Composer  - Dependency manager in php
Beginning with Composer - Dependency manager in php
 
Ese 2008 RTSC Draft1
Ese 2008 RTSC Draft1Ese 2008 RTSC Draft1
Ese 2008 RTSC Draft1
 
Creating Great REST and gRPC API Experiences (in Swift)
Creating Great REST and gRPC API Experiences (in Swift)Creating Great REST and gRPC API Experiences (in Swift)
Creating Great REST and gRPC API Experiences (in Swift)
 
Single Sourcing Techniques for RAP and RCP
Single Sourcing Techniques for RAP and RCPSingle Sourcing Techniques for RAP and RCP
Single Sourcing Techniques for RAP and RCP
 
Introduction of c language
Introduction of c languageIntroduction of c language
Introduction of c language
 
Cloud Native API Design and Management
Cloud Native API Design and ManagementCloud Native API Design and Management
Cloud Native API Design and Management
 
Implementing OpenAPI and GraphQL services with gRPC
Implementing OpenAPI and GraphQL services with gRPCImplementing OpenAPI and GraphQL services with gRPC
Implementing OpenAPI and GraphQL services with gRPC
 
Part II: LLVM Intermediate Representation
Part II: LLVM Intermediate RepresentationPart II: LLVM Intermediate Representation
Part II: LLVM Intermediate Representation
 

Similar to Balabit Meetup - Ruby on Rails

Rails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2editionRails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2edition
Satomi Tsujita
 
Rails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2editionRails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2edition
Satomi Tsujita
 
Database Tools by Skype
Database Tools by SkypeDatabase Tools by Skype
Database Tools by Skype
elliando dias
 
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code baseSingle Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
Ralf Sternberg
 
OFI Overview 2019 Webinar
OFI Overview 2019 WebinarOFI Overview 2019 Webinar
OFI Overview 2019 Webinar
seanhefty
 
Debugging of (C)Python applications
Debugging of (C)Python applicationsDebugging of (C)Python applications
Debugging of (C)Python applications
Roman Podoliaka
 
Docker crash course
Docker crash courseDocker crash course
Docker crash course
Vishwas N
 
Let’s template
Let’s templateLet’s template
Let’s template
AllenKao7
 
Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...
Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...
Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...
Amazon Web Services
 
Javascript mynotes
Javascript mynotesJavascript mynotes
Javascript mynotes
AntoniaSymeonidou1
 
Small Overview of Skype Database Tools
Small Overview of Skype Database ToolsSmall Overview of Skype Database Tools
Small Overview of Skype Database Tools
elliando dias
 
Introduction to ABAP
Introduction to ABAPIntroduction to ABAP
Introduction to ABAP
sapdocs. info
 
Java script
Java scriptJava script
Java script
19TUIT038KAVIARASUM
 
re:Invent Deep Dive on Lambda Layers and Runtime API
re:Invent Deep Dive on Lambda Layers and Runtime APIre:Invent Deep Dive on Lambda Layers and Runtime API
re:Invent Deep Dive on Lambda Layers and Runtime API
Amazon Web Services
 
Build and deploy scientific Python Applications
Build and deploy scientific Python Applications  Build and deploy scientific Python Applications
Build and deploy scientific Python Applications
Ramakrishna Reddy
 
Apache James/Hupa & GWT
Apache James/Hupa & GWTApache James/Hupa & GWT
Apache James/Hupa & GWT
Manuel Carrasco Moñino
 
CCT (Check and Calculate Transfer)
CCT (Check and Calculate Transfer)CCT (Check and Calculate Transfer)
CCT (Check and Calculate Transfer)
Francesca Pappalardo
 
Presentation CCT
Presentation CCTPresentation CCT
Presentation CCT
Francesca Pappalardo
 
CCT Check and Calculate Transfer
CCT Check and Calculate TransferCCT Check and Calculate Transfer
CCT Check and Calculate Transfer
Francesca Pappalardo
 
Collabograte
CollabograteCollabograte
Collabograte
Kartik Subbarao
 

Similar to Balabit Meetup - Ruby on Rails (20)

Rails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2editionRails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2edition
 
Rails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2editionRails初心者レッスン lesson1 2edition
Rails初心者レッスン lesson1 2edition
 
Database Tools by Skype
Database Tools by SkypeDatabase Tools by Skype
Database Tools by Skype
 
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code baseSingle Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
 
OFI Overview 2019 Webinar
OFI Overview 2019 WebinarOFI Overview 2019 Webinar
OFI Overview 2019 Webinar
 
Debugging of (C)Python applications
Debugging of (C)Python applicationsDebugging of (C)Python applications
Debugging of (C)Python applications
 
Docker crash course
Docker crash courseDocker crash course
Docker crash course
 
Let’s template
Let’s templateLet’s template
Let’s template
 
Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...
Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...
Building Microservices with the 12 Factor App Pattern on AWS - AWS Online Tec...
 
Javascript mynotes
Javascript mynotesJavascript mynotes
Javascript mynotes
 
Small Overview of Skype Database Tools
Small Overview of Skype Database ToolsSmall Overview of Skype Database Tools
Small Overview of Skype Database Tools
 
Introduction to ABAP
Introduction to ABAPIntroduction to ABAP
Introduction to ABAP
 
Java script
Java scriptJava script
Java script
 
re:Invent Deep Dive on Lambda Layers and Runtime API
re:Invent Deep Dive on Lambda Layers and Runtime APIre:Invent Deep Dive on Lambda Layers and Runtime API
re:Invent Deep Dive on Lambda Layers and Runtime API
 
Build and deploy scientific Python Applications
Build and deploy scientific Python Applications  Build and deploy scientific Python Applications
Build and deploy scientific Python Applications
 
Apache James/Hupa & GWT
Apache James/Hupa & GWTApache James/Hupa & GWT
Apache James/Hupa & GWT
 
CCT (Check and Calculate Transfer)
CCT (Check and Calculate Transfer)CCT (Check and Calculate Transfer)
CCT (Check and Calculate Transfer)
 
Presentation CCT
Presentation CCTPresentation CCT
Presentation CCT
 
CCT Check and Calculate Transfer
CCT Check and Calculate TransferCCT Check and Calculate Transfer
CCT Check and Calculate Transfer
 
Collabograte
CollabograteCollabograte
Collabograte
 

More from Papp Laszlo

Shade műhely
Shade műhelyShade műhely
Shade műhely
Papp Laszlo
 
Git thinking
Git thinkingGit thinking
Git thinking
Papp Laszlo
 
Open Academy - Ruby
Open Academy - RubyOpen Academy - Ruby
Open Academy - Ruby
Papp Laszlo
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
Papp Laszlo
 
Munkafolyamatok modellezése OPM segítségével
Munkafolyamatok modellezése OPM segítségévelMunkafolyamatok modellezése OPM segítségével
Munkafolyamatok modellezése OPM segítségével
Papp Laszlo
 
Ruby gems
Ruby gemsRuby gems
Ruby gems
Papp Laszlo
 
Resource and view
Resource and viewResource and view
Resource and view
Papp Laszlo
 
Rails Models
Rails ModelsRails Models
Rails Models
Papp Laszlo
 
Rails
RailsRails
Ruby Meetup Balabit
Ruby Meetup BalabitRuby Meetup Balabit
Ruby Meetup Balabit
Papp Laszlo
 

More from Papp Laszlo (11)

Shade műhely
Shade műhelyShade műhely
Shade műhely
 
Git thinking
Git thinkingGit thinking
Git thinking
 
Open Academy - Ruby
Open Academy - RubyOpen Academy - Ruby
Open Academy - Ruby
 
Have2do.it
Have2do.itHave2do.it
Have2do.it
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Munkafolyamatok modellezése OPM segítségével
Munkafolyamatok modellezése OPM segítségévelMunkafolyamatok modellezése OPM segítségével
Munkafolyamatok modellezése OPM segítségével
 
Ruby gems
Ruby gemsRuby gems
Ruby gems
 
Resource and view
Resource and viewResource and view
Resource and view
 
Rails Models
Rails ModelsRails Models
Rails Models
 
Rails
RailsRails
Rails
 
Ruby Meetup Balabit
Ruby Meetup BalabitRuby Meetup Balabit
Ruby Meetup Balabit
 

Recently uploaded

GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 

Recently uploaded (20)

GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 

Balabit Meetup - Ruby on Rails

  • 1. Ruby On Rails MeetUP @ Balabit April 22, 2010 nucc@balabit.com 1
  • 2. 2
  • 3. Agile Web Development Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan 3
  • 4. Installing Rails Ubuntu Easy way Suggested way apt-get install rails apt-get install rubygems gem install rails apt-get install rake OSX Windows Built in, you just need Instant rails to use! 4
  • 5. First application $ rails meetup.balabit 5
  • 6. First application $ rails meetup.balabit meetup.balabit/ app config db doc lib log public script test tmp vendor 5
  • 7. First application app config db doc lib log public script test tmp vendor 5
  • 8. Heart and soul Model Controller View app config db doc lib log public script test tmp vendor 6
  • 9. Heart and soul Model Controller View app config db doc lib log public script test tmp vendor 6
  • 10. Heart and soul Model Controller View app config db doc lib Safety net log public script Functional and Functional Tests test Unit Tests Integration Tests and Testers tmp vendor 6
  • 11. Configuration Database Mysql, Postgresql, Sqlite, Oracle, Mssql, Sybase app Router config Find the corresponding controller db doc http://localhost/:controller/:action/:id lib Environment specific settings log public Production script test Development tmp Testing vendor 7
  • 12. Database & migration Sqlite3 database files app config Migration files (upgrade & downgrade) db doc rake db:migrate (VERSION=) lib log public script test tmp vendor 8
  • 13. Documentation HTML and Rdoc based documentation app rake doc:app config db doc lib log public script test tmp vendor 9
  • 14. Lib & Vendor Non-third party drivers (lib) Third-party drivers (vendor) app config script/plugin install [remote repository] db doc lib log public script test tmp vendor 10
  • 15. Log files server.log app development.log config db production.log doc lib test.log log custom log files public script test tmp vendor 11
  • 16. Public files Images app CSS files config db Javascript files doc lib Favicon log 404, 500 error pages public script Other public files test tmp vendor 12
  • 17. Script files console (access in terminal to the application) app dbconsole (direct access to the database) config generate (controller, model, plugin, migration file) db doc destroy lib log plugin (installing 3rd party plugins) public runner (cronjob like tool) script test server (start server application) tmp performance (checking performance tests) vendor 13
  • 18. Temporary files Cache files app Pid files config db File based sessions doc Sockets lib log public script test tmp vendor 14
  • 19. DEMO :) video is comming soon... 15
  • 20. More demo stuffs http://railscasts.com/ http://peepcode.com/ 16