All programmers should read at least ten papers twice.

Source: Internet
Author: User

Completely reprinted

   Reposted from instructor Liu Jiang's blog, "All programmers should read at least ten papers twice." I have not explained much about the importance of reading the paper. In fact, I cannot explain it clearly. But I can be sure that the paper makes me feel the beauty of technology. Of course, we don't have to read "cutting-edge" content, but some classical papers cannot be missed.

Today (Oh, it should have been yesterday) Turing held an Ajax summit in Beijing, unprecedented. (Sort out the meeting details next week and paste them here .) Zhao dongwei from Erlang programming said the importance of reading the paper. I also mentioned that many famous scholars will talk about the most classic and important papers in their own fields.

Coincidentally, I saw the article "10 papers every programmer shocould read (at least twice)" from Reddit.ArticleOpen the link and check that it was written by Michael feathers, author of our book "The Art of code modification. His book is called "one of the most influential computer books in the past decade", but it is not enough in China. Why?

Let's get down to the truth and see which 10 papers have entered the eyes of Master feathers:

    1. On the criteria to be used in Decomposing systems into modules-David parnas
    2. A Note on Distributed Computing-Jim Waldo, Geoff Wyant, Ann wollrath, Sam Kendall
    3. The next 700 programming languages ages-P. J. landin
    4. Can programming be liberated from the Von norann style? -John Backus
    5. Reflections on trusting trust-Ken Thompson
    6. LISP: Good news, bad news, how to win big-Richard Gabriel
    7. An Experimental Evaluation of the assumption of independence in multiversion programming-John Knight and Nancy Leveson
    8. Arguments and results-James Noble
    9. A laboratory for teaching object-oriented thinking-Kent Beck, Ward cunnheim
    10. Programming as an experience: the inspiration for self-David Ungar, Randall B. Smith

The author of this article is Daniel ruyun, The Tuling Award winner, and fellow of IEEE and ACM. Of course, there are also practitioners like Beck and cunnhan (I have never heard of it? Ten days. XP, design patterns, refactoring, JUnit, And wiki are all developed by them .)

Feathers's article also contains summaries of these papers. I will translate them all at a time.

Some links here cannot be accessed directly, because they are all academic and magazine articles and are not open. Is that because of this, Reddit's hottest Article turned into the http://portal.acm.org shocould be free?

Feathers is clearly a hot topic on the Internet over the past few days. Another copyright book, SOA patterns (Manning, 2009) inspired by Arnon rotem-Gal-Oz, he wrote: "All architects should read at least ten papers twice ":

1. the Byzantine generals problem (1982) by Leslie Lamport, Robert Shostak and Marshall pease
2. Go to statements considered harmfull (1968)-by edsger W. Dijkstra
3. A note on Distributed Computing (1994)-by Samuel C. Kendall, Jim Waldo, Ann wollrath and Geoff Wyant
4. big ball of mud (1999)-Brian Foote And Joseph Yoder
5. No silver bullet essence and accidents of Software Engineering (1987)-Frederick P. Brooks
6. The open closed principle (1996)-Robert C. Martin (Uncle Bob)
7. IEEE1471-2000 a recommended practice for each tural description of software intensive systems (2000)
8. Harvest, yield, and scalable Tolerant Systems (1999) Armando Fox, Eric A. Brewer
9. An introduction to software architecture (1993)-David Garlan and Mary Shaw
10. Who needs an impact ect? (2003) Martin Fowler

Have you noticed that feathers also recommends 3rd of them.

What's more, Uncle Robert Martin, familiar to all of us, is [author of Turing, author of Agile Software Development (C #). What are you doing. net has not been read? Ten days.] Therefore, I wrote a blog. In the past, a classmate David said a few unreliable words on feathers's blog, which angered Uncle Bob, who had always had a good temper. David said, "Why don't you just generate a PDF file? If these articles are really important, should they be read for free? Look at your breath, it's really unpleasant. Come on ." To be honest, this tone makes me feel like a compatriot ...... Waterfall Khan.

Uncle Bob's reply is thought-provoking. He said, do you know how important this article and the paper mentioned above are? Feathers has read hundreds of papers and introduced the best 10 of them to you!People put the bricks in front of you, but you said it was too heavy.Stupid, stupid!

He went on to say, "Are we technical staff who are self-reliant and responsible for our own profession, or are we expecting our parents to wipe their ass? You, not others, are responsible for your own profession. Your boss is not responsible for this. Improving your career should not count on the boss. You cannot expect the boss to buy books for you (if they do, but they are not their obligation ). The boss doesn't buy it. You can buy it yourself! The boss has no responsibility to teach you how to learn new languages. It would be nice if they could send you training, but if they don't, you have to learn it by yourself!

"I am very worried that our welfare culture has created a large number of people who like to cry.ProgramThey think it is unfair to spend money on copyrighted articles. (What? I have to pay? That's the boss's business! It's my teacher's business! That's Michael feathers! If they want me to become a good programmer, don't expect me to pay for those articles or search for articles in Google. They 'd better come to my office lattice, nine o'clock A.M. AM to AM. I will show my hair and read the article to me !)

"Remember, this world does not owe you. The boss does not owe you either. Michael feathers owes you nothing ."

(10 minutes of meditation ......)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.