Ruby and Rails Bootcamp Training Course
Course Summary
This 5-day Marakana Ruby on Rails Training course combines two of Marakana's most popular courses into a one week long workshop. The first part of this course is 2 Days of Ruby. The second part is 3 days of Rails. You will learn to put your web development on Rails. Experience the Rails way of approaching web applications and see how you'll be able to spend less time configuring and more time developing.
Starting with the basics of Ruby and Rails, you'll learn the full Rails' MVC stack, testing techniques, Ajax and even web services. We'll work through the full life-cycle of a Rails project, giving you experience with all facets of a typical app.
[top] Duration
[top] Objectives
By taking Marakana Ruby on Rails Training course, students will:
- Configure and install Ruby and Rails
- Learn the basics of the Ruby language
- Build a new Rails application from scratch
- Setup and manage databases with migrations
- Learn how to configure Rails' routing
- Practice test-driven development (TDD) with Rspec
- Learn about behavior-driven development (BDD) with Cucumber
- Learn how to leverage ActiveRecord with associations, validations, and callbacks
- Understand resources and REST, and how to use them in a Rails application
- Learn how to find and use plugins
- Understand the various deployment options for Rails applications
- Understand Rails' opinions and how to embrace or override them
[top] Audience
This course is designed for developers who have some web development experience that wish to learn Ruby on Rails.
[top] Prerequisites
The participants taking Marakana Ruby on Rails Training course must be familiar with the general principles of object oriented programming (OOP). Prior exposure to the following concepts and technologies is very helpful, but not required:
- General understanding of web development principles
- Basic knowledge of HTML and CSS
- Basic knowledge of JavaScript
- Basic understanding of the HTTP protocol, including concepts like SSL, redirection, GET vs POST, etc.
- Basic knowledge of SQL
- Familiarity with MySQL (or any other relational database)
[top] Instructors
Brandon joined Collective Idea in 2006 as a refugee from “Enterprise” Java development. Since drinking the Ruby kool-aid1, he has become a widely-read blogger and valuable member of the community while contributing to (and beginning) several open source projects.
In his free time, you'll find Brandon with headphones in his ears grooving to a cool band that Daniel introduced him to, while hacking on some random piece of code that he's excited about2, playing with Linux, or, to relieve the screen burn, playing tennis with his wife.
More about Brandon Keepers...
Daniel Morrison has been teaching Ruby, Ruby on Rails courses at Marakana since 2007. Not to mention helping some of the most advanced software teams across the U.S. with consulting projects within the Ruby and Rails space. Daniel brings his industry expertise from these real world projects to the training class. With a background in Computer Science, there's a good chance Daniel will start rambling on about Merge Sorts or Big Oh calculations. If you leave him alone, however, his fascination with code, databases, and APIs will kick in and he'll start programming.
Daniel founded Collective Idea in 2005 to put a name to his growing, and already full-time freelance work. He can usually be found (coffee in hand) staring into a tiny 15" digital world. He writes about code and other uninteresting things on his blog.
More about Daniel Morrison...
Wolf learned the ropes on Rails while working on a project at Pivotal Labs in the winter of 2006/07 and has been an active member of the Rails community ever since. Prior to discovering Rails, Wolf was working in C++ on commercial server applications in Silicon Valley and, before that, on high-performance numerical simulations in solid state physics at Los Alamos National Lab and the University of Oregon. He holds a Ph.D. in physics and used to teach undergraduate physics classes as a graduate student.
Wolf speaks English, German, French and Spanish and currently lives in San Francisco.
More about Wolfram Arnold...[top] Outline
Ruby Overview
- Objects
- Classes
- Core Ruby
- Common Standard Library Classes
- Control Structures
- Scope
- Blocks
- Modules
Toolbox
- Git
- Gems
Test-driven Development with RSpec
- Introduction to TDD
- Red-Green-Refactor
- Describing a feature
- Verifying expectations
- Mocks & Stubs
Rails Introduction
- The Architecture
- the Model-View-Controller pattern
- Rails project structure
- Scaffolding for jumpstart
Rails Toolbox
- Rake
- Git
- Test Frameworks
- Deploying a Rails application
Demystifying Rails
- The Console
- Models with ActiveRecord
- Routes and Controllers
- Associations
- Migrations
- Views
Test-Driving your Rails App
- Beyond Scaffolding
- BDD with Cucumber and Rspec
- Outside-in Testing
- Test-driving Feature Development
- Rails testing helpers
Advanced Controllers and Models
- Validations
- Evolving your Database
- Modifying Application Flow
Rails Power Tools
- Named Routes
- Rails Plugins
- User Authentication
[top] Student Testimonials
Great job everyone! Thanks for putting this together! Good luck in your future ventures!
Daniel is a great instructor. Great knowledge and skills and good attitude and humor.
Fantastic class. The breath, depth and technical knowledge of the instructor was amazing. This class really solidified and expanded my understanding of the material.
I will definitely dive into more Ruby concepts, to assist me with making a great Web App. Thanks!
Overall it was a great experience, the training was intense but the instructors were great helping everybody and explaining stuff in great detail - I would highly recommend this class to other people trying to learn about ruby/Rails land!
Wolf is brilliant; very patient with noobsicles. Marakana is made of magic!
Overall, totally stoked. Thanks!
I liked the pace. Started out slow and then accelerated to an excellent frenzy. From nearly nothing to launching my first app in four days, Marakana has enabled me to use RoR on future projects.
If it wasn't for the commitment of the instructor and of Marakana of diversifying the programming demographics and providing a scholarship opportunity, I would not have been able to participate in ruby training. The course provided a great and inspiring overview. I understand from my classmates that working in the environment is necessary to develop as well as keep this skill current. Thank you.
This is one of the best training that I have been to (perhaps the best).
Wolf was very patient with our questions and concerns with RoR. He insured our questions/concerns were answered. He was very knowledgeable and very impress. Other instructors from other companies can only cover material and answer questions based upon slides , but Wolf was able to answer and code beyond what was being presented. There was not one question he was not able to answer which is a first for me where an instructor was not stump by a question.
I'm not used to "self-paced" instructor learning, but I think it worked out well in the end. I learned a ton.
Daniel was very accommodating and great about touching more advanced topics on latest plugins and tools.
Most fun and useful training I've taken during my 8-year run at Stanford. Thank you much!
I loved the last day of the class, where we worked on pairs and had fun while learning and coding in Ruby. The instructor was willing to answer many questions. She was extremely knowledgeable on ruby gems, plugins and development tools. She was very helpful when we got stuck on something. I thought the class was excellent.
Great course. It was nice to have a teacher who USES this stuff on a day-to-day basis, instead of someone who's a professioanl training-course teacher with little real-world experience. Thanks Dan!
Can we hire Wolf? :)
Modern style of learning. Liked the monitors that we can see at the same time.
Wolf is great. By the end of the week he felt like part of our team.
Sarah was great and demonstrates a solid understanding of the material and its real world use.
Great course! Great instructor! Always a pleasure to learn from someone who uses Rails on a daily basis and is familiar with the development process and the community.
Instructor was great. Very knowledgeable. Would enjoy taking having a more advanced training through him.
Wolf was an excellent instructor who demonstrated a vast array of knowledge with TDD tools. He was able to work across different personalities in the group and bring them together, no small feat! The training extended well beyond the materials and Wolf was able to orchestrate themes and present ideas in a clear fashion.
Wolf is a very capable instructor who really knows the material well. He took the time to understand our needs both as an organization and as individuals, and adjusted the course content appropriately. He was able to coach some of our novice team members through the basics while still covering more advanced topics for those of us who already have TDD experience. My only disappointment is that we didn't have more time to cover writing user stories.
The class was well organized and we were fortunate to have an excellent instructor in Daniel. He was able to adjust the course work on the fly to meet the class's collective needs.
The instructor was willing to revise the course to show examples of how he would solve some real problems
I learned great tips and I definitely got a better understanding of ruby and ruby on rails.
I thought the course was fantastic, Brandon did a great job of taking something complicated and moving through it in a way that was easy to follow and understand. He was very helpful helping figure out any problems. I liked that our sample project was something relevant, too, and I'm sure I will be using some things I learned here very soon at work. The level of the group, too, ended up being beneficial, as people had different backgrounds but were at a similar level in terms of knowledge so we all could move at the same pace and benefit from each other's questions. I'd definitely consider coming back down for another course if I find that I need more training in another area like I did with Ruby on Rails.
I think it was overall a very good speed given the wide range of experience(s) in the group.
I was very pleased with the quality of the material, the training facility itself and the instructor. The facility is comfortable and provides an environment that is conducive for learning. Brandon is excellent. If I didn't quite grasp something, he pulled up a chair and we went over it together. He's a wonderful instructor that take a keen interest in ensuring you understand the material.