Comment On MUMPS Madness

This year’s Corporate Technology Expo was no different than the ones for years previous. Various departments gathered in the company’s large, wood-paneled group meeting hall and highlighted their top projects and initiatives that were completed during the past year. There was everything from the ASP-to-ASP.NET upgrade of the customer portal to the enterprise-wide implementation of COGNOS 7. The scene was a three-hour, seemingly unending procession of PowerPoint slides with enough laser pointers to take down an incoming ICBM. [expand full text]
« PrevPage 1 | Page 2Next »

Re: MUMPS Madness

2008-11-12 09:12 • by PIercy (unregistered)
wow, i really feel sorry for steve. i hate going through code as it is let alone something as poorly written as that.

as for CC card numbers, thats a mistake a 12yo makes when creating scripts for people. a sure WTF!

frist lol

Amateurs!

2008-11-12 09:13 • by The Undroid (unregistered)
Who needs MUMPS for this kind of thing? I see it all the time in MySQL databases.

Re: MUMPS Madness

2008-11-12 09:13 • by Me (unregistered)
Great. Now that they have a web server written in MUMPS, they can write a server-side MUMPS parser, so all of their web apps can be written in MUMPS as well.

Re: MUMPS Madness

2008-11-12 09:13 • by Submarine (unregistered)
99,9% uptime means whole 8 hours of downtime per year
P.S. Freights

Re: MUMPS Madness

2008-11-12 09:15 • by SoonerMatt (unregistered)
I kept accidentally reading:
Normally, hearing that a developer is storing off live credit card numbers

AS
Normally hearing that a developer is LIVING off of stored credit card numbers


I think I my error may have been more correct...

Re: Amateurs!

2008-11-12 09:21 • by dkf
228670 in reply to 228665
The Undroid:
Who needs MUMPS for this kind of thing? I see it all the time in MySQL databases.
I've heard (on this site) that people write SQL databases in MUMPS. I feel sorry for their users.

Re: MUMPS Madness

2008-11-12 09:25 • by Dennis (unregistered)
What's with the wiki [[ ]] markup?

Re: MUMPS Madness

2008-11-12 09:30 • by chuck (unregistered)

N1amOrdr - 1am Order
N2amOrder - 2am Order
...
N11pOrder - 11pm Order
N12mOrder – 12 Midnight Order
N1amSgnt - 1am Signature
...
N12mSgnt - 12m Signature
N1mDtTm - 1am Date/Time
...
N9mDtTm - 9am Date/Time
[ un-named column ]
[ un-named column ]
[ un-named column ]
N1pDtTm - 1pm Date/Time
...
N12DtTm – 12 Midnight Date/Time
N1amUser - 1am User
...
N12mUser – 12 Midnight User
N1amCmmn - 1am Comment
...
N12mCmmn – 12 Midnight Comment

That’s right: At least 5 fields for every hour of the day.


Ouch... yeah, you definitely /don't/ need MUMPS for this kind of thing. In fact, I'd call this a case of someone not really understanding how to use MUMPS... MUMPS uses a hierarchical database, not a relational one, so there's no need for this "namespaced columns" anti-patters. The "table" could have just had children for each hour, and each hour having the date/time/user/comment children beneath it. Even then, there's probably an even better way to handle it, that's just off the top of my head.

Or at least, so says this PHP programmer... :P

Re: MUMPS Madness

2008-11-12 09:38 • by Undisclosed (unregistered)
That sounds very very very familiar.

Re: MUMPS Madness

2008-11-12 09:42 • by cbatologin (unregistered)
The real WTF is how this boring article got published. Can't we have some programming based murder mystery or something? Really, nobody cares about MUMPS, we want murder.

Re: MUMPS Madness

2008-11-12 10:12 • by EatenByAGrue (unregistered)
228678 in reply to 228676
cbatologin:
The real WTF is how this boring article got published. Can't we have some programming based murder mystery or something? Really, nobody cares about MUMPS, we want murder.


What, credit card fraud and embezzlement not good enough for you?

Re: MUMPS Madness

2008-11-12 10:12 • by murder (unregistered)
228679 in reply to 228676
cbatologin:
The real WTF is how this boring article got published. Can't we have some programming based murder mystery or something? Really, nobody cares about MUMPS, we want murder.


did tyson murder steve after learning that steve had deleted his stolen credit card stash?

Re: MUMPS Madness

2008-11-12 10:12 • by mrmunkey
This article is really strange. Either they're using some other version of MUMPS that I'm not aware of, or they don't know MUMPS. I've been working at this hospital for about 6 months doing mostly MUMPS programming.

The MUMPS "database" is set up around the idea of globals that are stored on the drive. Globals are prefixed with "^" to identify them as being a global. Globals act kind of like a multi-dimensional array. The example given of the loop

set ^tnc("scramble","notes",d0,d1)=data


Actually means

SET Global TNC(node "scramble", sub-node "notes", sub-sub-node d0, sub-sub-sub-node d1)=data


A loop would look something like

F S I=1:1:10 D
. W I,!
. Q


In pseudo code that would be

for (int i=1; i<=10; i++) {
echo i;
echo "\n";
}



With all that said, MUMPS works, and it works well. It's just a nightmare to know where all the data is coming from (at least in the product we're using). We have a several thousand page document that documents where all the data is stored.

It's possible that they are using a newer version of MUMPS called Caché, and they can access the database layer that sits on top of the globals. If you care Caché is object relational, which makes for some interesting compatibility issues over ODBC.

Re: MUMPS Madness

2008-11-12 10:16 • by St Mary's Hospital for the Uncurable Damned (unregistered)
MUMPS Madness


I'm waiting for R Madness. Seeing that there are no stories of that kind, I can safely assume that I get my MSc degree one day...

Re: MUMPS Madness

2008-11-12 10:33 • by cbatologineventhoughIshould (unregistered)
228682 in reply to 228678
EatenByAGrue:
cbatologin:
The real WTF is how this boring article got published. Can't we have some programming based murder mystery or something? Really, nobody cares about MUMPS, we want murder.


What, credit card fraud and embezzlement not good enough for you?


No, unless there's rape, murder and a bit of comic tomfoolery it's not good enough.

murder:
cbatologin:
The real WTF is how this boring article got published. Can't we have some programming based murder mystery or something? Really, nobody cares about MUMPS, we want murder.


did tyson murder steve after learning that steve had deleted his stolen credit card stash?


Then raped his corpse?

Captcha : sino - onis - onus - anus - anal rape.

Re: MUMPS Madness

2008-11-12 10:36 • by khanti (unregistered)
228683 in reply to 228681
Ha! I think I interviewed with this company a couple of years ago. The large wood-paneled group meeting hall, the MUMPS-based medical software and the cult-like atmosphere are all eerily familiar. Glad I turned down their offer. I'd hate to have been in Steve's shoes. And to all the other employees there, "Get out while you still can!"

Re: MUMPS Madness

2008-11-12 10:38 • by Resistance
I'd take x * 1.3 * 0.7 over x any time

Re: MUMPS Madness

2008-11-12 10:43 • by b0ttomfeeder (unregistered)
228686 in reply to 228679
murder:
cbatologin:
The real WTF is how this boring article got published. Can't we have some programming based murder mystery or something? Really, nobody cares about MUMPS, we want murder.


did tyson murder steve after learning that steve had deleted his stolen credit card stash?


No, he just bit his ear off.

Re: MUMPS Madness

2008-11-12 10:45 • by snoofle
228687 in reply to 228676
cbatologin:
...programming based murder mystery...

As the pointy haired boss slithered down into the depths of the developers' lair, he inadvertently discovered their evil scheme: to correct the PHB's inept plans and deliver a properly functioning system. "I cannot allow this!" he exclaimed. He grabbed a nearby hatchet, snuck up on the unsuspecting programmers and bludgeoned them to death. He then dragged each carcass back to its cubicle and propped it up in the chair, mitts on the keyboard.

At the next status, it was reported that the staff was not making their deadlines. Senior management wanted proof. The PHB brought them into the cubicle farm only to discover the bodies.

*ominous Dun dun dunnnnnnnnnn*

Take it morbius...

Programmers with Filthy Souls

2008-11-12 10:49 • by Benanov
228688 in reply to 228687
snoofle:
cbatologin:
...programming based murder mystery...

As the pointy haired boss slithered down into the depths of the developers' lair, he inadvertently discovered their evil scheme: to correct the PHB's inept plans and deliver a properly functioning system. "I cannot allow this!" he exclaimed. He grabbed a nearby hatchet, snuck up on the unsuspecting programmers and bludgeoned them to death. He then dragged each carcass back to its cubicle and propped it up in the chair, mitts on the keyboard.

At the next status, it was reported that the staff was not making their deadlines. Senior management wanted proof. The PHB brought them into the cubicle farm only to discover the bodies.

*ominous Dun dun dunnnnnnnnnn*

Take it morbius...


Bludgeoning with a hatchet is the real WTF.

Re: MUMPS Madness

2008-11-12 10:57 • by KD (unregistered)
Congratulations on the promotion Mark, I hope your articles are better than your comics (I'm joking, I love MFD really...)!

Re: MUMPS Madness

2008-11-12 11:06 • by dkf
228692 in reply to 228685
Resistance:
I'd take x * 1.3 * 0.7 over x any time
Great! More money left for me!

(x * 1.3 * 0.7 is x * 0.91)

Re: MUMPS Madness

2008-11-12 11:06 • by Anon (unregistered)
Just replace all mentions of MUMPS with blow job and the story is much better!

Re: MUMPS Madness

2008-11-12 11:24 • by dhromed
The scene was a three-hour, seemingly unending procession of PowerPoint slides with enough laser pointers to take down an incoming ICBM.


I am amused.

Re: MUMPS Madness

2008-11-12 11:39 • by Steve (unregistered)
I guess the question to ask after reading this horror story is: did the system work? And did it work any better after it was audited (modulo removing the credit card numbers, which is certainly a Good Thing, though, given the load of other personal information in the system may have been largely moot from an identity theft standpoint)?

Sometimes, as ugly as a system might be, if it ain't broke, don't fix it.

Just sayin'.

Re: MUMPS Madness

2008-11-12 11:41 • by mjk340
So, working in a red taped filed corporate environment on a proprietary, poorly implemented system is a WTF? I thought this was the model that the entire for-profit IT industry was based on.

Re: MUMPS Madness

2008-11-12 12:04 • by Fuzzypig (unregistered)
When I read that line about hiving off the numbers "just in case", a chill ran down my spine!

Nothing I despise more than "job-safers", refusing to document and obsfucate so management won't fire their sorry asses!

Re: MUMPS Madness

2008-11-12 12:05 • by tragomaskhalos (unregistered)
You've got to love an environment that allows you to create unnamed columns in your database tables. Stitch THAT, maintenance programmers !

Re: MUMPS Madness

2008-11-12 12:07 • by Valerion (unregistered)
In the mid-nineties I worked tech support for a (then) huge online service/ISP. Think "had been-around-a-long-time-and-not-AOL".

Anyone working support (tech and customer) could access any credit card number for any member because everything was stored for us to see.

Of course, nobody ever used an annoying customer's card details to sign up to porn sites. Oh no.

Re: MUMPS Madness

2008-11-12 12:13 • by Charles400
Bagels and T-shirts... no shit?

Re: MUMPS Madness

2008-11-12 12:18 • by seamustheseagull
Our SAP system (cue: "TRWTF is SAP") has over 70,000 tables, with the vast majority of table names having five characters or less.

I refuse to believe that you could gather any group of SAP developers who can tell what even 10% of those tables are for.

Re: MUMPS Madness

2008-11-12 12:42 • by Edward Royce (unregistered)
228713 in reply to 228676
cbatologin:
The real WTF is how this boring article got published. Can't we have some programming based murder mystery or something? Really, nobody cares about MUMPS, we want murder.


We were waiting for a victim who says he wants a "murder".

Seeeeeeeen one around here?

Re: MUMPS Madness

2008-11-12 12:43 • by Mark (unregistered)
228714 in reply to 228710
seamustheseagull:
Our SAP system (cue: "TRWTF is SAP") has over 70,000 tables, with the vast majority of table names having five characters or less.

I refuse to believe that you could gather any group of SAP developers who can tell what even 10% of those tables are for.


If all table names are <= 5 alpha characters then that gives you 32^5 = 33,554,432 different table names. Surely SAP needs more tables!

Re: MUMPS Madness

2008-11-12 12:44 • by Edward Royce (unregistered)
228715 in reply to 228692
dkf:
Resistance:
I'd take x * 1.3 * 0.7 over x any time
Great! More money left for me!

(x * 1.3 * 0.7 is x * 0.91)


Nobody in accounting ever noticed?

Re: MUMPS Madness

2008-11-12 12:46 • by Edward Royce (unregistered)
228717 in reply to 228714
Mark:
seamustheseagull:
Our SAP system (cue: "TRWTF is SAP") has over 70,000 tables, with the vast majority of table names having five characters or less.

I refuse to believe that you could gather any group of SAP developers who can tell what even 10% of those tables are for.


If all table names are <= 5 alpha characters then that gives you 32^5 = 33,554,432 different table names. Surely SAP needs more tables!


Better yet convert SAP to Chinese or some other ideographic language with 15,000+ characters.

Bounty of Tables!

Re: MUMPS Madness

2008-11-12 12:50 • by Daniel (unregistered)
I really don't see the point of analysing MUMPS "tables" as if they were structured like relational databases instead of B* tree's that they are.

Re: Programmers with Filthy Souls

2008-11-12 12:51 • by snoofle
228719 in reply to 228688
Benanov:


Bludgeoning with a hatchet is the real WTF.

Not really; I have something - not really sure what to call it - that has a hatchet blade on one side and what can only be called an 8 inch spike on the other - you could easily bludgeon someone with it and then use the hatchet to ... well, you know ;)

Re: MUMPS Madness

2008-11-12 12:54 • by Jamie (unregistered)
228720 in reply to 228710
Let's see:
- Covert insertion of obfuscated code (or at least, uncommented!)
- Attempted to hide the data by obscuring the data
- Attempted to circumvent an action to keep the company from privacy violations, legal problems, and hefty fines


The Real WTF: Why was he not fired on the spot?
People get fired for far less than that!

Re: MUMPS Madness

2008-11-12 13:02 • by ContraCorners
"To summarize, if you’re associating MUMPS with the awful disease of the same name, you’re very close."

Not hardly, the disease has been nearly eradicated.

Re: MUMPS Madness

2008-11-12 13:06 • by Jay (unregistered)
228723 in reply to 228714
Mark:
seamustheseagull:
Our SAP system (cue: "TRWTF is SAP") has over 70,000 tables, with the vast majority of table names having five characters or less.

I refuse to believe that you could gather any group of SAP developers who can tell what even 10% of those tables are for.


If all table names are <= 5 alpha characters then that gives you 32^5 = 33,554,432 different table names. Surely SAP needs more tables!


If they are alpha characters, where do you get 32 possibilities? What alphabet are you using? Last I checked the Latin alphabet had 26 if only one case is allowed, 52 if we distinguish. Greek has 24. Russian has 33. ...

Re: MUMPS Madness

2008-11-12 13:09 • by Mattintosh (unregistered)
228724 in reply to 228687
You said "status"... *chuckle*

Re: MUMPS Madness

2008-11-12 13:21 • by Anon (unregistered)
228726 in reply to 228723
Jay:
Mark:
seamustheseagull:
Our SAP system (cue: "TRWTF is SAP") has over 70,000 tables, with the vast majority of table names having five characters or less.

I refuse to believe that you could gather any group of SAP developers who can tell what even 10% of those tables are for.


If all table names are <= 5 alpha characters then that gives you 32^5 = 33,554,432 different table names. Surely SAP needs more tables!


If they are alpha characters, where do you get 32 possibilities? What alphabet are you using? Last I checked the Latin alphabet had 26 if only one case is allowed, 52 if we distinguish. Greek has 24. Russian has 33. ...


Polish and estonian, for example. Mostly the latin alphabet but with a bunch of extra letters and a few missing. I'm sure there are others with the same letter count.

Re: Programmers with Filthy Souls

2008-11-12 13:43 • by Dirk Diggler (unregistered)
228730 in reply to 228719
snoofle:
Benanov:


Bludgeoning with a hatchet is the real WTF.

Not really; I have something - not really sure what to call it - that has a hatchet blade on one side and what can only be called an 8 inch spike on the other - you could easily bludgeon someone with it and then use the hatchet to ... well, you know ;)
A hatchet with an 8 inch spike? Is it intended to be a tool or a fighting weapon? I'm looking at a fire axe right now, the spike is only 3-4 inches. You could put your eye out with that thing.

Re: MUMPS Madness

2008-11-12 13:55 • by Mark (unregistered)
228732 in reply to 228723
Jay:
Mark:
seamustheseagull:
Our SAP system (cue: "TRWTF is SAP") has over 70,000 tables, with the vast majority of table names having five characters or less.

I refuse to believe that you could gather any group of SAP developers who can tell what even 10% of those tables are for.


If all table names are <= 5 alpha characters then that gives you 32^5 = 33,554,432 different table names. Surely SAP needs more tables!


If they are alpha characters, where do you get 32 possibilities? What alphabet are you using? Last I checked the Latin alphabet had 26 if only one case is allowed, 52 if we distinguish. Greek has 24. Russian has 33. ...


Clearly you had your morning coffee before commenting. I, sir, did not.

26^5 = 11,881,376

There. Fixed it. Now someone call SAP, we kan haz lots mor tablez!

Re: Programmers with Filthy Souls

2008-11-12 13:59 • by obediah
228733 in reply to 228688
Benanov:

Bludgeoning with a hatchet is the real WTF.


I'm guessing snoofle is a programmer at Bethesda ( that's a dumbing down of video games zing for the grown ups in the audience ).

Also, I'm calling shenanigans. If the CASTLE team was able to create and orphan hundreds of such horrible, terrible tables over decades, then surely the code would be riddled with useless references to these tables, nasty side effects, etc. Doing the analysis and testing to safely remove these tables from production would not be a project that one person could step in and do in a few months.

Re: Programmers with Filthy Souls

2008-11-12 14:08 • by the-moss
228734 in reply to 228733
Epic fail!

Re: MUMPS Madness

2008-11-12 14:15 • by Dan (unregistered)
228735 in reply to 228680
Seriously now, you're just effing with my head for sport, aren't you?

Re: MUMPS Madness

2008-11-12 14:19 • by Dan (unregistered)
228737 in reply to 228709
Charles400:
Bagels and T-shirts... no shit?

I prefer cream cheese myself...

PS. CAPTCHA = "Eros"....yeah baby YEAH!

Re: Programmers with Filthy Souls

2008-11-12 14:20 • by pointy (unregistered)
228738 in reply to 228730
Dirk Diggler:
snoofle:
Benanov:


Bludgeoning with a hatchet is the real WTF.

Not really; I have something - not really sure what to call it - that has a hatchet blade on one side and what can only be called an 8 inch spike on the other - you could easily bludgeon someone with it and then use the hatchet to ... well, you know ;)
A hatchet with an 8 inch spike? Is it intended to be a tool or a fighting weapon? I'm looking at a fire axe right now, the spike is only 3-4 inches. You could put your eye out with that thing.


A Pickaxe type tool?

Re: MUMPS Madness

2008-11-12 14:22 • by Glow-in-the-dark (unregistered)
228739 in reply to 228707
Valerion:
In the mid-nineties I worked tech support for a (then) huge online service/ISP. Think "had been-around-a-long-time-and-not-AOL"


If I recall correctly they serve-d moderately OK from their Compu-ters (and made me go back to BBS use as it was seriously cheaper)..

Having everything accessible isn't news. I once audited a big law firm which handled gazillion dollar cases. When I took their IT apart I discovered every single senior partner (the ones collecting the real big bonuses) had their harddisk shared at the root "so the techies could fix things easier" - and they bought that line, hook, line and sinker. Needless to say, that was the first to go once we had a support process set up..

:-)
« PrevPage 1 | Page 2Next »

Add Comment