DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
The Latest "Software Integration: The Intersection of APIs, Microservices, and Cloud-Based Systems" Trend Report
Get the report
  1. DZone
  2. Data Engineering
  3. Databases
  4. FREE Online Course: Programming for the Web with Ruby

FREE Online Course: Programming for the Web with Ruby

Satish Talim user avatar by
Satish Talim
·
Jan. 26, 12 · Interview
Like (0)
Save
Tweet
Share
4.38K Views

Join the DZone community and get the full member experience.

Join For Free

programming for the web with ruby

r egistrations are now open for rubylearning’s free, online course on “ programming for the web with ruby “. web-based applications offer numerous advantages, such as instant access, automatic upgrades, and opportunities for collaboration on a massive scale. however, creating web applications requires different approaches than traditional applications and involves the integration of numerous technologies. the course topics would hopefully help those that have some knowledge of ruby programming to get started with web programming (this does not cover ruby on rails).

who’s it for?

anyone with some knowledge of ruby programming .

dates

the course starts on monday, 20th feb. 2012 and runs for 2 weeks.

how do i register?

register here . use the enrollment key: pftwwr-4i . that’s it!

updated (26th jan. at 18 hrs ist) : a chart showing number of registrations ( 957 so far) and the participant’s countries.

online graphing


course contents

  • day 1
  • using git
    • what’s version control
    • what’s git?
      • downloading and installing git
      • create a local folder
      • let us start using git
      • introduce yourself to git
      • create your ssh key
  • using github
    • what’s github?
      • set up your github account
      • creating a new repository
      • add your ssh key to github
  • using rvm (for *nix)
    • what is rvm?
    • prerequisites
    • installing rvm
    • loading rvm into your shell
    • reload shell configuration and test
    • install a ruby interpreter
  • using pik (for windows)
    • what’s pik?
    • installing pik
    • using pik
  • exercise 1
  • day 2
  • creating a simple webpage using html5, css and javascript
    • a webpage, step by step
    • before we begin, launch a text editor
      • step 1: start with content
      • step 2: give the document structure
      • step 3: identify text elements
      • step 4: add an image
      • step 5: change the look with a style sheet
      • add some javascript
  • store your webpage files on github
  • exercise 2
  • day 3
  • understanding http concepts
    • what’s http?
      • loading a web page
    • http request methods (verbs)
      • get
      • post
      • put
      • delete
    • using curl
    • http response codes
    • net/http library
      • using uri
    • using open-uri
    • using hpricot
    • using nokogiri
      • fetching documents from web
      • searching inside html documents
  • exercise 3
  • day 4
  • creating one’s own ruby gem
    • what’s a ruby gem?
    • let us create a simple ruby library
    • steps for publishing our gem
  • day 5 and 6
  • learning rack
    • revisiting ruby’s proc object
      • my_proc1.rb
    • rack specification
    • a simple rack app – my_rack_proc
      • my_rack_proc.rb
    • rack documentation
    • rack source code
    • installing rack gem
      • my_rack_proc2.rb
    • another rack app – my_method
      • my_rack2.rb
    • using rackup
      • my_app.rb
      • using rack::request and rack::response
      • a very basic practical rack app
      • another practical rack app
      • rack middleware
      • using lobster
    • rack::builder
  • day 7
  • deploying pure rack apps to heroku
    • what’s heroku?
      • create an account on heroku
      • install bundle
      • deploy your app to heroku
  • day 8
  • deploying a static webpage to heroku
  • day 9
  • what’s json?
  • using mongodb with ruby mongo driver
    • what’s nosql?
    • what’s mongodb?
    • setup mongodb
    • mongodb core concepts
    • the basics
      • switch databases
      • insert a document
      • use find()
      • removing all documents
      • query selectors
      • updating a document
    • mongodb ruby driver – mongo
      • installation
      • using the mongo gem
      • making a connection
      • getting a list of collections
      • getting a collection
      • inserting a document
      • updating a document
    • mongohq the hosted database
      • sign up
      • create a database
      • accessing the database
  • day 10
  • sinatra with mongodb
    • what’s sinatra?
    • create a folder on your hard disk
    • install sinatra
    • which web server?
    • our trivial sinatra application
    • erb and view
      • erb
      • view
      • handlers and form parameters
    • work-in-progress
  • references

the course contents is likely to change.

mentors

satish talim , michael kohl, victor goff iii and others from the rubylearning team.

rubylearning’s irc channel

most of the mentors and students hang out at rubylearning’s irc (irc.freenode.net) channel (#rubylearning.org) for both technical and non-technical discussions. everyone benefits with the active discussions on ruby with the mentors.

here are some details on how the course works:

important:

once the course starts, you can login and start with the lessons any day and time and post your queries in the forum under the relevant lessons. someone shall always be there to answer them. just to set the expectations correctly, there is no real-time ‘webcasting’.

methodology:

  • the mentors shall give you url’s of pages and sometimes some extra notes; you need to read through. read the pre-class reading material at a convenient time of your choice – the dates mentioned are just for your guideline. while reading, please make a note of all your doubts, queries, questions, clarifications, comments about the lesson and after you have completed all the pages, post these on the forum under the relevant lesson . there could be some questions that relate to something that has not been mentioned or discussed by the mentors thus far; you could post the same too. please remember that with every post, do mention the operating system of your computer.
  • the mentor shall highlight the important points that you need to remember for that day’s session.
  • there could be exercises every day. please do them.
  • participate in the forum for asking and answering questions or starting discussions. share knowledge, and exchange ideas among yourselves during the course period. participants are strongly encouraged to post technical questions, interesting articles, tools, sample programs or anything that is relevant to the class / lesson. please do not post a simple "thank you" note or "hello" message to the forum. please be aware that these messages are considered noises by people subscribed to the forum.

outline of work expectations:

  1. most of the days, you will have exercises to solve. these are there to help you assimilate whatever you have learned till then.
  2. some days may have some extra assignments / food for thought articles / programs
  3. above all, do take part in the relevant forums. past participants will confirm that they learned the best by active participation.

some commonly asked questions

  • qs. is there any specific time when i need to be online?
    ans. no. you need not be online at a specific time of the day.
  • qs. is it important for me to take part in the course forums?
    ans. yes. you must participate in the forum(s) for asking and answering questions or starting discussions. share knowledge, and exchange ideas among yourselves (participants) during the course period. participants are strongly encouraged to post technical questions, interesting articles, tools, sample programs or anything that is relevant to the class / lesson. past participants will confirm that they learned the best by active participation.
  • qs. how much time do i need to spend online for a course, in a day?
    ans. this will vary from person to person. all depends upon your comfort level and the amount of time you want to spend on a particular lesson or task.
  • qs. is there any specific set time for feedback (e.g., any mentor responds to me within 24 hours?)
    ans. normally somebody should answer your query / question within 24 hours.
  • qs. what happens if nobody answers my questions / queries?
    ans. normally, that will not happen. in case you feel that your question / query is not answered, then please post the same in the thread – “any unanswered questions / queries”.
  • qs. what happens to the class (or forums) after a course is over? can you keep it open for a few more days so that students can complete and discuss too?
    ans. the course and its forum is open for a month after the last day of the course.

remember, the idea is to have fun learning ruby.

acknowledgments

  • al snow for his various suggestions.
  • arvinder singh kang for the note on “using rvm”
  • konstantin haase for providing us with another practical rack app.
  • matt aimonetti for the get/post example related to rack.
  • michael kohl for proof reading and making relevant corrections to day 1 and 2 material.
  • oto brglez for the note on “using nokogiri”
  • samnang chhun for suggesting changes in day 1 material.
  • victor goff for his various suggestions.
  • willian molinari for creating the github page for this project.
  • zhang hailong for making relevant corrections in day 2 material.

about rubylearning.org

rubylearning.org , since 2005, has been helping ruby newbies go from zero to awesome!

Database app code style POST (HTTP)

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Assessment of Scalability Constraints (and Solutions)
  • Microservices Testing
  • Introduction To OpenSSH
  • What Is Advertised Kafka Address?

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: