Hello! If you did not have time to register on the JetBrains Open Day , which will be held tomorrow, June 28, or are not in St. Petersburg, do not be discouraged: we organized a webcast.
Kotlin and C #. What can languages ​​learn from each other? Dmitry Ivanov
Data Engineers Shouldn't Suffer or Something About Big Data Tools for IntelliJ IDEA Vitali Khudobakhshov
Plugin repository: from the site on the knee to the online store Alexander Prendot and Semyon Atamas
15:10
Infrastructure tasks in the company Denis Yakovlev
How to use CI to test the frontend on the example of TeamCity Denis Lesnik
IntelliJ IDEA Tips and tricks Hadi hariri
15:50
What does the frontend developer in JetBrains do? Maxim Erehinsky
Principles of interface designers in the IntelliJ Platform UI team Olga Berdnikova
Contracts at Kotlin Dmitry Savvinov
4:10
When work is fun or why it is important to know your strengths Anna Popova
How we switched to a single repository Dmitry Panov
4:30 pm
What does language support in IDE consist of? Andrey Starovoit
How do we test performance in Rider Andrey Akinshin
From assembly to Continuous Delivery to TeamCity Andrey Titov
17:10
One day of the java-developer Alexey Kudryavtsev
How to write useful technical texts Anna Gasparyan Alla Redko
Full-stack Kotlin application through the eyes of a front-end developer Akif Abasov
17:50
Kotlin: facts you may not have known Evgeny Petrenko
Feature Evolution in IntelliJ IDEA Nikolay Chashnikov
The processes of development and design of interfaces of the new product JetBrains Anton Sokolov
18:30
Short about JetBrains now and then Maxim Shafirov
18:50
Removing Barriers Hadi hariri
19:40
IDE wars: we, our friends, our rivals and our ... partners Kirill Skrygan
20:40
Q & A session
21:20
A party!
Hall Milky Way (large hall)
14:30
Kotlin and C #. What can languages ​​learn from each other?
Dmitry Ivanov, Rider team technical leader Rider is an IDE that simultaneously exists in two worlds.The frontend is written in Kotlin, and the backend is written in C #.Our team has been following with interest the development of these languages ​​for five years: how C # ideas influence Kotlin language features and vice versa.At the lecture, we will look at the strengths and weaknesses of both worlds, find out how the authors of languages ​​adapt world experience, and try to look beyond the horizon: what awaits us in the future? ')
15:10
Infrastructure tasks in the company
Denis Yakovlev, DevOps Engineer The company produces many desktop applications and services.To ensure the production process and the continuous operation of services, a large and complex infrastructure is required.In my report, I will talk about what the company has a team of infrastructure engineers, what technologies it uses and what challenges the team faces.
15:50
The story of my frontend in JB
Maxim Erehinsky, YouTrack developer I'll tell you about whether there is a front end in JetBrains, what projects and technologies we use, and how I got to such a life.
4:10
When work is fun or why it is important to know your strengths
Anna Popova, community support specialist How to find a job that will bring you joy?Understand what you like and what are your strengths?It sounds simple, but how to determine what your unique strengths are?You can figure it out during the report, as well as find out why a high salary and a cool office are not the only things to look for in work.
4:30 pm
What does language support in IDE consist of?
Andrey Starovoit, WebStorm developer I'll tell you how language support in the IDE is built using the example of JavaScript: from keyword highlighting to non-trivial inspections.I will show a variety of problems that may arise on this thorny path, and some options for solving them.
17:10
One day of the java-developer
Alexey Kudryavtsev, developer IntelliJ IDEA What does a typical Intellij IDEA programmer look like, how does a typical day go by and what tasks you usually have to solve.Content.Morning building.Cheating users.Decomposition of polynomials.Saving clamps.Scraping prick.Dinner.Feat.
17:50
Kotlin: facts you may not have known
Yevgeny Petrenko, Kotlin team developer advocate From the moment Kotlin appeared in 2010, a lot of things appeared in it: some features live successfully, some can be found only by digging into the history of the repository.We will start with funny facts from the past: remember the namesake island, treit, generic and type erasure.Let's talk about how to write clean and neat code.Kotlin today is not just another language for JVM, it supports JS and compiles for various platforms into native code, including iOS.Did you know that you can use the same code and libraries when developing for different platforms?If not, find out on the report.
18:30
Short about JetBrains now and then
Maxim Shafirov, CEO of JetBrains
18:50
Removing Barriers
Hadi Hariri, Head of Developer Advocacy Imagine barrelsImagine if you’re micromanaged, you leave.Imagine if there was very little management.Wouldn't it be ideal?Everything would just fall into place and we'd be so much more productive, right? At JetBrains many of these barriers don't exist.But not having barriers isn't always easy.In fact, you can’t just break.It’s a matter of course if you’re able to overcome.
19:40
IDE wars: we, our friends, our rivals and our ... partners
Kirill Skrygan, Team Leader Rider Oh, these fascinating interactions between us, our competitors, our partners, modern platforms and the community. How did it happen that we became one of the leaders in the IDE market?Who competed with?Who collaborated with?Where did it happen, where not and why? What products are we competing with today?How is the platform and tooling business connected, and where are we?Klaudy? .. mm ... probably this is also a topic.Why did our products evolve as they evolved?Insiders, stories, intrigues, investigations and even a bit of gamedev in the throw-in report about the global IDE market.
20:40
Q & A session
Maxim Shafirov , CEO of JetBrains Natalya Chisler , HR Director Hadi Hariri , Head of Developer Advocacy Vera Olennikova , Educational Project Coordinator Sergey Kuks , Head of .NET Development Maxim Mosienko , Project Manager at IntelliJ
21:20
A party!
Sirius Hall (Small Hall of the E Tower)
14:30
Data Engineers Shouldn't Suffer or Something About Big Data Tools for IntelliJ IDEA
Vitaly Khudobakhshov, developer of Big Data Tools for IntelliJ IDEA Pipelines, clusters, terminals, laptops, IDE - this is only a small part of what a modern data engineer has to deal with.Even if you only work with Spark, the number of tools you need in your daily work can be very large.A large amount of time is spent on copying Scala code from IDEA to Zeppelin and back, as well as constantly clicking the Refresh button in the browser in an attempt to understand whether your task will end on the cluster in the near future.And now let's imagine that everything or almost everything can be done directly from the IDE.As part of my report, I will tell and show new tools from JetBrains to work with technologies such as Apache Spark and Apache Hadoop.
15:10
How to use CI to test the frontend on the example of TeamCity
Denis Lesnik, TeamCity developer TeamCity has a complex interface consisting of hundreds of related React components.However, we managed to build a code quality control system so as to minimize the number of bugs and virtually eliminate critical errors.We will talk about how our system works and how we test our UI.
15:50
Principles of interface designers in the IntelliJ Platform UI team
Olga Berdnikova, interface designer in IntelliJ platform Theseprinciples are used by designers in the IntelliJ Platform UI team to decide which interface is better.
4:10
How we switched to a single repository
Dmitry Panov, developer IntelliJ IDEA infrastructure Let us tell you about the transfer of the IntelliJ IDEA code base to a monolithic repository, about the pitfalls before and after this point, discuss what helped us with the move, why the forks of our GitHub repositories did not break and why life would not be the same.
4:30 pm
How do we test performance in Rider
Andrey Akinshin, Rider developer Performanceis one of the main features of our cross-platform .NET IDE.Unfortunately, keeping performance metrics at a decent level is not easy.In this report we will talk about various interesting technical problems that we have to solve.You will learn how we have built performance monitoring processes, how we implement performance monitoring, what types of performance tests we have, and why we sometimes have to shove laptops into the freezer during benchmarking.
17:10
How to write useful technical texts
Anna Gasparyan and Alla Redko, technical writers at IntelliJ IDEA We will talk about the culture of technical texts of mass consumption.We answer the questions: “What is technical documentation?”, “Who writes it and for whom?”, “Why follow the stylistic rules when answering forums?”.We will definitely look at various examples of technical texts and try to improve some of them and share practical advice on writing documentation.
17:50
Feature Evolution in IntelliJ IDEA
Nikolay Chashnikov, developer IntelliJ IDEA IntelliJ IDEA has been developing for almost 20 years, and during this time even the basic functionality has changed a lot.Using examples of specific features, I will show how and why their behavior changed, and I will tell you about how new features appeared and old ones disappeared.You will see how the IDE features have foreshadowed the development of the Java language, and, perhaps, will discover useful features in IntelliJ IDEA, which were not previously known.
Phoenix Hall (Small Hall of the W Tower)
14:30
Plugin repository: from the site on the knee to the online store
Alexander Prendot and Simon Atamas, MarketPlace developers Anyone who came across JetBrains products, used plugins or interacted with them involuntarily.But not everyone knows how they are arranged and what secret knowledge plugins repository can reveal.They are tormenting questions about how to make your Darcula theme in a couple of clicks, quickly create a plugin, or can you sell the new Haskell IDE that you wrote at home?Short answer to questions - everything is possible!Let's create and sell with us.
15:10
IntelliJ IDEA Tips and tricks
Hadi Hariri, Head of Developer Advocacy
15:50
Contracts at Kotlin
Dmitry Savvinov , Kotlin developer Contracts are a new experimental feature in Kotlin 1.3 that allows the programmer to transfer more information to the compiler, receiving more accurate analysis results in return.Let us consider how contracts can be touched by hands - both in a stable mode and in an experimental one, and “for sweet” we will tell about current internal research in this area.
4:30 pm
From assembly to Continuous Delivery to TeamCity
Andrey Titov, TeamCity developer Using the example of a small service using TeamCity Kotlin DSL, the Build Chain will be configured and TeamCity's capabilities in organizing the assembly, testing, and display of the application will be shown.The demonstration will show useful TeamCity features that simplify the configuration of the Build Chain and allow you to get a more stable process.
17:10
We write full-stack application on Kotlin
Akif Abasov, a new product developer In this report, I will talk about how to write a full-stack application on Kotlin.We will look at various technologies from the Kotlin world that make this language such a powerful and convenient tool: create a multiplatform project, reuse code between Kotlin / JVM and Kotlin / JS, write frontend using convenient DSL for React and CSS and use Coroutines for client-server interaction .
17:50
The processes of development and design of interfaces of the new product JetBrains
Anton Sokolov, designer of a new product In JetBrains we make a new web product using Kotlin both on the server (JVM) and on the clients (JVM, JS, Native).Most of the members of our team are full-stack developers, we practice frequent releases and “dogfudding”.These conditions affect the standard principles for creating production-ready user interfaces.We will talk about the reference points of the processes (events, artifacts), which were entrenched in the team, as well as the role that designers play in them.