If you wake up and find yourself back in primary school… I’m afraid you’ll never graduate again!

Food for Udacity

Editor/Enron, Hallux, Yoda

Special thanks/Wang Feng

This article was first published on wechat subscription account Guokr42 (ID: Guokr42)


Shandong province has added Python to its newly published information technology textbook for grade 6 primary schools, thepaper.cn reported recently. Prior to this, there have been rumors in the programming community that Zhejiang province will change the information technology textbooks for middle schools, replacing VB (Visual Basic 6.0) with Python.

Will things really work out the way programmers expect? Why the sudden interest in Python?




What did VB do wrong to get rid of it?


VB is not wrong, but the people who use it have changed.

The two, which also emerged in 1991, are now in very different positions: According to the latest TIOBE ranking of popular programming languages, Python is firmly in fourth place, while VB has dropped to 20th, and is on its way down.




From 2016 to 2017, Python held steady at number 4, while VB dropped from number 14 to number 20. Photo credit: tiobe.com

There are many reasons for VB’s decline. The main reason is Microsoft’s exit. In April 2008, Microsoft announced to stop supporting VB in favor of C# and VB. Net, resulting in a lack of community; Look at the domestic education market, NOIP and other information in 2005 to remove BASIC language can be used, people’s stereotype of VB is still drawing geometric figures, writing multiplication tables and other primary applications, when looking for a job, few people will write it in the resume as a computer language to master. The need for a more dynamic programming language is imminent.




VB is dead, Python is dead


C/C++, Java, Python have been around for a long time, but why Python alone?

While C’s syntax is straightforward, having to manage memory yourself is a headache; The Syntax of Java is too cumbersome, causing beginners to focus too much on the syntax and fail to grasp the point of getting started. Python is the best computer language of the three. While you may not experience the power of C and Java in the novice stage, you will experience the simplicity of Python.




The language is easy to learn, almost natural language style, a little familiarity will quickly become familiar with the heart. Reading Python code is like reading an English article, giving you a clearer view of the logical architecture without having to focus too much on the language itself. This has attracted a lot of people from other industries to use Python for professional projects. You can easily meet a doctor who knows Python, an accountant who knows Python, or even a winemaker who uses Python to analyze grape species.

The Python developer community is also thriving with the introduction of diversity, with plenty of documentation and tutorials for novice programmers and experienced drivers alike. There are plenty of star Internet companies that use Python, including Youtube, Dropbox, Quora, Instagram, Reddit, and many others whose core businesses are built in Python.


Who is the “driving force” behind Python?


After VB occupies the information technology textbook of middle school students for so many years, the teaching reform should keep pace with The Times. Of course, there are several big events behind this.

I. Promotion by the U.S. government

In his final year in office, Obama proposed a $4 billion push for basic education to ensure that every K12 student has access to computer education.




Obama announced “CS For All” in his weekly address on January 30, 2016. Image source: Video screenshot

His successor, Donald Trump, has a clearer plan. He expects to spend $200 million a year at the Department of Education to increase the emphasis on computer education in K12 schools and to require the Department to submit annual reports on its effectiveness. I believe that whether people are for or against Trump, they are happy to see the government’s emphasis on education.

Second, the importance of universities

Python has become the most popular language for teaching introductory computer science courses at top American colleges and universities.

Eight of the top 10 CS departments use Python as their primary teaching language, and MIT and UC Berkeley computer science departments recently even switched to Python for their introductory courses.

Third, support for MOOCs

The three largest MoOCs — Coursera, edX, and Udacity — all offer introductory Courses in Python.


Is Python suitable for teenagers?


For most people, programming is an “adult thing.” Is Python really suitable for young children to learn?

In one sense, this may be Python’s advantage. In fact, there are already quite a few young geniuses who have done well with Python. Back in 2013, Julian Meyer, a 13-year-old Python developer, posted an article on the site, teaching his peers how to make small games with Python.

In this tutorial, he guides the reader directly through a tower defense game he designed called Rabbit and Badger. From installing Python, to adding the image and actions of the rabbit, to designing the interaction with the badgers, and finally to adding sound effects and background music, an entry-level applet was formed.



Meyer’s screenshot of tower defense game Rabbit & Badger in Python. Image credit: Winduino.co.kr

Another Python developer, 17-year-old student Kevin Frans, did something even more amazing: He published a paper as first author, Meta Learning Shared Hierarchies, submitted to ICLR2018, a top conference for machine Learning.



Frances and his published papers. Photo credit: Twitter

By the time He was 15, He was already training neural networks in Python. Influenced by reports about AI playing Atari games and AlphaGo, he read a lot of papers and reproduced some features. Soaking up his knowledge, he created an interactive web page that could automatically color sketches in comic book style.

It’s also interesting how Farance’s talents have been discovered. At one point, while trying to solve an open problem with OpenAI, Mr. Frans was impressed and wrote to John Schulman, an OpenAI researcher, for advice. After some back and forth about the algorithm, Shulman was surprised to learn that Farrance was in high school when he checked his personal blog. He applied for an internship at OpenAI and was interviewed by Shulman, who praised the paper he presented: “He brought a whole new approach to the problem, and some of the results were better than what had been done.”


conclusion


Whether it’s Python or JAVA or C or any other programming language, the most important thing is how it’s taught.

If it is simply added to the college entrance examination or included in the category of compulsory education, and the teaching mode is still the old VB, the teacher according to the textbook, or paper talk, around the test points recite learning to do exercises, open the computer room for students to feel casually, then the effect is certainly not ideal.





Under the guidance of interest in learning, to get twice the result with half the effort, Frans is a good example. As a beginner, if you learn with purpose and need, you will make rapid progress. Computer programming itself is a hands-on project. The more you do, the faster and better you learn. Whether or not Python becomes an gaokao program, the language is a source of great fun for learners.


– the –


Udacity

ID: youdaxue


What are Silicon Valley engineers learning? How to stay competitive in the workplace?

Watch Yoda, founded by Sebastian Thrun, the father of Google’s self-driving car

Let you follow the big guy, master machine learning, unmanned car development and other black technology!



Reply to “Learning Materials”

Get the Big Data Job Search Guide from Silicon Valley


@everyone, life is short. I use Python. Enrollment is open for the Introductory Python foundation Nano degree from Silicon Valley.

Join now for free auditions