RubyC is the major Ukrainian conference devoted to Ruby, Rails and related technologies. Organized annually by Svitla Systems, RubyC gathers hundreds of Ruby enthusiasts from all over the world to discuss latest news and spend beautiful summer weekend in Kyiv.
Join us this year!
Stanislav “Raptor” Volovyk
Xavier Noria is an everlasting student and father of the most wonderful girl. An independent Ruby on Rails consultant from Barcelona, Xavier is a member of the Ruby on Rails core team, Ruby Hero, and proud author of Rails Contributors.
Using real, selected snippets that Xavier has found while doing open source and consulting, we'll talk about concepts such as idiomatic Ruby, concise code, readable code, and exact code. We'll look at how they apply, and how subjective and social they are. A talk, indeed, with maybe more questions than answers.
Florian is an active Rubyist and Rustacean from Berlin. He used to co-organise the eurucamp conferences and is member of the Rust community team. Creative approaches FOSS project management is his form of hacking.
Growing communities is all about activating untapped potential. Typically, this is done by creating expensive advertisement campaigns or hiring community managers. But this is hard for free and open-source projects: Usually, both money and time are scarce resources. The effects of this are often visible: overworked maintainers, a constantly growing number of open issues and glacial response times. This leads to a spiral: potential helping hands turn away from the project, even if they continue using it. For that reason, thinking about growing community early is important for all projects. This talk is going to present effective, inexpensive and time-saving approaches to tap into community potential for projects of many sizes, collected as part of the Rust community team, the work at Ruby Berlin e.V. and within the Padrino framework. It will also explain base techniques to get creative with community action.
Piotr is a hacker scientist: Cheap Science Officer at Rebased, an assistant professor at Warsaw University of Technology and co-maintainer of Bogus and Reek. When not coding he coaches at Rails Girls Warsaw and Rails Girls Summer of Code and organizes Warsaw Ruby Users Group.
Writing good object-oriented code is hard: object boundaries are not always as clear-cut as we’d like, their responsibilities and reasons to change tend to grow over time, inter-object coupling makes isolated testing complicated – and emergency refactorings are tiresome, gnarly and seem to always happen too late. At the same time it’s often hard to see the exact moment when a simple refactoring would save a given class from taking the wrong turn, and real-life projects tend to have real-life sad lines with their tireless chants of ‘let’s refactor this in the next sprint’. Ruby’s dynamism means static code analysis is tricky (to say the least), but tools like RuboCop and Reek bravely show it’s not impossible. This talk shows how to effectively use such tools, make informed decisions on when and how to refactor, and – most importantly – learn over time to spot potential code smells right when they’re introduced.
Bozhidar loves computers in general and programming in particular. His fanatic devotion to Emacs is known world-wide. Bozhidar spends a lot of his time on GitHub, contributing to various Ruby, Clojure and Emacs Lisp projects. Believe it or not, Bozhidar has interests outside computers as well! We won't, however, bore you with those here.
An exploration of the challenges that Ruby faces today, combined with ideas regarding how we can change things for the better. We'll talk about the language, its ecosystem and its community. While on this bold adventure we'll plot a course towards Ruby 4.0 - a mystical and magical Ruby release that would ensure Ruby's dominance to infinity and beyond! Oh, and did I mention we'll have a ton fun while doing so? We'll most certainly do!
Senior Ruby enthusiast. Only coding, only hardcore!
We all know that tests are among the most significant constituents of the stable app performance. However, unfortunately, good test coverage affects the speed of the test completion in the long run. Of course, one can leave everything as is, in the condition where everything works in the canonical approach, and have a countless number of guaranteed coffee breaks. But for those who do not drink coffee, I have an alternative approach to tell about!
Sergiy is a passionate programmer with experience in a number of programming languages. From spending a weekend digging in HEX of his car's ECU to solving a puzzle on pure functional Haskell, Sergiy is a man of many talents. He works as lead Ruby dev on Matic, and aims to bring the best in programming into the Ruby ecosystem.
It's not a secret, that Ruby is a powerful, super flexible and at the same time extremely laconic language. Ruby on Rails is the most popular framework for web applications, and it certainly deserves its honour. But as you may already know, there is no silver bullet, and every tool fits best for a certain type of tasks. And Rails is not an exception. In this topic I'm going to tell about criteria of good and bad architectures, common approaches of good architecture and how to apply them in the ruby ecosystem. We will go through the basics: a heart of software development, intention-revealing programming, SOLID principles and TDD, and will end with more advanced technics such as domain-driven design and functional programming. The overview will come with examples and resources applicable to the ruby ecosystem.
Quentin ADAM is the CEO of Clever Cloud: a Platform as a Service company allowing you to run java, scala, ruby, node.js, php, python or go applications, with auto scaling and auto healing features. This position allows him to study lots of applications, code, practice, and extract some talks and advises. Regular speaker at various tech conferences, he’s focused to help developers to deliver quickly and happily good applications.
Ok, Everybody knows it, microservice is great. I am confident on this too, for 5 years the all Clever Cloud architecture is based on it. But, as all the new trendy buzzword, it’s not a silver bullet, and there is several problems to manage. One is the authentication, distributed authentication is hard, and there is many ways to achieve it. Configuration is the second issue to be managed when dealing with distributed micro application strategy. This talk is a concrete return of experience to build a strategy on microservice and problems we will have to deal on this occasion.
Technical Lead @icelab. Author and core team member @rom_rb. Co-founder and core team member @dry_rb (main focus on dry-types/struct/validation/logic/web)
We’ve come a long way with rom-rb and changed the way people can work with data in Ruby. In this talk I’ll introduce you to rom-rb and explain why this alternative way works better than Active Record. We’ll take a look at functional data processing, flexible data transformations, altering data using changesets and the importance of type-safety. You’ll see how rom-rb is evolving and where we’re going with this big effort!
CTO @Twentify, Rubyist, Crystal Evangelist and Polyglot, Author of Kemal http://kemalcr.com
Have you ever dreamed of a programming language which is as beautiful as Ruby yet as fast as C? Enter Crystal, a Ruby inspired programming language with blazing performance. Created by fellow Rubyists at Manas, Crystal will make you fall in love with Ruby, AGAIN! Kemal is a fast, effective, simple web framework written in Crystal. In this talk, we'll start from the beginning with Crystal, how Kemal is born, what you can achieve with Kemal and why you should consider using Kemal for your next shiny web application.
Anton is an experienced developer, active contributor and big Ruby fan. Apart from his busy working schedule he can often spotted in a gym, or browsing through his collection of spiders, or wondering through the mountains on a travel journey. Feel free to discuss any of those and many other topics with this brilliant person!
In my talk I am going to tell how developers might go with integration of React (popular JS lib for buiding UIs) into existing Rails application. I am going to cover 3 common ways how to do that. In addition I will cover how to move from rendering HTML on server (through erb as most existing legacy Rails apps do) to SPA app through that integration. Topic has to dispel any fear which developer think about when he thinks about integrating modern JS lib/framework into legacy Rails application. I will present a step by step detailed guide with examples of code and bright presentation.
Areas to cover:
- 3 ways to integrate React into Rails application;
- React related ecosystem (webpack, es6, node + npm) and how to use it in combination with rails app and shall we ommit the asset pipeline or not?;
- How to move from hybrid React + Rails (erb) app to React (FE) + Rails (back-end API);
- Particular caveats and problems which can be faced during the migration.
Stas Volovyk is a team lead @ Aejis. Engineer, programmer, aviation enthusiast and passionate about shooting stuff.
ERROR: Failed to build gem native extension" - every ruby developer encounters this some time at his/her career. But have you ever wondered how many gems uses native extensions? What kind of dependencies a gem requires? Have you ever struggled searching what system library gem needs? What package in your OS provides it?
Ruby on Rails developer and team lead in Svitla Systems, OOAD lover, now searching inspiration in functional programming. Elixir is a growing technology which claims to be a Rails-killer, or at least competitor, so my quest for a Holy Grail in programming has lead me here, and who knows what that will end up with?
The elixir language has been proceeding recently as a better script for Erlang machine and the Elixir-based Phoenix framework has become another Rails competitor with all the features of Erlang. We have got a bunch of exciting videos about mightiness of Elixir and Phoenix processing 2M user sessions on one machine. One of the biggest wins of Elixir is full support of OTP – open telecommunication platform from Erlang – with its abilities to create, monitor and supervise processes, to scale, and to be fault-tolerant. With all these capabilities why not to try create an Elixir-based ruby server? We have tried and you'll see what we've got.
I am a long-run ruby and rails developer with rails version upgrade experience from rails 1.x to 5.0. As of now, I probably fixed at least one serious bug in every major rails release and continue doing so... I am still around ruby and rails because I believe in Ukrainian Ruby Community that can be a big chance for a better future for the whole country. Besides ruby I got serious about yoga recently. Feel free to talk with me about that during breaks too.
DB optimizations is a topic that 10% of speakers touch in some way. But some of them are focused on the best Database or Hardware configuration. I will try to be more specific on the application side and show how to optimize queries using different techniques: from avoiding the query completely to in-depth SQL query execution guides.
Beletage is a concert hall situated in the very center of Kyiv, near Palats Sportu and Lva Tolstogo metro stations, lots of tasty cafes and bars and hotel “RUS”. Lectures will take place in a main hall on the ground floor and lunches in a Café Etage on the second floor. Large, well-illuminated, comfortable it should be a perfect spot for RubyC-2017.
Shota Rustavely 16a, Kyiv Show on Google Maps
|10:30-11:20||Piotr Szotkowski||Ruby Smells|
|11:30-12:10||Xavier Noria||Little Snippets|
|12:20-13:00||Bozhidar Batsov||Ruby 4.0: To Infinity and Beyond|
|13:00-14:00||FREE TIME (go breathe)|
|14:00-14:40||Marat Kamenschikov||Elixir-based Ruby Web Server|
|14:50-15:30||Serdar Dogruyol||Crystal (a Ruby-like programming language)|
|16:10-16:50||Piotr Solnica||A new look at rom-rb|
|17:00-17:40||Bogdan Gusiev||Optimizing SQL Queries|
|17:40-18:00||Short break to prepare for the Afterparty|
|18:00-23:00||Presents&Drinks&Music (don’t ever go away)|
|10:30-11:20||Open Talk||Yestersday's photos slideshow|
|12:20-13:00||Anton Honcharuk||React integration into existing Rails apps|
|13:00-14:00||FREE TIME (go breathe)|
|14:00-14:40||Quentin Adam||Problems in the microservice world|
|14:50-15:30||Viacheslav Shvetsov||Testing. Why so serious?|
|16:10-16:50||Sergiy Kukunin||Tackling complex Ruby architecture|
|17:00-17:40||Stas “Raptor” Volovyk||Ruby native extensions|
|FREE TIME||Let Ponomarev lead the way|
If you have any questions about RubyC, please contact our PR manager Nadia Beregova +380 97 852 86 71, firstname.lastname@example.org