• Johnny Mac (unregistered)

    Sometimes I wonder if that's not how Microsoft SQL Server is implemented internally. :)

  • (cs)

    The real WTF is:

    A) This idiot was able to found a company B) This idiot thinks his idea is good C) That Greg had an "exit interview" instead of getting up from the table, saying "You, sir, are a fucking idiot!" and storming out.

    I hate hate hate HATE how idiots like the CEO in this story are able to start businesses.

    Also, never ever trust anyone who says their idea is a "game changer". That's almost always code for "I'm a moron with some money and I think I'm a bigshot but I'm really a scam artist; I want people to build me something that's good enough for me to con money out of suckers before they realize our product is shit."

    Addendum (2010-05-19 11:51): Also I wanted to add in the audio version of this the way the guy voices the CEO sounds like an "I'm gonna rape you" voice if I ever heard one.

  • (cs) in reply to ObiWayneKenobi
    ObiWayneKenobi:
    The real WTF is:

    A) This idiot was able to found a company B) This idiot thinks his idea is good

    Sounds like the late 90's to me.

  • Jani (unregistered) in reply to ObiWayneKenobi

    [quote user = "ObiWayneKenobi"]I hate hate hate HATE how idiots like the CEO in this story are able to start businesses.[/quote] Those who can, do. Those who can't, teach. Those who can't even teach, start businesses.

  • (cs) in reply to Jani

    [quote user="Jani"][quote user = "ObiWayneKenobi"]I hate hate hate HATE how idiots like the CEO in this story are able to start businesses.[/quote] Those who can, do. Those who can't, teach. Those who can't even teach, start businesses.[/quote]

    And, $Deity help me, the rest of us work for them doing what we do.

  • Chester (unregistered)

    If the CEO is making programming choices, surely it's only fair that the programmers make administrative choices? Such as wages? Right?

  • Knux2 (unregistered)

    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

  • TrXtR (unregistered) in reply to ObiWayneKenobi

    The CEO was succesful because crap can get the job done just as well as code that looks perfect and beautifull. It's a WTF if you think the perfect design and perfect code is what will put the food on the table.

    It's still a WTF, but I see no reason to hate him ;)

    capatcha: vulputate??

  • (cs) in reply to Knux2
    Knux2:
    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

    Post of the Day

  • (cs)

    So this guy wanted to make a relational DB into a key-value store?

  • BentFranklin (unregistered) in reply to frits
    frits:
    So this guy wanted to make a relational DB into a key-value store?

    Or an online spreadsheet.

    Hmmm, actually, I wonder how Google docs does it?

  • Foo (unregistered)

    The product is Siebel.

    captcha: damnum (that is a bad product)

  • vtcodger (unregistered)

    From a very short lived employee hired for a project in a domain far away in space and time: "When I signed on for this job I guess that I didn't understand what you wanted me to do. Now that I understand, I don't think I can do it, and I don't think I'd want to do it if I could"

  • GLaDOS (unregistered) in reply to frits
    frits:
    So this guy wanted to make a relational DB into a key-value store?

    And then give it a cutesy name like Cassandra or Voldemort?

  • (cs) in reply to GLaDOS
    GLaDOS:
    And then give it a cutesy name like Cassandra or Voldemort?

    You forgot to drop a vowel out. Cassandr or Voldemrt.

  • Skeptic (unregistered)

    Funny trick with the Starbucks reference there. And by "funny" I mean "gave me cancer of the eyes."

  • (cs) in reply to GLaDOS
    GLaDOS:
    frits:
    So this guy wanted to make a relational DB into a key-value store?

    And then give it a cutesy name like Cassandra or Voldemort?

    Or an accurate name like BigTable.

  • FuchsDuHastDieGansGestohlen (unregistered) in reply to frits
    frits:
    GLaDOS:
    frits:
    So this guy wanted to make a relational DB into a key-value store?

    And then give it a cutesy name like Cassandra or Voldemort?

    Or an accurate name like BigTable.

    One table to rule them all...

  • Billy The Squid (unregistered)

    This hurt. I've worked with people who wanted things to be generic - they kept tables with the same kind of columns.. They kept incrementing their variables, starting with "i", and ending with "dg" (Confused? Open excel, keep scrolling to the right).

    I sincerely hope the developer in question was able to keep stringing them along, while looking for another job. I'm also curious how long they stayed with the company until they could find something else.

    I may not be a stellar programmer, my experience is mainly with perl, php, sql, and some elementary java, however you don't have to be a strong programmer to understand the basic theory of readability.

    The CEO of the company will likely have a final product, having chewed through countless staff, without a clue as to why people are frustrated - "They couldn't cut it" or "They didn't have the vision" doesn't replace the gut-wrenching horror they would have in trying to develop software like this.

  • (cs) in reply to ObiWayneKenobi
    ObiWayneKenobi:
    Also, never ever trust anyone who says their idea is a "game changer".
    They're just working on change the game to one where they inevitably lose. While having a pretty exterior is necessary to start out with, you've got to have good internals too if you want to sustain the product. Small businesses, they've only ever got one real product (once they grow to have several active products, they're not small businesses any more).
  • (cs) in reply to Johnny Mac

    Anybody else notice the gay rainbows and my little pony theme going on when you click on portions of the page, or did my computer just turn gay?

  • Dave (unregistered) in reply to amischiefr
    amischiefr:
    Anybody else notice the gay rainbows and my little pony theme going on when you click on portions of the page, or did my computer just turn gay?

    I think it's just you.

  • Matthew (unregistered)
    and a savvy CEO that was deeply involved in the design process

    If "game changer" didn't do it, alarm bells should have started ringing right there.

  • EatenByAGrue (unregistered) in reply to dkf
    dkf:
    While having a pretty exterior is necessary to start out with, you've got to have good internals too if you want to sustain the product.

    Ah, the life lessons one can learn from one's ex.

  • (cs) in reply to Knux2
    Knux2:
    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

    Do you, male123, take this personType2, female456, to be your legalDescription2186.567.2.PP2 joinType37 spouseType3, for wealthState31 or for wealthState32, in wellBeingState29 and in wellBeingState30, for all the timeInterval13 of your lives, till lifeState96 do you part?

    I BooleanType.FileNotFound!

  • Justin (unregistered) in reply to Skeptic
    Skeptic:
    Funny trick with the Starbucks reference there. And by "funny" I mean "gave me cancer of the eyes."

    HAHAHA

  • Cygnus (unregistered)

    Greg suffered from anal glaucoma: he couldn't see his butt working there anymore.

  • (cs)

    I don't see what Greg's problem is. If you have a column defined as a signed float for currency, and you want to store a gender in it instead, you just write a wrapper for Company2's application that casts the data appropriately:

    Even values = MALE Odd values = FEMALE Non-integer values = GENDER_NOT_FOUND

    Of course the correct solution (as usual) is to define all columns as binary blobs and do all the parsing, constraints, etc. in the application code.

  • (cs) in reply to Kensey
    Kensey:
    I don't see what Greg's problem is. If you have a column defined as a signed float for currency, and you want to store a gender in it instead, you just write a wrapper for Company2's application that casts the data appropriately:

    Even values = MALE Odd values = FEMALE Non-integer values = GENDER_NOT_FOUND

    Of course the correct solution (as usual) is to define all columns as binary blobs and do all the parsing, constraints, etc. in the application code.

    So is -1.99999995529651 even or odd? Don't tell me it's non-integer, because the user entered -2.

  • Mike (unregistered) in reply to Kensey

    Why would you use a float for currency?

  • Dave (unregistered) in reply to Dave
    Dave:
    amischiefr:
    Anybody else notice the gay rainbows and my little pony theme going on when you click on portions of the page, or did my computer just turn gay?
    I think it's just you.
    Oh wait, there it is. I'm not sure how I missed that after it was pointed out several times.
  • (cs) in reply to snoofle
    snoofle:
    Knux2:
    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

    Do you, male123, take this personType2, female456, to be your legalDescription2186.567.2.PP2 joinType37 spouseType3, for wealthState31 or for wealthState32, in wellBeingState29 and in wellBeingState30, for all the timeInterval13 of your lives, till lifeState96 do you part?

    I BooleanType.FileNotFound!

    Sorry, no. I think that would be

    verb70 pronoun3 punctuationMark14 male123 punctuationMark14 verb43 adjective56 perstonType2 punctuationMark14 female456

    well, you get the idea.

  • MadX (unregistered)

    "His stomach hit an iceberg and started taking on water..."

    And astigmatism to boot. Clearly not a health workplace.

  • klnlbob (unregistered) in reply to Knux2
    Knux2:
    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

    and Competition399 is fly fishing!

  • duque de caxias (unregistered) in reply to frits
    frits:
    Kensey:
    I don't see what Greg's problem is. If you have a column defined as a signed float for currency, and you want to store a gender in it instead, you just write a wrapper for Company2's application that casts the data appropriately:

    Even values = MALE Odd values = FEMALE Non-integer values = GENDER_NOT_FOUND

    Of course the correct solution (as usual) is to define all columns as binary blobs and do all the parsing, constraints, etc. in the application code.

    So is -1.99999995529651 even or odd? Don't tell me it's non-integer, because the user entered -2.

    Its a slightly gay male of course!

  • James (unregistered)

    What exactly is a "chincy" buffet? I can only hope it's a misspelling of "chintzy" rather than a misspelling of a certain racist epithet.

  • Ken B. (unregistered) in reply to Knux2
    Knux2:
    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

    ITYM "SportsTeam29 plays Sport37 and SportsTeam938 plays Sport42".

  • Anon (unregistered)

    Holy crap on toast, that database design hits too close to home. I'm working on a project that's a couple of years old (it's in production but the client constantly wants new features and functionality put in). Our database schema was designed by our boss and it very closely matches this one. He even gave the same reasons too. Except our tables our a thousand columns long, and EVERY LAST COLUMN is defined as VARCHAR(250). When we store multiple instances of objects, we store them consecutively in the same row. Need to have up to two objects, each one contains 10 fields of data? The first object takes up columns 10-19, the other takes up 20-29. It's an ABSOLUTE NIGHTMARE.

    We're working on a new project now and the boss wants to do the same thing with them too. Every developer in the office is now banding together in an effort to persuade him not to.

  • Steve-O (unregistered) in reply to Knux2
    Knux2:
    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

    I don't know... SportsTeam29 seems pretty specific. I'd prefer to see that MediaSignal67 is showing GatheringOfPeople29 v.s. GatheringOfPeople938 at Event191... Now, the New York Rangers can play Croquet against a Women's Right's Parade group at a rap concert.

  • (cs) in reply to Anon
    Anon:
    Holy crap on toast, that database design hits too close to home. I'm working on a project that's a couple of years old (it's in production but the client constantly wants new features and functionality put in). Our database schema was designed by our boss and it very closely matches this one. He even gave the same reasons too. Except our tables our a thousand columns long, and EVERY LAST COLUMN is defined as VARCHAR(250). When we store multiple instances of objects, we store them *consecutively* in the same row. Need to have up to two objects, each one contains 10 fields of data? The first object takes up columns 10-19, the other takes up 20-29. It's an ABSOLUTE NIGHTMARE.

    We're working on a new project now and the boss wants to do the same thing with them too. Every developer in the office is now banding together in an effort to persuade him not to.

    I just recently did a school project (I'm going for my master's part-time) using Amazon SimpleDB: http://aws.amazon.com/simpledb

    It seems like your boss' "design goals" would match-up fairly well with SimpleDB's architecture. Plus, I found it fairly easy to integrate with C# using the API and examples they provided. They also have APIs for Java and PHP, I think. It might be worth pitching to save some headaches for the devs at your company.

  • (cs) in reply to Anon
    Anon:
    Holy crap on toast, that database design hits too close to home. I'm working on a project that's a couple of years old (it's in production but the client constantly wants new features and functionality put in). Our database schema was designed by our boss and it very closely matches this one. He even gave the same reasons too. Except our tables our a thousand columns long, and EVERY LAST COLUMN is defined as VARCHAR(250). When we store multiple instances of objects, we store them *consecutively* in the same row. Need to have up to two objects, each one contains 10 fields of data? The first object takes up columns 10-19, the other takes up 20-29. It's an ABSOLUTE NIGHTMARE.

    Sounds a lot like dynamic typing to me. Isn't that supposed to be a good thing for modern programming? ;)

  • Somedude (unregistered) in reply to snoofle
    snoofle:
    Knux2:
    We should probably re-organize real life to fit this idea. Next on TVStation67, SportsTeam29 is going against SportsTeam938 in Competition399! Stay tuned!

    (Doesn't matter that SportsTeam29 plays basketball and SportsTeam938 plays water polo...it's generic!)

    Do you, male123, take this personType2, female456, to be your legalDescription2186.567.2.PP2 joinType37 spouseType3, for wealthState31 or for wealthState32, in wellBeingState29 and in wellBeingState30, for all the timeInterval13 of your lives, till lifeState96 do you part?

    I BooleanType.FileNotFound!

    Sounds just like my marriage except female456 was messing around with myexfriend69...

  • (cs) in reply to Anon
    Anon:
    Holy crap on toast, that database design hits too close to home. I'm working on a project that's a couple of years old (it's in production but the client constantly wants new features and functionality put in). Our database schema was designed by our boss and it very closely matches this one. He even gave the same reasons too. Except our tables our a thousand columns long, and EVERY LAST COLUMN is defined as VARCHAR(250). When we store multiple instances of objects, we store them *consecutively* in the same row. Need to have up to two objects, each one contains 10 fields of data? The first object takes up columns 10-19, the other takes up 20-29. It's an ABSOLUTE NIGHTMARE.

    We're working on a new project now and the boss wants to do the same thing with them too. Every developer in the office is now banding together in an effort to persuade him not to.

    The seriously deep, terrifying WTF here is not that he did it in the first place, or even that he is going to do it again. As mind bendingly $deity awful this truly is, and WTFery of a nearly immeasurable level, the true horror here is that the previous project was considered successful in his mind. This, to me, is the very essence of a project that is worse than a failure, it is an abomination wrapped in an illusion of a win. There may be PMs and BSAs and suits all patting each other on the back for doing such a great job, and lining up to do the next one the same way. The only viable solution here is a complete genetic purge.

  • ClutchDude (unregistered) in reply to somedude
    somedude:
    Anon:
    Holy crap on toast, that database design hits too close to home. I'm working on a project that's a couple of years old (it's in production but the client constantly wants new features and functionality put in). Our database schema was designed by our boss and it very closely matches this one. He even gave the same reasons too. Except our tables our a thousand columns long, and EVERY LAST COLUMN is defined as VARCHAR(250). When we store multiple instances of objects, we store them *consecutively* in the same row. Need to have up to two objects, each one contains 10 fields of data? The first object takes up columns 10-19, the other takes up 20-29. It's an ABSOLUTE NIGHTMARE.

    We're working on a new project now and the boss wants to do the same thing with them too. Every developer in the office is now banding together in an effort to persuade him not to.

    The seriously deep, terrifying WTF here is not that he did it in the first place, or even that he is going to do it again. As mind bendingly $deity awful this truly is, and WTFery of a nearly immeasurable level, the true horror here is that the previous project was considered successful in his mind. This, to me, is the very essence of a project that is worse than a failure, it is an abomination wrapped in an illusion of a win. There may be PMs and BSAs and suits all patting each other on the back for doing such a great job, and lining up to do the next one the same way. The only viable solution here is a complete genetic purge.

    What makes it ever crazier is that, some way and somehow, these projects are generating income. That's the only logical reason such abominations are allowed to exist, with their blackened, rotten applications sitting in racks of servers.

    Somehow....These projects make money and achieve the goals.

  • Paula (unregistered)

    1.) SELECT COLUMN69 FROM TABLE37 2.) ???????? 3.) SELECT COLUMN101 FROM TABLE23 WHERE COLUMN13 = 'Profit!'

  • EmperorOfCanada (unregistered)

    The horrible WTF is that this company is probably making the owner a bag of cash.

  • Franz Kafka (unregistered) in reply to ClutchDude
    ClutchDude:
    What makes it ever crazier is that, some way and somehow, these projects are generating income. That's the only logical reason such abominations are allowed to exist, with their blackened, rotten applications sitting in racks of servers.

    Somehow....These projects make money and achieve the goals.

    It's because crap is quick to develop and then sell. When it gets big and unmaintainable, you can blame the support devs for sucking and avoid any sort of introspection that would avoid a repeat of this mess.

  • Justin (unregistered) in reply to Franz Kafka

    Am I going to be the first one to call it? I doubt the validity of this story. Its just too much.

  • Some Wonk (unregistered) in reply to Mike
    Mike:
    Why would you use a float for currency?

    Because no one is on the gold standard, anymore.

  • The Real, Non-Random Steve (unregistered) in reply to TrXtR

    I'd like to see how successful he actually was with a table designed to hold any datatype in any column.

Leave a comment on “Astigmatism”

Log In or post as a guest

Replying to comment #:

« Return to Article