Program

Day 1

  1. 0900—0945Registration

    0945—1000Opening

  2. 1000—1030Wider than Rails: lightweight Ruby solutionsAlexey NaydenWhen you deal with anything you can always find a more lightweight solution for the same problem: you can replace a car with a bike, desktop PC with a notebook, textmate with a vim etc. In Ruby environment you can find tiny solutions for everything — Rails, ActiveRecord, Apache, jQuery etc. Presentation will cover your options and features/size ratio, so you’ll know what and when to use.

    1030—1045Questions

  3. 1050—1120How to be awesome at RailsRyan BiggA commonly asked question by people starting out in Rails is "how can I be great at this?". This talk provides some helpful tips and anecdotes on how to get there and even more tips. While you can't wake up and suddenly know Rails, there's a lot of information out there to help you along that path if you know where to look.

    1120—1135Questions

  4. 1140—1200CloudHostpro — platform for hosting Ruby applicationsDmitriy Kostyuk

  5. 1200—1220Break

  6. 1220—1250Literate codeSteve KlabnikIn many ways, code is literature. We compose code in the same way more traditional authors compose prose. In this talk, Steve will discuss how this particular way of thinking about software can help you write code that’s easier for your co-workers to understand, as well as writing great documentation for end-users and open source contributors.

    1250—1305Questions

  7. 1310—1340How to make your Ruby/Rails app 10x fasterAlexander Dymo Your Ruby/Rails application is slow and you don't know what to do? You think Ruby is inherently slow? Join this session to learn how to optimize your application 10x and more. You will learn:
    — how to write performant Ruby code from the beginning;
    — what to think about during design and development if you care about performance;
    — what are the biggest sources of performance problems in Ruby apps and how to deal with them;
    — how to optimize using ruby-prof and KCachegrind and how to overcome their limitations;
    — why optimizing for CPU time may not be important and how to optimize for memory;
    — how to introduce performance optimization into your development process;
    — are Ruby 1.9 and alternative Ruby implementations the answer to Ruby performance woes.

    1340—1355Questions

  8. 1355—1525Lunch

  9. 1525—1545Two star minutesThe part of the RubyC’s mission is to create of our own Ruby Heroes, so we invite all Ruby developers who have what to say community to send their proposals to speak. Here, at RubyC we will test new presentation format – “2 star minutes”, during which everyone who wants will be able to represent his idea or project and find followers.

  10. 1545—1815Full stack testing of your Ruby and JavaScript applicationsJonas NicklasThe Ruby community has become obsessed with testing, we aim for TDD all the fucking time, and 100% code coverage. Yet in our applications, our JavaScript lingers, untested and unrefactored, one giant blob of DOM manipulation and absence of structure. In this class I will teach you practical tools to use to successfully test drive the development of all parts of your application. Half of the workshop will focus on integration testing with Capybara, the other half will focus on unit testing JavaScript with Jasmin and Evergreen. We will have a series of practical exercises to teach you how to setup and use these tools to improve your testing workflows. Please make sure you have a laptop which can run OS X or Linux where you can generate Rails 3.0 applications easily, pair programming is encouraged.

    You’re building web applications and now you’re writing tests as well. But do your tests really cover all parts of your application? What about that pile of JavaScript spaghetti that keeps on growing? In this session you will learn practical techniques to test a larger part of your Ruby code, as well as how to write testable JavaScript, and cover it with solid, flexible and useful unit tests. A solid, comprehensive test suite allows you to take charge of your codebase and refactor with confidence. You will work on a practical problem, writing tests for a particular piece of code. Please bring a laptop with *nix, Ruby, Bundler and Firefox installed, or pair program with someone who has one.

  11. 1815—1830End of Day 1

Day 2

  1. 1000—1030Bridging the gapDarcy LaycockAn introduction into how ruby developers are increasingly becoming tied to JavaScript — Namely, an overview of tools using libraries such as ExecJS (e.g. the coffee script Ruby bindings) as well as how developers can leverage said libraries in their applications and gems. Finally, it will cover briefly how tools such as node.js can be used along side rails apps to simplify the development of applications (with an emphasis on the real time web).

    1030—1045Questions

  2. 1050—1120Typical development problems & mistakes based on development internet TV (ren-tv.com)Timothy N. TsvetkovIn process of developing server side of the interactive internet TV for one of the major Russian TV channels (REN TV) developers (and author of this keynote) have build a complex system, which interacts with a TV software, CDN & videos converting and streaming system, Erlang-deamons for monitoring the state of the air and the Rails app.

    A lot of problems in the process (management and development) were met. In this keynote author will share an experience he got while working on this project.

  3. 1125—1155Svitla Systems Inc.

  4. 1155—1215Break

  5. 1215—1245Cut and Polish: Crafting GemsPat AllanGems underpin almost every piece of Ruby code we write – and so, being able to write your own gems is not only incredibly useful, it provides an avenue for code reuse and open source sharing.

    During this session, Pat will talk about the ecosystem around gems and the knowledge required to write your own gems. He’ll also cover some of the tools available to assist with this, along with ideal approaches and best practices for gem development.

    1245—1300Questions

  6. 1305—1335Continuous Integration with Ruby. Der Teufel steckt im DetailRoman V. BabenkoWe are not pointing attention to a lot of small details in the development process: business talks, communication with customers, development code standards, code review, regular tests verification and project building etc.

    — How many time it takes us to point attention to all this details and if we can work in more efficient way by optimizing this processes? What instruments can be used in scope of Ruby?

    — Yes, if we pay due attention to details. Der Teufel steckt im Detail. The speaker will report in Ukrainian.

  7. 1340—1400Break

  8. 1400—1430Fighting Fat modelsBogdan GusievThis presentation covers a hot topic> for projects that are more than a year old – it's fat models. The problem appear naturally as models are the best place to allocate business logic code. There is number of existing techniques to manage large amount of code in Rails application. But they are suitable only in a half of use cases. For the rest of them we can use Traits pattern that will be described well in this presentation.

  9. 1435—1505Open Source for Sentient Cloud Management SystemsSergey SergyenkoEvery day Sergey works as a Ruby on Rails Coach at Altoros. At night, he is the Ruby Developer at the RightScale, Inc. Sergey is engaged in developing and support of the key Open Source products of the company. The mainstream of the development he's working on refers to a Sentient Cloud Management Systems. In this talk, Sergey will share his experience of development and using Open Source products, for creation of automated infrastructure, which provides an automation solution for managing servers and responding to events in the cloud.

  10. 1510End of Day 2