
You may have already heard that in Badoo every year in December my colleagues and I
go to the bath to compile a calendar of conferences for techies around the world that we want to attend. And 2016 was no exception: we have more than one hundred conferences on our list, but of course we will not torment you with reports from each one. Instead, we chose the best, in the opinion of our developers, and collected small eyewitness reviews from Badoo. Spoiler: eight conferences. Spoiler two: some reviews are not that small. Therefore, below - table of contents.
Table of contents
1. CodeFest, Novosibirsk, Russia2. SQA Days 19, St. Petersburg, Russia3. DevConf, Moscow, Russia4. Velocity, New York, USA5. GopherCon, Denver, USA6. Percona Live, Amsterdam, Netherlands7. ZendCon, Las Vegas, United States8. HighLoad ++, Moscow, Russia1. CodeFest , Novosibirsk, Russia, March 26–27

')
Here you can listen and talk about development, project management and testing. The CodeFest conference has been held since 2010, we have been participating in it since 2013, each time sending a large delegation to distant Novosibirsk. Every year, the main IT-conference of Siberia (and, in principle, one of the largest in Russia) is getting richer with interesting reports and homegrown visitors, and CodeFest’s sincerity and activity will be envied by most of its competitors.
Ilya Kudinov, Senior QA Engineer ,
Relz
I gave a report at this conference, and it helped me a lot that the organizers were sociable and benevolent. CodeFest is held not the first year and on the same platform, so it’s not surprising that the space is well organized. I really liked the activity in the area of ​​corporate stands: in one of them was a barbershop (!), What else to talk about!
I not only spoke, but also listened a lot to other guys. Everything was very cool, but, probably, communication with the speakers after their presentation is the most interesting part of any conference (both for the listeners and for the speakers, take my word for it).
Especially memorable are the success-stories from the Appium developer (it's nice to hear about the success of the framework, which we started using, as they say, before it was cool) and the groovy “self-educational” report from Maxim Dorofeev.
My advice to you: if you want to hear a potentially popular report, come to the hall early, because otherwise you will have to stand in the doorway, aisles, or even sit on the floor.
Anton Turetsky, system administrator ,
banuchka
This is not the first time I've come to CodeFest. This is a conference for which a very large number of people go to get knowledge. For me, this is some kind of downside: here, people look at you during a speech and listen carefully to the answers to the questions they asked. At the conference there is almost no pathos, if it is appropriate to say so. Probably, anyone who has visited CodeFest at least once will say that there is a friendly and family atmosphere.
Unfortunately, the administration section is not very strong, I have not met any serious reports that are interesting to me. But I liked
some performances because of the speakers, their narrative manners and behavior on stage.
If you plan to go to CodeFest next year, then be prepared for the distance of the site from the city center (if you live there) and to the insane taxi drivers of Novosibirsk.
2. SQA Days 19 , St. Petersburg, Russia, May 20–21

It is considered one of the best conferences in Russia and the CIS for testers and all interested. It is held twice a year, in different cities of Russia and the CIS countries, combining quality control professionals from all over Europe. In the framework of most of the “episodes” of SQA Days, “English” days are held, on which employees of foreign companies share their experiences with the audience. And there are legends about the afterparty of the conference (traditionally and very deliberately arranged at the end of the FIRST day of the conference).
Vladimir Shcherbakov, QA Engineer
I was not at this conference for the first time. Impressions about St. Petersburg remained the same as about others: everything is organized very well, guests are not allowed to be bored, many reports are available to choose from. In general, the organization is at a high level, I met the queues only at dinner, in other cases there was always enough room in the classrooms, the reports started on a schedule.
From the speeches, the most memorable to me was the report on logging system errors,
Lev Astakhov spoke
on the topic “Instrumentation of the execution environment in the tester’s arsenal”. Here you can watch the video from his performance, and
here - the presentation . Lev told how their team collects data on implementation, program errors. In my opinion, a very useful thing that allows you to detect a hidden problem without deep study - all before your eyes.
I would recommend all QA specialists to visit SQA Days: I think everyone will find reports on their level of knowledge and interests, and you can always talk to people from different companies and speakers to ask them questions on the sidelines.
3. Devonf , Moscow, Russia, June 17

Annual conference dedicated to leading programming and web development technologies.
We published part of the video from the speeches, if you want to refresh them in memory.
Sasha Krasheninnikov, Head of Data Team ,
alexkrash
It was not my first visit to this conference, I noticed that the new venue was much better than the previous one, but a bit too big for an event of this level. In 2015, I was a speaker, and in this I went to support our children. I can not praise colleagues: we, as always, well done. Prepared quality material.
They told about the rakes, which jumped around (they all lie - you can not believe the data coming from user devices).
Andrei Volikov gave an overview of the existing mathematical apparatus for solving geolocation problems and searching for a point belonging to a polygon. Spoiler for those who did not watch the performance: the final solution was proposed by the S2 program interface from Google.
I also remember the
report on microservices on Go : a very experienced speaker, his presentation of the material was hooked. The theme of the orchestration and choreography of services based on the Consul software solution - this report can be put in a “piggy bank” if the task is to build from scratch or adapt a project to the described architecture.
Vadim considered the complex of what one has to face when building a microservice architecture: monitoring, scaling, and so on.
Contrary to popular belief, DevConf has long ceased to be focused solely on PHP developers, and now you can listen to reports about architecture, working with data and the "kitchen" of various projects.
Dima Costin, PHP Developer ,
DsTr123
I remember three reports from the conference. Speech on
how to write a highload application on Go : it was very structured to use it in production, the main pitfalls, debugging in a pro-environment.
Alexey Akulovich from VKontakte
talked about VK audio prints , which allow you to find duplicate songs, regardless of the source of the recording and its shift in time. About the architecture of different projects is always the most interesting to listen to. Like the scale of features and uniqueness. The report itself contained a history of the development of the feature, information about what it is now, what problems encountered during its creation.
The
report about HTTP2 also turned out to be useful: it was simply and clearly explained what problems could be solved with its help.
4. Velocity , New York, USA, June 20–23

Conference for DevOps, web developers, techlids, where hundreds of famous speakers speak.
Igor Sotnikov, senior PHP developer
Most of all, I remember not the reports, but the master classes. This is a separate section, it takes place the day before the main conference and is charged additionally. I went to service workers and performant accessibility.
At the first master class, we listened to the lecturer, he gave examples of code, and some of the actions could be immediately performed on a laptop. On the second, everything was quite banal: we just listened to the lecturer, who was giving a presentation.
There was another master class: after a brief lecture on architecture, those present were divided into groups of seven people and were given the task of sketching an approximate architecture plan for the proposed introductory ones.
All videos from the conference can be found here.
From the funny: between the reports, people were sitting on the floor in groups, after which it turned out, why: there were not enough sockets. For those who plan to go to Velocity in the new year: most of the speakers are either sponsors or O'Reilly authors, so if the report is not sponsored, then it is likely to find an O'Reilly profile brochure and read the theses.
5. GopherCon , Denver, USA, July 11–13
Photo dnabyteGopherCon is the very first and largest Go conference for developers, fans and those who want to learn. It takes place since 2015 in Denver (USA). Near it is the city of South Park (the same). Here they give a soft toy - Go mascot, which you can boast.
Vadim Istratov, Head of Billing Project Development ,
WASD42
The organization of the conference was at the highest level, despite the number of visitors: 1,400 participants! Very fast check-in, large air-conditioned rooms, good Wi-Fi throughout the conference center. Great coffee breaks and lunch.

But the impressions were mixed: on the one hand, powerful, interesting and entertaining reports from Go evangelists and many useful tutorial sessions, on the other - frankly weak reports in the spirit of “how I spent the summer or what else you can use Go”. It is clear that GopherCon is a narrow-profile conference, but the presence of reports about the IDE, “raw” debuggers, and the like was somewhat disappointed. There was a feeling that the topics simply did not suffice for three full days. Conferences on JavaScript and PHP, as a rule, dilute the main threads with related topics.

Hooked an interesting idea with HackDay, when anyone with their project could get real help from other gofers.
Of the reports, the most liked were the presentations of
The Design of the Go Assembler (Rob Pike) about the history of the Go-assembler and its internal structure and
Understanding nil (Francesc Campoy) about the features of using nil-values ​​in Go, about what it is, and major errors associated with it.

The main streams came with online-broadcasting and real-time text translation (!), Which allowed those for whom English is still a problem, to understand speeches better.
Do not ignore the afterparty - this is no less important part of the conference than speeches. This is where you can talk one-on-one with the guru and meet interesting people.
The conference ended at five o'clock in the evening, so it was time to travel around the district. I can not share with you at least one photo:
Photo from Mount EvansFor those who missed the conference:
all the video presentations and
more here , the
presentations of the speakers .
For those who plan to visit GopherCon next year: if the conference will again be held in Denver, then you need to consider that you will be at an altitude of 1600 meters above sea level, suffer from jet lag and heat, that is, you will quickly tire.
Sergey, technide in the "Billing" department ,
DominiI am often skeptical about conferences, as many reports are just a retelling of manuals and forums that do not carry enough concentrated information to spend the whole day on them. Or the announcement of a new product, more like a press release than a conversation with technical experts. And only a little bit is a unique unique experience for which, in my opinion, it is worth visiting them. Regarding GopherCon, I had good expectations and, fortunately, they were confirmed.
The conference turned out to be, in my opinion, very balanced: technical reports were diluted rather abstract, and funny reports on topics not related directly to programming, but related to the history of Go, did not give bored of all this.

As for the organization, it was at the highest level: the hotel recommended by the organizers was wonderful and was very close to the conference venue, enough space was taken. Technological support for the speakers was beyond praise, right up to real-time subtitles. In the hall between the reports, we managed to meet many interesting interlocutors. It is impossible not to note the beautiful views from the mountains of Denver, even though it does not directly relate to the conference.
From the reports I remember most of all Understanding nil and
Don't Just Check Errors, Handle Them Gracefully . The first, as you can guess, is about nil assignment in Go, and the second is about how to handle errors correctly (I have seen a lot of controversy about this). Both speakers did not talk about a set of postulates and forced measures to achieve this or that, but built a coherent logical chain, showing why this or that part of the language is formulated in this way and not otherwise. And, understanding this logic, you take the approaches shown immediately without hesitation. But this does not end there. Having received an excellent base, further reasoning on these topics can be continued independently, which, in my opinion, is an excellent result for a report.
Separately, I would like to mention the report
Visualizing Concurrency in Go , causing a real wow-effect, especially on the big screen.
I also liked the reports
Communicating Sequential Goroutines and
cgo: Safely Taming the Beast about such low-level things that are not written in the manual.
And finally, it is impossible not to mention the report of
The Go Gopher: A Character Study Rene French about the Go mascot.
6. Percona Live , Amsterdam, The Netherlands, October 3-5

Percona Live is a conference hosted by Percona consulting company. Dedicated to the MySQL ecosystem and other databases.
Alexey Rybak, head of Badoo development ,
fisher
Database developer conferences are one of the few where you can find out how large projects are made from an engineering point of view. Percona has been holding a conference for many years not only in California (they started as a mini-conference in parallel with the main MySQL conference), but also in Europe.
The conference in Amsterdam seemed to me an interesting event, because, in my opinion, this is the only European conference of this level (except for Russia, HighLoad ++, in my opinion, in this sense is absolutely unique). I was already on Percona Live in 2012 when it was held in London. The conference then was less, the session of reports lasted only one day. Since 2015, Percona has managed to collect reports for two days already, and this year even a PostgreSQL Day was held at the conference.
In general, there were many people from large projects: Facebook (four reports, the most interesting, in my opinion, was by Mark Callaghan about MyRocks and MongoRocks), a bunch of reports from Percona, Oracle, MariaDB and from other large projects: Uber (about that the transition from PostgreSQL to MySQL, which caused a notorious buzz on the Internet), Dropbox, Yandex (ClickHouse!), Badoo (there were two reports from us: about Spark and Pinba).
Tony Dovgal talks about Pinba and its use in BadooI will say straight away if you are interested in the subject matter, I recommend studying the conference program on your own and watching all the presentations, it is very simple: the
first day and the
second . Click on the report and watch the slides, you can immediately download them yourself, very convenient.
Sasha Krasheninnikov gives a talk from BadooInternational conferences have a number of features that seem to be big disadvantages: there are a lot of reports in parallel. At the same time there are five to ten reports, so it is extremely important to study the program in advance and plan the day. Those who were at HighLoad ++ this year should understand well what I mean: for our technical conferences this is not typical, we are used to one or two streams, but this is the inevitable future, as well as the growth of exhibition areas. ;)
I listened to many reports, but I cannot say that I remember a lot. I'll write about the main thing: about the news of MySQL 8.0. By the way, do you know why 8.0? First, version 6.0 was already preparing for a long time, but at about the same time Oracle was buying Sun, there were organizational problems in the company, and this branch suffered about the same fate as PHP 6.0 - it died under the weight of organizational problems . Therefore, they released 5.6 and 5.7, but now I want more: it's time to change the major version. The seven was occupied by MySQL Cluster, so we decided to make the eight.
What's new in MySQL 8.0
I can not say that 8.0 pulls on a revolutionary release. The most important news for mobile application developers:
- first, the utf8mb4 encoding will become the default encoding (which means that MySQL starts supporting emoji out of the box!);
- secondly, improved work with geographic GIS-indices.
Many altered in the guts:
- made the new data dictionary (sawed out MyISAM, this is the first step to transaction support for DDL operations);
- wrote down invisible indexes (this is necessary in operation, for example, before a drop: check that the index is really not needed by anyone, “turn it off” before complete physical removal);
- done role-based management (cool, of course, but Oracle has been around for about twenty years).
In general, many MySQL generic problems are put in order, but nothing revolutionary for a programmer. However, plans are cool, about this - below.
Further MySQL plans: InnoDB MySQL Cluster!
The conference was made the announcement of MySQL InnoDB Cluster. It may have been announced before, but I heard about it for the first time. This is a very interesting topic for techies, MySQL is trying to “catch up with the market,” and a full-fledged cluster for InnoDB is a very big step forward. Watch the
five-minute video to see what it is about.
If MySQL does this, it will noticeably simplify the life of DBAs who want to get a persistent cluster out of the box. This feature is often the key when engineers choose a DBMS for a project from several servers: no one wants to write cluster management on their own. This project is a long-term, roadmap there for several years, and, unfortunately, for very large projects this clustering model is not always suitable, as it triples the number of servers. Or maybe, fortunately: enough work for our age. ;)
Other conference activities

Since Percona holds many conferences, the organization was at a good level, even the mobile app was done with all the reports. The exhibition area was not very big, I spent almost all the time next to the Tarantool stand. There, I asked about the use of the Tarantool disk store in production at the Mail.Ru Group, met several friends from other companies. Of the large partnership events, I only visited a boat trip to the Booking.com office.
As you may know, Amsterdam is full of canals, their total length is hundreds of kilometers, and they form concentric rings all over the city.

And one evening we sailed on ships to the Booking.com office directly from the hotel where the conference was held. There were a few joking reports and then a creepy queue for food, so we quickly ran for a walk in the evening Amsterdam.

7. ZendCon , Las Vegas, USA, October 18–21
Photo of Lukasz SzymanskiZendCon is an international conference for PHP developers held in Las Vegas. Includes two and a half days of presentations and one day of master classes. All this takes place in eight to nine parallel threads. In addition, there are, of course, stands, dinners and afterparty (without it - nowhere).
Misha Kurmaev, head of A-Team development
I think this conference will be interesting for those who want to feel the spirit of PHP-development in America, to look at how it works not in the Russian space. I drew attention to many interesting reports, but not all of them are technical, rather, near-programmer (it is worth being prepared for this when you plan to visit ZendCon).
The big difference with Russian conferences: in Russia they talk more about technical things, and at ZendCon they talked a lot about how to build their work (how many letters to write, how to conduct a meeting). It is curious: what problems do people face at work and how do they solve these problems.
Misha Kurmaev and Danil Mukhametzyanov defend their project at a master class, ZendConThe organization is at a good level: in razdatka there is a schedule with a map, and if you suddenly lose it, there is always a schedule in front of the halls. From the reports I remember these three most of all:
- Asynchronous programming in PHP (Adam Englander). This is the only technical report I attended. It was about how to program asynchronous things with code examples.
-
Extremely defensive PHP programming (Marco Pivetta). I liked the speaker very much: he talked about obvious things, but the main message was this: all idiots, and I even more so. How to do so that nothing breaks, how to minimize risks. He gave a good example with the USB standard: they inserted one side, they realized that they were wrong, turned it over, inserted the other side. Very uncomfortable. The code must be written so that such a problem does not arise and the "wire" can be inserted from the first time.
-
Debugging your web application on IBM (from Apache to Zend) (Stephanie Rabbani). The speaker talked about the error-finding tool (Z-Ray): how to properly configure, showed examples. The performance was semi-advertising, but it seemed to me interesting, because you can watch Z-Ray.
An interesting observation. All reports at the conference began like this: “Hello, my name is this, I have three children, I have a dog, I go to church and play basketball.”
We were unsuccessful at the master class: they came because the name seemed very interesting -
Demystification OOP . The speaker was very open, met with the audience, and then ... began to tell how to write in PHP. Leave was uncomfortable, so we stayed. After some time, we were divided into groups, and tried to be divided so that the teams consisted of people unfamiliar with each other. The task was simple: write the code and protect it (tell what it does). Each group went on stage and defended their project. It was at the level of initial PHP programming courses.
Despite the fact that the master class was quite simple for us, the speaker was prepared, she spoke very well. It was useful to those who are just learning to program in PHP.
Pasha Murzakov, Senior PHP Developer ,
lu4e3ar
The organization of the conference was at a very high level, I did not notice any overlaps. What I can not say about the reports: most of them were either oriented towards the initial level of knowledge / experience, or were frankly advertising. Fortunately, due to the huge number of threads, it was almost always possible to find something interesting.

I'll tell you about what I remember. In my opinion, these reports will be useful not for PHP beginners, but rather for intermediate programmers.
Extremely defensive PHP programming (Marco Pivetta). The author is one of the
Doctrine 2 and Zend Framework 2 maintainers . , defensive PHP programming defensive driving ( , , , ). Poka-yoke, « »: , - .
:
– (private – / , final – );
– , , – . , , (, DateTime vs DateTimeImmutable);
– ;
– , . – ;
– «» (, : , );
– mixed . value object, ;
– ? .
, , , , .
PHP internal architecture (Elizabeth Smith). PHP. , : Ruby, Python, . . : PHP – SAPI , PHP.
SAPI, , php-fpm, Badoo. / tokens_get_all, AST/
VLD , .
. , : Zend Extensions PHP Modules. , :
– Core Built-in – ;
– Core Default – , ;
– Core – PHP, ;
– PECL – PHP, PECL;
– 3rd party.
- , , PECL, , .
? :
– ;
– , .
, :
– PHP ;
– , PHP, .
FFI, . PHP 7 MFFI.
My journey to the center of PHP (Sammy Kaye Powers). – , – success-story , (
CSPRNG ) PHP. , , PHP PHP 7:
1 2 .
PHP – -, RFC, , . –
41 .
: .
Renato Mefi, ZendCon , : Hard Rock Hotel & Casino : , .

, . HighLoad++, 2016 : . Highload++ .
Badoo, PHP- ,
walsk
: , . HighLoad++ , . , . , . . , .
. .
RUM PostgreSQL . « full text search PostgreSQL, ». , . , , , , ( – , access methods,
GitHub ), .
. , . - , - .
PHP 7.
« Badoo 1, PHP 7» , , . , .
, , . , 2016 , - , 2017 .