I’m a tech interested guy. I’ve touched SQL once or twice, but wasn’t able to really make sense of it. That combined with not having a practical use leaves SQL as largely a black box in my mind (though I am somewhat familiar with technical concepts in databasing).

With that, I keep seeing [pic related] as proof that Elon Musk doesn’t understand SQL.

Can someone give me a technical explanation for how one would come to that conclusion? I’d love if you could pass technical documentation for that.

  • valtia@lemmy.world
    link
    fedilink
    arrow-up
    16
    ·
    edit-2
    5 hours ago

    There can be duplicate SSNs due to name changes of an individual, that’s the easiest answer. In general, it’s common to just add a new record in cases where a person’s information changes so you can retain the old record(s) and thus have a history for a person (look up Slowly Changing Dimensions (SCD)). That’s how the SSA is able to figure out if a person changed their gender, they just look up that information using the same SSN and see if the gender in the new application is different from the old data.

    Another accusation Elon made was that payments are going to people missing SSNs. The best explanation I have for that is that various state departments have their own on-premise databases and their own structure and design that do not necessarily mirror the federal master database. There are likely some databases where the SSN field is setup to accept strings only, since in real life, your SSN on your card actually has dashes, those dashes make the number into a string. If the SSN is stored as a string in a state database, then when it’s brought over to the federal database (assuming the federal db is using a number field instead of text), there can be some data loss, resulting in a NULL.

  • rational_lib@lemmy.world
    link
    fedilink
    arrow-up
    7
    arrow-down
    1
    ·
    edit-2
    4 hours ago

    To me I’m not really sure what his reply even means. I think it’s some attempt at a joke (because of course the government uses SQL), but I figure the joke can be broken down into two potential jokes that fail for different, embarrassing reasons:

    Interpretation 1: The government is so advanced it doesn’t use SQL - This interpretation is unlikely given that Elon is trying to portray the government as in need of reform. But it would make more sense if coming from a NoSQL type who thinks SQL needs to be removed from everywhere. NoSQL Guy is someone many software devs are familiar with who takes the sometimes-good idea of avoiding SQL and takes it way too far. Elon being NoSQL Guy would be dumb, but not as dumb as the more likely interpretation #2.

    Interpretation 2: The government is so backward it doesn’t use SQL - I think this is the more likely interpretation as it would be consistent with Elon’s ideology, but it really falls flat because SQL is far from being cutting-edge. There has kind of been a trend of moving away from SQL (with considerable controversy) over the last 10 years or so and it’s really surprising that Elon seems completely unaware of that.

    • DahGangalang@infosec.pubOP
      link
      fedilink
      arrow-up
      1
      ·
      3 hours ago

      Thanks for genuine response. Lol, most who interpret my question that way you did don’t seem interested in a good faith discussion. But ol’ boy is def tripping if he thinks SQL isn’t used in the government.

      Big thing I’m intending to pry at is whether there would be a legitimate purpose to have duplicated SSNs in the database (thus showing the First Bro doesn’t understand how SQL works).

    • localhost443@discuss.tchncs.de
      link
      fedilink
      arrow-up
      4
      ·
      4 hours ago

      Because that’s really just to be expected at this point, and what his audience would want…

      Better to focus on constantly poking at him for being dumb, which he and his fans hate, rather than give them what they want, ie being upset at their hateful language

  • RabbitBBQ@lemmy.world
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    4 hours ago

    It’s more than just SQL. Social Security Numbers can be re-used over time. It is not a unique identifier by itself.

  • Sparking@lemm.ee
    link
    fedilink
    English
    arrow-up
    15
    arrow-down
    2
    ·
    7 hours ago

    It’s an insanely idiotic thing to say. Federal government IT is myriad, and done at a per agency level. Any relational database system, which the federal government uses plenty of, uses SQL in one way or another. Elon doesn’t know what he is talking about at all, and is being an ultimate idiot about this. Even in the context of mainframe projects thatif we are giving elong the benefit of doubt about referring to, most COBOL shoprbibknow have adapted to addressing internal data records using an SQL interface, although obviously in that legacy world it is insanely fractured and arcane.

    • DahGangalang@infosec.pubOP
      link
      fedilink
      arrow-up
      6
      ·
      5 hours ago

      Yeah, obviously ol’ boy is tripping if he thinks SQL isn’t used in the government.

      Big thing I’m prying at is whether there would be a legitimate purpose to have duplicated SSNs in the database (thus showing the First Bro doesn’t understand how SQL works).

      • AbsentBird@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        4 hours ago

        Well, if someone changes their name you’d add a new record with the same SSN to hold their new name, that way it keeps the records consistent with the paperwork; old papers say their old name and reference the retired record, new papers use their new name and reference the new record.

        You can use the SSN as the key to find all records associated with a person, it doesn’t have to be a single row per SSN, in fact that would make the data harder to manage and less accurate.

        E.g. if someone changes their last name after getting married, it could be useful to be able to have their current and former name in the database for reference.

  • CodeHead@lemmy.world
    link
    fedilink
    English
    arrow-up
    17
    arrow-down
    2
    ·
    8 hours ago

    The US government pays lots of money to Oracle to use their database. And it’s not for BerkleyDB either. (Poor sleepy cat). Oracle provides them support for their relational databases… and those databases use… SQL.

    Now if Musk tries to end the Oracle contracts, then Oracle’s lawyers will go after his lawyers and I’m a gonna get me some popcorn. (But we all know that won’t happen in any timeline… Elon gotta keep Larry happy.)

    • DahGangalang@infosec.pubOP
      link
      fedilink
      arrow-up
      2
      ·
      5 hours ago

      Yeah, obviously ol’ boy is tripping if he thinks SQL isn’t used in the government.

      Big thing I’m prying at is whether there would be a legitimate purpose to have duplicated SSNs in the database (thus showing the First Bro doesn’t understand how SQL works).

    • SloppyPuppy@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      4 hours ago

      He gonna write everything in Pandas. Who the fuck needs to pay hundreds of millions a year to Oracle. (And I bet thats really how much they pay Oracle)

      Also, ohh boy Oracle’s layers… those you dont wanna mess with.

  • dan1101@lemm.ee
    link
    fedilink
    arrow-up
    16
    arrow-down
    1
    ·
    8 hours ago

    The ignorance of Elon is truly concerning, but somehow the worst part to me is Elon calling someone a retard for pointing that out.

    • valkyre09@lemmy.world
      link
      fedilink
      arrow-up
      4
      ·
      edit-2
      8 hours ago

      In our company I’m friends with one of the lead devs. He once told me “no matter what way you look at it, excel is never the answer” lol I’m sure he was a bit biased, but I’ve seen my fair share of macro-ridden abominations over the years

      • Sparking@lemm.ee
        link
        fedilink
        English
        arrow-up
        7
        ·
        7 hours ago

        Excel is accounting workbook software, it is not suitable for data storage. Although people certainly use it that way.

      • arotrios@lemmy.world
        link
        fedilink
        English
        arrow-up
        6
        ·
        7 hours ago

        It’s an amazing tool if only one person is updating / maintaining the file. The moment collaboration starts, you’re all fucked. I’m currently maintaining one that I inherited that is at least 10 years old and comes with a 50 page instruction manual on how to run it every month… that then gets posted to a shared drive where anyone can edit.

        And then the rest of the month is spent explaining to the end users how they fucked it up this time.

        On the flip side, I’ve also built sheets that could parse data between Nav, MySQL, and SQL ERP systems with tables of over 5million rows each on a single button refresh that ran flawlessly for years… because I was the only maintainer and the sheets were locked from accepting changes from other users.

    • zmrl
      link
      fedilink
      arrow-up
      1
      ·
      8 hours ago

      One company I worked for used a shared folder of a ton of these excel sheets all that shared the same format. It was god awful. Thankfully one of the reasons I was hired was helping them migrate to a true SQL solution which enabled a lot of applications to work with their data.

  • Kalkarino@lemmy.world
    link
    fedilink
    arrow-up
    7
    arrow-down
    1
    ·
    10 hours ago

    It doesn’t matter anymore to the trumpers. They are eating this shit up like it’s thanksgiving

  • SloppyPuppy@lemmy.world
    link
    fedilink
    arrow-up
    60
    arrow-down
    2
    ·
    edit-2
    17 hours ago

    As a data engineer for the past 20+ years: There is absolutely no fucking way that the us gov doesnt use sql. This is what shows that he’s stupid not only in sql but in data science in general.

    Regarding duplications: its more nuanced than those statements each side put. There can be duplications in certain situations. In some situations there shouldnt be. And I dont really see how duplications in a db is open to fraud.

    • LifeInMultipleChoice@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      39 minutes ago

      Well we heard what the Whitehouse press secretary has to say about the fraud they found 2 days ago. They found massive amounts and she brought receipts! All of them were examples of money being spent that disagree with Trump’s new policies. Like money spent on DEI initiatives and aid sent to countries in Africa to help slow the spread of HIV. That receipt was for a laughable $57,000.

      Then when asked how any of it was fraud she said, well they consider that fraud because it wasn’t used to help Americans.

      So the 27 year old married to a billionaire 32 years older than her is complaining that the money wasnt directly spent on her gold digging ass, and if it’s not spent directly on her, it’s fraud.

      Biggest disgrace of a government that has ever existed.

    • DahGangalang@infosec.pubOP
      link
      fedilink
      arrow-up
      2
      ·
      11 hours ago

      Yeah, obviously ol’ boy is tripping if he thinks SQL isn’t used in the government.

      Big thing I’m prying at is whether there would be a legitimate purpose to have duplicated SSNs in the database (thus showing the First Bro doesn’t understand how SQL works).

      • abigscaryhobo@lemmy.world
        link
        fedilink
        arrow-up
        4
        arrow-down
        1
        ·
        6 hours ago

        It doesn’t matter without scope. Are we looking at a database of SSNs? tax records? A sign in log? The social security number database might require uniques in some way, but tax records could be the same person over multiple years. A sign in gives a unique identifier but you could be signing in every day.

        It’s like saying a car VIN shows up multiple times in a database. Where? What database? Was it sold? Tickets? Registered every year?

        This is nothing more than a “assume I mean immigrants or tax fraud and get mad!” inflammatory statement with no proof or reason.

      • ExFed@lemm.ee
        link
        fedilink
        arrow-up
        10
        ·
        9 hours ago

        If it’s used as an identifier to link together rows from different tables. Also known as “joining” tables. SSN (with birthdate) is a unique identifier, and so it’s natural to choose as a primary/foreign key.

        • Sparking@lemm.ee
          link
          fedilink
          English
          arrow-up
          2
          ·
          7 hours ago

          It really is baffling trying to make sense of what he is saying. It’s like the only explanation that makes any sense at all is that he has no idea what he is talking about. Even if he knew just cursory knowledge about database cardinality you wouldn’t say stuff so stupid.

  • Honytawk
    link
    fedilink
    English
    arrow-up
    28
    arrow-down
    3
    ·
    16 hours ago

    He is saying the US government doesn’t use structured databases.

    At least 90% of all databases have a structure.

    • DahGangalang@infosec.pubOP
      link
      fedilink
      arrow-up
      2
      ·
      11 hours ago

      Yeah, obviously ol’ boy is tripping if he thinks SQL isn’t used in the government.

      Big thing I’m prying at is whether there would be a legitimate purpose to have duplicated SSNs in the database (thus showing the First Bro doesn’t understand how SQL works).

      • Sparking@lemm.ee
        link
        fedilink
        English
        arrow-up
        5
        ·
        7 hours ago

        As someone explained in another comment, you often duplicate information due to rules around cardinality to gain improvements in retrieval an. structure. I would be pretty worried if SSSNs were being used as a a widepread primary key in any set of tables - those should generally be UUIDs that can be optimized for gashing while avoiding collisions.

        Even if we are being generous to Elon, we could assume that social security payments are processed on mainframes given how many have to go out and the legacy nature of the program. Most mainframe shops I know have adapted an SQL interface for records in some capacity, but who knows what he is looking at.

        Government federal IT is done at a per agency basis. I would say oracle database is pretty much the most licensed piece of software the government does use outside of Redhat Linux and windows desktop.

  • John Doe@lemmy.world
    link
    fedilink
    arrow-up
    53
    arrow-down
    2
    ·
    edit-2
    19 hours ago

    Musk’s statement about the government not using SQL is false. I worked for FEMA for fourteen years, a decade of which was as a Reports Analyst. I wrote Oracle SQL+ code to pull data from a database and put it into spreadsheets. I know, I know. You’re shocked that Elon Musk is wrong. Please remain calm.

    • DahGangalang@infosec.pubOP
      link
      fedilink
      arrow-up
      2
      ·
      11 hours ago

      Yeah, obviously ol’ boy is tripping if he thinks SQL isn’t used in the government.

      Big thing I’m prying at is whether there would be a legitimate purpose to have duplicated SSNs in the database (thus showing the First Bro doesn’t understand how SQL works).

    • whoisearth@lemmy.ca
      link
      fedilink
      arrow-up
      11
      ·
      17 hours ago

      I work for a crown corp in Canada we have, off the top of my head, about 800 MSSQL, Oracle, MySQL/MariaDB, Postgres databases across the org (I manage our CMDB). Musk is a retard. The world runs on SQL.

      He wouldn’t know this though because he’s a techbro that builds apps with MongoDB b cause he doesn’t understand what normalizing data is and why SQL is the best option for 99.9999999% of applications.

      Fucking idiots.

    • jve@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      16 hours ago

      As a former DOD contractor I can also confirm we built whole platforms that use Oracle (shudder) SQL

  • Hawk@lemmynsfw.com
    link
    fedilink
    arrow-up
    43
    ·
    edit-2
    17 hours ago

    Its because the comments he made are inconsistent with common conventions in data engineering.

    1. It is very common not to deduplicate data and instead just append rows, The current value is the most recent and all the old ones are simply historical. That way you don’t risk losing data and you have an entire history.
      • whilst you could do some trickery to deduplicate the data it does create more complexity. There’s an old saying with ZFS: “Friends don’t let friends dedupe” And it’s much the same here.
      • compression is usually good enough. It will catch duplicated data and deal with it in a fairly efficient way, not as efficient as deduplication but it’s probably fine and it’s definitely a lot simpler
    2. Claiming the government does not use SQL
      • It’s possible they have rolled their own solution or they are using MongoDB Or something but this would be unlikely and wouldn’t really refute the initial claim
      • I believe many other commenters noted that it probably is MySQL anyway.

    Basically what he said is incoherent inconsistent with typical practices among data engineers to anybody who has worked with larger data.

    In terms of using SQL, it’s basically just a more reliable and better Excel that doesn’t come with a default GUI.

    If you need to store data, It’s almost always best throw it into a SQLite database Because it keeps it structured. It’s standardised and it can be used from any programming language.

    However, many people use excel because they don’t have experience with programming languages.

    Get chatGpt to help you write a PyQT GUI for a SQLite database and I think you would develop a high level understanding for how the pieces fit together

    Edit: @zalgotext made a good point.

    • zalgotext@sh.itjust.works
      link
      fedilink
      arrow-up
      15
      ·
      18 hours ago

      Great explanation, but I have a tiny, tiny, minor nit-pick

      Basically what he said is incoherent to anybody who has worked with larger data.

      I’m being pedantic, but I disagree with your wording. As a backend dev, I work with relational databases a ton, and what Musk said wasn’t incomprehensible to me, it just sounded like something a first year engineer fresh out of college would say.

      Again, the rest of your explanation is spot on, absolutely no notes, but I do think the distinction between “adult making up incomprehensible bullshit” and “adult cosplaying as a baby engineer who thinks he’s hot shit but doesn’t know anything beyond surface level stuff” is important.

    • turtle [he/him]@lemm.ee
      link
      fedilink
      English
      arrow-up
      4
      ·
      17 hours ago

      There’s an old saying with ZFS: “Friends don’t let friends dedupe”

      That’s a bad example to reference. The ZFS implementation of deduplication is poorly thought out, and I say that even though I like and run ZFS on my own Linux server(s). I understand that the BTRFS implementation of dedupe works well (no first-hand experience), and the Windows one works great (first-hand experience).

      • Hawk@lemmynsfw.com
        link
        fedilink
        arrow-up
        1
        ·
        15 hours ago

        I’ve had a poor experience with btrfs dedupe tbh (and a terrible experience with qgroups), however, this was years ago. Btrfs snapshots I prefer though, much easier not to have that dependence.

        What distro are you using for ZFS, void?

    • finitebanjo@lemmy.world
      link
      fedilink
      arrow-up
      3
      arrow-down
      22
      ·
      20 hours ago

      It was a great answer until the very last sentence. ChatGPT is never a reference for anything ever if you have any fraction of a brain.

      • Lemminary@lemmy.world
        link
        fedilink
        arrow-up
        19
        arrow-down
        2
        ·
        20 hours ago

        I have a fraction of a brain, I think, and use ChatGPT as a guide so that I have something to start with. Even if it’s slightly off, my two brain cells can pick it out and go from there. It’s not so bad.

        And you know, I get it if you don’t like AI, but let’s be honest about it at the very least.

          • Lemminary@lemmy.world
            link
            fedilink
            arrow-up
            7
            arrow-down
            1
            ·
            19 hours ago

            I mostly ask it things I don’t know, though. I’m not exporting my thinking to it.

            I ask it difficult translations, how to code something I’m unfamiliar with, help with grammar, i use it as an OCR for other languages, to help me remember things I can’t directly search, etc. I have a hard time believing all use is detrimental, especially when you’re filling in the gaps of your knowledge and a best guess will do. It’s surely better than a web search for things you don’t even know how to write in a search box.

            • finitebanjo@lemmy.world
              link
              fedilink
              arrow-up
              5
              arrow-down
              14
              ·
              19 hours ago

              I mostly ask it things I don’t know, though. I’m not exporting my thinking to it.

              Exhibit A

              • Lemminary@lemmy.world
                link
                fedilink
                arrow-up
                5
                arrow-down
                1
                ·
                edit-2
                10 hours ago

                Which are then obviously confirmed with a web search. Jesus, spare me the cynicism.

                And I’m just going to say this as a general observation, but the user base of the fediverse is pretty sophisticated at this time to be assuming shit like this. You make this place hostile by not giving the benefit of the doubt, you know. And even then. How hard is it to not think the worst of everyone you come across online? So ridiculous and petty.

      • Hawk@lemmynsfw.com
        link
        fedilink
        arrow-up
        4
        arrow-down
        2
        ·
        19 hours ago

        I disagree, it’s just a tool. It’s a fantastic way to template applications very quickly, particularly for those who are not already familiar with technologies and may not have the time or opportunity to play around with things otherwise.

        Llm is not a search engine and it can produce awful code. This is not production code, it’s for tinkering. As a sandbox tool, LLMs are fantastic.

        On the ethical side of things, yeah openAI sucks, Qwen2.5 would be up to this task, one can run that locally.

        • finitebanjo@lemmy.world
          link
          fedilink
          arrow-up
          5
          arrow-down
          5
          ·
          19 hours ago

          It’s a disinformation machine which completely lacks all context. If it’s about 85% accurate to average internet denizens and 15% halucination, then it’s an absolutely atrocious source to learn from. You’re literally lying to yourself, that is what the tool does.

          • Hawk@lemmynsfw.com
            link
            fedilink
            arrow-up
            4
            arrow-down
            2
            ·
            17 hours ago

            Well Ive ad a great time using LLMs to sandbox a dozen implementations and then investigate the shortcoming and advantages of different implementations.

            Mistakes happen a lot but they can be managed on a small MWE with a couple of tests.

            It’s how the tool is used more than any given tool being bad.

            I understand your point and you’re not wrong. However, I’m not wrong either and you should take a second look at how you might use these tools in a way that makes your life easier and addresses the valid limitations you’ve described.