Locked in for life?

My first real foray into world of programming was through the use of Java (I had done some Turing but that doesn’t count). Therefore I would say my initial teachings of computer science are heavily object oriented with principles in design patterns. I remember first learning of the most well known design patterns (observer, singleton etc…) and thinking to myself what a great a tool I know have at my disposal.
However did I fall into the pit trap of seeing every problem as a nail now that I have found my hammer?

Its corporations and business who want you to think in design patterns, so that they can make money. In functional style a design pattern is simply a higher order function. Everything is much much much more light weight. Design patterns are not extensible and often non composable. One you choose to use one of them you are stuck, for the rest of the life of the application. Design patterns are top-down approach and therefore they “claim” they know the “future” of the application. Since no one can predict how an application will evolve, forget about top-down design and software architects. Software arichtects means incompetence. Use bottom-up and no-patterns.

The above quote I read while looking into ideas for an undo framework for an application I am developing at work. Although I understand/comprehend the point of view I’m not sure I have been swayed. I have not written much in large scale applications but if there is a point where the design pattern used no longer fits the application it would seem that the application itself has evolved into something quite different.

Not sure how far to go into the subject; but rather stick to the point of “Is heavy OOP always the right way to go ?. For now I never mind setting up the overhead that is OOP.

5 Replies to “Locked in for life?”

  1. Someone had posted a reply (maliciously so I had deleted it) although I did like one of the comments they made

    “You’re a programmer. You do what you’re told. Your only creative freedom is to decide how to do what your told. Just like all of us. Pawns under the corporations that run this world. If only money wasn’t so relevant.”

    I disagree with the comment made. My current position I get to play the part of part designer & part developer as the team is relatively small. I find that for a co-op student in my position I am given a pretty substantially large creative freedom.
    I feel sad in fact for people who strictly believe the view expressed above.

  2. You can’t advance in a career when you are seen as a great developer.

    Q: Who wants the nerd who builds GUI’s running the money.
    A: Nobody.

    Why? Because you’re essential to the company. Why should they pay to do anything else besides program?

    I’m just telling you to give up now or go for broke. The real world is a tough cookie to crack. You need to find legitimate reason to justify your cause. I find nothing in this blog.

  3. Things that are wrong with this blog:

    1. l2english
    “For now I never mind setting up the overhead that is OOP.”
    what does that even mean?
    2. language ppl will make you cry if you tell them java is OO
    3. the post he’s responding too is wrong too
    4. making money isn’t bad, like the guy is arguing that functional programming doesn’t make money?
    5. saying a design pattern is a higher order function is retarded, higher order functions solve some of the problems solved by design patterns but not all, for example, visitor is just multiple dynamic dispatch which is not necessarily in a language with higher-order functions

    QED

  4. Well, I’d like to note that the posting with enumeration (The list of numbers and the QED at the bottom) is an impostor. Although he does bring several valid points to the table.

    Get out of my J.Sate. Bitch.

Leave a Reply

Your email address will not be published. Required fields are marked *