Let's support our students

    Remember your first program? Surely it was written in some Pascal or Basic during school years. And then it happened: new languages, algorithms, frameworks ... and here we are.

    Right now in Russia, a lot of talented guys are following in our footsteps. Fortunately, the current generation has smart IDEs, high-speed Internet, and a huge amount of training materials at hand. As a result, students begin to engage in serious projects much earlier. For example, a student of 11th grade to make the system of distributed computing based on the browsers of visitors:

    Distributed computing system based on browsers of site visitors
    (on this project, I'll tell a little more under the cut)

    This is just one of the many school research projects. The best ones will be presented inSt. Petersburg February 3, 2016 at 14:00 at the Baltic Scientific and Engineering Competition .
    I invite everyone to come, see and chat with young inventors. After all, for a young programmer who for the first time in his life has created something from scratch, it is VERY important to hear an assessment of his work from real IT specialists.

    I promised to tell the story of one school project

    Once, a St. Petersburg student named Sasha thought that most of the time at the computer he spends exclusively in the browser. At the same time, the core i7 inside the computer, in fact, is idle 80% of the time. But there are hundreds of millions of people like him ... Sasha thought: “Is it possible to somehow use the power of my computer for something useful?” Soon he learned about “voluntary computing” and BOINC .

    As expected by the engineer, Sasha noted the shortcomings of the existing systems of voluntary distributed computing on the market:
    1. The end user needs to install additional software on his computer, which greatly slows down and limits the growth of the GRID network.
    2. And a conditional scientist who needs significant power to solve a problem cannot just take and “add distributed computing in the cloud to his code”. You need to adapt to strict rules and, in fact, write a separate program.

    Sasha decided to create a distributed computing system in which these problems are solved. On the one hand - to make a convenient java-library for distributed computing, which could be easily connected to the code of your application by writing a couple of lines of code. On the other hand, make a script for the site, which, when inserted on the page, turns “useless” users viewing photos of cats into “useful” users who, without harm to the speed of the browser, quietly help their core i7 diagnose cancer or predict the weather. In order to build such a system, a student in a year studied dozens of new technologies: from server Java to compiling C ++ code in javascript and the features of javascript in a browser.

    The result was a working system. You can see the codea server on Tomcat , a plug-in Java library, and a test application that selects a password using the md5 hash in the cloud using the library. Not without experiments: experiments have shown that already 13 browsers with javascript overtake one native C ++ application (and if for users of Chrome, then browser calculations in speed overtake C ++ on five browsers).

    Sasha successfully presented the project successfully at the Baltic Science and Technology Competition in St. Petersburg, took 1st place and won a trip to the States at Intel ISEF . There the stand from the beginning of the article was presented: (click to enlarge the picture)
    Distributed computing system based on browsers of site visitors

    After a trip to the States, Sasha entered ITMO and literally from the first year joined the server development team of one of the well-known St. Petersburg startups, where he helps build “new Google / Facebook / SpaceX” in his spare time.

    This is by no means the only successful project. Every year, over 150 projects on completely different topics are presented at the Baltic Competition, for example:
    • Using an Android Phone as a HID Mouse
    • Cost-effective 3D scanner worth 3,000 rubles
    • An analogue of the RSA cryptosystem in quadratic Euclidean rings
    • Using bilinear transformations to implement real-time warping and morphing algorithms
    • Back-In-Time Debugger: debugger for Linux with the ability to restore the previous state of the debugged program

    Why is supporting student IT research projects so important?

    Firstly, participation in a research project helps a student to understand “who will I be when I grow up?” Very well before entering the university, the risks of entering the wrong university and spending a lot of time on that are minimized.

    Secondly, school is a wonderful time when, as a rule, a burden of obligations has not yet fallen on a growing specialist.

    Thirdly, any new knowledge is acquired in youth with greater efficiency.

    One may ask: what does the research project have to do with it? There are dozens of other competitions for both schoolchildren and students. We have been winning programming contests for a year now.

    It is important to understand the key difference between a research project and an olympiad. In the Olympiad, the task is to solve the problem already solved before that as quickly as possible. A research project is done for a year and quite often solves a problem that no one has solved before you. Even with such a basic comparison, it already becomes clear that a research project is an activity that is much more similar to building a conditional “next Google”.

    OK, how can I help?

    1. Come personally to competitions for schoolchildren and give feedback on IT projects

    I will repeat exactly what I started with. It is VERY important for a young programmer who for the first time in his life to create something from scratch to hear an assessment of his work from real IT specialists. The nearest such opportunity will be provided in St. Petersburg on February 3, 2016 at 14:00 ( registration ).

    2. Attract their companies to participate in competitions for schoolchildren

    In addition to the standard options for financial sponsorship, companies can present schoolchildren with project ideas from their sphere that they could work on.

    3. Once a year, invest in supporting competitions for IT projects of schoolchildren

    In the States, the largest Intel ISEF competition of this kind is actively sponsored (surprise!) By the largest IT companies.

    Unfortunately, not everything is going so smoothly with us. In 2014, for example, the activity of business sponsors was rather low, and the competition had to raise funds through crowdfunding so that the event could remain free for students. This year the picture has not improved much: in connection with the well-known closure of the Dynasty fund , which previously supported the Baltic Competition, the competition again needs the support of ordinary members of the IT community, who have realized, among other things, their responsibility for a common future. Habr rules do not allow me to leave a direct link to the crowdfunding campaign, who really wants to help financially, he will find.

    When I tell my friends about this whole topic, I often hear the sad comment: “Anyway, then these students will leave the country. Everything is useless ... ".

    There are no illusions: in the modern world, talented specialists often leave for those countries in which they can maximize their potential without unnecessary unjustified risks.

    However, I am sure that in 10-15 years a lot will change in our country. A comfortable environment will be created .to create and develop hundreds of “new Google / Facebook / SpaceX”. When this happens, I’m sure that even those contestants who decide to leave Russia will eventually come back here to build such global leading IT companies.

    They will definitely come back if they remember how at the time we all supported their undertakings at the competition. Will support?

    Also popular now: