The creep of big tech in software development
-
You mean like MVVM? The (MS) samples never use MVVM; except when demonstrating MVVM. Ask someone to explain why they follow MVVM; they can't. Only that it's the thing to do. Originally, it was about "visual designers" creating "plug in" views apart from the programming. Never happened. You still wind up with views and model/controllers that only work with each other; you just spend more time trying to interface them while settling for less (UI) functionality.
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food
That's why I don't use that model. I've never seen the rationale for it that satisfies me.
Real programmers use butterflies
-
I have a strong suspicion that at least half of the software technology and software designs that come out of large companies are simply an exercise in justifying the existence of an individual's or team's continued employment at said company. In other words, keep busy, even if it means developing things that are worse than useless** ** I specifically mean that - things that add nothing but extra complexity and red tape to software development - a process that should be as streamlined and simple as possible. Software designs are dissertations. If you cannot defend them they are not worth researching and developing. I'm all for a standards body requiring a rationale section on any new technology or design before it gets adopted as a standard or best practice.
Real programmers use butterflies
Yes, well the moniker "best practice" is simply BS anyway, it's generally applied to bad practices, ignore it.
-
I have a strong suspicion that at least half of the software technology and software designs that come out of large companies are simply an exercise in justifying the existence of an individual's or team's continued employment at said company. In other words, keep busy, even if it means developing things that are worse than useless** ** I specifically mean that - things that add nothing but extra complexity and red tape to software development - a process that should be as streamlined and simple as possible. Software designs are dissertations. If you cannot defend them they are not worth researching and developing. I'm all for a standards body requiring a rationale section on any new technology or design before it gets adopted as a standard or best practice.
Real programmers use butterflies
What are you? New to the industry? No offense but yeah, it happens all the time. Remember, "A prophet is not without honour, but in his own country, and among his own kin, and in his own house. 5And he could there do no mighty work, save that he laid his hands upon a few sick folk, and healed them." In the 40 years I've spent in engineering (I don't do IT, those are fighting words), I have seen more than a few white elephants to be worshiped. People hinge their careers on projects. Senior management is goaled on projects, not pure design or software design. There heads would explode if that was part of the thing. What you are looking at is a management problem.
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
-
What are you? New to the industry? No offense but yeah, it happens all the time. Remember, "A prophet is not without honour, but in his own country, and among his own kin, and in his own house. 5And he could there do no mighty work, save that he laid his hands upon a few sick folk, and healed them." In the 40 years I've spent in engineering (I don't do IT, those are fighting words), I have seen more than a few white elephants to be worshiped. People hinge their careers on projects. Senior management is goaled on projects, not pure design or software design. There heads would explode if that was part of the thing. What you are looking at is a management problem.
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
I'm not new. I'm just commenting on something I noticed early on. Just because I bring it up now doesn't mean it's the first time it occurred to me.
Real programmers use butterflies
-
You mean like MVVM? The (MS) samples never use MVVM; except when demonstrating MVVM. Ask someone to explain why they follow MVVM; they can't. Only that it's the thing to do. Originally, it was about "visual designers" creating "plug in" views apart from the programming. Never happened. You still wind up with views and model/controllers that only work with each other; you just spend more time trying to interface them while settling for less (UI) functionality.
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food
Years ago, a contractor next to me on an unrelated project was an MVVM proponent. He wrote a proof-of-concept using it and tried explaining to a few of us why it was so awesome. It was overly complex--massively form over function--and there was no way it could have been implemented in a reasonable period of time. So, yes it would have been awesome for him, as in cash in the bank, if they'd decided to continue with the project.
Gerry Schmitz wrote:
You still wind up with views and model/controllers that only work with each other
It was this, yet the consultant didn't see it. (Even the sales/marketing team, which needed the software, sensed total BS from this guy.)
-
I have a strong suspicion that at least half of the software technology and software designs that come out of large companies are simply an exercise in justifying the existence of an individual's or team's continued employment at said company. In other words, keep busy, even if it means developing things that are worse than useless** ** I specifically mean that - things that add nothing but extra complexity and red tape to software development - a process that should be as streamlined and simple as possible. Software designs are dissertations. If you cannot defend them they are not worth researching and developing. I'm all for a standards body requiring a rationale section on any new technology or design before it gets adopted as a standard or best practice.
Real programmers use butterflies
I think you are running up against the difference between custom built corporate software (damn can't think of the correct word for that) that needs to service the requirements of only 1 company and commercial software that services an industry. The level of complexity and crap that makes it into commercial software is horrifying once the sales department get hold of it.
Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP
-
I think you are running up against the difference between custom built corporate software (damn can't think of the correct word for that) that needs to service the requirements of only 1 company and commercial software that services an industry. The level of complexity and crap that makes it into commercial software is horrifying once the sales department get hold of it.
Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP
Mycroft Holmes wrote:
custom built corporate software (damn can't think of the correct word for that)
Bespoke?
-
I have a strong suspicion that at least half of the software technology and software designs that come out of large companies are simply an exercise in justifying the existence of an individual's or team's continued employment at said company. In other words, keep busy, even if it means developing things that are worse than useless** ** I specifically mean that - things that add nothing but extra complexity and red tape to software development - a process that should be as streamlined and simple as possible. Software designs are dissertations. If you cannot defend them they are not worth researching and developing. I'm all for a standards body requiring a rationale section on any new technology or design before it gets adopted as a standard or best practice.
Real programmers use butterflies
when there is no real work to be done just simply move around items in the user interface or upgrade the product with some "would be useful" technology that gets in the way all the time
-
I have a strong suspicion that at least half of the software technology and software designs that come out of large companies are simply an exercise in justifying the existence of an individual's or team's continued employment at said company. In other words, keep busy, even if it means developing things that are worse than useless** ** I specifically mean that - things that add nothing but extra complexity and red tape to software development - a process that should be as streamlined and simple as possible. Software designs are dissertations. If you cannot defend them they are not worth researching and developing. I'm all for a standards body requiring a rationale section on any new technology or design before it gets adopted as a standard or best practice.
Real programmers use butterflies
Big companies are free to ignore any standard bodies. I think, the proper solution grows with the grassroots: don't adopt that stuff that you just described. If you're working on a company where some ego is good at wowing managers into letting said ego decide on things no matter how incompetent, change companies. Developers tend to not have too much trouble getting jobs. If you're working elsewhere and consider adopting such a for-some-ego's-sake monstrosity, don't.
-
I have a strong suspicion that at least half of the software technology and software designs that come out of large companies are simply an exercise in justifying the existence of an individual's or team's continued employment at said company. In other words, keep busy, even if it means developing things that are worse than useless** ** I specifically mean that - things that add nothing but extra complexity and red tape to software development - a process that should be as streamlined and simple as possible. Software designs are dissertations. If you cannot defend them they are not worth researching and developing. I'm all for a standards body requiring a rationale section on any new technology or design before it gets adopted as a standard or best practice.
Real programmers use butterflies
Naw, it's way simpler than that. The design for a new thingamabob looks simple, elegant, and effective when it's just an idea in the designer's head. It's not until that idea rises from its slab and starts to shamble around that you realize it's a Frankenstein's monster of mismatched body parts. If you had shared the designers original delusion, you would be more gracious about the monster. Or not.
-
You mean like MVVM? The (MS) samples never use MVVM; except when demonstrating MVVM. Ask someone to explain why they follow MVVM; they can't. Only that it's the thing to do. Originally, it was about "visual designers" creating "plug in" views apart from the programming. Never happened. You still wind up with views and model/controllers that only work with each other; you just spend more time trying to interface them while settling for less (UI) functionality.
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food
MVVM, another "nice to have" pattern. But, it isn't the end of the means. I have been working on a project that uses MVVM for several years and sadly to say that much of the business logic is in the VM part. Not good design. Primary should be a separation between the business/decision logic (service) layer and the presentation layer. MVVM can be used in the presentation layer to connect the view to the business layer. Even MVC or the old MFC style model-view plan would do. This way one can easily add any medium between the business and the presentation layers and have what ever front end they desire.
-
What are you? New to the industry? No offense but yeah, it happens all the time. Remember, "A prophet is not without honour, but in his own country, and among his own kin, and in his own house. 5And he could there do no mighty work, save that he laid his hands upon a few sick folk, and healed them." In the 40 years I've spent in engineering (I don't do IT, those are fighting words), I have seen more than a few white elephants to be worshiped. People hinge their careers on projects. Senior management is goaled on projects, not pure design or software design. There heads would explode if that was part of the thing. What you are looking at is a management problem.
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
You are so right. I have been working in the 'software' industry in the Bay Area for 25 plus years. Its all about which group gets how much from the budget and how soon can you make the sales folks happy with a release yesterday with all kinds of 'look how cool' features! Anyone who claims that they have designed very well and their coding is as per the design and its great, etc does not know what they are talking about. No software ever gets built exactly as designed, no code is ever 'compliant' as per the zillion design paradigms like SOLID, Gang of Four, DDD, TDD, {insert any other fancy new design paradigm} And yes, developers, development managers, development VPs all need to keep their relevance important to the organization to continue getting paid. I stopped being a software idealist long ago. A lot of my clients like to get onto the latest 'fad' out there. If my client wants all functional style code, great here it is! If they want all OOPs and pure MVC code, great here it is! If you want the latest javascript framework 'wow how cool' type spaghetti code with HTML, JS, etc all mixed in a file - well here it is! Just approve my timesheet and pay me. I don't care if the code I write passes the Gang of Four, SOLID, blah blah benchmarks! As long as my client's software development head honcho is happy with my work and results, that's all I care for.
-
You mean that we are becoming bureaucrats?
I’ve given up trying to be calm. However, I am open to feeling slightly less agitated.
we just want to keep our jobs and stay in our happy place.