The document discusses why Ruby and Rails are good choices for programming. Ruby is designed to save time and make programming fun and easy to read. Rails provides a full-stack framework that embraces Ruby's philosophy of freedom and productivity. It includes features like MVC, ORM, internationalization and more. Some potential weak points are hosting on Windows and lack of POSIX support, but overall Ruby and Rails provide coherency and maximize productivity and happiness for developers.
Ruby is a dynamic, open source programming language created in 1993 by Yukihiro Matsumoto. It was influenced by Perl, Smalltalk, Python and Lisp. Ruby supports object-oriented, imperative, and functional programming styles. Everything in Ruby is an object and has flexible typing. Ruby also features open classes and duck typing. It gained popularity with the release of the Ruby on Rails framework in 2004.
This document discusses Ruby on Rails, an open-source web application framework written in Ruby. It provides an overview of Rails, outlines goals of designing and writing a blog to understand Rails principles, and demonstrates a blog. The closing remarks express love for aspects of Rails like MVC and database independence, but also frustration with sometimes having to interpret Rails' intentions.
The presentation gives an overview about the ruby programming language and Rails, the web framework built over it ruby. It does highlight some of the key features of ruby programming language and mentions the key benefits of using Rails framework for web application development.
This document provides an introduction to a Ruby on Rails training being conducted by James and Dana Gray. It discusses the structure of the training, including introducing the teachers and having students introduce themselves. It also provides an overview of what will be taught in the training, including building web applications using Rails, with roughly half the time spent on hands-on labs where students will build a working Rails application.
Javascript concepts covered include variables declared with var, functions defined and called, the DOM accessed through events, and object-oriented programming principles. Functions can take arguments and closures allow functions to access variables from outer scopes.
Software Engineering Thailand: Programming with ScalaBrian Topping
Meet-up, May 28, 2015, Launchpad, Bangkok. http://www.meetup.com/Software-Engineering-Thailand/events/222548484/.
Apologies for the rendering quality not matching the presentation, I did these with Apple Keynote and Slideshare does not support this format. I will try to edit them when there is more time.
Thanks to Bangkok LaunchPad (https://www.facebook.com/launchpadhq) for generously hosting this event!
The document introduces Scala as an alternative programming language to Java that runs on the Java Virtual Machine, describing it as a statically typed, hybrid object-oriented and functional language that is compatible with Java and has features like type inference, pattern matching, lambdas, and higher-order functions. It also promotes trying out Scala in an interactive REPL and provides links to download the Scala software and IDEs.
Ruby is a dynamic, open source programming language created in 1993 by Yukihiro Matsumoto. It was influenced by Perl, Smalltalk, Python and Lisp. Ruby supports object-oriented, imperative, and functional programming styles. Everything in Ruby is an object and has flexible typing. Ruby also features open classes and duck typing. It gained popularity with the release of the Ruby on Rails framework in 2004.
This document discusses Ruby on Rails, an open-source web application framework written in Ruby. It provides an overview of Rails, outlines goals of designing and writing a blog to understand Rails principles, and demonstrates a blog. The closing remarks express love for aspects of Rails like MVC and database independence, but also frustration with sometimes having to interpret Rails' intentions.
The presentation gives an overview about the ruby programming language and Rails, the web framework built over it ruby. It does highlight some of the key features of ruby programming language and mentions the key benefits of using Rails framework for web application development.
This document provides an introduction to a Ruby on Rails training being conducted by James and Dana Gray. It discusses the structure of the training, including introducing the teachers and having students introduce themselves. It also provides an overview of what will be taught in the training, including building web applications using Rails, with roughly half the time spent on hands-on labs where students will build a working Rails application.
Javascript concepts covered include variables declared with var, functions defined and called, the DOM accessed through events, and object-oriented programming principles. Functions can take arguments and closures allow functions to access variables from outer scopes.
Software Engineering Thailand: Programming with ScalaBrian Topping
Meet-up, May 28, 2015, Launchpad, Bangkok. http://www.meetup.com/Software-Engineering-Thailand/events/222548484/.
Apologies for the rendering quality not matching the presentation, I did these with Apple Keynote and Slideshare does not support this format. I will try to edit them when there is more time.
Thanks to Bangkok LaunchPad (https://www.facebook.com/launchpadhq) for generously hosting this event!
The document introduces Scala as an alternative programming language to Java that runs on the Java Virtual Machine, describing it as a statically typed, hybrid object-oriented and functional language that is compatible with Java and has features like type inference, pattern matching, lambdas, and higher-order functions. It also promotes trying out Scala in an interactive REPL and provides links to download the Scala software and IDEs.
This document discusses how to build command line interface (CLI) applications in Ruby. It introduces the Thor gem for building CLI apps with single commands and then discusses building interactive shell apps using a read-eval-print loop (REPL) and the GNU Readline library. The document provides examples of CLI apps, why they are useful, and tips for making better CLI apps, and concludes by showcasing a Facebook command line application built with these techniques.
jRuby fixes some issues with the Ruby programming language like memory leaks and lack of kernel level threading by running Ruby code on the Java Virtual Machine which has features like a sophisticated garbage collector, just-in-time compilation for improved performance, and native threading; benchmarks show jRuby provides much higher concurrency and better performance than Ruby for background processing and web applications; deploying a Ruby application using jRuby and a Java application server like Torquebox allows it to take advantage of the reliability, scalability and deployment features of the Java platform.
1. The document provides an introduction to Python programming concepts including data types, variables, syntax, and comments.
2. jQuery is introduced as a JavaScript library that simplifies DOM manipulation and event handling.
3. Server-side languages like Python are discussed as being necessary for dynamic web page generation, data storage and manipulation that occurs before content is sent to the browser.
This document provides an overview and introduction to learning Ruby. It discusses the sponsors of the Learn Ruby 2011 session, why Ruby is a good language to learn, how to install Ruby on different operating systems, common Ruby tools like IRB and gems, and playing around with basic Ruby code in IRB. Attendees are encouraged to explore Ruby documentation and play with IRB before the next session.
This document discusses using Lambda layers to share reusable code across Lambda functions. It describes a case study of migrating a PDF generation service from EC2 to Lambda, which required non-standard dependencies like external binaries and system fonts. The implementation involved wrapping an Express app as a Lambda function, testing it locally by mimicking the Lambda runtime in Docker, and deploying with additional bundles. Lambda layers were then used to separate these dependencies and reduce bundle sizes, though it added complexity to local testing. In conclusion, layers provide benefits of code sharing and separation of concerns at the cost of some increased local testing overhead.
A brief introduction to Crystal programming language that covers its syntax and macros system briefly. This talk is given on 12/02/2016 at RubyConf Taiwan.
Keynote I did at JAX2013 with the topic basically being "the JVM is over - enter the Polyglot Runtime". It is about the work that Oracle and the community is doing to facilitate multiple languages (non Java) on the Java Virtual Machine. This is both relevant for dynamic languages as well as "non dynamic" ones.
The document summarizes a Scala for Java developers meetup that covered why Scala, an introduction to basic Scala concepts, and a quick demo of Akka actors. Some key differences between Scala and Java highlighted include Scala's support for both object-oriented and functional programming, its ability to reduce lines of code through type inference, and its treatment of functions and numbers as objects. The meetup also covered Scala classes, case classes, pattern matching, traits, generics, and the Akka framework for building highly concurrent distributed applications on the JVM.
Code for Startup MVP (Ruby on Rails) Session 1Henry S
This document provides an agenda and overview for a workshop on learning to code for startup MVPs using Ruby on Rails. The agenda covers reviewing a previous session, learning Ruby basics like syntax and semantics through practice, and introducing Rails models using ORM and SQL. It also provides instructions for setting up development environments on Windows, Mac, and Linux systems, installing Git for version control, and an overview of concepts covered in the previous session like the web architecture, Git/GitHub, Rails and Ruby, and deploying to Heroku.
Crystal is a programming language that aims to provide Ruby-like syntax with C-like performance. It compiles to efficient native code without needing to specify variable or argument types. Crystal installation is simple on Linux, macOS, and Windows. Programs can be run, built, and compiled directly from the command line. While still in pre-alpha, the language is designed and its compiler written in Crystal. Porting Ruby code to Crystal is easy with few needed modifications. Current limitations include a lack of incremental compilation and difficulty implementing a REPL due to Crystal not being dynamically typed.
Ruby on Rails (RoR) as a back-end processor for Apex Espen Brækken
The document discusses using Ruby on Rails as a supplement to Oracle Application Express (Apex) for building applications. It provides an overview of why Rails may be useful when Apex has limitations, such as communicating with external systems, parsing emails, or SSH/FTP functionality. The document then covers why Ruby and Rails are good options, how ActiveRecord can be used to interface with databases, and examples of sample Rails applications and projects that interface with external systems or call Java code. It concludes with recommendations around learning Ruby first before frameworks, assessing needs, and using tools to complement rather than replace existing systems like Apex.
RoR是Ruby on Rails的缩写,是一个用于编写Web应用的框架。他基于Ruby语言,给开发人员提供了强大便利的框架支持。Ruby有很多优点,但是一直以来其流行范围仅局限于日本。2004年,当Rails框架横空出世,让人们认识到了一个更符合实际需要并且高效的web框架,在其出现不久就受到了业内的广泛关注。吕国宁将结合自己三年的Rails开发经验,给大家介绍一些Rails的优点,背后的设计文化,以及Rails的前景发展等内容。
Barry Jones introduces himself as the instructor for the Ruby on Rails and PostgreSQL course. He has experience developing applications using various languages and databases. He wishes a course like this had been available when he took over a large Perl to Rails conversion project without knowing Rails or PostgreSQL, which led to issues he later had to fix. The goal of the course is to help students gain proficiency with Rails and PostgreSQL faster to avoid similar mistakes.
NoSQL databases should not be chosen just because a system is slow or to replace RDBMS. The appropriate choice depends on factors like the nature of the data, how the data scales, and whether ACID properties are needed. NoSQL databases are categorized by data model (document, column family, graph, key-value store) which affects querying. Other considerations include scalability based on the CAP theorem and operational factors like the distribution model and whether there is a single point of failure. The best choice depends on the specific requirements and risks losing data if chosen incorrectly.
This document summarizes a presentation about using Ruby in an office setting. It discusses four case studies: [1] Applying the issue tracker Redmine to various projects beyond software development, [2] Using GitLab to allow every team member to easily create repositories for Redmine projects, [3] Using the Axlsx gem to generate Excel files for communicating project data with clients, and [4] Using the Sinatra web framework to easily create scripts for tasks like generating screenshots from a web repository. The document concludes by asking about what makes Ruby programming enjoyable.
JRuby allows running Ruby code on the Java Virtual Machine. This provides access to Java libraries and enables deployment of Ruby/Rails applications as Java web archives for easier hosting. Integrating Rails with JRuby requires plugins like ActiveRecord-JDBC for database access. Performance is currently lower than native Ruby but may improve as JVM optimizations emerge. Full Ruby compatibility remains challenging due to differences from the JVM environment.
This document provides an overview of a presentation on Ruby on Rails given to the Agile Atlanta group in May 2005. The presentation covered an introduction to Ruby on Rails, a demonstration of Rails, a description of the Rails framework including its Model-View-Controller architecture, ActiveRecord implementation, and other features like helpers, caching and testing. Examples were provided of how to define models, views, controllers and web services in Rails. The presenter emphasized how Rails promotes agile practices through conventions, its focus on human factors and succinct code.
The document discusses Ruby on Rails, an open-source web application framework. It is optimized for programmer happiness and productivity by favoring convention over configuration, allowing developers to write code more quickly. Ruby on Rails uses a model-view-controller (MVC) architecture and is widely adopted by companies like Twitter.
RAILS OFFERINGS
Custom application development.
RoR Web-Product development.
Rails CMS Development services
QA/testing services and Auditing
Porting and Migration
MVP for start-up businesses
Architecture Re-design and Improvement
Solving scalability, usability and security
Rails e-Commerce Application Development
Rails Support and maintenance.
Angular JS, Angular 2, Angular 4
ionic frameworks
React JS, Node JS
MEAN Stack developments
Full Stack Developers
Phoenix Framework
RUBY ON RAILS EXPERTISE
Rails – Version Rails 5.0, Rails 4.2, Rails 4.1, Rails 4.0, Rails 3.2, and Rails 2.3.
Active Support Core Extensions
Rails Internationalization API
Action Mailer Basics
Active Job Basics
Testing Rails Applications
Securing Rails Applications
Debugging Rails Applications
Configuring Rails Applications
The Rails Command Line
Asset Pipeline
Working with JavaScript in Rails
Auto loading and Reloading Constants
Caching with Rails
Using Rails for API-only Applications
Action Cable Overview
The document provides an introduction and overview of Ruby on Rails. It discusses the history and features of Ruby and compares it to other programming languages like Python and Perl. It then describes the architecture of Rails, including the Model-View-Controller pattern and ActiveRecord. The document also provides examples of migrations, validations and associations in Rails.
This document discusses how to build command line interface (CLI) applications in Ruby. It introduces the Thor gem for building CLI apps with single commands and then discusses building interactive shell apps using a read-eval-print loop (REPL) and the GNU Readline library. The document provides examples of CLI apps, why they are useful, and tips for making better CLI apps, and concludes by showcasing a Facebook command line application built with these techniques.
jRuby fixes some issues with the Ruby programming language like memory leaks and lack of kernel level threading by running Ruby code on the Java Virtual Machine which has features like a sophisticated garbage collector, just-in-time compilation for improved performance, and native threading; benchmarks show jRuby provides much higher concurrency and better performance than Ruby for background processing and web applications; deploying a Ruby application using jRuby and a Java application server like Torquebox allows it to take advantage of the reliability, scalability and deployment features of the Java platform.
1. The document provides an introduction to Python programming concepts including data types, variables, syntax, and comments.
2. jQuery is introduced as a JavaScript library that simplifies DOM manipulation and event handling.
3. Server-side languages like Python are discussed as being necessary for dynamic web page generation, data storage and manipulation that occurs before content is sent to the browser.
This document provides an overview and introduction to learning Ruby. It discusses the sponsors of the Learn Ruby 2011 session, why Ruby is a good language to learn, how to install Ruby on different operating systems, common Ruby tools like IRB and gems, and playing around with basic Ruby code in IRB. Attendees are encouraged to explore Ruby documentation and play with IRB before the next session.
This document discusses using Lambda layers to share reusable code across Lambda functions. It describes a case study of migrating a PDF generation service from EC2 to Lambda, which required non-standard dependencies like external binaries and system fonts. The implementation involved wrapping an Express app as a Lambda function, testing it locally by mimicking the Lambda runtime in Docker, and deploying with additional bundles. Lambda layers were then used to separate these dependencies and reduce bundle sizes, though it added complexity to local testing. In conclusion, layers provide benefits of code sharing and separation of concerns at the cost of some increased local testing overhead.
A brief introduction to Crystal programming language that covers its syntax and macros system briefly. This talk is given on 12/02/2016 at RubyConf Taiwan.
Keynote I did at JAX2013 with the topic basically being "the JVM is over - enter the Polyglot Runtime". It is about the work that Oracle and the community is doing to facilitate multiple languages (non Java) on the Java Virtual Machine. This is both relevant for dynamic languages as well as "non dynamic" ones.
The document summarizes a Scala for Java developers meetup that covered why Scala, an introduction to basic Scala concepts, and a quick demo of Akka actors. Some key differences between Scala and Java highlighted include Scala's support for both object-oriented and functional programming, its ability to reduce lines of code through type inference, and its treatment of functions and numbers as objects. The meetup also covered Scala classes, case classes, pattern matching, traits, generics, and the Akka framework for building highly concurrent distributed applications on the JVM.
Code for Startup MVP (Ruby on Rails) Session 1Henry S
This document provides an agenda and overview for a workshop on learning to code for startup MVPs using Ruby on Rails. The agenda covers reviewing a previous session, learning Ruby basics like syntax and semantics through practice, and introducing Rails models using ORM and SQL. It also provides instructions for setting up development environments on Windows, Mac, and Linux systems, installing Git for version control, and an overview of concepts covered in the previous session like the web architecture, Git/GitHub, Rails and Ruby, and deploying to Heroku.
Crystal is a programming language that aims to provide Ruby-like syntax with C-like performance. It compiles to efficient native code without needing to specify variable or argument types. Crystal installation is simple on Linux, macOS, and Windows. Programs can be run, built, and compiled directly from the command line. While still in pre-alpha, the language is designed and its compiler written in Crystal. Porting Ruby code to Crystal is easy with few needed modifications. Current limitations include a lack of incremental compilation and difficulty implementing a REPL due to Crystal not being dynamically typed.
Ruby on Rails (RoR) as a back-end processor for Apex Espen Brækken
The document discusses using Ruby on Rails as a supplement to Oracle Application Express (Apex) for building applications. It provides an overview of why Rails may be useful when Apex has limitations, such as communicating with external systems, parsing emails, or SSH/FTP functionality. The document then covers why Ruby and Rails are good options, how ActiveRecord can be used to interface with databases, and examples of sample Rails applications and projects that interface with external systems or call Java code. It concludes with recommendations around learning Ruby first before frameworks, assessing needs, and using tools to complement rather than replace existing systems like Apex.
RoR是Ruby on Rails的缩写,是一个用于编写Web应用的框架。他基于Ruby语言,给开发人员提供了强大便利的框架支持。Ruby有很多优点,但是一直以来其流行范围仅局限于日本。2004年,当Rails框架横空出世,让人们认识到了一个更符合实际需要并且高效的web框架,在其出现不久就受到了业内的广泛关注。吕国宁将结合自己三年的Rails开发经验,给大家介绍一些Rails的优点,背后的设计文化,以及Rails的前景发展等内容。
Barry Jones introduces himself as the instructor for the Ruby on Rails and PostgreSQL course. He has experience developing applications using various languages and databases. He wishes a course like this had been available when he took over a large Perl to Rails conversion project without knowing Rails or PostgreSQL, which led to issues he later had to fix. The goal of the course is to help students gain proficiency with Rails and PostgreSQL faster to avoid similar mistakes.
NoSQL databases should not be chosen just because a system is slow or to replace RDBMS. The appropriate choice depends on factors like the nature of the data, how the data scales, and whether ACID properties are needed. NoSQL databases are categorized by data model (document, column family, graph, key-value store) which affects querying. Other considerations include scalability based on the CAP theorem and operational factors like the distribution model and whether there is a single point of failure. The best choice depends on the specific requirements and risks losing data if chosen incorrectly.
This document summarizes a presentation about using Ruby in an office setting. It discusses four case studies: [1] Applying the issue tracker Redmine to various projects beyond software development, [2] Using GitLab to allow every team member to easily create repositories for Redmine projects, [3] Using the Axlsx gem to generate Excel files for communicating project data with clients, and [4] Using the Sinatra web framework to easily create scripts for tasks like generating screenshots from a web repository. The document concludes by asking about what makes Ruby programming enjoyable.
JRuby allows running Ruby code on the Java Virtual Machine. This provides access to Java libraries and enables deployment of Ruby/Rails applications as Java web archives for easier hosting. Integrating Rails with JRuby requires plugins like ActiveRecord-JDBC for database access. Performance is currently lower than native Ruby but may improve as JVM optimizations emerge. Full Ruby compatibility remains challenging due to differences from the JVM environment.
This document provides an overview of a presentation on Ruby on Rails given to the Agile Atlanta group in May 2005. The presentation covered an introduction to Ruby on Rails, a demonstration of Rails, a description of the Rails framework including its Model-View-Controller architecture, ActiveRecord implementation, and other features like helpers, caching and testing. Examples were provided of how to define models, views, controllers and web services in Rails. The presenter emphasized how Rails promotes agile practices through conventions, its focus on human factors and succinct code.
The document discusses Ruby on Rails, an open-source web application framework. It is optimized for programmer happiness and productivity by favoring convention over configuration, allowing developers to write code more quickly. Ruby on Rails uses a model-view-controller (MVC) architecture and is widely adopted by companies like Twitter.
RAILS OFFERINGS
Custom application development.
RoR Web-Product development.
Rails CMS Development services
QA/testing services and Auditing
Porting and Migration
MVP for start-up businesses
Architecture Re-design and Improvement
Solving scalability, usability and security
Rails e-Commerce Application Development
Rails Support and maintenance.
Angular JS, Angular 2, Angular 4
ionic frameworks
React JS, Node JS
MEAN Stack developments
Full Stack Developers
Phoenix Framework
RUBY ON RAILS EXPERTISE
Rails – Version Rails 5.0, Rails 4.2, Rails 4.1, Rails 4.0, Rails 3.2, and Rails 2.3.
Active Support Core Extensions
Rails Internationalization API
Action Mailer Basics
Active Job Basics
Testing Rails Applications
Securing Rails Applications
Debugging Rails Applications
Configuring Rails Applications
The Rails Command Line
Asset Pipeline
Working with JavaScript in Rails
Auto loading and Reloading Constants
Caching with Rails
Using Rails for API-only Applications
Action Cable Overview
The document provides an introduction and overview of Ruby on Rails. It discusses the history and features of Ruby and compares it to other programming languages like Python and Perl. It then describes the architecture of Rails, including the Model-View-Controller pattern and ActiveRecord. The document also provides examples of migrations, validations and associations in Rails.
Ruby on Rails is a web framework that allows for rapid development through its built-in tools and modular structure. It incorporates principles of quality code, fast development processes, and reliable code. The framework uses generators to quickly create application components and includes various object-relational mappers to interface with different database systems. Testing and deployment are also streamlined through built-in tools and external utilities like Rake and Capistrano. Popular sites like Twitter, SlideShare, and Basecamp were all built using Ruby on Rails, demonstrating its capabilities for powering large-scale web applications.
This document provides an overview of Ruby on Rails, Apache httpd, and Oracle. It discusses why Ruby on Rails is useful for rapid prototyping, and how it can be integrated with Apache and Oracle. The document demonstrates Rails generators, routing, testing with RSpec, and security features. It also outlines how to configure Apache and link Rails to an Oracle database. The presenter provides cheat sheets for creating a sample Rails application integrated with Devise, ActiveAdmin, and a database, with minimal code required. The key takeaway is that learning is fun through experimenting with different technologies.
The document compares PHP and Ruby, and the web frameworks CakePHP and Ruby on Rails. It discusses the key features and differences between PHP and Ruby, and demonstrates how a simple blog application can be created from scratch in under a minute using Ruby on Rails with no coding required, compared to the additional coding needed in CakePHP. The document argues that Ruby on Rails is more productive and fully-featured compared to CakePHP.
The document provides an overview of Ruby on Rails including: why developers may be interested in Rails, key concepts like MVC architecture and conventions over configuration, how models, views and controllers work, database persistence with ActiveRecord, and common Rails tools like migrations, validations and associations. It also briefly discusses Ruby's creator Yukihiro Matsumoto, popular Rails applications, and resources for learning more.
JRuby allows developers to use the Ruby programming language on the Java platform. It provides the ability to leverage existing Java libraries and frameworks from Ruby code. This allows developers to benefit from the agility of Ruby and dynamic languages for web development while still taking advantage of robust Java technologies for the backend. Rails applications can also be deployed as WAR files to be run on Java application servers and benefit from features like scalability. Overall, JRuby provides a way to incorporate Ruby into Java/JEE projects for improved productivity through rapid prototyping and dynamic web frameworks while still using reliable Java infrastructure.
The document discusses getting started with the Ruby on Rails web application framework. It provides an overview of Rails' model-view-controller architecture and components like models, views, controllers, helpers, partials and layouts. It also covers how the University of Wisconsin-Eau Claire uses Rails for projects, Rails deployment options, performance, scalability and security considerations.
This document provides an introduction to Ruby on Rails. It discusses what Rails is, why to use a web framework, and key aspects of Rails including its model-view-controller architecture, ActiveRecord object-relational mapping, routing, and more. It also provides additional resources for learning Rails such as books, websites, and the Ruby programming language.
This document provides an overview and agenda for a presentation on TorqueBox, which allows running Ruby on Rails applications with enterprise capabilities by running them on the JBoss application server. The presentation covers how Rails applications can be deployed on TorqueBox to gain access to services like the web container, message bus, and databases. It also discusses how additional features like scheduled jobs, asynchronous task queues, and SOAP endpoints can be integrated by following Rails-like conventions.
Ruby on Rails is a web framework built on Ruby that aims to make web development simpler and more enjoyable. It was extracted from the Basecamp project management tool. Rails emphasizes conventions over configurations, separating concerns into models, views, and controllers, and following patterns that reduce repetition. Developers can get started with Rails by downloading the Ruby language and using resources like books, screencasts, and online communities to learn more. Popular hosting providers that support Rails include Heroku, Slicehost, and Dreamhost.
RubyMotion is a toolchain for developing native iOS applications using the Ruby language. It compiles Ruby code into optimized machine code for iOS. RubyMotion allows developers to use Ruby while also having direct access to the full native iOS API like Objective-C. It provides a way to code iOS apps in Ruby without needing to learn Objective-C or Cocoa Touch.
The document discusses libraries, frameworks, and content management systems (CMS) for web development. It lists popular JavaScript libraries like jQuery, PHP frameworks like Zend and CakePHP, and CMS's like Drupal, WordPress, and Joomla. It also notes that frameworks can become constraining and force developers to work against their tools. The document promotes a upcoming event on podcasting and vodcasting.
The document summarizes a presentation on Ruby on Rails given by Obie Fernandez. It introduces Ruby and Rails, discussing their object-oriented nature, conventions, and tools. It highlights Rails' productivity gains through conventions and generators. Challenges discussed include a learning curve and limited IDE support. The document concludes Rails is ready for many applications but not all, and the right developer attitude is important.
The document summarizes a presentation on Ruby and Ruby on Rails. It introduces Ruby as a dynamic, object-oriented scripting language similar to Smalltalk and Perl. It then discusses Ruby on Rails, describing it as a "kitchen sink" model-view-controller web application framework built with Ruby. Key aspects of Rails like ActiveRecord, views, and controllers are briefly explained.
The document discusses software as a service (SAAS) and why the company Viridian chose to use the Ruby on Rails web application framework. It notes that Rails allows for lower entry costs than other options due to reduced server maintenance needs and flexibility. It also summarizes some key advantages of Rails like its convention over configuration approach and support for modern technologies. The document provides resources for learning Rails including dev environments, tutorials, and open source projects to review.
14. Ruby = Freedom
The programmer has as much power as possible
15. Ruby = Freedom
The programmer has as much power as possible
Duck typing
16. Ruby = Freedom
The programmer has as much power as possible
Duck typing
Evaluation of code in different contexts
17. Ruby = Freedom
The programmer has as much power as possible
Duck typing
Evaluation of code in different contexts
Monkey patching
18. Ruby = Freedom
The programmer has as much power as possible
Duck typing
Evaluation of code in different contexts
Monkey patching
"But what about safety?"
19. Ruby = Freedom
The programmer has as much power as possible
Duck typing
Evaluation of code in different contexts
Monkey patching
"But what about safety?"
Tests
Even restrictive languages don't provide enough
sanity-checking to make testing unnecessary.
20. Rails
MVC framework with complementary functionality
21. Rails
MVC framework with complementary functionality
REST
22. Rails
MVC framework with complementary functionality
REST
ORM (ActiveRecord)
Migrations
Validations
Ohter libs (NoSQL etc.) available
23. Rails
MVC framework with complementary functionality
REST
ORM (ActiveRecord)
Migrations
Validations
Ohter libs (NoSQL etc.) available
E-mailing (ActionMailer)
24. Rails
MVC framework with complementary functionality
REST
ORM (ActiveRecord)
Migrations
Validations
Ohter libs (NoSQL etc.) available
E-mailing (ActionMailer)
Internationalization
31. Ruby & Rails – weak points
Hosting
Beginning at 200 CZK?
Better to have your own VPS.
32. Ruby & Rails – weak points
Hosting
Beginning at 200 CZK?
Better to have your own VPS.
Development on Windows
33. Ruby & Rails – weak points
Hosting
Beginning at 200 CZK?
Better to have your own VPS.
Development on Windows
You might not google problem solutions (the
community of Rubyists using Windows is small)
34. Ruby & Rails – weak points
Hosting
Beginning at 200 CZK?
Better to have your own VPS.
Development on Windows
You might not google problem solutions (the
community of Rubyists using Windows is small)
Some libs/tools require POSIX environment.
Might occur unsolvable problems.
35. Ruby & Rails – weak points
Hosting
Beginning at 200 CZK?
Better to have your own VPS.
Development on Windows
You might not google problem solutions (the
community of Rubyists using Windows is small)
Some libs/tools require POSIX environment.
Might occur unsolvable problems.
Windows development is theoretically possible,
but not worth the trouble.
36. Ruby & Rails – weak points
Hosting
Beginning at 200 CZK?
Better to have your own VPS.
Development on Windows
You might not google problem solutions (the
community of Rubyists using Windows is small)
Some libs/tools require POSIX environment.
Might occur unsolvable problems.
Windows development is theoretically possible,
but not worth the trouble.
StackOverflow link: http://bit.ly/fVnGNb
38. Ruby & Rails – why switch?
Personal viewpoint
"Rails is great, but similar solutions exist in other
languages."
The advantage of Rails is coherency.
39. Ruby & Rails – why switch?
Personal viewpoint
"Rails is great, but similar solutions exist in other
languages."
The advantage of Rails is coherency.
"Still, they exist. Why would I switch then?"
40. Ruby & Rails – why switch?
Personal viewpoint
"Rails is great, but similar solutions exist in other
languages."
The advantage of Rails is coherency.
"Still, they exist. Why would I switch then?"
Because of Ruby.
41. Ruby & Rails – why switch?
Personal viewpoint
"Rails is great, but similar solutions exist in other
languages."
The advantage of Rails is coherency.
"Still, they exist. Why would I switch then?"
Because of Ruby.
The solutions in other languages won't get you
as much productivity and fun/happiness.