Thursday, March 21, 2013

My recommended pathway into Ruby / Rails


I was asked what I'd encourage a complete outsider to RoR to look into.

Here's my list - what would you add?

- Linux intro
  - User accounts
  - File permissions
  - su / sudo
  - Installing programs (apt)
  - What's a distro? (Ubuntu, Debian, etc)
  - Gnome desktop
    - Alternatives
  - Bourne Again SHell (BASH)
    - cd, ls, touch, vim, top, kill, pgrep, pkill, mkdir, chmod, chown
  - Basic bash scripts
- Git intro
  - Cloning
  - Commits
  - Log
  - Push
  - Pull
  - Fetch, Merge
  - Branches
  - Tags
  - Revert
  - Reset
- Ruby intro
  - Hello world
  - Functions, Control flow, Loops
  - Classes
  - Modules
  - Blocks! Lambas! Currying!
    - Chunky Bacon and Foxes!
  - DSLs
  - Libraries (gems)
  - Require / include path
  - Metaprogramming
  - OOP Intro
  - OOP: SOLID principles
  - OOP: TDD
- HTML intro
  - HTML5
    - what is it?
    - differences to HTML4/xhtml?
    - Data attributes
    - New inputs
  - Javascript basics
    - JQuery
    - AJAX
    - Backbone, Ember, etc
    - D3
  - CSS basics
    - CSS3
    - Responsive design
  - SVG basics
- JSON! YAML! Data structures & serializations.
- Rails intro
  - Generators
  - Rake
  - Organisation
  - Scaffolds
  - Convention, not configuration
  - Rspec
- Sinatra intro
- SASS / Less
  - What is it?
  - Bootstrap/Compass
- Continuous Integration
  - Jenkins
  - Travis CI
  - Post commit hooks
  - Rake tasks
- DevOps!
  - Chef
  - Puppet

No comments: