Recently, I was reading Steve Yegg's anthology, "The Programmer's cry."
650) this.width=650; "src=" http://www.ruanyifeng.com/blogimg/asset/2016/bg2016090801.jpg "title=" "style=" border:. 3em solid RGB (224,223,204); vertical-align:middle;margin:0px;padding:0px;list-style-type:none; "/>
This is a very interesting book, it even contains a small test (original), to distinguish whether a programmer is a conservative or liberal.
Here are a total of 10 questions, each with a and B two options, please choose your answer.
Problem one: The Bug has not been repaired, can the software be launched?
(A) before the software is released, complete testing should be written, fully debugged, and all bugs should be fixed as much as possible.
(B) No matter how hard, the bug is always unavoidable, if the nature is not very serious, you can go online, according to feedback re-commissioning and repair.
Question two: is the error-prone feature supposed to be used in the program?
(A) High-level features in many languages are error-prone and dangerous and should be banned in the code. Without these features we can develop and the code will become more secure.
(B) Smart programmers have learning motivation and know how to solve problems. In order to avoid mistakes, it is totally undesirable to set up a bunch of rules.
Question three: Should the new language or grammar be limited?
(A) The number of languages that can be used in a company should be limited so that if the system is hung up in the middle of the night or on Christmas Eve, the person on duty does not need to cram for new grammar. In addition, it is also forbidden to change the syntax of the original language definition, such as strictly restricting operator overloading and meta-programming.
(B) The programmer's ability to learn is staggering, and there is no need to "protect" programmers from the new syntax, which they can naturally learn as needed.
Question four: is static checking necessary?
(A) The compiler's security checks are important, and code that cannot perform static checks is often unacceptable.
(B) The code should be short and concise, and the static Check tool may make the code stink and long.
Question five: Must the data have a format definition?
(A) The data must be in accordance with a pre-defined format. For example, a relational database must satisfy a third paradigm or uml,xml must have a dtd,nosql database must have a separate format definition (indicating all allowed keys, and corresponding value types).
(B) Strict data definitions only impede flexibility and delay the development process. A better strategy would be to write some notes, or just define a subset, or even skip it first. Because no one knows what the data might look like before a large number of user cases appear, code first is the right thing to do.
To read the full text, please click: http://click.aliyun.com/m/9462/
This article is from the "12466150" blog, please be sure to keep this source http://12476150.blog.51cto.com/12466150/1892688
How do you tell if a programmer is a conservative or a liberal?