![](http://habrastorage.org/getpro/habr/avatars/60e/d4d/5cb/60ed4d5cbd04043a3f218c393c6d7a6e.jpg)
New course from the School of Interface Development. In Yekaterinburg and everywhere
My name is Denis Chistyakov, and I lead the interface development team in Yekaterinburg. We are engaged in the front-end: we make many complex, bright and beautiful pages for Yandex applications.
Two years ago, we launched our Interface Development School, in the framework of which we are trying to turn web developers into cool web developers as soon as possible, ready for the specifics of our company, our infrastructure and our technologies. This year was no exception. In 2014, SRI will be held in Yekaterinburg and Minsk.
Today I want to share with you the courses compiled from the best lectures in our school in recent years, as well as to talk about what will be in it in a new way.
This year, we decided to move away from the School format that has become familiar in two years and try to conduct it in a completely new rhythm. This year, training will be divided into two parts, relatively speaking, full-time and part-time. We understand that often those who want to learn from us will find time between school, work and family. And we are not an ordinary school or university, where you need a compulsory presence at lessons and pairs. We have confidence that those people who fall into SRI have a healthy passion, are responsible and understand what they started the learning path for. (Yes, yes, we know you're cool :)
![](https://habrastorage.org/files/1df/b84/6c0/1dfb846c0bf7438ab25514ddfc7d497a.png)
Therefore, summarizing all of the above, we decided that students will master the theoretical material on their own at a time convenient for them. But to feel the taste of creating interfaces, there is not much to read and watch. There is still a lot of practice and coding. Therefore, the second - full-time - part of the training will be practical exercises (which, it is important to note, were not in the past SRI).
These will be mini hackathons, on which the guys will have to implement an entire project. A team of Yandex mentors will help them in this. And there are many advantages to this: communication, the opportunity to work side by side with professionals, get “live experience” and, most importantly, try to feel like part of Yandex.
What else? There will also be a story about teamwork. Very often the success of your product depends on the coordinated work of many people. Cool if you can do everything yourself, but more often it’s a little more complicated. It is clear that to get the skill of working in a team without a team is a rather difficult task. Therefore, during practical exercises, we will also pay attention to this aspect. Students will be able to invent, plan, negotiate, build the architecture of their own project and choose the technologies for implementation. Have to make decisions and be responsible for the finished product. And in this format, with such innovations, we will start this year.
Now I would like to dwell a little more on the lecture course, which was mentioned above.
I repeat, we really have a lot of high-quality material from experienced developers who, in addition to being really cool specialists, prepared specifically for speaking to students, thought through the content of each lecture to tell the most useful. And the greatest value of all this baggage of material is that it is in the public domain. Everyone can independently familiarize themselves with it in free mode, even without studying at the School.
In the process of selecting materials for home study, we tried to select not only the best, but the most valuable and useful. As a result, we got a course of video lectures that will help anyone who wants to immerse themselves in web development.
Course structure
We divided all the material into three blocks, in accordance with the development cycle: this is the layout, the "revitalization" of our pages by JS, and the block about rolling out and optimization. On the one hand, each lecture is filled with selected information on the topic and the course provides a good basis. On the other hand, each block must be perceived as anchor points of what you need to know. After viewing the lecture, you need to take something and try to do it yourself, somewhere we recommend references and additional sources for study.
The course is useful for both beginner developers who are just taking their first steps in this really cool business, and those who already have some experience. With it, you can both gain new knowledge and find answers to your questions, or simply structure the existing material in your head.
The list of lectures appeared for a reason. Lectures go in the same order as the development process usually takes place: static layout, “fastening” the javascript, then debugging and testing the code. For two years we read and recorded several courses in different cities, and this selection, in my opinion, is the most successful for educational purposes. I chose the shortest and most meaningful lectures so that the student could get an idea of the entire development process, and then, if desired, delve into the details and watch other lectures.
Layout: HTML + CSS
In working on any interface project, we can’t get anywhere from layout. Now HTML and CSS technologies have gone very far, and many cool and even animated pieces can be implemented already at this stage of development, without even touching JS.
In this block, we have placed nine lectures telling about everything necessary for layout layout:
Javascript
A block of lectures on the “revitalization" of the JS'om layout tells about the capabilities of the JavaScript programming language, and how to use it to make our still static page more lively, interactive and dynamic:
Optimization and deployment
A block of lectures about the very 20% of tasks that take 80% of the time - rolling out changes to the production server, profiling, optimizations, as well as various types of testing:
But if you want to try your hand and participate in practical exercises, ask your questions to Yandex employees or just hang out together, we are happy to invite you to our School! Participation and training are completely free, and for admission you only need the desire and successful completion of the entrance test. All the necessary information can be found here: bit.ly/shri-ekb_2014
Do not be afraid and come to us in SRI! Believe me, you can learn a lot from us, and we from you.
Two years ago, we launched our Interface Development School, in the framework of which we are trying to turn web developers into cool web developers as soon as possible, ready for the specifics of our company, our infrastructure and our technologies. This year was no exception. In 2014, SRI will be held in Yekaterinburg and Minsk.
Today I want to share with you the courses compiled from the best lectures in our school in recent years, as well as to talk about what will be in it in a new way.
This year, we decided to move away from the School format that has become familiar in two years and try to conduct it in a completely new rhythm. This year, training will be divided into two parts, relatively speaking, full-time and part-time. We understand that often those who want to learn from us will find time between school, work and family. And we are not an ordinary school or university, where you need a compulsory presence at lessons and pairs. We have confidence that those people who fall into SRI have a healthy passion, are responsible and understand what they started the learning path for. (Yes, yes, we know you're cool :)
![](https://habrastorage.org/files/1df/b84/6c0/1dfb846c0bf7438ab25514ddfc7d497a.png)
Therefore, summarizing all of the above, we decided that students will master the theoretical material on their own at a time convenient for them. But to feel the taste of creating interfaces, there is not much to read and watch. There is still a lot of practice and coding. Therefore, the second - full-time - part of the training will be practical exercises (which, it is important to note, were not in the past SRI).
These will be mini hackathons, on which the guys will have to implement an entire project. A team of Yandex mentors will help them in this. And there are many advantages to this: communication, the opportunity to work side by side with professionals, get “live experience” and, most importantly, try to feel like part of Yandex.
What else? There will also be a story about teamwork. Very often the success of your product depends on the coordinated work of many people. Cool if you can do everything yourself, but more often it’s a little more complicated. It is clear that to get the skill of working in a team without a team is a rather difficult task. Therefore, during practical exercises, we will also pay attention to this aspect. Students will be able to invent, plan, negotiate, build the architecture of their own project and choose the technologies for implementation. Have to make decisions and be responsible for the finished product. And in this format, with such innovations, we will start this year.
Now I would like to dwell a little more on the lecture course, which was mentioned above.
I repeat, we really have a lot of high-quality material from experienced developers who, in addition to being really cool specialists, prepared specifically for speaking to students, thought through the content of each lecture to tell the most useful. And the greatest value of all this baggage of material is that it is in the public domain. Everyone can independently familiarize themselves with it in free mode, even without studying at the School.
In the process of selecting materials for home study, we tried to select not only the best, but the most valuable and useful. As a result, we got a course of video lectures that will help anyone who wants to immerse themselves in web development.
Course structure
We divided all the material into three blocks, in accordance with the development cycle: this is the layout, the "revitalization" of our pages by JS, and the block about rolling out and optimization. On the one hand, each lecture is filled with selected information on the topic and the course provides a good basis. On the other hand, each block must be perceived as anchor points of what you need to know. After viewing the lecture, you need to take something and try to do it yourself, somewhere we recommend references and additional sources for study.
The course is useful for both beginner developers who are just taking their first steps in this really cool business, and those who already have some experience. With it, you can both gain new knowledge and find answers to your questions, or simply structure the existing material in your head.
The list of lectures appeared for a reason. Lectures go in the same order as the development process usually takes place: static layout, “fastening” the javascript, then debugging and testing the code. For two years we read and recorded several courses in different cities, and this selection, in my opinion, is the most successful for educational purposes. I chose the shortest and most meaningful lectures so that the student could get an idea of the entire development process, and then, if desired, delve into the details and watch other lectures.
Layout: HTML + CSS
In working on any interface project, we can’t get anywhere from layout. Now HTML and CSS technologies have gone very far, and many cool and even animated pieces can be implemented already at this stage of development, without even touching JS.
In this block, we have placed nine lectures telling about everything necessary for layout layout:
- Introductory lecture on HTML markup language , history of its creation and development, as well as basic tags;
- introductory lecture on cascading CSS style sheets that take care of the entire design part of the layout;
- a lecture on how to select elements of a document tree and overlay styles from them from CSS;
- tech.yandex.ru/education/shri/ekb-2013/talks/1492 tech.yandex.ru/education/shri/ekb-2013/talks/1493 tech.yandex.ru/education/shri/ekb-2013/talks/ 1494 - lectures on the page display flow in the browser, the order in which the tree elements are displayed and the rules for their location;
- the basics of using and configuring Photoshop as the most important tool for working with the layout;
- about the BEM layout methodology that originated in Yandex: how and why we came to it and that BEM is not painful and simple;
- a story about version control systems , why it is impossible to carry out major projects without them, as well as a story about GIT, which Yandex so loved.
Javascript
A block of lectures on the “revitalization" of the JS'om layout tells about the capabilities of the JavaScript programming language, and how to use it to make our still static page more lively, interactive and dynamic:
- will tell why mankind has produced such a huge number of programming languages and why we miss C;
- talks about the main features of JS , its features, data types and language constructs;
- a lecture on how to "deliver" data to a page in real time and receive responses from servers without rebooting;
- tech.yandex.ru/education/shri/msk-2013/talks/1432 tech.yandex.ru/education/shri/msk-2013/talks/1579 lectures on the event model in JS, the principles of event handling by browsers, alarms, timers and all-all-all asynchronous;
- a story about how server JS appeared , how it is good and why it makes great front-end servers;
- a lecture on working with the document object tree and the popular jQuery framework that simplifies our lives;
- a lecture on what kind of template engines can be , what are the pros and cons of a particular solution and why we wrote our own;
- tech.yandex.ru/education/shri/msk-2013/talks/1581 introductory lecture about our i-bem.js framework that makes working on the client simple, declarative and with a taste of BEM;
- tech.yandex.ru/education/shri/ekb-2013/talks/1495 tech.yandex.ru/education/shri/msk-2013/talks/1345 lectures on the history and operation of the HTTP protocol and how the web is built on its basis -Services.
Optimization and deployment
A block of lectures about the very 20% of tasks that take 80% of the time - rolling out changes to the production server, profiling, optimizations, as well as various types of testing:
- a story about how the process of developing a service in Yandex , and how our experience can be used in other projects;
- tech.yandex.ru/education/shri/ekb-2013/talks/1561 tech.yandex.ru/education/shri/msk-2013/talks/1580 stories about all kinds of testing: automated, manual, regression, unit tests and many others;
- the lecture answers the very important question “ What happens when I press Enter in the address bar of the browser? ";
- a lecture on regular expressions - a flexible and powerful means of word processing, without which no programming language can do;
- a story about one of the most effective ways to improve and tidy up code in a group - Code review.
But if you want to try your hand and participate in practical exercises, ask your questions to Yandex employees or just hang out together, we are happy to invite you to our School! Participation and training are completely free, and for admission you only need the desire and successful completion of the entrance test. All the necessary information can be found here: bit.ly/shri-ekb_2014
Do not be afraid and come to us in SRI! Believe me, you can learn a lot from us, and we from you.