Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add part of english version of start.md #199

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions en/Start.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# 开始

<!-- toc -->

## Serveral main ways learning software development

### myth of ten thousand hours

Recently I discussed the topic about ten thousand on the Internet. There is a book called outliers giving the point that there are no sheer genius in the world. Over ten thousand training are also necessary to genius. Everyone is possible to be a top-level expert. You can read the well-known article《[怎样练习一万小时](https://www.geekonomics10000.com/519)》for the specifics.

On the basis of this theory, one put forward the concept that "program training for ten thousand hours". It seems that ordinary person can become the master in the program field after over ten thousand hours training. However, this theory is indeed a pseudo-theory based on the subject of Statistics.

Point one is the range. How to define the size of the field. Programming is a large range with Compiler and Database programming as the two differnt parts. If one focus on the development of compiler in ten thousand hours, they probably know nothing about database programming. Here is the question, are they the masters in programming field? When facing new object-oriented scripting language, how to judge the level of person who focus on the assembler language programming.

Point two is the train. In the correlation of ten thousand hours learning, it refers to lots of fields expecting repeatedly practice such as dancing and music. Think about that, if we program filed really needs this kind of practice aiming at improve the familiarity? Of course, increasing typing speed is indeed helpful in coding. But can this kind of practice improve our ability of programming? It's difficult to disuss the standard of ten thousand hour program training.

The last point the update of knowledge. In such a field where new noun, new technology are emerging everyday. Can one master who used to practice for ten thousand hours still be a master after three years away from new knowledge? I doubt it.

In short, If you accept the concept of ten thousand hours in a hurry and feel your blood boiled with indignation, it's usually the symptoms of "intoxication by motivational books".