Comment On Not in the Mood

Updates to the decades-old internally-developed bank management application had gone as smoothly as they could. No major issues moving from text screens on dumb terminals to text screens on Windows 3.1 to a GUI frontend in Windows 95. And now it was time for another major update; to give it the best GUI ever to appear in a decades-old internally-developed bank management application! And thanks to some good planning, respect for standard software development procedures, good tools, and a happy environment, the upgrade was going great! [expand full text]
« PrevPage 1 | Page 2 | Page 3Next »

Re: Not in the Mood

2008-08-21 11:05 • by a (unregistered)
WTF?

Re: Not in the Mood

2008-08-21 11:12 • by snoofle
So all they needed to do in the db was add a ternary flag?

Sheesh, any boolean can handle that!

Re: Not in the Mood

2008-08-21 11:15 • by Alpha Bette (unregistered)
Easy: just hardcode all the reports green. Everyone's happy!

Re: Not in the Mood

2008-08-21 11:25 • by Fred Oom (unregistered)
It is hard to explain to end users sometimes why these things are so complicated. But every time the programmers tried to load the icon into the browser, they kept getting...

wait for it...

File not found!

Re: Not in the Mood

2008-08-21 11:27 • by Anon (unregistered)
They had it all wrong and missed some critical steps:

1. Process the report from the database
2. Render the icon in memory
3. Save the image to the server's hard drive
4. Print out image
5. Put image on wooden table
6. Photograph image
7. Scan image back into server
8. Render that image within the web page
9. Do all of this on the web site without conflicting with other alerts or users within the file system web site

Re: Not in the Mood

2008-08-21 11:28 • by Quango
I don't get this one..

"..an extreme challenge to manage the thousands of icon files.."

There are only three: red, yellow, green. Why create them dynamically? Just reference static ones?

Or did IBQ just not want to do the work?

Re: Not in the Mood

2008-08-21 11:29 • by atkretsch (unregistered)
IBQ is missing out on a great opportunity:

1. Process the report from the database
2. Render the icon in memory
3. Save the image to the server's hard drive
4. Render that image within the web page
5. Do all of this on the web site without conflicting with other alerts or users within the file system web site
6. ???
7. Profit!

Re: Not in the Mood

2008-08-21 11:31 • by SomeCoder (unregistered)
I feel like I missed something in this story. Seems to me that TRWTF is the fact that the developers think it's so hard to add an icon.

Though I don't know the specifics of the system, of course, it seems like you just create green, yellow, and red images, then the code can say something like the following:

if (happy)
loadImage(green);
else if (ok)
loadImage(yellow);
else
loadImage(red);


So... what's the problem?

Re: Not in the Mood

2008-08-21 11:33 • by DaveAronson
TODO: make a comment on this WTF before it becomes a royal pain to read existing comments

Re: Not in the Mood

2008-08-21 11:33 • by ambrosen
213366 in reply to 213362
Quango:
I don't get this one..

"..an extreme challenge to manage the thousands of icon files.."

There are only three: red, yellow, green. Why create them dynamically? Just reference static ones?

Or did IBQ just not want to do the work?


Well, the comment in the database pretty clearly says that they hadn't actually got a value for what the mood icon should say. So they lied about the reason.

Obviously if they'd been asked to give a numerical value for the risk, then they'd have had to fess up, but as it was,...

Re: Not in the Mood

2008-08-21 11:34 • by jamface (unregistered)
213367 in reply to 213364
SomeCoder:
I feel like I missed something in this story. Seems to me that TRWTF is the fact that the developers think it's so hard to add an icon.

Though I don't know the specifics of the system, of course, it seems like you just create green, yellow, and red images, then the code can say something like the following:

if (happy)
loadImage(green);
else if (ok)
loadImage(yellow);
else
loadImage(red);


So... what's the problem?


Read the comment at the end of the article.

Quango:
I don't get this one..

"..an extreme challenge to manage the thousands of icon files.."

There are only three: red, yellow, green. Why create them dynamically? Just reference static ones?

Or did IBQ just not want to do the work?


Read the comment at the end of the article.

Glad to help!

Re: Not in the Mood

2008-08-21 11:42 • by SomeCoder (unregistered)
213372 in reply to 213367
jamface:

Read the comment at the end of the article.


Comment has been read (again). My previous statement still stands.

I guess the WTF is supposed to be that the development team lied about how hard it would be?

Unless the database is a complete clusterfuck, adding one column to a table to add mood shouldn't be that hard.

Re: Not in the Mood

2008-08-21 11:47 • by Charles400
Then, to really annoy the users, they used smiley emoticons instead of a color indicator...

Re: Not in the Mood

2008-08-21 11:49 • by cf18 (unregistered)
Good, OK, Bad

Re: Not in the Mood

2008-08-21 11:59 • by Jason (unregistered)
It's possible to Encode the image on the page itself. No need to save anything, just render it. I don't know why they didn't just do that -- I have two web apps where the binary data is encoded right on the webpage, because I wanted a one-page-that's-it app.

Re: Not in the Mood

2008-08-21 12:01 • by brazzy
213380 in reply to 213364
SomeCoder:
I feel like I missed something in this story. Seems to me that TRWTF is the fact that the developers think it's so hard to add an icon.

Though I don't know the specifics of the system, of course, it seems like you just create green, yellow, and red images, then the code can say something like the following:

if (happy)
loadImage(green);
else if (ok)
loadImage(yellow);
else
loadImage(red);

So... what's the problem?

You already have each of the 3 states in 2 places (icons and a happy/ok/bad enum). In a sufficiently enterprisey system, they would also have to be integrated into a dozen other layers (database schema, DAOs, DTOs, business objects, CORBA stubs, etc. pp.). It's still not rocket science, but TRWTF was that the developers got away with describing how a webbrowser works and making it sound so complex that management believed them that adding this "mood" would be a herculean task.

I suspect that they didn't even really do it out of lazyness - after that huge multi-department email conversation they probably just wanted to save face.

Re: Not in the Mood

2008-08-21 12:04 • by Eric (unregistered)
In short, it was "we want dots" versus "dots are too complicated!"

So basically it was "More dots, more dots" versus "Okay, stop dots."

Re: Not in the Mood

2008-08-21 12:06 • by brazzy
213383 in reply to 213379
Jason:
It's possible to Encode the image on the page itself. No need to save anything, just render it. I don't know why they didn't just do that

You don't get it - all that crap about icon files was a cover story to bamboozle management with technobabble. The real reason why they didn't want to do it was that they hadn't considered the need for this "mood" in their database schema. The problem was with where to put the data, not how to display it.

Re: Not in the Mood

2008-08-21 12:14 • by savar
213389 in reply to 213361
Anon:
They had it all wrong and missed some critical steps:

1. Process the report from the database
2. Render the icon in memory
3. Save the image to the server's hard drive
4. Print out image
5. Put image on wooden table
6. Photograph image
7. Scan image back into server
8. Render that image within the web page
9. Do all of this on the web site without conflicting with other alerts or users within the file system web site


alex just blue you

Re: Not in the Mood

2008-08-21 12:37 • by Dale E (unregistered)
I've seen many applications where if you can't add a column to the database, just attach the data to the primary key:

Report_ID
=========
1.Red
2.Red
3.Green
4.Red
5.Yellow

Make sure you put it AFTER the ID, to confound anyone who wants to sort on mood. But why would anyone want to do that?

Re: Not in the Mood

2008-08-21 12:41 • by Homercles (unregistered)
Also, the TODO comment shows that they did intend at some point to implement 'mood', but forgot. So the 'out of scope' comment was bluster as well.

Re: Not in the Mood

2008-08-21 12:42 • by C. F. Martin (unregistered)
Where I work, we would spend three or four days discussing why green should be the "good" mood. Legal would be brought in. We'd need to justify it to communications. Many would have interesting points on various shades of green. Naturally, the process would be repeated for yellow and red.

CAPCHA: odio (Its round on the ends and DI in the middle)

Re: Not in the Mood

2008-08-21 12:48 • by Block Progress (unregistered)
213404 in reply to 213402
C. F. Martin:
Where I work, we would spend three or four days discussing why green should be the "good" mood. Legal would be brought in. We'd need to justify it to communications. Many would have interesting points on various shades of green. Naturally, the process would be repeated for yellow and red.

Don't forget to be culturally sensitive! Some people may be offended by yellow. Green could be a political statement. Better run it by HR. Although "run" is not really the operative term there.

Re: Not in the Mood

2008-08-21 12:56 • by Anon. (unregistered)
213405 in reply to 213389
savar:
Anon:
They had it all wrong and missed some critical steps:

1. Process the report from the database
2. Render the icon in memory
3. Save the image to the server's hard drive
4. Print out image
5. Put image on wooden table
6. Photograph image
7. Scan image back into server
8. Render that image within the web page
9. Do all of this on the web site without conflicting with other alerts or users within the file system web site


alex just blue you


Does "blue" mean too healthy, one step above green?

Re: Not in the Mood

2008-08-21 12:57 • by Anon (unregistered)
213406 in reply to 213404
Block Progress:
C. F. Martin:
Where I work, we would spend three or four days discussing why green should be the "good" mood. Legal would be brought in. We'd need to justify it to communications. Many would have interesting points on various shades of green. Naturally, the process would be repeated for yellow and red.

Don't forget to be culturally sensitive! Some people may be offended by yellow. Green could be a political statement. Better run it by HR. Although "run" is not really the operative term there.


Don't forget the colorblind!

Re: Not in the Mood

2008-08-21 13:00 • by Shial
Basically they were trying to stop scope creap. It always starts as something little that you can add, then its another item, then another, before you know it the project is months behind and millions over budget. Nip it in the bud before it can grow.

Re: Not in the Mood

2008-08-21 13:06 • by Bappi
213408 in reply to 213407
Shial:
scope creap

You mipselled "scope crepe".

HTH.

Re: Not in the Mood

2008-08-21 13:10 • by tuna (unregistered)
213409 in reply to 213406
Anon:
Don't forget the colorblind!




i'm colorblind, fyi.

Re: Not in the Mood

2008-08-21 13:15 • by Steve (unregistered)
Put me in the column of folks who don't get it.

I'm not a databaser so I'm probably way out of my depth here and will take my insults off the air, thanks, but it strikes me that in the previous system there was some metric used to determine the "goodness" of the report -- that apparently already worked. So how difficult would it be to transfer/port that calculation to the new system and flag the report with whatever icon, background color, bell, or whistle that the user wanted.

What am I missing? I assume it's something obvious, so be gentle.

Re: Not in the Mood

2008-08-21 13:16 • by Outlaw Programmer
Those algorithms are so complicated that they will never get them working. I suggest the following:

1) Print each report out.
2) Feed each page through a scanner and run OCR on it.
3) Have another program looking for words like "ERROR", "WARNING", "CATACLYSM". If any of these are found, have the screen flash in the appropriate color.
4) Hire an intern/consultant to run this program. When he sees the screen flash, he puts a colored sticker (preferably dot-shaped) on the corner of the report.
5) Staple the report back together.

Infinitely scalable: just add more interns, printers and scanners. Also infinitely extensible: adapts well to more colors, different shapes, etc.

Re: Not in the Mood

2008-08-21 13:21 • by my name is missing (unregistered)
I think this site needs to add colored images to every comment.

Re: Not in the Mood

2008-08-21 13:27 • by John Hensley (unregistered)
TRWTF is the phrase "custom web browser."

To those who still don't get it

2008-08-21 13:52 • by ! (unregistered)
IBQ (the ones responsible for the report app) originally planned to implement the mood in their brand new database, but they forgot. When IBP questioned IBQ about the lack of moods, they made up a whole bunch of bunk to hide their forgetfulness.

Captcha: nibh. It's like a word, but with an "h" at the end.

Re: Not in the Mood

2008-08-21 13:54 • by Walleye
213423 in reply to 213362
Quango:
I don't get this one..

"..an extreme challenge to manage the thousands of icon files.."

There are only three: red, yellow, green. Why create them dynamically? Just reference static ones?

Or did IBQ just not want to do the work?


But it's a WEB site. That means that you might have thousands of users at a time, so you need thousands of icon files. Maybe millions.

Re: Not in the Mood

2008-08-21 14:04 • by Khazwossname (unregistered)
213425 in reply to 213415
my name is missing:
I think this site needs to add colored images to every comment.


Racist.

Re: Not in the Mood

2008-08-21 14:04 • by akatherder
213426 in reply to 213423
Walleye:
Quango:
I don't get this one..

"..an extreme challenge to manage the thousands of icon files.."

There are only three: red, yellow, green. Why create them dynamically? Just reference static ones?

Or did IBQ just not want to do the work?


But it's a WEB site. That means that you might have thousands of users at a time, so you need thousands of icon files. Maybe millions.


Not if you have a good backup solution. Every time someone downloads the file you can just restore from backups. It saves the graphic artists people from redrawing all day.

Re: Not in the Mood

2008-08-21 14:04 • by mike (unregistered)
213427 in reply to 213361
Nice.


Actually I was thinking that you only need three (or five, ten, whatever) images, and you just choose which one to link to. Or, put them all in the page and use ajax to make one visible.

Re: Not in the Mood

2008-08-21 14:11 • by Bappi
213428 in reply to 213425
Khazwossname:
my name is missing:
I think this site needs to add colored images to every comment.


Racist.

Oh really? So how do you explain the fact that the comments currently only have white images on a white background?

Re: Not in the Mood

2008-08-21 14:11 • by Franz Kafka (unregistered)
213429 in reply to 213410
Steve:
Put me in the column of folks who don't get it.

I'm not a databaser so I'm probably way out of my depth here and will take my insults off the air, thanks, but it strikes me that in the previous system there was some metric used to determine the "goodness" of the report -- that apparently already worked. So how difficult would it be to transfer/port that calculation to the new system and flag the report with whatever icon, background color, bell, or whistle that the user wanted.

What am I missing? I assume it's something obvious, so be gentle.


The big question is, of course, what constitutes a good mood for the report; if this was a rewrite, it's possible that the original logic is either hopelessly byzantine or that the design has changed enough to make it irrelevant. Regardless, I'd oppose the whole mood thing (unless specced by the client) on the grounds that it would lead people to rely on it instead of actually reading the report.

Re: Not in the Mood

2008-08-21 14:23 • by the amazing null (unregistered)
it seems all of that BS could be shortened to:
1.generate report
2.determine colored dot to use
3.add dot

you know, assuming that they could just reuse already generated dots in one of three colors that were already on the drive.

this kind of reminds me of those star trek voyager episodes when the evil group of aliens [read: people with model parts and foamcore glued to their eyes, foreheads or chests] 'download' something from the ship and suddenly, the ship does not work because, evidently, this team designed the copy/paste integration software for the ship.

Re: Not in the Mood

2008-08-21 14:25 • by Franz Kafka (unregistered)
213433 in reply to 213406
Anon:
Block Progress:
C. F. Martin:
Where I work, we would spend three or four days discussing why green should be the "good" mood. Legal would be brought in. We'd need to justify it to communications. Many would have interesting points on various shades of green. Naturally, the process would be repeated for yellow and red.

Don't forget to be culturally sensitive! Some people may be offended by yellow. Green could be a political statement. Better run it by HR. Although "run" is not really the operative term there.


Don't forget the colorblind!


Green circle, Yellw Triangle, Red X.

Re: Not in the Mood

2008-08-21 14:30 • by snoofle
213434 in reply to 213361
Anon:
They had it all wrong and missed some critical steps:

1. Process the report from the database
2. Render the icon in memory
3. Save the image to the server's hard drive
4. Print out image
5. Put image on wooden table
6. Photograph image
7. Scan image back into server
8. Render that image within the web page
9. Do all of this on the web site without conflicting with other alerts or users within the file system web site

But what if there's contention between different users for the camera, wooden table or scanner? Writing good software is hard!

Re: Not in the Mood

2008-08-21 14:38 • by snoofle
213437 in reply to 213427
mike:
use ajax to make one visible.

But Ajax cleans the spots away...

Re: Not in the Mood

2008-08-21 14:41 • by Tarwn (unregistered)
213439 in reply to 213364
What the article and code comment seem to infer is that nothing was storing the report state. Basically each time the report ran a final process would generate an icon file specifically for that report. The image file itself was the only thing storing the state for the report, so no matter how many web browsers hit the site, the image for "Report A" would always be called "Report_A_Mood.jpg" and it would have been generated (and overwritten the previous image) the last time "Report A" was executed.
The database addition would have allowed them to store a mood and only have 3 images that could be referred to by mood, for instance "Mood_Green.jpg" rather than by the name of one of thousands of reports.

Re: Not in the Mood

2008-08-21 14:55 • by Anon (unregistered)
213443 in reply to 213433
Franz Kafka:
Anon:
Block Progress:
C. F. Martin:
Where I work, we would spend three or four days discussing why green should be the "good" mood. Legal would be brought in. We'd need to justify it to communications. Many would have interesting points on various shades of green. Naturally, the process would be repeated for yellow and red.

Don't forget to be culturally sensitive! Some people may be offended by yellow. Green could be a political statement. Better run it by HR. Although "run" is not really the operative term there.


Don't forget the colorblind!


Green circle, Yellw Triangle, Red X.


Ah...But you forgot about the shape blind! Now what?

Re: Not in the Mood

2008-08-21 14:56 • by Anon (unregistered)
213444 in reply to 213439
Tarwn:

The database addition would have allowed them to store a mood and only have 3 images that could be referred to by mood, for instance "Mood_Green.jpg" rather than by the name of one of thousands of reports.


Surely "Mood_Green.gif" or "Mood_Green.png". It's only a dot!

Re: Not in the Mood

2008-08-21 15:13 • by mxsscott
213452 in reply to 213443
Anon:
Franz Kafka:
Anon:
Don't forget the colorblind!


Green circle, Yellw Triangle, Red X.


Ah...But you forgot about the shape blind! Now what?


They're not colourblind.

Re: Not in the Mood

2008-08-21 15:21 • by BeenThere
Clearly, the logic that went into the mood determination was the main problem with implementing it - TRWTF is their excuse was so bad, that anyone with a hair of a technical background would be able to call them on it... which could really backfire.

They should have either said "all reports are green now, since we cleaned everything up so much" or implemented a 'simplified' mood:
Green: no missing rows in tables with foreign keys
Yellow: maybe a few problems...
Red: important table may have been dropped.


What I'd really like to know is what exactly did the mood imply? What do you do if you have a yellow or red report?

Do you tell your boss "I have that report you asked for, but I have to warn you - its pretty moody"

Sounds like a simple "This report generated [x] warnings" tag at the bottom that could be expanded would be far more useful than "unhappy" reports.

Re: Not in the Mood

2008-08-21 15:23 • by real_aardvark
213457 in reply to 213372
SomeCoder:
jamface:

Read the comment at the end of the article.


Comment has been read (again). My previous statement still stands.

I guess the WTF is supposed to be that the development team lied about how hard it would be?

Unless the database is a complete clusterfuck, adding one column to a table to add mood shouldn't be that hard.
Read the comment at the end of your comment.

Errr...

Re: Not in the Mood

2008-08-21 15:27 • by Anon (unregistered)
213458 in reply to 213452
mxsscott:
Anon:
Franz Kafka:
Anon:
Don't forget the colorblind!


Green circle, Yellw Triangle, Red X.


Ah...But you forgot about the shape blind! Now what?


They're not colourblind.


Not so! I assert that Ray Charles was both color and shape blind. Ha! Now what would you do?
« PrevPage 1 | Page 2 | Page 3Next »

Add Comment