Becoming a More Productive
     Rails Developer
     A Collection of semi-useful suggestions

              John McCaffrey
               @J_McCaffrey
          RailsPerformance.com
Intro
Intro
• Independent Rails Developer
Intro
• Independent Rails Developer
• CodeAcademy Mentor
Intro
• Independent Rails Developer
• CodeAcademy Mentor
• Enthusiast
Topics
• DWTDSYADB aka Taking good notes
• Continuing your Rails education
• Getting help
• Taking your skills to the next level
• Q&A
DWTDSYADB
  Don’t waste time
 doing *stuff you’ve
already done before
Take Notes
       like your life depends on it


• Take lots o’ notes
• Searchable, Reachable, Shareable
• In your own words
• Tools: Editor, Evernote, GoogleDocs
Code = Executable notes!

• Save and organize all your projects
• Create tests to document what you know
• Follow interesting projects on github
• Use a tool like gitx
Links & Sites
• Write em down
• Delicious
• Google history
Use other people’s
         notes
• Gem install cheat
• cheat heroku
• cheat jquery
Local Docs
• gem server
• gem install yard
 • yard gems && yard doc
 • yard server
• sdoc
• jQuery, prototype
• Rails version
Summary
Summary
• Do what you can to capture what you
  know right now
Summary
• Do what you can to capture what you
  know right now
• When you come across something useful,
  write it down
Summary
• Do what you can to capture what you
  know right now
• When you come across something useful,
  write it down
• Make a note to your past/future self
Keep learning
Keep learning
• FINISH HARTL TUTORIAL!!!!!!!!!!
Keep learning
• FINISH HARTL TUTORIAL!!!!!!!!!!
• CodeSchool.com (free weekend)
Keep learning
• FINISH HARTL TUTORIAL!!!!!!!!!!
• CodeSchool.com (free weekend)
• RubyKoans.com, RubyMonk.com
Keep learning
• FINISH HARTL TUTORIAL!!!!!!!!!!
• CodeSchool.com (free weekend)
• RubyKoans.com, RubyMonk.com
• CodeCademy.com, Treehouse
Keep learning
• FINISH HARTL TUTORIAL!!!!!!!!!!
• CodeSchool.com (free weekend)
• RubyKoans.com, RubyMonk.com
• CodeCademy.com, Treehouse
• Railscasts.com, PeepCode.com
Keep learning
• FINISH HARTL TUTORIAL!!!!!!!!!!
• CodeSchool.com (free weekend)
• RubyKoans.com, RubyMonk.com
• CodeCademy.com, Treehouse
• Railscasts.com, PeepCode.com
• SpeakerRate.com, Confreaks.com
Getting Help
Getting Help
• 20 minute rule
Getting Help
• 20 minute rule
• Campfire/IM/IRC
Getting Help
• 20 minute rule
• Campfire/IM/IRC
• Local Docs
Getting Help
• 20 minute rule
• Campfire/IM/IRC
• Local Docs
• How to Google
Getting Help
• 20 minute rule
• Campfire/IM/IRC
• Local Docs
• How to Google
• Stackoverflow.com (SO)
Google Master
•   exclude with -
•   “quoted search”
•   fuzzy search ~
•   site: specific search
•   define: antidisestablishmentarianism
•   range ‘128gb ssd $100..$230’
•   Time in New York
How to ask a tech
   question
How to ask a tech
      question
• Do some background research (RTFM)
How to ask a tech
      question
• Do some background research (RTFM)
• Document what you’ve tried
How to ask a tech
      question
• Do some background research (RTFM)
• Document what you’ve tried
• Find the right place to ask
How to ask a tech
      question
• Do some background research (RTFM)
• Document what you’ve tried
• Find the right place to ask
• Post your question w/summary
How to ask a tech
      question
• Do some background research (RTFM)
• Document what you’ve tried
• Find the right place to ask
• Post your question w/summary
• Link to full details (gist)
How to ask a tech
      question
• Do some background research (RTFM)
• Document what you’ve tried
• Find the right place to ask
• Post your question w/summary
• Link to full details (gist)
• Be willing to back up a few steps
How to ask a tech
      question
• Do some background research (RTFM)
• Document what you’ve tried
• Find the right place to ask
• Post your question w/summary
• Link to full details (gist)
• Be willing to back up a few steps
• Post the resolution
Honing your Skills
Honing your Skills
• Scratch your own itch, use Ruby at work!
Honing your Skills
• Scratch your own itch, use Ruby at work!
• Keep building apps
Honing your Skills
• Scratch your own itch, use Ruby at work!
• Keep building apps
• Help the next batch of CA students
Honing your Skills
• Scratch your own itch, use Ruby at work!
• Keep building apps
• Help the next batch of CA students
• Help out on StackOverflow, LinkedIn
Build your profile
• Github.com
• Stackoverflow.com
• WorkingWithRails.com
• LinkedIn.com
• Blog
• Build and deploy apps to heroku, etc
• Contribute to open source
Freelance projects
• Elance.com
• oDesk.com
• rentacoder.com
• donanza.com
• cloudspokes.com
Build something
• Collaborate with others, join a team
• Participate in startup weekend
• Look for volunteer opportunities
 • taprootfoundation.org, grassroots.org
 • overnightWebsiteChallenge.com
Get inspired
• TechStars.org, TechStars TV
• Killerstartups.com
• StartupsOpenSourced.com
Summary
Summary
• Master your info
Summary
• Master your info
• Keep learning
Summary
• Master your info
• Keep learning
• Learn how to find the right info
Summary
• Master your info
• Keep learning
• Learn how to find the right info
• Keep building apps
Summary
• Master your info
• Keep learning
• Learn how to find the right info
• Keep building apps
•   Collaborate with others to increase velocity
Questions?
• John McCaffrey
• RailsPerformance.com
• @ J_McCaffrey

Becoming a more Productive Rails Developer

  • 1.
    Becoming a MoreProductive Rails Developer A Collection of semi-useful suggestions John McCaffrey @J_McCaffrey RailsPerformance.com
  • 2.
  • 3.
  • 4.
    Intro • Independent RailsDeveloper • CodeAcademy Mentor
  • 5.
    Intro • Independent RailsDeveloper • CodeAcademy Mentor • Enthusiast
  • 6.
    Topics • DWTDSYADB akaTaking good notes • Continuing your Rails education • Getting help • Taking your skills to the next level • Q&A
  • 7.
    DWTDSYADB Don’twaste time doing *stuff you’ve already done before
  • 8.
    Take Notes like your life depends on it • Take lots o’ notes • Searchable, Reachable, Shareable • In your own words • Tools: Editor, Evernote, GoogleDocs
  • 9.
    Code = Executablenotes! • Save and organize all your projects • Create tests to document what you know • Follow interesting projects on github • Use a tool like gitx
  • 10.
    Links & Sites •Write em down • Delicious • Google history
  • 11.
    Use other people’s notes • Gem install cheat • cheat heroku • cheat jquery
  • 12.
    Local Docs • gemserver • gem install yard • yard gems && yard doc • yard server • sdoc • jQuery, prototype • Rails version
  • 13.
  • 14.
    Summary • Do whatyou can to capture what you know right now
  • 15.
    Summary • Do whatyou can to capture what you know right now • When you come across something useful, write it down
  • 16.
    Summary • Do whatyou can to capture what you know right now • When you come across something useful, write it down • Make a note to your past/future self
  • 17.
  • 18.
    Keep learning • FINISHHARTL TUTORIAL!!!!!!!!!!
  • 19.
    Keep learning • FINISHHARTL TUTORIAL!!!!!!!!!! • CodeSchool.com (free weekend)
  • 20.
    Keep learning • FINISHHARTL TUTORIAL!!!!!!!!!! • CodeSchool.com (free weekend) • RubyKoans.com, RubyMonk.com
  • 21.
    Keep learning • FINISHHARTL TUTORIAL!!!!!!!!!! • CodeSchool.com (free weekend) • RubyKoans.com, RubyMonk.com • CodeCademy.com, Treehouse
  • 22.
    Keep learning • FINISHHARTL TUTORIAL!!!!!!!!!! • CodeSchool.com (free weekend) • RubyKoans.com, RubyMonk.com • CodeCademy.com, Treehouse • Railscasts.com, PeepCode.com
  • 23.
    Keep learning • FINISHHARTL TUTORIAL!!!!!!!!!! • CodeSchool.com (free weekend) • RubyKoans.com, RubyMonk.com • CodeCademy.com, Treehouse • Railscasts.com, PeepCode.com • SpeakerRate.com, Confreaks.com
  • 24.
  • 25.
  • 26.
    Getting Help • 20minute rule • Campfire/IM/IRC
  • 27.
    Getting Help • 20minute rule • Campfire/IM/IRC • Local Docs
  • 28.
    Getting Help • 20minute rule • Campfire/IM/IRC • Local Docs • How to Google
  • 29.
    Getting Help • 20minute rule • Campfire/IM/IRC • Local Docs • How to Google • Stackoverflow.com (SO)
  • 30.
    Google Master • exclude with - • “quoted search” • fuzzy search ~ • site: specific search • define: antidisestablishmentarianism • range ‘128gb ssd $100..$230’ • Time in New York
  • 31.
    How to aska tech question
  • 32.
    How to aska tech question • Do some background research (RTFM)
  • 33.
    How to aska tech question • Do some background research (RTFM) • Document what you’ve tried
  • 34.
    How to aska tech question • Do some background research (RTFM) • Document what you’ve tried • Find the right place to ask
  • 35.
    How to aska tech question • Do some background research (RTFM) • Document what you’ve tried • Find the right place to ask • Post your question w/summary
  • 36.
    How to aska tech question • Do some background research (RTFM) • Document what you’ve tried • Find the right place to ask • Post your question w/summary • Link to full details (gist)
  • 37.
    How to aska tech question • Do some background research (RTFM) • Document what you’ve tried • Find the right place to ask • Post your question w/summary • Link to full details (gist) • Be willing to back up a few steps
  • 38.
    How to aska tech question • Do some background research (RTFM) • Document what you’ve tried • Find the right place to ask • Post your question w/summary • Link to full details (gist) • Be willing to back up a few steps • Post the resolution
  • 39.
  • 40.
    Honing your Skills •Scratch your own itch, use Ruby at work!
  • 41.
    Honing your Skills •Scratch your own itch, use Ruby at work! • Keep building apps
  • 42.
    Honing your Skills •Scratch your own itch, use Ruby at work! • Keep building apps • Help the next batch of CA students
  • 43.
    Honing your Skills •Scratch your own itch, use Ruby at work! • Keep building apps • Help the next batch of CA students • Help out on StackOverflow, LinkedIn
  • 44.
    Build your profile •Github.com • Stackoverflow.com • WorkingWithRails.com • LinkedIn.com • Blog • Build and deploy apps to heroku, etc • Contribute to open source
  • 45.
    Freelance projects • Elance.com •oDesk.com • rentacoder.com • donanza.com • cloudspokes.com
  • 46.
    Build something • Collaboratewith others, join a team • Participate in startup weekend • Look for volunteer opportunities • taprootfoundation.org, grassroots.org • overnightWebsiteChallenge.com
  • 47.
    Get inspired • TechStars.org,TechStars TV • Killerstartups.com • StartupsOpenSourced.com
  • 48.
  • 49.
  • 50.
    Summary • Master yourinfo • Keep learning
  • 51.
    Summary • Master yourinfo • Keep learning • Learn how to find the right info
  • 52.
    Summary • Master yourinfo • Keep learning • Learn how to find the right info • Keep building apps
  • 53.
    Summary • Master yourinfo • Keep learning • Learn how to find the right info • Keep building apps • Collaborate with others to increase velocity
  • 54.
    Questions? • John McCaffrey •RailsPerformance.com • @ J_McCaffrey

Editor's Notes

  • #2 \n
  • #3 \n
  • #4 \n
  • #5 \n
  • #6 I’ll post the slides, with more links\n
  • #7 You’ve heard of DRY\n
  • #8 debugging\nsublime w/dropbox, from any machine/phone\ngoogle docs tech_notes and search for chmod\nEvernote\nWorkflowy\n
  • #9 hard drives are cheap, projects don’t take up much space\nkeep them sep, and runnable\nreview code in gitx\n
  • #10 use NLP tag for delicious\nerrors_\n go to cheat.heroku.com\n
  • #11 \n
  • #12 have you covered already?\nThis becomes more important when you are working on older projects\nI’m still looking for improvements in this area\n
  • #13 Get good at taking notes\ntoday its Rails, tomorrow it will be Node.js, Backbone, IOS, etc\n
  • #14 Get good at taking notes\ntoday its Rails, tomorrow it will be Node.js, Backbone, IOS, etc\n
  • #15 Get good at taking notes\ntoday its Rails, tomorrow it will be Node.js, Backbone, IOS, etc\n
  • #16 learnivore.com, teachmetocode.com\nCA students get deal on treehouse\npuzzlenode.com mendicantuniversity.com\n
  • #17 learnivore.com, teachmetocode.com\nCA students get deal on treehouse\npuzzlenode.com mendicantuniversity.com\n
  • #18 learnivore.com, teachmetocode.com\nCA students get deal on treehouse\npuzzlenode.com mendicantuniversity.com\n
  • #19 learnivore.com, teachmetocode.com\nCA students get deal on treehouse\npuzzlenode.com mendicantuniversity.com\n
  • #20 learnivore.com, teachmetocode.com\nCA students get deal on treehouse\npuzzlenode.com mendicantuniversity.com\n
  • #21 learnivore.com, teachmetocode.com\nCA students get deal on treehouse\npuzzlenode.com mendicantuniversity.com\n
  • #22 local docs, make sure you are looking at the right version\n
  • #23 local docs, make sure you are looking at the right version\n
  • #24 local docs, make sure you are looking at the right version\n
  • #25 local docs, make sure you are looking at the right version\n
  • #26 local docs, make sure you are looking at the right version\n
  • #27 rails performance -train, bush -president, irb -board\n“Unrecoverable error, exit code 1”\n~issues\n128Mb to Kb\n
  • #28 tech comm. is helpful, if you show you did your work\nmake a screencast\nread more at http://www.catb.org/~esr/faqs/smart-questions.html, \nhttp://www.gerv.net/hacking/how-to-ask-good-questions\n
  • #29 tech comm. is helpful, if you show you did your work\nmake a screencast\nread more at http://www.catb.org/~esr/faqs/smart-questions.html, \nhttp://www.gerv.net/hacking/how-to-ask-good-questions\n
  • #30 tech comm. is helpful, if you show you did your work\nmake a screencast\nread more at http://www.catb.org/~esr/faqs/smart-questions.html, \nhttp://www.gerv.net/hacking/how-to-ask-good-questions\n
  • #31 tech comm. is helpful, if you show you did your work\nmake a screencast\nread more at http://www.catb.org/~esr/faqs/smart-questions.html, \nhttp://www.gerv.net/hacking/how-to-ask-good-questions\n
  • #32 tech comm. is helpful, if you show you did your work\nmake a screencast\nread more at http://www.catb.org/~esr/faqs/smart-questions.html, \nhttp://www.gerv.net/hacking/how-to-ask-good-questions\n
  • #33 tech comm. is helpful, if you show you did your work\nmake a screencast\nread more at http://www.catb.org/~esr/faqs/smart-questions.html, \nhttp://www.gerv.net/hacking/how-to-ask-good-questions\n
  • #34 tech comm. is helpful, if you show you did your work\nmake a screencast\nread more at http://www.catb.org/~esr/faqs/smart-questions.html, \nhttp://www.gerv.net/hacking/how-to-ask-good-questions\n
  • #35 Use Ruby at work!\nhttp://reference.jumpingmonkey.org/programming_languages/ruby/ruby-one-liners.html\n
  • #36 Use Ruby at work!\nhttp://reference.jumpingmonkey.org/programming_languages/ruby/ruby-one-liners.html\n
  • #37 Use Ruby at work!\nhttp://reference.jumpingmonkey.org/programming_languages/ruby/ruby-one-liners.html\n
  • #38 Use Ruby at work!\nhttp://reference.jumpingmonkey.org/programming_languages/ruby/ruby-one-liners.html\n
  • #39 List yourself on various job sites\ntalk to recruiters, find out what you are missing\n
  • #40 You may not want to do this kind of work, but its useful to see what’s out there\nelance and odesk both have skills tests that you may find useful\nhttp://www.cloudspokes.com/challenges/1320\n
  • #41 in chicago\n
  • #42 \n
  • #43 \n
  • #44 \n
  • #45 \n
  • #46 \n
  • #47 \n
  • #48 \n