• Derp (unregistered)

    Frist

  • Geoff J (unregistered)

    Sceond - how brillant!

  • JustSomeDudette (unregistered)

    Wow - that's erm, yeah. Good luck with that.

  • PWolff (nodebb)

    (Did I miss something? All I found were comments about something with "if" and "IE" and some number.)

    But isn't trusting in built-in key management so un-enterprisey? Wouldn't it be better to add just "More Dakka", here more and bigger processors that could run the routines on more different threads?

  • Yazeran (unregistered)

    Oh wow.

    This is even worse than my first db project (some 12 years ago when my only db education was chapter 1 - 3 in 'sql for dummies') where I stored primary and foreign keys as varchars, but even i only had a single key in each field (I hadn't heard about normalization or db-enforced relations either at that point, so orphans etc were possible)....

    So I', glad that I do not have to untangle todays story's mess.....

    Yazeran

    Plan: To go to Mars one day with a hammer

    PS: And I still get 'Illegal arguments: string, object' when trying to log in....

  • dkf (nodebb) in reply to Yazeran

    I still get 'Illegal arguments: string, object' when trying to log in...

    If you could log in, you'd also get some pretty dubious arguments.

  • Your Name (unregistered)

    Is it just me or is the real wtf comparing react to flash and silverlight?

  • Inari Pooltoy (google)

    Adobe didn't release Flash, Macromedia did. Macromedia wasn't acquired by Adobe until the mid 2000s.

    Addendum 2016-10-04 09:28: Sorry, FutureWave was the original creator, Macromedia acquired FutureWave. Although it should be said, that Adobe Flash is a mere husk of the original Macromedia Flash software.

  • grasshoppa (unregistered)

    Every now and then I start feeling self-conscious about my coding and database dev skills, I run across stuff like this ( although sadly, in a more private and intimate environment..ie: work ), and I start feeling better about things.

    I may be "just" devops ( or whatever us network admins are called anymore ), but at least I can create and optimize a database.

    That said, I'm willing to bet that if we looked a bit deeper, we'd find the FK definitions in an XML file ( that doesn't validate no less ). Because THAT would be enterprisy.

  • snoofle (unregistered) in reply to Inari Pooltoy

    All true, but I didn't want to go too far down that tangent as TRWTF wasn't with the UI stuff...

  • isthisunique (unregistered)

    I ended up doing something like this once as a hack for inventories and not having a budget for a DB server to handle a standard intersection table. There was no limit on the inventory size and it wasn't practical to apply one. You ended up with a*b with a being things people could own and b being the number of users. These two things kept growing and so did the enormous index needed to maintain it. No one had done any design when I inherited it and never thought to do anything like create groups of a rather than always individual items.

    Some relational databases it's just more efficient to store a list for each user and hope no one is going to ask for a list of who owns such and such (although you can maintain a list for that as well). How you want to compact and sort the list is really up to you. Most of the time all you really need to support is accessing by user->items rather than item->users.

    I never had time to look at solutions beyond that as I moved on when they ran out of money.

  • Mikes (unregistered)

    PK?

    PK, the film? PK, Pakistan International Airlines? PK, the magic number used in zip archives? PK, the Iranian automobile? PK, the machine gun? PK, Preacher's Kid?

  • TimeBandit (nodebb) in reply to Mikes
    Comment held for moderation.
  • Primary Key (unregistered) in reply to Mikes

    Primary Key. The FK is the Foreign Key.

    Just wait, someone will remark very shortly that Foreign Keys are not allowed without a green card.

  • Why Wait? (unregistered) in reply to Primary Key

    You already did.

  • Brian Boorman (google) in reply to Primary Key

    Foreign Keys are not allowed without a green card

    Sure they are. You just call them "Undocumented Workers" (even if they don't work), hand them a driver's license and a social benefits card. In the battleground states, you even register them to vote as Democrats.

  • Anon (unregistered)

    I don't know about React, but Flash and Silverlight got a foothold in the business world because HTML4 just didn't cut it (UI, ease of development, maintainability, etc.). TRWTF is that the above are in the process of being banished even though there still isn't a good [device agnostic] alternative.

    Or maybe TRWTF is that business thought it needed these technologies in the first place. If we hadn't gone down the black hole of browser-based applications, maybe we would be that much farther ahead right now.

  • Developer Dude (google)

    Cluster-O-WTF™

    Thanks - I am stealing that to use in an upcoming meeting.

  • Matt Westwood (unregistered) in reply to Brian Boorman

    "... you even register them to vote as Democrats."

    How does that work? When you register to vote, do you have to announce which way you're going to vote at that point, or are you only allowed to be given the opportunity of voting if you agree to vote the way your'e told to? Do they put a camera in the booth to make sure you voted in the correct way? OR do they just correlate the number on the ballot paper with your name on the register and check that you actually did vote the way you were supposed to? I'm confused, I need to have it explained how democracy works.

  • Brian Boorman (google) in reply to Matt Westwood

    At least everywhere that I've lived (in the US), you register to vote as a member of a specific political party or as an independent. It doesn't oblige you to vote that way (but you usually do, otherwise why would you join that party in the first place). The only time you have to have to vote with your party is during the primary, because, well, you're choosing who your party's candidate will be for the general election. Most states in the US have closed primaries, so you can't vote, for example, in the Republican primary if you're registered as a Democrat. That's where Independents get left out of that process (again, unless it's an "open-primary" state).

  • Concerned DBA (unregistered)

    The first rule most dba's have is no application touches the schema. Either this company has no dba or they have no clue what they are doing or both.

  • Ext3h (unregistered)

    Not like my first attempts at relational databases looked any better, a decade ago.

    Too lazy to express the relations in the schema? Just dump a JSON like serialization of the objects into the database. Well, nowadays would would call that NoSQL, so maybe it was just a little "ahead of time". (Just kidding. That's a horrible thing to do. Same as most schema "free" NoSQL databases enforce you to get the schema right on the first attempt, as later schema changes lead to very inconvenient situations such as inconsistent indexes (because only data inserted AFTER creation of an index gets listed), which you can't even solve using rubber-band techniques like lazy migration and alike.)

    Storing primary keys in serialized form, and the run a full text search to join tables? Have seen that as well in projects I maintained - and I got to say, using the FULLTEXT index was surprisingly competitive in terms of performance when compared to a cross table. Mostly since you can rely on the database properly tokenizing your serialized key list, so the index itself behaves (integrity apart) very similar to the cross table.

    It's nothing you ever want to do in your application of database schema, but it's one of the rare cases where the backing implementations coincidentally almost fulfill your requirements regardless of being completely abused.

  • bvs23bkv33 (unregistered)

    PK = Player Killer (from MMORPG)

  • urkerab (nodebb)

    Huh, I always thought arrays had indices and tables had indexes.

  • Norman Diamond (unregistered)

    Sorry, FutureWave was the original creator, Macromedia acquired FutureWave. Although it should be said, that Adobe Flash is a mere husk of the original Macromedia Flash software.

    All true, but I didn't want to go too far down that tangent as TRWTF wasn't with the UI stuff...

    That's a shock.

  • Norman Diamond (unregistered)

    PK, the film? PK, Pakistan International Airlines? PK, the magic number used in zip archives? PK, the Iranian automobile? PK, the machine gun? PK, Preacher's Kid?

    Th Dly Wht Th Pk.

  • Karl (unregistered)

    I wish there were a way to configure a database to give the performance you would get with millions of rows when you only have a few rows. People need to get hit with slow queries when they're first designing the thing.

  • kurkosdr (unregistered)

    Boy, if I only had come across this when I was undergraduate... so I can show it to the professor and say "see? Everything we are going do won't be that bad, and keep in mind this is a code that entered production".

    PS: Anyone else here thinks that some formal education (aka Computer Science degree) must be legally required to be a Software Developer, as is the case with medical doctors and civil engineers. The reason we have so many "software developers" doing such atrocities to a database or the reason we have so many SQL injection vulnerabilities is because there are so many physicists/mathematicians/finance-guys/MBAs-of-all-kinds posing as "software developers"

  • Ex-lurker (unregistered) in reply to Concerned DBA

    Wait. Their database doesn't have PKs or FKs, nobody ever pointed out how WTF that is and you're still thinking they might have a f*ing DBA??????

  • Anon-Anon (unregistered) in reply to kurkosdr

    Agreed, honestly.

    I think at some point CS will be as regulated as Architecture or Engineering, and you'll need a professional license with continuing education to work on large scale applications.

    All it will take is a few more massive security breaches and more maturity in the dev community.

  • Yazeran (unregistered) in reply to Anon-Anon

    I hope you are right, but chances are we wont see that coming.

    Too many big companies would loose MASSIVE amount of money on that (and they are the ones paying the politicians after all).

    If we do get that, Microsoft, Oracle, IBM, CSC, Samsung and possibly Apple would go out of business as they would not be able to afford hiring all those software engineers necessary to prevent any software glitches (and their software are already far too complex to be fixed so that no security breaches and/or buffer overruns etc can be guaranteed to be gone.

    Only open source software would have any chance of being used (as there is no sale per see, and therefore not applicable to consumer protection laws as people download and install on their own risk), and none of the big ones would earn any money on that...

  • Scott Christian Simmons (google)

    Huh. It seems to me that if the database layer is properly encapsulated from the data connectivity API, you could just make a real database with a wrapper that emulated what the API expected to see, and ...

    Wait, I just re-read the first clause of that sentence, and started laughing bitterly, completely by reflex. Fred, you have my eternal sympathy.

  • Fred (unregistered) in reply to Scott Christian Simmons

    Scott, many thanks for your compassion. It was never easy and "Cluster-O-WTF" comes awfully short to describe what we were facing at the dark hours of late 2015.

Leave a comment on “Re-Relational”

Log In or post as a guest

Replying to comment #:

« Return to Article