AR, robotics and cataracts: how we went to the Russian-German programming school

In mid-March, Munich hosted Joint Advanced Student School 2019 (JASS) β€” one-week English-language student hackathon++ school for software development. About her in 2012 already wrote on HabrΓ©. In this post, we will talk about the school and share first-hand impressions of several students.

AR, robotics and cataracts: how we went to the Russian-German programming school

Each code sponsor company (this year - Zeiss) offers ~ 20 students from Germany and Russia several projects, and in a week the teams must present their developments in these areas. This year it was either to make video calls with augmented reality for Android, or to come up with and prototype a UI for the predictive maintenance system, or to participate in the secret Project Cataract.

All work is in English. The organizers deliberately make up mixed teams of Russian and German students for a (un)cultural exchange. Moreover, in even years the school takes place in Russia, and in odd years in Germany. So this is a great opportunity for students of varying degrees of preparation to get not just work experience, but the experience of working together with foreigners.

Projects and goals

Every year the school has a sponsor company that provides projects and mentors for students. This year it was Zeiss, which is engaged in high-precision optics (but not only!). At the beginning of the week, representatives of the company (β€œcustomers”) presented three projects to the participants for implementation, after which the students split into teams and made proof-of-concept during the week.

The goals of the school are cultural exchange between students and the opportunity to give novice programmers the experience of working on real projects. At school, you don’t need to get a completely finished application, the process is more like R&D: all projects are related to the company’s activities, and you want to get proof-of-concept, and one that would not be embarrassing to show it to managers within the company.

The main differences from the hackathon: more time for development, there are excursions and other entertainment, and yet there is no competition between the teams. As a result, there is no goal to "win" - all projects are independent.

Each team, in addition to students from different countries, also had a "leader" - a graduate student who managed the team, handed out tasks and radiated knowledge.

Total was three projects proposed, students of the Higher School of Economics - St. Petersburg, who got to the project, will tell about each of them.

Augmented Reality

Nadezhda Bugakova (1st year master's degree) and Natalya Murashkina (3rd year bachelor's degree): We needed to port an augmented reality video communication app to Android. Such an application was made as part of another monthly hackathon for iOS and HoloLens, but there was no version for Android. This can be useful for collaborative discussions of some designed parts: one person twirls a virtual part and discusses with the rest.

Predictive Maintenance

Vsevolod Stepanov (1st year master's degree): In production, there are expensive robots that are expensive to stop for maintenance, but even more expensive to repair. The robot is hung with sensors and I want to understand when it makes sense to stop for maintenance - this is just predictive maintenance. Machine learning can be used for this, but it requires a lot of labeled data. We also need experts who can understand at least something from the charts. Our task was to make an application that highlights the alleged anomalies in the data from the sensors and allows the expert and the data scientist to look at them together, discuss and correct the model.

Cataract

Anna Nikiforovskaya (3rd year undergraduate student): unfortunately, we were asked not to disclose the details of the project. Description and presentation even removed from TUM websitewhere the rest of the projects are.

The working process

The school is small and lamp-shaped: this year about twenty students of varying degrees of training participated in JASS: from the first year of undergraduate studies to graduates of master's programs. Among them were eight people from the Technical University of Munich (TUM), four students from the St. Petersburg campus of the Higher School of Economics, four more from ITMO University and one student from LETI.

All work is in English, the teams are specially almost equally composed of German-speaking and Russian-speaking guys. There is no interaction between projects, except that at lunch everyone was mixed up. Inside the project, synchronization via Slack and a physical board on which you can glue pieces of paper with tasks.

The schedule for the week looked like this:

  • Monday is presentation day;
  • Tuesday and Wednesday - two days of work;
  • Thursday is a day of rest, excursions and intermediate presentations (customer's review), so that you can discuss the direction of movement with customers;
  • Friday and Saturday are two more days of work;
  • Sunday - final presentation with dinner.

Nadezhda Bugakova (1st year master's student): Our working day went something like this: in the morning we come and stand up, that is, everyone tells what they did in the evening and plan to do it in the afternoon. Then we work, after lunch - another stand-up. The use of the board with pieces of paper was greatly encouraged. Our team was larger than the rest: seven students, a leader, plus the customer very often hung out with us (he could be asked questions on the subject area). Often we worked in pairs or even trios. And we also had a person who developed the original application for iOS.

AR, robotics and cataracts: how we went to the Russian-German programming school

Vsevolod Stepanov (1st year master's degree): In a sense, SCRUM was used: one day - one sprint, two stand-ups a day for synchronization. Participants had mixed opinions about effectiveness. Some (including me) thought it was too much chatter.

On the first day after the presentations, we discussed the plan, talked with the customer, tried to understand what needs to be done. Unlike Nadia's team, the customer did not interact with us during the project. And the team was smaller - 4 students.

Anna Nikiforovskaya (3rd year undergraduate student): In fact, the rules in the teams are not strictly enforced. Initially, we were given a lot of instructions on holding stand-ups, a la: everyone in a circle, always standing up, saying β€œI promise”. In reality, my team did not adhere to strict rules and stand-ups were held not because it was necessary, but because there are a lot of us, and we need to understand who is doing what, synchronize efforts, and so on. I felt like we had natural discussions about progress and the project.

In my project, the customer did not understand anything in programming, but understood only in optics. It turned out to be very cool: for example, he explained to us what the brightness of lighting and exposure are. He was very involved in throwing metrics and ideas. During development, we constantly showed him the intermediate result and received instant feedback. And the leader helped us a lot with the technical side: practically no one in the team worked with two popular technologies, and the leader could talk about it.

Presentation of results

There were two presentations in total: in the middle of the school and at the end. Duration - 20 minutes, then questions. On the eve of each presentation, the participants ran a presentation in front of a professor from TUM for practice.

Vsevolod Stepanov (1st year master's degree): Since our presentations could show managers, it was important to focus on possible use cases. In particular, each of the teams at the presentation washed down some more software theater: they showed live how the development can be used. Our team eventually made a prototype of a web application, which was shown to UI / UX managers, they were delighted.

Nadezhda Bugakova (1st year master's student): We managed to make a picture in AR and a connection between phones so that one person can rotate the object, and the other can watch it in real time. Unfortunately, it was not possible to transmit sound.

Interestingly, the team was not allowed to submit the same speaker to both the customer's review (middle presentation) and the final presentation so that more participants would have the opportunity to speak.

AR, robotics and cataracts: how we went to the Russian-German programming school

Out-of-work process and impressions

This year, the school was held for a week, not one and a half, but the program still turned out to be quite intense. On Monday, in addition to the presentation of projects, there was an excursion to the Microsoft office in Munich. And on Tuesday, they added an excursion to the small Zeiss office in Munich, showed several units for measuring the optics of parts: a large X-ray to detect production inaccuracies and a thing that allows you to measure small parts very accurately by passing them with a probe.

Thursday was a big trip to Oberkochen, where Zeiss is headquartered. We combined a lot of activities: hiking, an intermediate presentation in front of customers and a party.

On Sunday, after the final presentation of the projects, an excursion to the BMW Museum was organized for the customers, after which the participants spontaneously organized a walk around Munich. In the evening, a farewell dinner.

Anna Nikiforovskaya (3rd year undergraduate student): We went to Oberkochen very early. A bus was booked directly from the hotel for school participants. Zeiss headquarters are located in Oberkochen, so the preliminary presentations of our work were seen not only by the β€œcustomers” who worked directly with us, but also by someone more important. First, we were given a tour of the office - from the Museum of History, where we were shown how the optics industry changed before Zeiss and after Zeiss, to the actual workplaces, where we saw a variety of devices for measuring / checking some details and how people work with them . Almost everything is protected by the NDA and photography is not allowed. And at the end, we were even shown a factory where huge machines like tomographs are produced.

AR, robotics and cataracts: how we went to the Russian-German programming school

After the tour, there was a good lunch with the staff, and then the presentations themselves. After the presentations, we went to climb a not very high mountain, at the top of which a cafe was waiting, completely filmed for us. You could take everything until the cafe ran out of food and drinks. There was also a tower that had a great view.

AR, robotics and cataracts: how we went to the Russian-German programming school

What else do you remember?

Vsevolod Stepanov (1st year master's degree): In order for us to play around with the data, a local professor gave us a year's worth of data from his Tesla. And then, under the pretext of β€œlet me show you the Tesla live now,” he gave us a ride on it. There was also a slide from the fourth floor to the first. It became boring - he went down, took the rug, got up, rolled down, put the rug.

AR, robotics and cataracts: how we went to the Russian-German programming school

Anna Nikiforovskaya (3rd year undergraduate student): Dating is always very cool. Meeting interesting people is doubly cool. Meeting interesting people with whom you can also work together is triple cool. Well, you get it, humans are social beings, and programmers are no exception.

What do you remember about work?

Anna Nikiforovskaya (3rd year undergraduate student): It was fun, everything could be asked and clarified. And also the tradition of the Germans to knock on the tables of lecturers: it turns out that it is customary for them to separate the speech of academicians from everyone else. And it is customary for a person from the academic sphere (lecturer, professor, senior student, etc.) to knock on the table as a token of approval / gratitude for the lecture. The rest (representatives of companies, ordinary people, actors in the theater) are usually applauded. Why is that? One of the Germans, as a joke-explanation, said: β€œWell, just when the lecture ends, everyone is already cleaning things with one hand, so clapping is not convenient.”

Vsevolod Stepanov (1st year master's degree): Interestingly, among the participants were not only programmers, but also, for example, roboticists. Although all projects and the school as a whole are about coding.

There was also quite good feedback in terms of presentations. It was especially useful for those who were not tormented by this every semester during the entire bachelor's degree.

Nadezhda Bugakova (1st year master's student): Poke around in AR was fun. Also, I now have a cool app on my phone that I can show.

Living conditions

The organizers paid for almost everything: flights, accommodation two stops from the university, where the main work was going on, meals. Breakfast - at the hotel, lunch - at the university, dinner - either with the organizers in a cafe or in the office of some company.

At the university, each team had its own room with a board. Sometimes something else: for example, one team had a kicker, and the other team had a lot of free iMacs to work on.

AR, robotics and cataracts: how we went to the Russian-German programming school

Vsevolod and Hope: We usually worked until 21. There was also a room 24/7 with lemonade and nishtyaki (sandwiches, pretzels, fruits) were brought there 3-4 times a day, but it was eaten pretty quickly.

To whom do you recommend?

Vsevolod and Hope: To all bachelors-programmers! It's worth knowing English, but it's a wonderful experience. You can try all sorts of fashionable things.

Anna Nikiforovskaya (3rd year undergraduate student): Do not be afraid if it seems to you that you do not have enough knowledge, experience, whatever. There were people at JASS with a wide variety of backgrounds, from the first to the fifth year, with different work experience and different experiences of hackathons/olympiads/schools. As a result, the teams were very well formed (at least mine for sure). And with us, everyone did something and everyone learned something.

Yes, you can learn new things, try your hand at accelerated development, see how you excel in a limited amount of time, and be impressed that you can do so much in such a short amount of time. In my opinion, at the same time, compared to olympiads or regular hackathons, the level of stress and haste is greatly reduced. So there is surprise and pleasure from what has been done, but there is no anxiety and other things. And I think it's great. For myself, for example, I found out that I can notice if the work is distributed in a team somehow wrong and even contribute to correcting this. I consider this my own small victory in the field of communication and leadership skills.

Communication with people is also a very cool component. Don't worry if you think you don't speak English well. If you are programming, then you probably have to read a lot of English literature. So if you lack the communication skill, then complete immersion in the English-speaking environment will definitely teach you this. We had people in the team who were initially not sure of their knowledge of English and were constantly worried that they missed something or said something wrong, but by the end of the school they were already chatting calmly and not only at work.

AR, robotics and cataracts: how we went to the Russian-German programming school

Source: habr.com

Add a comment