The curriculum
Because things change quickly in the IT world, our curriculum is flexible.
We also take into consideration the people attending and adapt our content to bring the most appropriate content for each audience. Here is an example of a basic 3-day training class:
- Introduction to Merb: Background, philosophy, pros and cons and future.
- Ruby for Merb: Quick overview of what you need to master to be a good Merb developer.
- Ruby for PHP/Java/.NET/Rails developers (Workshop).
- Plan your application: What to do before even generating your first app.
- Build you own Merb stack: Merb is extremely modular; learn about the different components.
- Choose a project type (very flat, flat, core, stack)
- Choose an ORM: ActiveRecord
- Choose an ORM: DataMapper
- Choose an ORM: Sequel
- Choose a JavaScript Framework: Prototype
- Choose a JavaScript Framework: jQuery
- Choose a database: MySQL
- Choose a database: Postgres
- Choose a database: CouchDB
- Overview of the various plugins/gems available for your project
- TDD/BDD: Overview of best testing practices.
- Getting Started: Write a simple Merb application.
- Model/Database interaction: Relationships, validation, migration, best practices.
- Merb Views: From layouts to partials.
- Common recipes:
- Authentication: Offer a login protected access to your site.
- Web Services / API: Share your content with remote services.
- Caching: Improve your performance.
- Full text search: Make your content easily available.
- Tagging: Organize your content.
- Internationalization: Because the world doesn't only speak English.
- Exceptions: Be warned when something goes wrong with your app.
- Ajax: Dynamic JS the right way (UJS).
- Merb router in depth: The router is one of Merb's most powerful tools.
- Deployment: How to easily deploy your application and save money on hosting.
- Full stack testing: How to test your application in an efficient way.
- Extend Merb: The difference between Plugins and Slices
- Merb Slices: How to use one of the many Merb available slices.
- Merb Slice development: How to reuse code from project to project.
- Legacy code: How to port your application to Merb.
- Benchmark your app: See how your application reacts under load.
- Identify and solve bottlenecks: How to audit and fix your code.