Prehistory: who we are and how we came to such a lifeWe are a
JavaRush project
team . And JavaRush, who is not up to date yet, is a fully automated online tutorial on Java. Once
upon a time, precisely because of the
support of habouriors and
articles on habr, JavaRush appeared. At that time, we were going to retrain a million people to programmers.
')
Very ambitious, isn't it? But, as they say, “a project that can be done in two weeks, we have done for three months. Because nothing can be done in two weeks. ”
We still believe in our mission - to retrain a million Java programmers - we still believe, but also decided to set ourselves a more modest tactical goal: to make an awesome online course on Java. I think we succeeded. We continue to successfully saw and finish our JavaRush, overgrown with successful "graduates" ... But now a little about something else.
To the pointOne day, a person from our team accidentally stumbled upon a video of the Harvard CS50 lectures ("Basics of Programming and Computer Science"). Actually, I am known for criticizing universities very hard for their boring, uninteresting lectures, which were out of date by 10 years already at the very moment when students heard them for the first time.
But there are no rules without exceptions. The Harvard CS50 is a university course to which I take my hat off. I want all of our students and teachers to watch it. This is what a modern university course should look like: bright, informative, inspirational.

The course is simply gorgeous, although experienced programmers will not find there a lot of useful information for themselves: it is designed for beginners. But for them - for beginners - I recommend to definitely study the CS50.
The course is so cool that Yale University abandoned its own introduction to programming in favor of CS50. Moreover, for several years CS50 can be held not only by Harvard students, but also by all those who wish, on the
edX website, and absolutely free of charge. The only "but": course in English ...

In short, the CS50 impressed us so much that we decided to translate it into Russian, although there is not a word about Java. We found some cool guys -
Vert Dider Translation
Studio - and together we started to adapt the lectures.
And now more about CS50
For whomIf you are a beginner, go through CS50. If someone you know is eyeing IT and programming, advise CS50 without looking. I'm serious.
CS50 will suit anyone who has decided to become an IT person. Perhaps, it can be recommended by both capable 12-year-olds and experienced “defectors” from other professions. Ideal for high school students and students.
The course is very progressive and is updated from year to year. At the same time, unlike the majority of similar university educational programs (for example, MIT 6.00X), the listener does not require knowledge of university mathematics, it is enough for the school level.
Who leadsComputer Science Professor
David Malan . Perhaps, when you see him, you will have a rupture of the “university professor” pattern: he is extremely energetic and has a very lively flow of information. I think the success of the course is largely his merit. Also he is assisted by numerous assistants. Some of them are experienced guys, some are among those who himself recently passed CS50.
What is being studied on CS50
- Basics of computer science and programming. Number systems, work with the command line in Linux, cycles, conditional transitions and other joys.
- Concepts of algorithms and algorithmic thinking. You will learn what tasks can be solved using programming and how. On a binary search, simple in essence, but very effective and requiring careful implementation, David Malan will tell you right away, right at the zero lecture. And then try to forget the scene with the rupture of the telephone directory, and with it the knowledge gained! In general, the course covers all the basic algorithms that you need to know and understand "IT specialists".
- Concepts of abstraction, data structure, encapsulation, memory management. Basics of computer security. Software development and web development.
- Basics of the C programming language and the visual language Scratch. Actually, students do all the basic examples and tasks in C.
- Basics of databases and SQL.
- Web development: the basics of CSS, HTML, JavaScript and PHP. Naturally, only the basics.
- Basics of preparing presentations of programming projects.
Interesting facts about CS50
- The CS50 course appeared at Harvard in the 80s of the last century.
- In 2014, Yale University decided to abandon its own course on the basics of computer science in favor of CS50. In the fall semester of 2015, David Malan every week gave one lecture to the Harvard auditorium, and the second to the Yale University auditorium.
- Yes, CS50 immediately became Yale's most popular course: in the fall semester of 2015, 510 students enrolled in it, more than any other course in any specialty.
- At Harvard in 2012, CS50 was the second most popular with 691 registered students, but the same year, the course started on the edX educational platform, which expanded its audience to another 53,000 listeners from around the world.
- In the fall of 2014, the CS50 became the leader in his native Harvard with 818 enrolled students. This is 12% of all college students.
- Once a CS50 lecture was led by ex-Microsoft CEO Steve Ballmer . In its unique and memorable style;).
- In 2005, Mark Zuckerberg led one of the lectures of the CS50 as an invited guest. He came to listen ... 15 people.
- The course is chosen not only by specialized students, but also by those who want to broaden their horizons, to learn something about computers. Sometimes it drastically changes the lives of these "non-core" students. For example, a graduate of the faculty of history and literature Susan Wojcicki (Susan Wojcicki) listened to CS50 last year. And then she moved to Silicon Valley. Today she is the executive director of YouTube.

Where to find translated lectures
The page on which the course lectures in Russian will be posted:
javarush.ru/cs50.html . They will be available for free to all Internet users. The translation of the first lecture on June 20 has already been published on the resource. Wait for the next lecture on June 27, and then they will appear as they become available.
Follow the updates on the JavaRush pages on social networks:
vk.com/javarushwww.facebook.com/www.javarush.ru