- Feature Articles
- CodeSOD
-
Error'd
- Most Recent Articles
- Stop Poking Me!
- Operation Erred Successfully
- A Dark Turn
- Nothing Doing
- Home By Another Way
- Coast Star
- Forsooth
- Epic
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
AAAAAAAAAEEEEEEEEEEEEIIIIIIIIIIIIIIIIGGGGGGGGGGGGGHHHHHHHHHHHHH!!!
I too, thought it was a circuit diagram. But complex diagrams do crop up for complex systems (that's another rant). However, making the diagram the workflow itself raises WTF to a whole new level. We now have: Zen WTF !!!
Admin
This is an abomination in the name of the lord.
Admin
Here's one for the "Best of TDW" list.
Epic.
Admin
Hey, its pretty simple.
Just put your finger on the screen and follow all the lines.
CAPTCHA = batman
Admin
My face just melted, ark-of-the-covenant style. I don't want to know how much the consultants were paid to come up with this monstrosity, but I know it would make me weep.
For shame.
Admin
Well, at least the spec diagrams are in sync with the code....
Admin
Actually, I'm probably missing the worst of it, as I know nothing about javascript. Can anyone clue me in as to what makes that part of it bad?
Admin
I created this exact workflow diagram by simply hooking the logic circuits of a Bambleweeny 57 sub-meson Brain to an atomic vector plotter suspended in a strong Brownian Motion producer (say a nice hot cup of tea).
Admin
Looks like the etcha-sketch drawing I made when I was a kid.
CAPTCHA: whiskey
Admin
"And BizTalk was born!"
Admin
Somewhere out there right now, Martin Fowler is suffering a migrane headache
Admin
See, this is why you don't design systems so that they can be maintained by unskilled users. Because then unskilled users will maintain them.
Admin
Whats up with the happy face picture?
Obviously that isn't John.
CAPTCHA: craptastic
Admin
Well, it runs entirely in a browser and is viewable by the user for starters.
Admin
It is not the fact that it was javascript that made it bad, but if you read into this there was a whole system coded in some language (who cares what it was right now) that allowed for tweaks to be written in javascript. What essentially happened was that the underlying code now no longer does anything since the new javascript layer on top is doing everything. So there is now two layers of WTF interacting on some ungodly level.
Or at least that is what I got out of the last few paragraphs.
[ED: You're correct -- that's exactly what I wanted to convey]
Admin
The happy face is what's generated when the yellow work flow box gets executed.
Admin
Notice in the zoomed in one that it's paying attention to particular states (geographic, not existential). Doesn't that smell an awful lot like what our hero was asked to do with a separate tool?<p>
Moral: Nobody in power appears to know how the Customer-Friendly system really works.<p>
EEEEEK!! Captcha=billgates
Admin
I sort-of got that too - I guess my brain just couldn't process even the description of that sort of design. (Thanks)
Admin
Hmm...I'll take a shot.
First, there is the always bad "javascript form validation" as javascript can be turned off and what not. I have never written a UI completely in javascipt and don't even know how to go about attempting that, but I'm pretty sure it's a terrible idea. Filtering out Iowa specific data should not be happening in the UI. It should be happening in some sort of business layer, I would imagine. Also, although not javascript related, I think any system that requires 6 months of training should throw up a red flag.
Admin
Isn't this kind of true for most complex systems, customer-friendly or not?
Admin
Agh! Good catch, I totally missed that part. Yet one more WTF to be added to the list here.
Admin
You know, I met/attended a lecture by Bran Selic at UML / Design World 2005 in Texas, and he went on and on about executable UML and the metamodel for UML 2.0.
I imagine that diagrams/systems like this are the sort of thing that he dreams about.
*shudder*
Admin
Well said. I was thinking after i read "even the most technically unskilled end-user could easily and and modify" that we were heading for a huge xml WTF. But this one is pretty darn good too.
Admin
Instead of "The code is the spec" comment from yesterday, it's "The spec is the code". =D
Seriously, this is the only thing that can top "It's working as coded."
Admin
Oh, why not? Obviously, we just need to give the user a user-friendly way of manipulating the diagram! All we need is JavaScript, some AJAX and XML, and some cute graphics to shuffle around on the screen... ;^)
Can someone tell me what "Iowa-specific" means here? I read the article, but I see only one mention of Iowa.
Admin
Good God! That takes enterprisey to a whole new plane of existence.
Admin
UGH, Alex, how about a little warning, I just ate lunch and it feels like its about to come shooting back up.
I've seen Access misused as real databases, but this might just qualify for worst abuse of an Office product bar none.
Admin
Ah, this brings back memories. One of the first systems I met was claimed to be easily configurable by people with no programming knowledge. Well, a team of two experienced developers plus a couple of not-yet-cynical young IT graduates finally managed to knock it into shape after the best part of a year. We wrote a document explaining how to get around all the quirks, bugs, awkwardnesses and undocumented features - IIRC it was about 40 pages.
Mind you, it wasn't as bad as this one appears to be.
Admin
Actually, these types of apps are used on intranets, on corporate machines, that hava scripts on, and are LOCKED in the on state. At least for the "intranet" zone.
Admin
For a giant thin client app such as this, putting a lot of the logic in the Javascript layer can be a real advantage. Especially when you're an outside company.
Most internal IT guys won't let you think about modifying compiled code, and now ASP/PHP pages are mostly untouchable, but when you just tell them you need to change some JScript around they let you have a free reign.
It's a real world solution for a real world.
Admin
That's pretty improbable, if you ask me....
Admin
How can any one person, let alone a group of person sit in a room and go hey that was an excellent idea...
CAPTCHA = awesomeness
Admin
It was an excellent idea. The execution of that idea was the part that was flawed. Any time you can develop a system that releives your developers of the mundane task of changing the flow of a peice of paper from desk A to desk B it is good. It's when you relinguish all control of logic to others that things get bad. Some architects (if you really want to call the designers of this monstrosity that) just don't know when to stop.
Admin
So this is how easy visual programming makes things. I'll have something to show my debating opponents next time. Does anyone have a good example from how visual programming made a complex program easier to understand?
Whoops...I can get into this box without the mouse...but I can't seem to get out of it (my mouse is b0rken).
Admin
It's impossible for words to describe what is necessary to those who do not know what horror means. Horror. Horror has a face, and you must make a friend of horror. Horror and mortal terror are your friends. If they are not, then they are enemies to be feared.
Admin
This sort of WTFery amazes me. It's the second example I've seen (but only the first of its kind on TDWTF) of so many levels of thinking, so brilliantly flawed that it's impossible to wrap my mind around it. The whole concept just sort of... slips away.
I'm working with a system with a similar level of WTFery, although the WTFery comes about in a different way. I can't really explain it technically, and I doubt even the creators could, by now.
Imagine a MxMxM Rubik's Cube, M larger than, say, 20, and the cube starts out solved. Make a minor change through the interface, and you've just made one turn of the cube, and everything gets slightly messed up. After N such changes, it is completely impossible for a human being to figure anything out.
The system itself can't even seem to figure it out, for that matter. After trying to make sense of this application for some weeks, my team lead finally asked the original developers, "Why? Why would you do this?"
The answer? "Because it was fun to build."
I'm glad I wasn't there for it. I have difficulty holding my tongue in such situations, and in any case I felt like slapping someone.
It brings me great relief to see that there exists a system such as this, The Customer-Friendly System. At least now I know that the sort of idiotic genius that can design such WTFs is not unique.
Admin
I never knew that Visio can do that!?
Can't wait till monday to try it out! This is not a WTF, it's the future!
Admin
I'll add that although the interface of this application has WTFs worthy of posting here, everything appears to work as it should. It's under the hood that the cube gets rotated. There's virtually no way to retrieve any data that makes sense.
Admin
The real WTF is that someone tried to colorcode the diagram.
Admin
As the write-up hints, it probably did look a pretty good idea - maybe it even was a good idea - with a workflow having a dozen steps. But consideration of scaling issues seems to have been skimped somewhat.
To put it mildly.
Admin
...where does it even start??
Admin
Are you speaking from personal experience? You have been in a situation where you have been brought in from outside a company to fix/modify a system and the only code you can touch is the javascript? If so, that seems quite weird to me. "Come fix this code without touching it."
Admin
We use a system that has 30 years of complexity behind it, and it's written in COBOL. It's claimed many souls.
Admin
I was involved on a similar project.
We were developing a game framework and editor aimed at low-level programmers, or even technically savvy non-programmers. Our lead architect was convinced that all game logic must be driven by state machines, because he thought it was more elegant. He also thought that non-programmers would find state machines easy to work with. He designed an editor where everything was represented in heirarchical tree views. By his plan, even state machine nodes would only be visible as entries in a tree view.
I fought tooth and nail against his UI and extreme state machine ideas, but was a junior programmer at the time, and was basically ignored. I did get permission to add a visual rendering of the state machine, which helped a bit.
When our product was finally released, it ended up being (suprise) a real pain to work with. One guy actually called the game editor a "steaming pile" in front of the managers. Our lead architect was fired.
Kids, todays lesson is that programming is programming, even if you make it visual. In fact visual programming can be even more confusing than a simple scripting language. Do some actual testing with users (another of my ideas that was shot down).
Admin
Say what you will... at least it's documented.
Admin
Hats off for the idea, though.
captcha = chocobot :-)
Admin
See here
Admin
My eyes! My eyes!
Admin
Sounds like a good definition for 'enterprise'
Admin
This must have been made with the Google ad:
<FONT face=Verdana><FONT size=1>Reliability Block Diagram </FONT></FONT><FONT face=Verdana><FONT size=1>software. Easy to use, yet capable of extremely complex diagrams.</FONT></FONT>