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

git init...And Get In It! (How I taught myself Rails and got a programming job in under a year)

git init...And Get In It! (How I taught myself Rails and got a programming job in under a year)

At RailsGirls Berlin (April 14, 2012), I gave a talk about how I learned programming (specifically Ruby on Rails) and got a programming job in under a year. It covers my story, the tools I used, and tips on using those tools.

Joan Wolkerstorfer

April 14, 2012
Tweet

More Decks by Joan Wolkerstorfer

Other Decks in Programming

Transcript

  1. git init...And Get In It!
    How I taught myself Rails and got a programming job in
    under a year
    Saturday, April 14, 12

    View Slide

  2. About Me
    • Joan Wolkerstorfer
    • Developer at mediapeers
    • joanwolk on twitter, github, & stackoverflow
    • gitinit.wordpress.com
    Saturday, April 14, 12

    View Slide

  3. Overview
    • My programming story
    • How I made it happen
    • Resources and how to use them
    Saturday, April 14, 12

    View Slide

  4. My first job was to redesign this site.
    Saturday, April 14, 12

    View Slide

  5. Saturday, April 14, 12

    View Slide

  6. At Upstream, I wrote the coapps
    application, Expiring Day Passes, and
    Quickcharge
    Saturday, April 14, 12

    View Slide

  7. Software Developer at mediapeers
    Saturday, April 14, 12

    View Slide

  8. I started coding when?!
    Saturday, April 14, 12

    View Slide

  9. • January 2011: Started looking at Ruby and
    Rails teaching sites
    • February 2011: Started working through
    railstutorial.org
    • May 28-29, 2011: Attended EuRuKo
    • July 2011: Finished railstutorial and started
    internship with Upstream (cobot)
    • September 2011: Finished internship
    • November 2011: Started work at
    mediapeers
    Saturday, April 14, 12

    View Slide

  10. • Written for true beginners
    • Introduces and uses git, GitHub and heroku
    • Detailed explanations of all elements
    • Useful even for experienced coders
    • Full book for free
    • Videos and PDFs can be bought to support it
    Saturday, April 14, 12

    View Slide

  11. What is git?
    Saturday, April 14, 12

    View Slide

  12. What is version control?
    • Version control: keeps track of what the
    project looked like for its whole history
    • Distributed version control: many people can
    work on the same project at the same time
    without problems
    • Use it now to:
    • Share on GitHub and post on heroku
    • Build good habits from the start
    Saturday, April 14, 12

    View Slide

  13. What is git?
    • Commit: Take a snapshot of your code
    • Repository: All your snapshots neatly
    arranged in one album
    • Most common version control in the Ruby
    community: lots of help is out there!
    • More information:
    • git-scm.com (official git site)
    • progit.org (a full book online, plus a blog)
    Saturday, April 14, 12

    View Slide

  14. What is GitHub?
    • Store your git repository for free online
    • Explore other people’s code
    • Watch: get a feed of updates to the repository
    • Fork: copy the repository so you can play with it
    • Collaborate on code
    • Pull request: ask the owner to add your changes
    • Review code
    • Find help with someone’s code
    • Issues: Find or submit tickets about a problem
    • Wiki: Some repositories have a wiki
    Saturday, April 14, 12

    View Slide

  15. What is heroku?
    • Hosting for Ruby/Rails sites using git: put
    your code out there for the world!
    • Free for small projects
    • Easy to scale up as projects grow
    Saturday, April 14, 12

    View Slide

  16. But how can I find help
    when I’m working
    alone?
    Saturday, April 14, 12

    View Slide

  17. • stackoverflow.com
    • Rails documentation
    • guides.rubyonrails.org
    • github repository
    • heroku devcenter
    Saturday, April 14, 12

    View Slide

  18. • Search it with Google, not the search field
    on the site, e.g.
    • site:stackoverflow.com rails passwords
    Stack Overflow Tips
    • As with any search, try adjusting your
    search terms if you don’t find what you
    want right away
    • If you can’t find it, ask it!
    Saturday, April 14, 12

    View Slide

  19. Rails Documentation
    • api.rubyonrails.org
    • apidock.com/rails
    • railsapi.com
    • My personal favorite
    • Defaults to most current versions
    • Easy to choose specific older versions
    • Shows Ruby and Rails results together
    Saturday, April 14, 12

    View Slide

  20. Rails Guides Tips
    • There are more guides on the main page
    than are listed in the index!
    • “In Progress” guides are still great help
    Saturday, April 14, 12

    View Slide

  21. GitHub Tips
    • Read the readme
    • Read the wiki, if there is one
    • Search the issues to see if someone else had the
    same problem
    • Submit your own issue if you still have a problem
    Saturday, April 14, 12

    View Slide

  22. Heroku Tips
    • devcenter.heroku.com to browse help topics
    • Use Google to search the docs, e.g.,
    • site:devcenter.heroku.com logs
    Saturday, April 14, 12

    View Slide

  23. Other useful tools
    Saturday, April 14, 12

    View Slide

  24. • editors – vim, emacs, TextMate, Sublime, etc.
    • rubular.com – Regular expressions editor
    • Markdown – used to format comments on GitHub,
    and in various other places
    • http://daringfireball.net/projects/markdown/syntax
    • pow.cx – Local server tool (Mac only)
    Development Tools
    Saturday, April 14, 12

    View Slide

  25. • Twitter Bootstrap (twitter.github.com/bootstrap) –
    CSS default settings
    • hslpicker.com – Color picker tool
    • visualmess.com – Design basics
    Design Tools
    Saturday, April 14, 12

    View Slide

  26. • RailsTutorial.org is fantastic
    • Help is available online
    • Dive into documentation
    • Be confident
    • Just code!
    In Conclusion
    Saturday, April 14, 12

    View Slide