Dec 19, 2017

Reactive Conf 2017 in Bratislava: Firsthand emotions

A summary of Reactive Conf in Bratislava written by Yuri Nezdemkovski, Filip Messa, and Alexey Alexeev.

Part by Holoch Messa

In the last week of October we attended Reactive Conf together with our colleagues from Bratislava. The three-day conference — made up of two stages and a day full of workshops — attracted around 1,100 participants and 30 speakers.

The interesting talks made the conference worthwhile, however, at the end I could not resist thinking: “ Is this All?” I’d expected some wow factor and when it didn’t materialise, I was a bit disappointed. Anyway, the organisation of the conference was great and it’s still in my calendar for 2018. In the next few paragraphs, I briefly sum up the most interesting talks for me.

Robin Frischmann: “CSS in JS — Good & Bad Parts”

I’m a big fan of CSS in JS. I like this approach because it has solved many things for me that I don’t like about CSS. There were a few talks about this topic at ReactiveConf in Bratislava. The first talk on this theme was presented by Robin Frischmann, the author of a very interesting library called Fela. His talk “CSS in JS — Good & Bad Parts” was an introduction to this theme.

CSS in JS is not about inline style. All modern libraries generate a real CSS, so you can use all the CSS features. One of the best things about CSS in JS is that you don’t have to care about the CSS global namespace. Every modern CSS in JS library generates a unique class name. So you can say “goodbye” to the BEMOOSCC and SMACSS approaches. And because it’s JavaScript, you can write mixins as a function, use variables, etc. You also don’t need Less or Sass.

Additionally, there’s another amazing concept that CSS in JS brings to the scene: Style as a function of state Style = f(state)CSS in JS is still a very young concept and if you’re new to this topic, this talk is a great place to start.

Javi Velasco: “Writing highly reusable React components”

Another Interesting talk was by Javi Velasco.

Javi is an author of the very popular REACT TOOLBOX UI library. He is trying to find the best solution of writing highly react reusable components. Javi’s formula for a Fully flexible component is: Fully flexible component = theming + style customization + render customization. I am not a big fan of highly reusable components, because it leads to hard abstraction stuff. In any case this was a very interesting talk. I recommend it.

Shirley Xueyang Wu: “D3 and React, Together”

Shirley is a freelance software engineer, and she concentrates on Data Visualizations, primarily D3 and React.

I have been working on some charts where I used D3 and React together, so I was very excited about this presentation. D3 is a JavaScript library for producing dynamic, interactive data visualisations in web browsers. D3 isn’t only about charts.

If you would like to learn something about combining React and D3, this talk is for you. You can also find out when React should render to DOM, when to use D3 instead of it, the pros and cons of each approach, as well as many other best practices.

Gerard Sans — “Relay Modern or Apollo?”

We have already used Relay Modern as a client for our GraphQL server at I really like the technology around GraphQL. I think once you try GraphQL you will never want to go back. In this talk, Gerard tries to compare Apollo Client vs Relay Modern, presenting their pros and cons. If you are trying to decide between Apollo and Relay Modern, this can give you information on both sides. Moreover, Gerard mentions some great sources on the topic.

John Wargo: “Creative Hacking: Delivering React Native App A/B Testing”

John Wargo is a program manager at Microsoft and he also works on the Visual Studio Mobile Center.

The Visual Studio Mobile Center brings together multiple services, commonly used by mobile developers, into a single product. You can build, test, distribute and monitor your mobile apps and also implement push notifications and code push. CodePush is a cloud service that enables Cordova and React Native developers to deploy mobile app updates directly to their users’ devices.

Hacking means “Using a tool for a purpose other than which it was designed“. For this reason, John adds to his presentation name “Creative Hacking: Delivering React Native App A/B Testing”. In his talk with a live demo he shows how to use code push to A/B Testing.

Part by Alex Alexeev @alexedev

Filip already gave some info about the talks that I’m going to mention so I will not repeat the “hard information” but rather share my personal opinions.

I visited the ReactiveConf mostly because of my Relay Modern workshop. The thing is that I started to prepare for it one week before the conference, so I spent some of the conference time polishing the presentation and workshop content in general. Sadly, it was not recorded but at least I’ve got few photos and can share with you a link to the repo (check the description there for a link to the slides). This is why I skipped most of the talks and listened to some of them in the background 🙂

Photo from Relay Modern workshop

On the main stage my attention was taken by a very nice and beautiful presentation on GraphQL Subscriptions by an Apollo guy named Uri Goldshtein. It really resonated with what I currently do and learn about (basically, all that is relevant to the GraphQL ecosystem). The content was not clear to me fully in the moment, but things came into place after I watched the recording later. Subscriptions is a big thing and there was a recent announcement about Amazon AppSync which should make subs much easier to implement.

I was really upset about missing the talk on D3 and React, Together but after watching it later on YouTube I can recommend it without hesitation if you are into data science, SVG and animation.

I went to the Discovery stage only once to check out the Writing highly reusable React components talk. It gave me some insights on writing UI libraries — not what I plan to do in the near future, but it’s nice to have it in mind anyway. I liked that Javi Velasco not only talked about the technical details but also raised relevant general questions on using CSS in JS, theming and such.

It is difficult to say if the conference was better or worse than one of last year, because I did not attend it ???? but in general it felt quite high level and mature. I’m not a fan of conferences with a wide topic scope but it is always good to have an understanding of general trends to ensure that the community doesn’t get to be narrow-minded, or forget about networking — you never know what new connections you will make and what opportunities you will stumble upon and work on later.

Part by Yuri Nezdemkovski @nezdemkovski

It was my second time attending the ReactiveConf in Bratislava and I’m sorry to say, but instead of getting better, this year wasn’t as good. Let me tell you why.

Last year, there was an announcement of few new tools such as Next.js by ZEIT. This year, I was expecting as impressive programme, but unfortunately I didn’t see anything new at all.

Before going to the Conf I decided that I would especially love to attend two talks: GraphQL Subscriptions by Uri Goldshtein and a presentation of a brand new Apollo 2.0 client by Peggy Rayzis.

The first one I attended was very useful and interesting. Subscriptions are quite a new GraphQL feature that allows to realtime updates from the database in a GraphQL backend. All you need is to set them up by subscribing to specific mutations and after each mutation is triggered, execute some code in your app to react to that change.

If you are interested in more details I would recommend you to watch the whole video from the conference.

After receiving such a good impression, I was looking forward to attending the second talk on the following day. The whole day I was within temptation to hear some news from Apollo team directly (I’m a huge Apollo fan and truly love their ideas and product). But the talk was unexpectedly cancelled without any explanation. I was disappointed and surprised at such irresponsibility and lack of communication from the side of the organisers.

After a few weeks I stumbled across the article from Peggy explaining why she cancelled the ReactiveConf talk.

Why I cancelled my ReactiveConf talk

What would you do if conference organizers themselves committed a Code of Conduct violation against you?

In spite of this, I’d still recommend the conference to anyone interested in our React world.

Featured articles
Generating SwiftUI snapshot tests with Swift macros
Don’t Fix Bad Data, Do This Instead