SSRoR13 Material
Here you can find all the slides, exercises and other stuff of the Summer School of Ruby on Rails held in Maputo (Mozambique) from mid-July to mid-August 2013.
All you want to know about the summer school is in the slides.
General Info
This course is based on Ruby 1.9.3 and Rails 3.2.13. We will give support only to machines with those exact versions installed. There are scripts in the utils
directory that install Ruby and Rails with the correct versions.
Slides
Some of the slides are broadly inspired by great guides and tutorials, like tryruby.org and railstutorial.org.
The slides are written using reveal.js. To view them you must:
- clone this respository using
git clone git@github.com:ict4g/ssror13_material.git
- enter the
slides
directory and open the html file you want with a browser (better with Chrome)
Monday, 15 July 2013
- Introduction to the MLL's Summer School of Ruby on Rails
- Introduction to Web applications and Ruby on Rails
Tuesday, 16 July 2013
- Tools Overview
- Introduction to Ruby
Wednesday, 17 July 2013
- Introduction to Ruby
- First Rails app
Thursday, 18 July 2013
- First Rails app
- Git
Friday, 19 July 2013
- A micro app (even if it's bigger than our first app)
- Deploying with Heroku
This list will be updated as the course proceeds
Exercises
This folder will contain exercises organized by topic.
- Ruby Basics
- Exercise 1: generate an array containing a random number of random numbers
- Exercise 2: count the number of occurrences of each character in a string and print them out as a histogram
- Exercise 3: implement MyDate and MyDateTime with basic date and time operations (see Intro to Ruby slides)
Utils
Here you will find useful scripts and other utilities mainly to replicate at home what we do in the lab.
ssror.sh
: sets up the same environment we have on the lab's PCs. You can run it as-is on any Ubuntu machine but you may have to tweak it if you want to run it on other distributions.ssror-rbenv.sh
: does the same as the other script but uses rbenv instead. This is more lightweight than rvm and it seems to work better with the lab's network
Packages you need
If you are running Ubuntu 12.04 (or higher) you need at least the following packages installed. Notice that this list is going to be updated every now and then.
- libssl-dev
- libyaml-dev
- libsqlite3-0
- libsqlite3-dev
- sqlite3
- libxml2-dev
- libxslt-dev
- autoconf
- libc6-dev
- ncurses-dev
- libpq-dev
- chromium-browser
License
This material by ICT4g FBK is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License