Fun with Ruby and Rails Chris Jeris 18 October 2011.

Slides:



Advertisements
Similar presentations
Chapter 2. Slide 1 CULTURAL SUBJECT GATEWAYS CULTURAL SUBJECT GATEWAYS Subject Gateways  Started as links of lists  Continued as Web directories  Culminated.
Advertisements

Developing the Facebook Application for the Penn State University Libraries Developing the Penn State University Libraries Application for Facebook.
1 JRuby on Rails GAO ANG Sun Functional Campus Ambassador 1.
Google App Engine Cloud B. Ramamurthy 7/11/2014CSE651, B. Ramamurthy1.
21 st July 2006FLOSSIE Conference Open Source Assistive Technology Software OATS David Colven, Steve Lee & Simon Judge.
Weblog benefits for research students Maryam Sarrafzadeh.
Server-Side vs. Client-Side Scripting Languages
Software Architecture Patterns (2). what is architecture? (recap) o an overall blueprint/model describing the structures and properties of a "system"
AgriDrupal - a “suite of solutions” for agricultural information management and dissemination, built on the Drupal CMS; - the community of practice around.
Presented By: Ayelet Birnbaum Yael Kazaz Supervisor: Viktor Kulikov 07/05/12.
RAY PASTORE, PH.D. ASSISTANT PROFESSOR OF INSTRUCTIONAL TECHNOLOGY – UNCW How to Build Mobile Apps for iOS and Android.
PLUG-INs Information Fujariah Colleges
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Web Design Software Alyssa Lagimoniere. Adobe Dreamweaver Pros Relatively low-cost price ($99) Produces very "clean" HTML code; easy to transport and.
Describe the application and limits of procedural, object orientated and event driven programming. 
A little engineering on Rails Robert W. Hasker. Goals Intro to the Rails framework ▫Basic concepts: MVC, Active Record ▫A bit of Ruby Using Rails to build.
RUBY ON RAILS Mark Zhang. In this talk  Overview of Ruby on Rails  Core ideas  Show a tiny bit of example code  Touch on several general web development/
Ruby on Rails. What is Ruby on Rails? Ruby on Rails is an open source full-stack web framework. It is an alternative to PHP/MySQL. It can render templates,
TECHNOLOGICAL ENABLERS TO ASSIST YOUR LIBRARY'S MARKETING STRATEGIES: THE POWER OF SOCIAL MEDIA PRESENTED BY MS MOSHIANE RAMAUBE MS MANDISA LAKHENI.
Asterisk The Open Source PBX. What we will discuss... ● Functionality of a PBX... ● What is Asterisk... ● Setting up your own PBX...  Hardware needed.
Three-tier Mobile Application Testing Framework:
Michael Burnside Blog: Software Quality Assurance, Quality Engineering, and Web and Mobile Test.
Background The Encyclopedio of Life (EOL) is an ROR open source project to create a free, online reference source and database for every one of the 1.8.
VeribisCRM CUSTOMER RELATIONSHIP MANAGEMENT Engin Duran Experience is our know how.
Ruby & rails by Nicholas Belotti. What is ruby Ruby is an object orientated scripting language. In Ruby...everything is an object! Ruby was released in.
The OCLC Library Spotlight Program ™ Localize, Mobilize, and Spotlight Your Library Jeff Penka Director, Global Discovery & Syndication.
We put the earn in Learning!™ Online Learning in an Open Source Environment D. Verne Morland Managing Partner ROI Learning Services 4 March 2004.
Melissa Armstrong – Sponsor Dr. Eck Doerry – Mentor Greg Andolshek Alex Koch Michael McCormick Department of Computer Science SolutionProblemDesign User.
What Is Wiki ? Wiki is a piece of server software that allows users to freely create and edit Web page content using any Web browser. Wiki supports hyperlinks.
1 My Yahoo! Personalising the Web Nick Cox – Product Manager May 2007.
Designing for iPad and other mobile devices Filipe Fortes CTO, Treesaver.
Peter Laird. | 1 Building Dynamic Google Gadgets in Java Peter Laird Managing Architect WebLogic Portal BEA Systems.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
Developer TECH REFRESH 15 Junho 2015 #pttechrefres h Understand your end-users and your app with Application Insights.
Prepared By : Md Jakaria 1 Learn Internet Basics LECTURE 7.
Model View Controller A Pattern that Many People Think They Understand, But Has A Couple Meanings.
ICS 463, Intro to Human Computer Interaction Design: 5. Design Processes Dan Suthers.
Hattan Shobokshi mvcdotnet.wordpress.com Web Development in the Past (Microsoft Stack)
Web Development Process The Site Development Process Site Construction is one of the last steps.
Lindley Codes Touch Develop Youth Spark Day at Lindley Middle School.
Exceeding Customer Expectations by launching Bata Mobile Application.
TODAY Android Studio Installation Getting started Creating your 1 st App Beginning to understanding Intents.
CMS 2: Advanced Web Editing - Content Presented By: Katie Pagano, Special Projects Manager Steve Pont, Product Architect.
CS110 Introduction to Programming Lecture 1 January 27, 2004 Ethan Bolker Philosophy Bank: user interface, Java, object model Programming environment Homework.
Ruby on Rails. Web Framework for Ruby Designed to make it easier to develop, deploy, and maintain web applications Design with Model-View-Controller –almost.
Submitted by: Moran Mishan. Instructed by: Osnat (Ossi) Mokryn, Dr.
Clash of Clans Hack Cheats for android & IOS For Unlimited gems, gold.
Welcome to Open Source Technology An Overview of Software By Afroz Hippargi, CIT, YASHADA, Pune.
No matter what you are seeking to have developed there are times when it is necessary to have it custom made. In this presentation we will explore the.
Session 5: How Search Engines Work. Focusing Questions How do search engines work? Is one search engine better than another?
First appeared Features Popular uses Basic This language emphasises on ease of use, allowing general purpose programming to those with a small amount of.
Presented by Alexey Vedishchev Developing Web-applications with Grails framework American University of Nigeria, 2016 Intro To MVC Architecture.
APIs George Wyner January 28, Agenda What is an API? How do developers discover, understand, and use APIs to build applications How to use an API.
Snip2Code: Search, Share and Collect Code Snippets Faster, Easier, Efficiently with Power of Microsoft Azure Platform MICROSOFT AZURE ISV PROFILE: SNIP2CODE.
Guide To Develop Mobile Apps With Titanium. Agenda Overview Installation of Platform SDKs Pros of Appcelerator Titanium Cons of Appcelerator Titanium.
Dive into web development
Swift by Kevin Gamboa Teky Alvarado Hieu Tran Elizabeth Sanchez
Presented by M.S.c Sarah J M Mechanical Engineering Department
Web Programming Language
Introducing the Internet
Outline Introduction Standards Project General Idea
Web Design & Development
JavaScript is a language that is used on any website to add tags, improve the function of the website and allow users to interact. When the development.
Servoy Delivers-High Productivity Platform to Design, Build and Deliver Business Applications with a Superior Experience on Microsoft Azure Partner Logo.
ShopYourWay Platform Yossi Shmueli
MyAppFree, Powered by Microsoft Azure, Lets Global Users Discover and Download Tested and Handpicked Windows Apps and Games for Free MICROSOFT AZURE ISV.
Quasardb Is a Fast, Reliable, and Highly Scalable Application Database, Built on Microsoft Azure and Designed Not to Buckle Under Demand MICROSOFT AZURE.
Back end Development CS Programming Languages for Web Applications
Back end Development CS Programming Languages for Web Applications
Web Application Development Using PHP
Presentation transcript:

Fun with Ruby and Rails Chris Jeris 18 October 2011

I am... formerly a software engineer at HCL also formerly co-chair of abcd-library now working for Brightcove, a software company in Kendall Square that uses Ruby on Rails (not solely)

Ruby is... a modern programming language available for Windows, Mac OS, Unix/Linux, Java (JRuby),.NET (IronRuby), and Android (Ruboto) flexible and easy to read and write: def is_lower_48?(address) address.country == "United States" and not ["AK", "HI"].include?(address.state) end designed to maximize programmer happiness

Rails is... a framework for building web applications in Ruby a set of strong ideological opinions about how web applications should be structured a particularly good tool for building prototypes rapidly (which doesn't mean it's only good for that) a thriving, productive, fractious community of free software developers a constantly growing and changing software ecosystem with libraries to do almost anything

Who uses Ruby on Rails? Lots of web applications you've heard of: Basecamp, Twitter, Hulu, Groupon,... Blacklight (projectblacklight.org), a Solr-based discovery interface Umlaut (wiki.code4lib.org/index.php/Umlaut), a link resolver enhancer Library Lab projects developed at the Berkman Center (like the Widener carrel reservation app) The HCL annotated bibliography application I wrote

The page-centric paradigm Web pages, with instructions in them to do things Today's date is #DateFormat(today, "yyyy-mm-dd")# It's a lot like writing a regular website, only every so often you tell the server to do something Usually you eventually reach an unmaintainable mess

Model-View-Controller paradigm Partition your program into three basic responsibilities: o The model is your representation of data (bibliographic records, search queries, shopping carts,...) o The view is the web pages that you show to the user, and all the behavior they contain o The controller directs traffic, receiving requests from the user, deciding what actions to take, and mediating between model and view Every major web programming platform provides a way for you to follow this paradigm Rails forces you to from the very beginning

Demo

Other neat things to use with Rails RSpec for test-driven development Cucumber for behavior-driven development Scenario: Request to create a new collection Given I open the topic at the home page When I follow "create a new collection" Then I should be on the collection creation form jQuery is now built in (as of Rails 3.1)

Learning Ruby and Rails Read these Agile Web Development with Rails and Programming Ruby 1.9 from Pragmatic Programmers Join boston.rb (bostonrb.org) irc.freenode.org: #ruby-lang, #rubyonrails railscasts.com

Things to watch out for You can use Windows... but don't. (If you absolutely have to, use JRuby.) Rails on iSites is a clash of two opinionated frameworks. You can make it work, but it takes some hacking. The Rails world changes very fast. You don't need to keep up with the latest hip fashions.... Until you do, because something you use changed.

Evaluation Ruby, in and of itself, is a friendly programming language and a good one for people who are new to programming Rails is a wonderful system for building web applications, if you can program or want to learn programming Ruby on Rails has a steeper learning curve than page- centered systems like PHP or ColdFusion If you need to build an interactive web thing and don't really like the idea of programming, try Drupal instead

Thank you! Questions?