RailsClub 2017: waiting for all the rubists September 23 in Moscow

    Hello! Do you miss us? ) We are already preparing for a new meeting. Today we’ll talk about what will happen at RailsClub 2017 and how else you can get into the program!

    September 23, Congress Center Technopolis Moscow. Registration on the site .

    So, what will happen:

    image

    Richard Schneeman , Ruby Hero 2016. Included in the top 50 contributors to Ruby on Rails, Sprockets maintainer. The creator of the Wicked and Derailed Benchmarks libraries, works for Heroku and is involved in the codetriage.co service, which helps people begin their journey into the open source world.

    Threads Aren't Evil

    Okay, so threads are pretty evil. But they are also useful, and given the right development patterns, not impossible to work with. In this talk we'll look at some real world Ruby libraries where threads were applied to accomplish otherwise impossible tasks. We'll look at re-writing a real world library to support parallel execution by threads for performance gains. If you're not comfortable with the "" T "" word (threads), this talk is the perfect introduction to practical thread programming in Ruby.

    Piotr Solnica , a developer from Poland, works as a technical expert at Icelab. Written by rom-rb and dry-rb, an active OSS contributor. The report will be about Rom-rb 4.0 , we are specifying the details for now!


    Nick suttererby Trailblazer! Wherever there is a serious and deep debate about the architecture of software in open source, if there is free beer there, Nick Satterer is most likely somewhere nearby. Say hello to him, he loves people.

    Ruby Is Dead

    Having a simple programming language doesn't mean the applications will be simple. Higher abstractions are needed - but Ruby doesn't seem to give us those! Here is a tour through other languages, and how we can have nice things in Ruby

    Luca Guidi , a family man, an independent OSS developer, author of the Hanami framework. Topic: Functional web with Ruby , details will be discussed later.

    image
    Kir Shatrov , Production Engineer from Shopify.

    Background Task Framework Architecture

    Probably every Ruby developer used the task queue and Sidekiq. However, in a complex project, background tasks are much more than just a queue: it is prioritizing queues, limiting resources, "" unique "tasks, and batching onto task groups.

    How to ensure a “fair” queue in the case when one client has added a million tasks and the other has just one? What happens to tasks when we want to stop a worker after rolling out a new version of an application? What to do with tasks that go through all entries in the database and take a week? In the report, we will talk about what is hidden under the hood of all these features - and how Sidekiq (Pro) implements some of them. After listening to the report, these features will cease to be magic for you and become ordinary data structures.

    Anton Davydov, developer, enthusiast Open source, Hanami core.

    What does it cost us to build an ecosystem

    Two years ago, while working on Hanami, I did not suspect how important the ecosystem was for the project. Every day in our work we use the most modern technologies: languages, frameworks, plugins and other products. We don’t think about how much time we save thanks to a developed ecosystem and ready-made solutions to common problems.

    For example, many people love Rails for being able to create MVP as soon as possible. This is due not only to the framework itself: there is a whole gem system around Rails, and solutions to most problems have already been described. Therefore, a developed ecosystem is important for a product that will be easy and comfortable to use.

    I will share the experience of creating the Hanami ecosystem. I’ll tell you how the technology develops thanks to its environment, what kind of rake we stepped in during the work, and how I would start developing the ecosystem if I returned 2 years ago.


    Andrey Molchanov , Software Developer at Evrone.

    Ruby virtual machine

    Let us consider what place a virtual machine takes in the compilation phase of a program and why it is needed. We learn what the virtual machine was in its first version, analyze its shortcomings as the reasons for further changes.

    Taking into account the current implementation, we will go the way of compiling the program to machine code, having examined in detail what is happening inside it.

    In conclusion, we will discuss where this project is going, what they want to improve in it, and in what way.

    Vladimir Dementyev , a developer at Evil Martians, a mathematician, an open source developer.

    Tests should also be fast.

    Tests occupy an important part of development, especially on Ruby and Rails. As a rule, we pay little attention to the organization of test code and their optimization. Until we notice that we spend too much time to see the green color at the end of the tunnel.

    I want to talk about how to detect problem areas in tests, show how to fix them, and also introduce a new tool that will help you with this - TestProf.


    image
    Anna Shcherbinina , lead in the web department of Artec3D.

    The Tale of Synchronous and Asynchronous Paradigms

    The Web is based on communication: the interaction between services, servers, utilities, classes in an application. Initially, two polarities stood out, synchronous interaction between components and asynchronous. Obviously, synchronous interaction cannot be dispensed with when the reaction is directly related to the response received to the request. With asynchronous requests is also quite simple, it doesn’t matter when they are executed, the main thing is that they are executed.

    Later hybrids appeared that are semantically synchronous, and asynchronous in implementation. As an example - the well-known long-pulling. For asynchronous, the time for which they must work is often indicated. It happens that several clients need to answer, instead of one.

    Each of the types has its own characteristics, strengths and weaknesses, which we will consider.
    But what if you look at synchronism and asynchrony from a different angle?

    Nikita Shilnikov , Dry-rb and Rom-rb Core developer.

    We solve problems like

    Ruby - a dynamically typed language, but this does not mean that there are types in it. Sometimes we want more predictability and evidence from the code, but we do not have tools for this in the language itself. We will talk about the dry-types gem - one of the main dependencies of dry-validation and ROM.


    Nikita Sobolev , wemake.services, organizer of elixir-lang.moscow and ambassador Auth0


    Elixir - not Ruby, but better

    One of the creators of Rails - Jose Valim - created his own programming language. So different, but so familiar! Indeed, he was inspired by Ruby when he created it. And many began to consider the Elixir language - the new Ruby. And here a problem arose. Languages ​​are fundamentally different. And a misunderstanding of the differences in approaches and principles has destroyed more than one project. I propose to understand what new ideas are being offered to us? What is the philosophy of Elixir and the Phoenix-way?


    That is not all, we will publish the rest of the program very soon! And if you have something to tell the community about, it's not too late to write to elena@evrone.ru with the topic “I want to speak.”

    While we are all waiting for the conference, you can watch a video from RailsClub 2016 and the summer Ruby mitap . Wellcome!

    This year, we are traditionally supported by the general partner of the conference: Toptal is a distributed global exchange created by engineers, which has already been joined by the most talented developers from around the world.
    image
    See you at RailsClub !

    Also popular now: