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
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. The Lounge
  3. Have you read these?

Have you read these?

Scheduled Pinned Locked Moved The Lounge
comdesignalgorithmsbusinesscollaboration
54 Posts 25 Posters 3 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.
  • I Ian Shlasko

    Don't discount the message... Change the message... Instead of "Here's a great new design pattern that will make everything work better!" it should be "Here's another possible way to design your system, and here's when it should be used: ..." Unfortunately, that wouldn't sell as many books, so it'll never happen.

    Proud to have finally moved to the A-Ark. Which one are you in?
    Author of the Guardians Saga (Sci-Fi/Fantasy novels)

    N Offline
    N Offline
    Not Active
    wrote on last edited by
    #37

    Ian Shlasko wrote:

    "Here's a great new design pattern that will make everything work better!"

    I can't recall any book making such a claim. Could be interrupting it as such because of your bias?

    Ian Shlasko wrote:

    "Here's another possible way to design your system, and here's when it should be used: ..."

    Curious because this is what I've seen in the Design Patterns books I've looked at.


    I know the language. I've read a book. - _Madmatt

    I 1 Reply Last reply
    0
    • N Not Active

      John C wrote:

      the school of hard knocks can't be substituted

      but it can certainly be augmented with addition learning from other sources and other subjects. IMO that is the mark of a professional, always trying to improve oneself beyond the narrow skills of ones immediate position.


      I know the language. I've read a book. - _Madmatt

      M Offline
      M Offline
      Member 96
      wrote on last edited by
      #38

      Could not agree more, but books are not the way to go these days.


      There is no failure only feedback

      P 1 Reply Last reply
      0
      • N Not Active

        Ian Shlasko wrote:

        "Here's a great new design pattern that will make everything work better!"

        I can't recall any book making such a claim. Could be interrupting it as such because of your bias?

        Ian Shlasko wrote:

        "Here's another possible way to design your system, and here's when it should be used: ..."

        Curious because this is what I've seen in the Design Patterns books I've looked at.


        I know the language. I've read a book. - _Madmatt

        I Offline
        I Offline
        Ian Shlasko
        wrote on last edited by
        #39

        Mark Nischalke wrote:

        I can't recall any book making such a claim. Could be interrupting it as such because of your bias?

        I don't generally read those kinds of books (I prefer brief Internet articles, such as CP), so I'm making assumptions based on my experiences dealing with people who HAVE read those kinds of books.

        Mark Nischalke wrote:

        Curious because this is what I've seen in the Design Patterns books I've looked at.

        Then it seems people are getting the wrong idea from it.

        Proud to have finally moved to the A-Ark. Which one are you in?
        Author of the Guardians Saga (Sci-Fi/Fantasy novels)

        N 1 Reply Last reply
        0
        • I Ian Shlasko

          Mark Nischalke wrote:

          I can't recall any book making such a claim. Could be interrupting it as such because of your bias?

          I don't generally read those kinds of books (I prefer brief Internet articles, such as CP), so I'm making assumptions based on my experiences dealing with people who HAVE read those kinds of books.

          Mark Nischalke wrote:

          Curious because this is what I've seen in the Design Patterns books I've looked at.

          Then it seems people are getting the wrong idea from it.

          Proud to have finally moved to the A-Ark. Which one are you in?
          Author of the Guardians Saga (Sci-Fi/Fantasy novels)

          N Offline
          N Offline
          Not Active
          wrote on last edited by
          #40

          How the hell can you even make any comments on this subject :mad: You are truely an ignorant person and more a danger to the profession, and general population of the world, than any books you have not read. Try opening your mind and forming your own opinion. IMO you have no credibility here.


          I know the language. I've read a book. - _Madmatt

          1 Reply Last reply
          0
          • N Not Active

            Ennis Ray Lynch, Jr. wrote:

            rather than apply critical thinking he or she will blindly apply patterns even if they are inappropriate

            Is this fault of the book or its authors though? This can be said for just about anything. VB allowed low caliber developers to think they were good. There are great books on database normalization but when it is taken to extremes in can decrease performance. The trick is to understand the concepts and know when, and when not, to use them. Don't shoot the messenger.


            I know the language. I've read a book. - _Madmatt

            J Offline
            J Offline
            Jeff Connelly
            wrote on last edited by
            #41

            Mark Nischalke wrote:

            Is this fault of the book or its authors though?

            Guns don't kill people, people do. Having said that, I view the GoF book kind of like some people view an album like Pet Sounds by the Beach Boys. Important? Yes. Influential? Yes. Does anyone actually listen to it? No. In other words, if you don't have the book I wouldn't bother buying it. Get a newer book that is more applicable to what you're doing, or search forums and the web, but in any case you can leverage patterns without reading that book.

            E 1 Reply Last reply
            0
            • E Ennis Ray Lynch Jr

              It doesn't matter whose fault it is, the premise in the original post was that the book benefits our profession. It does not. Although, I have not read it, "The Mythical Man-Month" has been almost universally praised as being a benefit to our profession.

              Need custom software developed? I do custom programming based primarily on MS tools with an emphasis on C# development and consulting. I also do Android Programming as I find it a refreshing break from the MS. "And they, since they Were not the one dead, turned to their affairs" -- Robert Frost

              J Offline
              J Offline
              Jeff Connelly
              wrote on last edited by
              #42

              Ennis Ray Lynch, Jr. wrote:

              It doesn't matter whose fault it is, the premise in the original post was that the book benefits our profession. It does not.

              You're just off a little, that's all. It's like saying alcohol has hurt our society, when in fact it has brought a lot of enjoyment and health when used correctly. A book that is technically correct can't hurt anything. You might want to say that misapplication or overapplication of the concepts in the book has hurt the profession. The book itself has helped our profession.

              1 Reply Last reply
              0
              • N Not Active

                I don't know whether to laugh at the ridiculousness of this statement or cry at what is happening to our industry that produces such thoughts


                I know the language. I've read a book. - _Madmatt

                J Offline
                J Offline
                Jeff Connelly
                wrote on last edited by
                #43

                Well he might have a point about some not-so-great C++ code. But basically, the book is a catalog of preexisting solutions to software problems. So it's kind of hard to call it "merely" that, since that's what it claims to be, and that's a valuable thing. If it gets misapplied, that's the programmer's fault, not the book's.

                1 Reply Last reply
                0
                • M Member 96

                  Never heard of them and never read them and I absolutely disagree. I consider myself quite professional having made a living on apps I designed and coded in a highly competitive market for well over a decade now. Books are strictly 20th century, anyone can learn anything they need online now and the school of hard knocks can't be substituted by any book or course of study.


                  There is no failure only feedback

                  J Offline
                  J Offline
                  Jeff Connelly
                  wrote on last edited by
                  #44

                  John C wrote:

                  the school of hard knocks can't be substituted by any book or course of study.

                  Comments like this are so inane. None of the elements of a lifetime of learning can be substituted by any of the other elements. Sometimes experience is helpful, sometimes it's not. Try learning to play blackjack in a casino, for example, instead of from a book and we'll see how bad of a blackjack player you are. Considering the fact that books are "online" now makes your comment about books being "20th century" quite.... weird.

                  John C wrote:

                  anyone can learn anything they need online now and the school of hard knocks can't be substituted by any book or course of study

                  Well which is it? Can you learn anything you need online or not? I thought "any course of study" would include "learning anything they need online", but then that can't be substituted for the school of hard knocks? If you're only learning by "hard knocks", you're wasting a lot of time.

                  M 1 Reply Last reply
                  0
                  • M Member 96

                    Could not agree more, but books are not the way to go these days.


                    There is no failure only feedback

                    P Offline
                    P Offline
                    pdohara
                    wrote on last edited by
                    #45

                    Books are good for grasping a paradigm shift. It is difficult to make the jump from procedural to Object Oriented thinking simply by reading articles. One needs to stay with it longer than that. One needs to understand many aspects of the new paradigm a little so they can understand the whole. I agree that for many people the Internet provide ample source material to hone their skills. I find that it is unwise to discount any tool that is available. Best to understand the advantages of the tool and use what is appropriate.

                    Tanks for your support
                    Pat O
                    Blog

                    _ _ _
                    /*\== /*\== /*\==
                    <ooo> <ooo> <ooo>

                    A 1 Reply Last reply
                    0
                    • P pdohara

                      Books are good for grasping a paradigm shift. It is difficult to make the jump from procedural to Object Oriented thinking simply by reading articles. One needs to stay with it longer than that. One needs to understand many aspects of the new paradigm a little so they can understand the whole. I agree that for many people the Internet provide ample source material to hone their skills. I find that it is unwise to discount any tool that is available. Best to understand the advantages of the tool and use what is appropriate.

                      Tanks for your support
                      Pat O
                      Blog

                      _ _ _
                      /*\== /*\== /*\==
                      <ooo> <ooo> <ooo>

                      A Offline
                      A Offline
                      Alexander DiMauro
                      wrote on last edited by
                      #46

                      pdohara wrote:

                      Books are good for grasping a paradigm shift.

                      Yes, I agree. I'm currently trying to make the transition from coder to architect, and books have been most helpful. Even some more recent ones: Architecting Applications for the Enterprise[^] by Dino Esposito Professional ASP.NET Design Patterns[^] by Scott Millett And, the DOFactory Design Pattern and Architectural Guidance software: DOFactory[^] I've found that the above references not only describe design patterns, but also when/where (and when/where NOT) to use them. Especially the last two even give full, real-world example applications, not just demo code. But after the books, I do a lot of Googling with Google, and Googling with Bing.

                      1 Reply Last reply
                      0
                      • J Jeff Connelly

                        John C wrote:

                        the school of hard knocks can't be substituted by any book or course of study.

                        Comments like this are so inane. None of the elements of a lifetime of learning can be substituted by any of the other elements. Sometimes experience is helpful, sometimes it's not. Try learning to play blackjack in a casino, for example, instead of from a book and we'll see how bad of a blackjack player you are. Considering the fact that books are "online" now makes your comment about books being "20th century" quite.... weird.

                        John C wrote:

                        anyone can learn anything they need online now and the school of hard knocks can't be substituted by any book or course of study

                        Well which is it? Can you learn anything you need online or not? I thought "any course of study" would include "learning anything they need online", but then that can't be substituted for the school of hard knocks? If you're only learning by "hard knocks", you're wasting a lot of time.

                        M Offline
                        M Offline
                        Member 96
                        wrote on last edited by
                        #47

                        Jeff Connelly wrote:

                        Try learning to play blackjack in a casino, for example, instead of from a book and we'll see how bad of a blackjack player you are.

                        Speaking of inane. :) Writing a book are you? Get thee hence troll. :)


                        There is no failure only feedback

                        J 1 Reply Last reply
                        0
                        • M Member 96

                          Jeff Connelly wrote:

                          Try learning to play blackjack in a casino, for example, instead of from a book and we'll see how bad of a blackjack player you are.

                          Speaking of inane. :) Writing a book are you? Get thee hence troll. :)


                          There is no failure only feedback

                          J Offline
                          J Offline
                          Jeff Connelly
                          wrote on last edited by
                          #48

                          John C wrote:

                          Try learning to play blackjack in a casino, for example, instead of from a book and we'll see how bad of a blackjack player you are. Speaking of inane.

                          What's your point? There are some things in life where experience is a terrible teacher, and that's a perfect example of one. It's basically a math problem that can be solved by computers, but generally not by people. No, I'm not writing a book. Frankly your reply makes no sense.

                          M 1 Reply Last reply
                          0
                          • J Jeff Connelly

                            John C wrote:

                            Try learning to play blackjack in a casino, for example, instead of from a book and we'll see how bad of a blackjack player you are. Speaking of inane.

                            What's your point? There are some things in life where experience is a terrible teacher, and that's a perfect example of one. It's basically a math problem that can be solved by computers, but generally not by people. No, I'm not writing a book. Frankly your reply makes no sense.

                            M Offline
                            M Offline
                            Member 96
                            wrote on last edited by
                            #49

                            :laugh: Happy new year!


                            There is no failure only feedback

                            1 Reply Last reply
                            0
                            • E Ennis Ray Lynch Jr

                              Having read Design Patterns by the GOF I will have to say that it is not essential to our profession and has probably done more harm than good.

                              Need custom software developed? I do custom programming based primarily on MS tools with an emphasis on C# development and consulting. I also do Android Programming as I find it a refreshing break from the MS. "And they, since they Were not the one dead, turned to their affairs" -- Robert Frost

                              S Offline
                              S Offline
                              SeattleC
                              wrote on last edited by
                              #50

                              Design Patters is the only interesting thing to happen in programming language design since Object Orientation. It is an attempt to capture concepts at a higher level than a built-in function to make them easily usable. Yes, it's true that most patterns are reasonably obvious to an experienced developer (one who has worked them out from first principles). You can also code doubly linked lists from scratch every time instead of using std::list<>. But only a moron does, because it's not worth the debugging time. You'll half-remember something or make a typing mistake or whatever. The fact that patterns didn't set your personal world on fire doesn't mean they aren't important. Maybe it means we need a more concise way to describe them. Maybe it means we didn't capture enough patterns. Maybe it means there needs to be a sample implementation of each one. The fact that they can even be applied without thinking makes them better than flailing around for three weeks to reinvent something that your peers already know how to do. And some patterns (visitor, interpreter) are actually not so obvious. Interpreter in particular is something that seems hard until you hear it described, at which time it doesn't seem so daunting anymore, and you try it. I like patterns. I wish there was more really new stuff happening in the programming world. Java is a teenager. C++ is old enough to vote, and Object Oriented design is retirement age (Think SIMULA-67, not Smalltalk).

                              1 Reply Last reply
                              0
                              • J Jeff Connelly

                                Mark Nischalke wrote:

                                Is this fault of the book or its authors though?

                                Guns don't kill people, people do. Having said that, I view the GoF book kind of like some people view an album like Pet Sounds by the Beach Boys. Important? Yes. Influential? Yes. Does anyone actually listen to it? No. In other words, if you don't have the book I wouldn't bother buying it. Get a newer book that is more applicable to what you're doing, or search forums and the web, but in any case you can leverage patterns without reading that book.

                                E Offline
                                E Offline
                                ely_bob
                                wrote on last edited by
                                #51

                                Jeff Connelly wrote:

                                In other words, if you don't have the book I wouldn't bother buying it.

                                It is usefull as something to occupy your time on the plane... until you get bored .. which usually happens before you take off..... :laugh: But seriously, GOF is a good book to read at least once, but best read by someone who has been programming for at least a couple of years. It gives a conversational framework for interacting with people who are "pattern happy" as well as rounding out the self taught programmer as per recognizing that what they have been doing has been done before... I purchased the book, and have been leisurely reading it mostly to appease my thirst for fancy word dropping in the presence of other more senior programmers who seem, at least at my company, to like to use large words to make themselves seem fancy. therefore I've implemented an interpreter pattern using strategies, observers, adorners and factories to develop my managed Data Driven scripting language. (and once i get a nice editor i might post it's code and a tutorial if i get the time) :doh:

                                I'd blame it on the Brain farts.. But let's be honest, it really is more like a Methane factory between my ears some days then it is anything else...
                                -----
                                "The conversations he was having with himself were becoming ominous."-.. On the radio...

                                J 1 Reply Last reply
                                0
                                • E Ennis Ray Lynch Jr

                                  Any developer with any profound experience will immediately recognize most of their book to be putting names to concepts they have been using for years. Any other developer will read the book and think, wow, I should be doing this and then rather than apply critical thinking he or she will blindly apply patterns even if they are inappropriate ... including the copy-paste pattern. Managers will read the book, mandate patterns for everything, fire the Architect for suggesting that sometimes a pattern is not right for the job, hire 3 Indians to replace him who only say yes, get promoted for lowering payroll and then not be responsible for the project's failure. Ironically, what I have written happens so much it should have a pattern named after it.

                                  Need custom software developed? I do custom programming based primarily on MS tools with an emphasis on C# development and consulting. I also do Android Programming as I find it a refreshing break from the MS. "And they, since they Were not the one dead, turned to their affairs" -- Robert Frost

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

                                  Ennis Ray Lynch, Jr. wrote:

                                  Any developer with any profound experience will immediately recognize most of their book to be putting names to concepts they have been using for years

                                  Exactly, I noticed this not only from books, but from classes in college. I had sometimes missed some exam questions because I didn't know the "name" of a particular pattern I've always used but never thought there was a name for it.

                                  1 Reply Last reply
                                  0
                                  • E ely_bob

                                    Jeff Connelly wrote:

                                    In other words, if you don't have the book I wouldn't bother buying it.

                                    It is usefull as something to occupy your time on the plane... until you get bored .. which usually happens before you take off..... :laugh: But seriously, GOF is a good book to read at least once, but best read by someone who has been programming for at least a couple of years. It gives a conversational framework for interacting with people who are "pattern happy" as well as rounding out the self taught programmer as per recognizing that what they have been doing has been done before... I purchased the book, and have been leisurely reading it mostly to appease my thirst for fancy word dropping in the presence of other more senior programmers who seem, at least at my company, to like to use large words to make themselves seem fancy. therefore I've implemented an interpreter pattern using strategies, observers, adorners and factories to develop my managed Data Driven scripting language. (and once i get a nice editor i might post it's code and a tutorial if i get the time) :doh:

                                    I'd blame it on the Brain farts.. But let's be honest, it really is more like a Methane factory between my ears some days then it is anything else...
                                    -----
                                    "The conversations he was having with himself were becoming ominous."-.. On the radio...

                                    J Offline
                                    J Offline
                                    Jeff Connelly
                                    wrote on last edited by
                                    #53

                                    ely_bob wrote:

                                    But seriously, GOF is a good book to read at least once, but best read by someone who has been programming for at least a couple of years. It gives a conversational framework for interacting with people who are "pattern happy" as well as rounding out the self taught programmer as per recognizing that what they have been doing has been done before...

                                    I agree that's worthwhile, but I guess what I meant was that even if that is your goal, there are now better books out there for that purpose. I guess it's kind of similar to what I'd recommend for someone learning to program C++. The first book I'd recommend wouldn't be Stroustrup's C++ reference, even though that's the "bible", if you see what I mean. It's easier to get started with other books, even though a serious C++ programmer will want it.

                                    1 Reply Last reply
                                    0
                                    • E Ennis Ray Lynch Jr

                                      Having read Design Patterns by the GOF I will have to say that it is not essential to our profession and has probably done more harm than good.

                                      Need custom software developed? I do custom programming based primarily on MS tools with an emphasis on C# development and consulting. I also do Android Programming as I find it a refreshing break from the MS. "And they, since they Were not the one dead, turned to their affairs" -- Robert Frost

                                      H Offline
                                      H Offline
                                      H Brydon
                                      wrote on last edited by
                                      #54

                                      I am also a non-fan of the GoF Design Patterns book. Here are my reasons: - I am mainly a C++ developer and the book is primarily aimed at Java programmers. The examples are Java and some of the constructs and concepts don't fly in standard C++ (delegates, ...). Some of the examples are hard to translate. Some of the implementations require casting in C++ which I consider a bad idea. My personal belief is that there are some patterns which are universal over all languages, and some which are language specific. Some of the patterns in GoF are java specific. - 23 design patterns are described that are admittedly of some interest. The book does not claim these to be canonical, although people in the industry seem to accept them as such. There are many other design patterns that exist, mostly without names. Many people that hear the word "pattern" to describe something will not accept it if is not one of the GoF 23 patterns. [This is not so much a problem with the book but with what people do with it.] - In light of the previous point, the GoF book broke new ground, but I don't think it deserved the attention or hero worship that it has received. IMHO it has mixed value but it should not be a top 10 book of the decade. Having said that, there is some good that has arisen from it: - Some standard terminology has arisen to describe some previously existing processes. As others have stated previously, some of these are techniques people have used for years, and GoF put a name on them... I see some value in having a "handle" in our programming lexicon to describe something. We have seen this over the years in describing entities such as "algorithms", "patterns", "refactoring" and others. If you are having a discussion about some code you have written, there is value in using terms such as "bubble sort", "extract method", "visitor pattern", "embarrasingly parallel". - The book was somewhat groundbreaking but now somewhat obsolete. I don't personally find the patterns themselves to be groundbreaking but the fact that somebody took the time to put names on existing processes. I'd like to see the patterns expanded further, and quite frankly, I am amazed that this has not already happened. [CP might be a good forum for this.]

                                      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