Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. 100 best books on Software Engineering

100 best books on Software Engineering

Scheduled Pinned Locked Moved The Lounge
businesscomdesignquestion
81 Posts 35 Posters 1 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Diego Moita

    Chris Losinger wrote:

    that's actually the classic book on cryptography. it's the default answer when anyone asks "what should i read to learn more about crypto?"

    So you hate books about programming but you actually read them. :-D Well, at least that's coherent. It would be too bad if you hated without reading them.


    Of all forms of sexual aberration, the most unnatural is abstinence.

    C Offline
    C Offline
    Chris Losinger
    wrote on last edited by
    #23

    well sure, i've read a few: mostly on specific domains (crypto, image processing, etc.). and there's not really a lot of programming in Applid Crypto. it's mostly math, algorithms and protocols. ex., he tells you how various public key verification protocols work, but not how to implement them in any kind of language. what i hate are books on programming: best practices, MS's paradigm of the month, or APIs.

    image processing toolkits | batch image processing

    1 Reply Last reply
    0
    • T Todd Smith

      Applied Cryptography: Protocols, Algorithms, and Source Code (2nd Edition) as #5? How many people even needs to know that stuff? I don't think a book released in 1997 with only 13 Amazon reviews should show up in the top 100 :\

      Todd Smith

      L Offline
      L Offline
      Luis Alonso Ramos
      wrote on last edited by
      #24

      I bought the first edition around 1994. I never read it in its entirely, but a I learned a few things about DES and IDEA. I just bought it because it was a subject that interested me at the time, but most of what I learned I have since forgotten. But that is the definite guide on cryptography, no matter who you ask :)

      Luis Alonso Ramos Intelectix Chihuahua, Mexico My Blog!

      1 Reply Last reply
      0
      • J Joe Woodbury

        Diego Moita wrote:

        Does reading exclude experience?

        My point is that reading is not a substitute for experience, yet too many people think it is. I've also found that in general, too much reading of these books can be very detrimental to engineering practice. Instead of using their brain, the over-read sees solutions only in terms of what the [latest] book(s) described. It doesn't help that many of the books give contradictory or even entirely stupid advice. Too many times in my career, I've been in a situation where someone read a book and insists on taking it as the TRUTH and applying it to the situation we're in. Hell, even I did that before I learned better. (In one relatively recent project, this turned into a nightmare and ended up producing one of the worse software products to ever see the light of day, though after most the team, including me, left [not always by our own choice--if you even questioned THE TRUTH, they laid you off].) PS. Please don't misunderstand; some books are excellent or even essential. These are mostly technical books. Richter's book on Advanced Win32 Programming is the best book on the subject (and the best Win32 book ever written) and explains I/O Completion ports in a way Microsoft documentation doesn't. However, I strongly distrust any books on methodology.

        Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

        S Offline
        S Offline
        Sunny Ahuwanya
        wrote on last edited by
        #25

        I agree. I've seen developers who know "ALL" the design patterns but can't write methods properly.

        Sunny Ahuwanya "The beauty of the desert is that it hides a well somewhere" -- Antoine de Saint Exupéry

        F 1 Reply Last reply
        0
        • C Chris Losinger

          I don't think a book released in 1997 with only 13 Amazon reviews should show up in the top 100

          that's actually the classic book on cryptography. it's the default answer when anyone asks "what should i read to learn more about crypto?"

          image processing toolkits | batch image processing

          C Offline
          C Offline
          CKnig
          wrote on last edited by
          #26

          Well it's the reference - but to actually read it from cover to cover is a pain - but it's very usefull to look up some protocolls. The math in there isn't that great (of course if you really want to unterstand the math you migth wish to get some book that concentrates more on this).

          1 Reply Last reply
          0
          • D Diego Moita

            Compiled from Amazon reviews/rankings, Google hits and Jolt awards[^]. Personal impressions: 1) So many classics left out because they're too specific about one technology (Stevens on Unix programming, Petzold on Windows programming, K&R, etc...). 2) How many of these books do people actually read? Did anyone read all of Knuth's "Art of Computer Programming"? 3) Lots of injustices. "The Pragmatic Programmer" really deserves a better rating. "Head First Design Patterns" doesn't deserve to be 2nd. 4) Funny how many Agile-specific titles are in the list (including related like SCRUM). Specific for non-Agile I only saw on RUP. 5) Steve McConnell, Martin Fowler and Alistair Cockburn are the masters.


            Of all forms of sexual aberration, the most unnatural is abstinence.

            D Offline
            D Offline
            Danillo
            wrote on last edited by
            #27

            Reading is theory, experience is practice In my opinion reading gives you a base knowledge that somehow is consistent on the specific issue. But in practice it always is a little different. Normally you take the good things from a book and adapt it to the real world. What is never told in the technical books is the view on money, and that's what it's finally all about, at least in business. from sunny snowy switzerland Dani

            1 Reply Last reply
            0
            • D Diego Moita

              Compiled from Amazon reviews/rankings, Google hits and Jolt awards[^]. Personal impressions: 1) So many classics left out because they're too specific about one technology (Stevens on Unix programming, Petzold on Windows programming, K&R, etc...). 2) How many of these books do people actually read? Did anyone read all of Knuth's "Art of Computer Programming"? 3) Lots of injustices. "The Pragmatic Programmer" really deserves a better rating. "Head First Design Patterns" doesn't deserve to be 2nd. 4) Funny how many Agile-specific titles are in the list (including related like SCRUM). Specific for non-Agile I only saw on RUP. 5) Steve McConnell, Martin Fowler and Alistair Cockburn are the masters.


              Of all forms of sexual aberration, the most unnatural is abstinence.

              J Offline
              J Offline
              Jonas Hammarberg
              wrote on last edited by
              #28

              Proper name of the list should be "100 best books on Software Engineering of the best selling books" And I think this does explain the high ratio of Agilish books... Having read (and owning) quite a few of these books, I still don't understand why I fail to proper appreciate agile methods... or that might be the very reason ;)

              L 1 Reply Last reply
              0
              • S Sunny Ahuwanya

                I agree. I've seen developers who know "ALL" the design patterns but can't write methods properly.

                Sunny Ahuwanya "The beauty of the desert is that it hides a well somewhere" -- Antoine de Saint Exupéry

                F Offline
                F Offline
                fboule
                wrote on last edited by
                #29

                The GoF is just a line of conduct. The danger is that programmers tend not to think their design anymore, to think their application is perfect because they use Design Patterns only. From my computer science education, I learnt object-oriented programming concepts, but I never had an example on how to use it cleverly. Design Patterns are these missing examples to me - and only examples.

                1 Reply Last reply
                0
                • C Chris Losinger

                  i hate books about programming.

                  image processing toolkits | batch image processing

                  H Offline
                  H Offline
                  Hamed Musavi
                  wrote on last edited by
                  #30

                  Chris Losinger wrote:

                  i hate books about programming

                  Why? Being lengthy and time consuming?

                  "In the end it's a little boy expressing himself."    Yanni

                  C O 2 Replies Last reply
                  0
                  • J Jonas Hammarberg

                    Proper name of the list should be "100 best books on Software Engineering of the best selling books" And I think this does explain the high ratio of Agilish books... Having read (and owning) quite a few of these books, I still don't understand why I fail to proper appreciate agile methods... or that might be the very reason ;)

                    L Offline
                    L Offline
                    Lost User
                    wrote on last edited by
                    #31

                    Martin Fowler, Jon Bently, Frederick P. Brooks, and Eric Gamma titles worth a look. Most of the rest are pretty hit and miss. Donald Knuth is a legend, but I agree with the earlier comments, to me he is perhaps not a great popular writer, his books are pretty intimidating. I preferred reading Robert Sedgewicks stuff, he was a student of Knuth. I've read some of the Agile stuff, it has its place but it occupies far too much of the top 100 as stated. A lot of the Agile, UML, SOA and patterns books are in reality pretty average books. No K&R, Bjarne Stroustrup C++, or Penfold get serious ? Never been a fan of Steve McConnell books personally, so I can't see why he gets top spot or four books in top 100. The list seems to take a publishers view of 'Software Engineering' titles, its a pretty lazy list probably generated by a computer ? A few gems in there though...

                    J C 2 Replies Last reply
                    0
                    • C Chris Losinger

                      i hate books about programming.

                      image processing toolkits | batch image processing

                      F Offline
                      F Offline
                      Fabio Franco
                      wrote on last edited by
                      #32

                      Uhhhh, are you in the right community?

                      C 1 Reply Last reply
                      0
                      • H Hamed Musavi

                        Chris Losinger wrote:

                        i hate books about programming

                        Why? Being lengthy and time consuming?

                        "In the end it's a little boy expressing himself."    Yanni

                        C Offline
                        C Offline
                        Chris Losinger
                        wrote on last edited by
                        #33

                        pedantic, boring, instantly obsolete, full of useless examples.

                        image processing toolkits | batch image processing

                        H D 2 Replies Last reply
                        0
                        • F Fabio Franco

                          Uhhhh, are you in the right community?

                          C Offline
                          C Offline
                          Chris Losinger
                          wrote on last edited by
                          #34

                          i'm a programmer, not a programming book reader.

                          image processing toolkits | batch image processing

                          F R 2 Replies Last reply
                          0
                          • C Chris Losinger

                            i'm a programmer, not a programming book reader.

                            image processing toolkits | batch image processing

                            F Offline
                            F Offline
                            Fabio Franco
                            wrote on last edited by
                            #35

                            Alright then.... So how do you learn new programming things without reading?

                            C 1 Reply Last reply
                            0
                            • C Chris Losinger

                              pedantic, boring, instantly obsolete, full of useless examples.

                              image processing toolkits | batch image processing

                              H Offline
                              H Offline
                              Hamed Musavi
                              wrote on last edited by
                              #36

                              Chris Losinger wrote:

                              pedantic, boring, instantly obsolete, full of useless examples.

                              Boring yes, obsolete depends to the context, pedantic and full of useless examples; not all of them I believe. I have recently been reading some books on software engineering, OO design and design patterns particularly, and I think I can create better softwares now :rolleyes: . I also believe that what I've read can't be conveyed easily in any other form. The amount of information is a lot. I can remember I started learning computer and programming by reading books as well. May I ask what other sort of learning medium or source do you use or prefer to use instead?

                              "In the end it's a little boy expressing himself."    Yanni

                              C 1 Reply Last reply
                              0
                              • F Fabio Franco

                                Alright then.... So how do you learn new programming things without reading?

                                C Offline
                                C Offline
                                Chris Losinger
                                wrote on last edited by
                                #37

                                employers sometimes pay for classes. and the internet is full of code samples.

                                image processing toolkits | batch image processing

                                1 Reply Last reply
                                0
                                • H Hamed Musavi

                                  Chris Losinger wrote:

                                  pedantic, boring, instantly obsolete, full of useless examples.

                                  Boring yes, obsolete depends to the context, pedantic and full of useless examples; not all of them I believe. I have recently been reading some books on software engineering, OO design and design patterns particularly, and I think I can create better softwares now :rolleyes: . I also believe that what I've read can't be conveyed easily in any other form. The amount of information is a lot. I can remember I started learning computer and programming by reading books as well. May I ask what other sort of learning medium or source do you use or prefer to use instead?

                                  "In the end it's a little boy expressing himself."    Yanni

                                  C Offline
                                  C Offline
                                  Chris Losinger
                                  wrote on last edited by
                                  #38

                                  Hamed Mosavi wrote:

                                  May I ask what other sort of learning medium or source do you use or prefer to use instead?

                                  the internet has been useful.

                                  image processing toolkits | batch image processing

                                  H 1 Reply Last reply
                                  0
                                  • C Chris Losinger

                                    Hamed Mosavi wrote:

                                    May I ask what other sort of learning medium or source do you use or prefer to use instead?

                                    the internet has been useful.

                                    image processing toolkits | batch image processing

                                    H Offline
                                    H Offline
                                    Hamed Musavi
                                    wrote on last edited by
                                    #39

                                    Chris Losinger wrote:

                                    the internet has been useful.

                                    To find a quick answer to my questions it had been a great help to me either, but for in depth information specially for beginners I think book is the way to go.

                                    "In the end it's a little boy expressing himself."    Yanni

                                    1 Reply Last reply
                                    0
                                    • C Chris Losinger

                                      pedantic, boring, instantly obsolete, full of useless examples.

                                      image processing toolkits | batch image processing

                                      D Offline
                                      D Offline
                                      destynova
                                      wrote on last edited by
                                      #40

                                      Chris Losinger wrote:

                                      pedantic, boring, instantly obsolete, full of useless examples.

                                      Hmm, I've only found that to be the case with books on Java/C++/OO which jump straight into object-oriented abstractions in an unnatural way (e.g. the first and only book on C++ which I spent much time on; "Teach yourself C++ in 10 days" (what an absurd premise), which came with Borland C++ Builder 3 when I got it in 1998 - on day two or three, it jumped into "Limousine inherits from Car" with some horrible analogy about 'protected' attributes). After that, I just paid attention to my college notes on the web, coasted the assignments and brute-forced through two reasonably large projects (an 8086ish emulator and an AI thing) and eventually learned to hate C++ :| Before that, I had read the first "C for Dummies" book and enjoyed it immensely, although it's certainly obsolete now and very simplistic introductory material. However, I'm currently reading SICP which, while old, feels neither boring, pedantic nor obsolete, and the examples seem very fitting (as well as a little re-education in maths for me, one of my long underdeveloped skills). There's something rewarding about doing an exercise and seeing your code approximate pi or find fixed points of useful functions (perhaps especially when you've sucked at maths for ages).

                                      1 Reply Last reply
                                      0
                                      • J Joe Woodbury

                                        I'll take someone with 10 years experience writing commercial apps who hasn't read any of those books over someone with 3 years experience who has.

                                        Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                                        D Offline
                                        D Offline
                                        destynova
                                        wrote on last edited by
                                        #41

                                        Joe Woodbury wrote:

                                        I'll take someone with 10 years experience writing commercial apps who hasn't read any of those books over someone with 3 years experience who has.

                                        There is some redundancy in this statement. I think we can remove the 'reading' element from it and be clearer: "I'll take someone with 10 years experience writing commercial apps over someone with 3 years experience." Reading has nothing to do with that, and it doesn't help to build a straw-man out of "experienced programmer vs. inexperienced wannabe programmer" and cast it upon the practice of reading. Every programmer should keep reading and learning.

                                        Joe Woodbury wrote:

                                        My point is that reading is not a substitute for experience, yet too many people think it is.

                                        No, but it's an excellent complement to experience. You seem to treat it as if people either read books on programming or they program. This is not the case, except with unwise people who will surely learn the error of their ways :-D.

                                        J 1 Reply Last reply
                                        0
                                        • H Hamed Musavi

                                          Chris Losinger wrote:

                                          i hate books about programming

                                          Why? Being lengthy and time consuming?

                                          "In the end it's a little boy expressing himself."    Yanni

                                          O Offline
                                          O Offline
                                          Owen37
                                          wrote on last edited by
                                          #42

                                          I hate books ABOUT programming, too! Talk about insomnia cure ;-) Unfortunately, it's still one of the least expensive ways to learn how (the Internet notwithstanding -- getting better; not there yet).

                                          J 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups