The Software Inferno
CowboyRobot writes "The Software Inferno is a tale that parallels The Inferno, Part One of The Divine Comedy written by Dante Alighieri in the early 1300s. That literary masterpiece describes the condemnation and punishment faced by a variety of sinners in their hell-spent afterlives as recompense for atrocities committed during their earthly existences. The Software Inferno is a similar account, describing a journey where 'sinners against software' are encountered amidst their torment, within their assigned areas of eternal condemnation, and paying their penance. Quoting: 'CANTO 6 - HERESY: ...The countess explained that these chaotically traveling souls were strongly at variance with well-established beliefs and laws of software engineering developed by experts on the subject. Their unabashed contempt for universally accepted truths spawned decision making that wrought great damage upon software projects in their charge. Some challenged Fred Brooks' sacred counsel in futile attempts to rise above their failings by adding new people with woefully insufficient qualifications to rescue already-late projects. Others flaunted their derision by disregarding software design patterns sanctified by the Gang of Four, instead opting for inelegance of their own in attempts to solve problems whose solutions were already proven, well known, and time-honored.'"
reserved for me and my friends
Posting from beta.
Breaking two lines. Is this being formatted right?
Thanks,
AC
This is just a slashvertisement for some bloke's paper. It's a reiteration of well known mantras, at best. Nothing to see here, move along.
Gives me chills when I see people talking about tech like it was a religion.
You're in luck! The R Inferno
Others flaunted their derision by disregarding software design patterns sanctified by the Gang of Four, instead opting for inelegance of their own in attempts to solve problems whose solutions were already proven, well known, and time-honored.
Says someone posting via heretical Von Neumann Machine, long live Turing Machines!
Posted via Android on ARM hosted in Linux on x86-64 running in 32 bit mode!
Those knowledgeable of Cybernetics, Genetics, or Information Theory emit the most holy evil-grin when confronted with the term "Design Pattern".
what is this bullshit user interface. I can't stand it.
It's entertaining, typically weird article from Bell. They're a bit snarky but somewhat long-winded - his penchant to build classifications of things overrides any real deep-dive into what he's talking about. And his daughter appears in every article, I'm surprised there isn't a "17 types of annoying child" article yet.
His other complaints: UML, XML, Agile misuse/overuse - each with an article, blog post that has invented classifications.
Where's the one on "taxonomy joke" overuse?
Because I always thought there was a special place for those who could cram 7 GoF patterns into a HelloWorld, whether they needed them, or were ever ever ever going to extend or reuse the HelloWorld or not.
while( !$hell_freezeth_over )
{
$hell_freezeth_over = is_hell_frozen();
}
read_book();
Coming up with a completely stupid name for a simple pattern doesn't make you a good programmer. The Group of 4 decided they would look at the "common" patterns used in programming and instead of doing something useful, they would just assign them pointless names. Anyone who quotes the Group of 4 with intention of using the names they came up with, generally, isn't a good programmer. A good programmer is busy writing / testing code and doesn't have the time or the need to read and remember books about how to use code patterns or best measures. The aspects you look for in code are as follows:
1. The code is fast, efficient and not bulky.
2. The code is secure.
3. The code is not locked to a single platform.
4. The code is written to complete it's required task and not for style and beauty above function.
If you are focusing on anything else then you aren't programming, you are wasting time and trying to be more then you are. A programmer is a programmer is a programmer, you are not an engineer or any other stupid name / label you want to give yourself. You want to go to programmers hell, simple, read code written by stuck up, over trained, programmers who think they are skilled and have a big mouth.
The number of university students / new grads I've had to fire is kind of shocking. They love to quote pattern names and complain about the use of certain syntax choices and the use of pointers, yet they never turn out usably good code. It's not just university students that have this problem, pretty much anyone who went to post secondary school with the intention of becoming a PROGRAMMER, NOT, SOFTWARE ENGINEER, with have this issue. Your job as a programmer is to turn out good code in a timely manner and once you leave that frame of mind you aren't doing your job. Do that for long enough and you should be fired, regardless of how many theoretical books agree with you, including the Group of 4. If my project was programmed using new age design methodology and methods it would have at least 7x more overhead and run 3x slower then it currently does. No one should put up with slow runtime and greater overhead because a bunch of programmers decided to write a book or many books. Once it runs well it needs to be stable and secure and then I've done my job.
They clearly had fun writing that for at least the exercise in wordsmithing alone. I imagine it must also be satisfying to banish your tormentors to their judgment. Unfortunately there didn't appear to be a place reserved for trolls.
Some other Infernos:
Inferno - Fun read.
Disco Inferno - Which Apple had fun with in this commercial.
Some people like this: The Towering Inferno Trailer
much of left-wing thought is a kind of playing with fire by people who don't even know that fire is hot - George Orwell
easy to forget as the pr softwars still play out, co-opting good deeds (others' hard work) for personal gain is not new
Larry Niven and Jerry Pournelle did the best take on the classic of European literature; anything else will merely be a pale, insipid imitation that makes the reader wonder why the author bothered.
Cranky educator.
Part of the fun of the Divine Comedy at the time was that specific individuals were shown being tormented, and this doesn't do that.
It totally should.
(Burn, baby, burn) Software inferno!
(Burn, baby, burn) Burn that mother down!
For the moment it would seem to be called Earth, or I am having a very long nightmare. It sounds interesting looking for a luser in hell, now knowing their best definition is that they are users/abusers of the database GOD.
Sort of similar art installation http://www.retypingdante.com
An analogy of people going to the renaissance of the internet. You could actually install a keylogger which would send all your keystrokes to purgatorio and on to paradiso. Using the keylogger the whole Divine Comedy was being retyped.
The problem is that he's so touchy feely that he freely asserts that which is not true. The Bible very much speaks of hell as a real place. It is my belief that it is God's desire that we do not go there, but that the choice is ours. Telling people there is no hell is like telling people you can fly if they walk off a cliff. Sure it sounds nice, but the actual consequence is rather severe.
How many people here (a) have read the Divine Comedy and (b) worked as a programmer? I'm sure I'm not the only one, but we've got to be a pretty small audience.
Who do you think is the analog of Beatrice? Or Francesca da Rimini from Canto V?
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
Walk by any Apple store. ... where you just see people using devices like like because they generally work. You can go in, or not, it's your choice.
If you keep on walking you get to the Apple Haters. Now there's a religion, meaning they fervently believe in Apple being bad no matter what, and will not let you past until YOU believe it also.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Like when you have a manager that thinks you can be easily replaced. Then it becomes desireable to prove him wrong.
or any functional approach in the face of Object Oriented Architect's stern remonishments?
Academics in denial over the need to work with state vs. PHBs obsessed with classification and documentation? I'll pop the popcorn.
Lies whoever has just imposed this crappy new /. design upon us.
I mean, having half the width of the screen as whitespace and greyspace REALLY improves the readability guys..
Isn't that how most, if not all, scientific discoveries are made?
sed 's/.NET componentized form/open languages/'
Single-vendor, single-OS nonsense like .NET is never a path to sustainable infrastructure. You have to pry the vendor's fingers off your testicles and use languages and techniques that will be comprehensible to young people who haven't been born yet, or you'll wind up (at best) no more than a remora on some vendor's titanic success.
Notice how Google, Amazon, eBay and Facebook all started by building infrastructure independent of single-vendor products like .NET? Yeah, there's a reason. It's called "Common Sense" but it ain't real common in the Executive Suite these days.
> If my project was programmed using new age design methodology...
After 27 years with a CS degree doing nothing but programming, the 'Group of 4' comment and the 4 aspects listed in this comment are spot on.
There are too many children trying to write code that meets some academic pattern or assembling applications by using any third-party library that can do something they do not understand and cannot code themselves.
CANTO 6 - HERESY: ...The countess explained that these chaotically traveling souls were strongly at variance with well-established beliefs
Yeah, you know, I would rather be a heretic than be consumed by groupthink and the cargo-cult engineering it encourages.
I consider the deadliest sin of engineering unnecessary complexity, which comes in its worst forms from inappropriate and poorly implemented generalization.
I've seen a lot of this in the form of "frameworks" - especially homegrown ones - but also from faithful and meticulous application of GoF design patterns. Decompile SqlMetal for a canonical example.