1 / 11

Partners Research Tech Lunch

Partners Research Tech Lunch. Oct 27, 2011. Ultra-quick Ruby Overview. Perl, Smalltalk, Lisp Object-oriented Dynamically-typed “Duck Typing” - capability, not type Message passing vs function calls Open Classes Concise, clear, expressive. Ultra-quick Rails Overview. MVC ActiveRecord

hazel
Download Presentation

Partners Research Tech Lunch

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Partners Research Tech Lunch Oct 27, 2011

  2. Ultra-quick Ruby Overview • Perl, Smalltalk, Lisp • Object-oriented • Dynamically-typed • “Duck Typing” - capability, not type • Message passing vs function calls • Open Classes • Concise, clear, expressive

  3. Ultra-quick Rails Overview • MVC • ActiveRecord • Migrations • Templates / Controllers • Routing • Rack • Convention over Configuration

  4. Why Ruby (and why not) • Good • Meta-programming • Lambdas / closures; DSLs • Gems • “Many come to Ruby because of Rails, but they stay for Ruby” • Bad • CPU-bound • Concurrency etc

  5. Why Rails • Mature, stable • Velocity: prototyping, fast iteration • Building, consuming APIs • Deployment ease • Free! • Bad • Legacy DBs • Stored Procedures; Oracle

  6. Other Ruby Implementations • JRuby • Rubinius • IronRuby, MacRuby

  7. Our Toolkit • Where’s the IDE? • Jquery • MySQL / SQLite • Redis • Pivotal Tracker • VMs – Fedora, MySQL 5.1

  8. Our Toolkit Cont’d • Git • Fast, decentralized VCS • Cheap easy branching • Smart merge tools • Github • Repo hosting, Collaboration • Code review • Dotfiles • Examples

  9. Our Toolkit, Cont’d • RVM • Per-project rubies • Gemsets • Capistrano • Scriptable deployment • Multi-target, multi-environment • Rake

  10. Testing • Cultural, pervasive • TDD – object behavior • BDD – system behavior • RSpec • Capybara • Javascript problems (Selenium, headless browser) • Development vs Design • CI

  11. Projects • clinicaltrials.dfhcc.harvard.edu • Protocol activation

More Related