Upgrade to Pro — share decks privately, control downloads, hide ads and more …

10 things I learned at RailsConf 2012

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →

10 things I learned at RailsConf 2012

A quick overview of some things I learned at RailsConf 2012, Austin TX. Presented to Montreal on Rails or May 15th 2012.

Hugo Frappier

May 14, 2012

Transcript

34 slides
  1. Hot subject of the year ‣ 2008: Rest ‣ 2009:

    iOS, jQuery, mobility ‣ 2010: NoSQL databases ‣ 2011: Javascript frameworks (backbone, ...) ‣ 2012: nothing ‣ ... or maybe: "simple vs complex"
  2. Fifth year for me. Why? ‣ Take a break from

    work ‣ Learn new stuff ‣ Learn from people's experience ‣ See the trends ‣ Hang out with the community
  3. Event sourcing ‣ events as history of data ‣ can

    recreate object state at any point in time ‣ Bug to fix? - fix it - replay events - database is fixed ‣ Commons uses - source control - financial/accounting systems - complex domains ‣ https://github.com/karmajunkie/replay Use the Source, Luke: High fidelity data with event sourcing (Keith Gaddis) 1
  4. nsrails.com ‣ NSRails is a light-weight Objective-C framework (iOS or

    OS X) for simple but powerful communication with your Rails server. ‣ https://github.com/dingbat/nsrails 2 Lightning Talks (Dan Hassin @2nf340)
  5. erd ‣ A Rails engine for drawing your app’s ER

    diagram and operating migrations ‣ http://localhost:3000/erd 3 Lightning Talks (@a_matsuda)
  6. TwitterCLDR ‣ i18n: no javascript & not web-friendly ‣ Twitter

    uses a Translation Center app for managing translations ‣ Export bundles for their apps ‣ gem 'twitter_cldr' - dates, times, numbers, sorting, currencies, language names, countries, units of measure, pluralization - future: normalization, collation, capitalization, abbreviations, quoting, javascript version i18n on Rails: A Twitter Approach (Cameron Dutro) 4
  7. TwitterCLDR > (5150.95).localize => 5,150.95 > (5150.95).localize(:fr) => 5 150,95

    > (5150.95).localize(:fr).to_currency.to_s => "5 150,95 $" > (5150.95).localize.to_currency.to_s => "$5,150.95" i18n on Rails: A Twitter Approach (Cameron Dutro) 4
  8. TwitterCLDR > DateTime.now.localize(:fr).to_medium_s => "14:30:00 13 mai 2012" > DateTime.now.localize(:en).to_medium_s

    => "2:30:04 PM May 13, 2012" > Date.today.localize.to_full_s => "Sunday, May 13, 2012" > Date.today.localize(:fr).to_full_s => "dimanche 13 mai 2012" i18n on Rails: A Twitter Approach (Cameron Dutro) 4
  9. Making the Web fast(er) ‣ measure user perceived latency ‣

    Google team dedicated to make it faster ‣ performance.timing in Chrome console ‣ mod_pagespeed for Apache ‣ Page Speed Chrome extension https://developers.google.com/speed/docs/insights/using_chrome ‣ http://webpagetest.org Let's make the web faster tips from trenches @ Google (Ilya Grigorik) 5
  10. brakemanscanner.org ‣ Statically analyzes Rails application code to find security

    issues ‣ gem 'brakeman', group: 'development' ‣ brakeman -f html -o report.html Securing your site (Thomas Pomfret) 6
  11. Mobile Rage ‣ 2012: more smartphones sold than PCs ‣

    1/3 of Canadians have smartphones ‣ 74% of the users will bounce after 5 seconds ‣ native apps: not everyone wants to install an application. Don't always offer to install one! ‣ Strategy: - Mobile First - Responsive Design Mobile Rage What causes it how to fix it (Lori M Olson) 7
  12. generator shortcuts > rails g resource book slug:string{20}:index title summary:text

    author:references Ten Things You Didn't Know Rails Could Do (James Edward Gray II) 8
  13. command line ‣ rake notes ‣ rake notes:fixme ‣ rake

    db:migrate:status ‣ rails console --sandbox - helper.number_to_currency 1.45 - User.pluck(:email) - Book.uniq.pluck(:author_id) Ten Things You Didn't Know Rails Could Do (James Edward Gray II) 9
  14. postgresql ‣ Supports fulltext search! ‣ t.column :search, "tsvector" ‣

    CREATE INDEX articles_search_index ON articles USING gin(search); ‣ See James Edward Gray presentation for more details Ten Things You Didn't Know Rails Could Do (James Edward Gray II) 11
  15. Atomic write ‣ There is a way to prevent half-written

    files from being seen by other processes Ten Things You Didn't Know Rails Could Do (James Edward Gray II) 12
  16. Work in background 13 ‣ Ruby 1.9 provides a Queue

    class ‣ Rails is thread-safe ‣ Why use DelayedJob, Resque and others for simple things? ‣ Let's fetch the 10 latest tweets after a user registers Ten Things You Didn't Know Rails Could Do (James Edward Gray II)
  17. Tokaido ‣ Let's make Rails on OS X easy again!

    ‣ From the one and only Yehuda Katz ‣ http://yehudakatz.com/2012/04/13/tokaido- my-hopes-and-dreams/ ‣ Not released yet Lightning Talks (Yehuda Katz) 14
  18. My picks ‣ Keynotes: - DHH - Rich Hickey (clojure

    language) - @tenderlove (a.k.a. Aaron Patterson) - David Cohen (TechStars) ‣ Ten Things You Didn't Know Rails Could Do ‣ Making the Web fast(er) ‣ Rails Sustainable Productivity

More Decks by Hugo Frappier

Other Decks in Technology