How Roman numerals broke the official dog database.

Sdílet
Vložit
  • čas přidán 13. 04. 2022
  • Check out the Jane Street Academy of Math and Programming and do pass on to any one who could benefit. www.janestreet.com/join-jane-...
    If you like mono-media, here is A Podcast of Unnecessary Detail. festivalofthespokennerd.com/p... I talked about the 37 Dogs problem in season 01, episode 05.
    And while I'm plugging things: did you know Skylab the Dog has her own CZcams channel? Well you do now. Good human. / skylabthedog
    The official American Kennel Club naming restrictions:
    www.akc.org/register/informat...
    See the full 50^39 × 37 number of combinations for yourself.
    www.wolframalpha.com/input?i=...
    Cheers to my Patreon supporters who help make this channel possible. Given I now have 10^81 dogs to feed, their support is needed now more than ever. / standupmaths
    CORRECTIONS:
    - Yes, at 08:01 I say "I" when I mean "X". I didn't notice until we were in the edit. X decxded xt was somethxng X could lxve wxth.
    - If you spot anything else just let me know!
    Filming, greenscreen and editing by Alex Genn-Bash
    Main dog by Skylab the Dog
    Sitting dog by Skylab the Dog
    Standing dog by Skylab the Dog
    Walking dog by Skylab the Dog
    Scratching itself dog by Skylab the Dog
    Also walking around dog by Skylab the Dog
    Lying down dog by Skylab the Dog
    Other sitting dog by Skylab the Dog
    Good dog by Skylab the Dog
    Curious dog by Skylab the Dog
    Chasing own tail dog by Skylab the Dog
    Spaaaaace doooooog by Skylab the Dog
    Music by Howard Carter
    Design by Simon Wright and Adam Robinson
    MATT PARKER: Stand-up Mathematician
    Website: standupmaths.com/
    US book: www.penguinrandomhouse.com/bo...
    UK book: mathsgear.co.uk/collections/b...
  • Zábava

Komentáře • 4K

  • @kevskevs
    @kevskevs Před 2 lety +5972

    I, for 1, like Roman numerals.

  • @jasonclark1149
    @jasonclark1149 Před 2 lety +4138

    "One of the main causes of the fall of the Roman Empire was that, lacking zero, they had no way to indicate successful termination of their C programs." -- Robert Firth

    • @chizzicle
      @chizzicle Před 2 lety +219

      @@spencerwhite3400 but then you run into the problem of only having 3999 possible numbers, which makes it somewhat challenging to add 65,535 to anything

    • @Curt_Sampson
      @Curt_Sampson Před 2 lety +27

      Alan Perlis disagreed. Epigram 111:
      Why did the Roman Empire collapse?
      What is the Latin for office automation?

    • @trejkaz
      @trejkaz Před 2 lety +17

      @@Curt_Sampson officium automation?

    • @Curt_Sampson
      @Curt_Sampson Před 2 lety +33

      @@trejkaz My guess would be _automaton officiī_ or _automatum officiī,_ based on what little I remember about how to decline Latin.
      (Your looks like what Google Translate spat out for me. That cannot be trusted for things like this since it knows nothing about Latin grammar, AFIK, it just pattern matches against a database of translations from other sources. The Google Translate output appears to me to be grammatically incorrect.)

    • @vigilantcosmicpenguin8721
      @vigilantcosmicpenguin8721 Před 2 lety +55

      The Romans assumed that the amount of territory controlled by the Roman Empire would always be positive.

  • @132Beats
    @132Beats Před 2 lety +1977

    Fun fact: You can name more than 37 dogs “;drop table *” without the database being full. (no legal advice)

    • @tillorrly1128
      @tillorrly1128 Před 2 lety +226

      Bobby Tables at home.

    • @NomenNescio99
      @NomenNescio99 Před 2 lety +71

      Exploits of a dog owner...

    • @pomelo9518
      @pomelo9518 Před 2 lety +11

      someone explain to me what that does

    • @SkyyySi
      @SkyyySi Před 2 lety +223

      @@pomelo9518 This would be what's known as an SQL injection (simply put, SQL databases are the most common type of database; they've been around for ever and stood the test of time). Basically, if the input into an SQL database like MySQL is not filtered properly, it can quickly lead to it being interpreted as code, which happens all the time. `DROP TABLE` is the SQL command to delete a database table, the asterisk `*` is a so-called wildcard character (special characters to help you select stuff). An asterisk means "insert everything here", or in other words: Delete all database entries.

    • @alfadorfox
      @alfadorfox Před 2 lety +60

      But that uses special characters not on the approved list of special characters! Though interestingly, if you don't need a semicolon to terminate the statement, some SQL injection could theoretically be performed with just the space, apostrophe, and hyphen that ARE allowed... Though again, considering that they are allowed in the first place, they almost certainly have input sanitization or else unexpected string termination from the apostrophe would be the FIRST thing they'd discover.

  • @EvanJonesStudio
    @EvanJonesStudio Před 2 lety +870

    Matt writing 3 as IIV is the most characteristically unnecessary change and im a fan of it

    • @PouLS
      @PouLS Před 2 lety +82

      It's funny because it kind of makes the character longer. The number of characters is the same, but the actual width is different (III vs IIV, 13:21 pixel ratio)

    • @whyamideadindiscord3081
      @whyamideadindiscord3081 Před rokem +35

      IIV also uses more lines than III

    • @MrOdrzut
      @MrOdrzut Před rokem +45

      If you allow more than 1 negative digits some numbers can be interpreted in several ways. For example is IVX=10-(5-1)=6 or (10-5-1)=4?

    • @sciencenerd5041
      @sciencenerd5041 Před rokem +1

      @Johnny Rep I was about to comment about 18!! I’m so glad someone put that that is the way it works for numbers bigger than ten when using wording in Latin.

    • @patrickboyd2726
      @patrickboyd2726 Před rokem +9

      For me it was MMMIM instead of MMMCMXCIX

  • @Fraxxxi
    @Fraxxxi Před 2 lety +810

    "The American Kennel Club used to keep track of dogs with the same name by using Roman numerals. They still do, but they used to, too." -Matt Hedberg

    • @sgttomas
      @sgttomas Před 2 lety +11

      You win 😁

    • @IHateUniqueUsernames
      @IHateUniqueUsernames Před 2 lety +9

      Yea, within context, that made sense, but quoted like this, it's hilarious. Definitely can be better phrased.

    • @secularmonk5176
      @secularmonk5176 Před 2 lety

      6:36 I find this vaguely erotic

    • @ieuanhunt552
      @ieuanhunt552 Před 2 lety

      The only thing I know about the American Kennel club is that they spent decades creating genetic abominations like the Pug.
      Pedigree is another word for horribly inbred

    • @evilectricboy5109
      @evilectricboy5109 Před 2 lety +4

      Who's Matt Hedberg?

  • @ragerancher
    @ragerancher Před 2 lety +1120

    "Assuming all atoms are the same breed of dog" - I wish more of my physics exams started with that assumption.

  • @christinesizemore3
    @christinesizemore3 Před 2 lety +328

    As soon as the numbers came up in the allowed character list, I started imagining dogs named like vanity plates. You just have to name your 38th dog Skyl4b and you're good to go! After a number of generations with similarly constructed names, we'll eventually get around to naming them 5ky148.

    • @Treblaine
      @Treblaine Před rokem +47

      Someone's going to register their dog's name as just fifty zeroes "I wanted my dog to always appear at the beginning of any list" or would that be 50 A's?

    • @purple_sky
      @purple_sky Před rokem +24

      @@Treblaine Big discord servers moment

    • @sophiatheczech1918
      @sophiatheczech1918 Před rokem +23

      5ky148 sounds like something Elon Musk would name his dog.

    • @DajesOfficial
      @DajesOfficial Před rokem +5

      @@Treblaine I guess single zero comes before fifty zeroes

    • @Treblaine
      @Treblaine Před rokem +2

      @@DajesOfficial Hmm, but would the person stupid enough to try that even know that?

  • @MWSin1
    @MWSin1 Před 2 lety +68

    Usually, the AKC registered name isn't a name. It's a manufacturer serial number. It usually includes the name of the kennel the dog is from, a code indicating the litter it is from, a name that often has to fit some theme set by the kennel, and sometimes other weirdness. A quick Google gives me a picture of a dog named "Ableaim Patent Pending MC"

  • @stevewithaq
    @stevewithaq Před 2 lety +2073

    As a database professional, this pains me a great deal. There is no reason (other than a lack of will) that they could not extend that character limit, and absolutely no reason why they should not.

    • @magica3526
      @magica3526 Před 2 lety +451

      and like... why roman numerals? if the system would somehow break with more characters you could still have 100,000 different dogs with the same name using Arabic numerals. seems like more than enough

    • @WuxianTec
      @WuxianTec Před 2 lety +293

      Turns out your are not the only one who finds this frustrating. I know someone who made a 15 minute video about it involving hours if not days of work.

    • @JayConverse
      @JayConverse Před 2 lety +153

      As a professional programmer whose career started on punch cards in the 80's, this doesn't surprise me a bit!

    • @ilonachan
      @ilonachan Před 2 lety +361

      I think it should be a crime to store numeric data in a database as anything other than.... a number. If you want the name to have a Roman numeral appended, just print it that way on the client. Makes LITERALLY EVERYTHING easier for EVERYONE!

    • @Adowrath
      @Adowrath Před 2 lety +163

      My Dad once told me that in their company's product, they had a two-character field for the year (they started sometime in the early 90s). When the 00's came around, since it was infeasible at the time to upgrade the database format across all clients, they instead went 98 -> 99 -> A0 -> A1.
      I believe it's really fixed by now though.

  • @SentientMeatbag
    @SentientMeatbag Před 2 lety +1319

    There's a slight issue with naming every atom in the universe with a 50 character name: there aren't enough atoms to register those names with.

    • @kyleolson8977
      @kyleolson8977 Před 2 lety +129

      That assumes you aren't using compression. You don't necessarily need all the atoms in the universe to register all the atoms in the universe. Depending on the naming and the schemes, you could use less or more.
      But giving them each name tag stickers would be a problem.

    • @williamnathanael412
      @williamnathanael412 Před 2 lety +22

      @@kyleolson8977 How is using compression solving the problem? Isn't there some bits of memory hardware being physically altered to store the data?

    • @erwinmulder1338
      @erwinmulder1338 Před 2 lety +16

      This is where the multiverse comes in. 😏

    • @PaulPassarelli
      @PaulPassarelli Před 2 lety +5

      Data compression! (LOL)

    • @SentientMeatbag
      @SentientMeatbag Před 2 lety +25

      Compression only goes so far. Compressing 50 character names to "1 atom" of storage space each, is already a bit of a stretch. Even then, how would we decompress the data? Where's that data going to go? There aren't any atoms left.

  • @markgearing
    @markgearing Před 2 lety +298

    The reality is, no dog registered with the kennel club is named “Spot”. They’ve all got names like Harry Potter secondary characters, although “Excelsior Ludlum Spottiswoode IV” might get called “Spot” at home

    • @wintaaaaa
      @wintaaaaa Před 2 lety +19

      Hmmm this comment is sussily similar to the one above it

    • @vez3834
      @vez3834 Před 6 měsíci +8

      @@wintaaaaa Often there are spam accounts that copy real top comments that were made early on. You can recognize the spam ones from the profile picture, name or at the very latest the channel description. Links are bad, they want to steal your money :D

    • @Kitten_Kadoodle
      @Kitten_Kadoodle Před 4 měsíci

      @@vez3834this seems like a real account, could be wrong though

    • @theEWDSDS
      @theEWDSDS Před 4 měsíci +1

      @@vez3834 its not a bot its from 2011

    • @vez3834
      @vez3834 Před 4 měsíci

      @@theEWDSDS That's fair, I wouldn't call that the ultimate tell either though. But in this particular case I agree that they probably aren't. I just thought it was valuable enough to educate people on it so they don't fall for it.

  • @mikeanderson6881
    @mikeanderson6881 Před 2 lety +49

    "if you allow multiple Ms, which some people do" - some people would include the Romans. Although III and IV were the most common representations for 3 and 4, you can also find IIV AND IIII.

    • @HipsterShiningArmor
      @HipsterShiningArmor Před rokem +12

      Yeah Roman numerals are way more versatile then people realize. Additive numbers (ex. IIII for 4) really was the most common variant until the subtractive IV became more popular in Medieval times. None of these are wrong as long as the standard is consistent.
      You know what the Romans didn’t do though? Use IL for 49 (and all subsequent derivatives of that). That’s the only Roman numeral trick that some people use that is objectively incorrect.

    • @milestailsprower4555
      @milestailsprower4555 Před rokem

      @@HipsterShiningArmor CXCIIX = 198

  • @christopherbrand5360
    @christopherbrand5360 Před 2 lety +298

    I love the leap from “you could name every atom in the observable universe” to “everything can be dogs!”

  • @MrRevillo
    @MrRevillo Před 2 lety +529

    This is why it's important to pick the correct data type when modelling a database

    • @hoisinholdup
      @hoisinholdup Před 2 lety +16

      It's also important to pick the correct database when registering every atom in the known universe. I heard Mongo is webscale???

    • @kevinpaynter
      @kevinpaynter Před 2 lety +22

      There is a distinct and shameful lack of Roman Numeral as a data type when creating databases.

    • @chrisakaschulbus4903
      @chrisakaschulbus4903 Před 2 lety +15

      @@kevinpaynter Nah... before starting a project i roll some dice. It's 19.
      Well i guess i'll implement a base19 numbering system and only use that.
      That's why the fibonacci script is already 2gb in size.

    • @KenLou
      @KenLou Před 2 lety +2

      VARCHAR, done.

    • @jarrod752
      @jarrod752 Před 2 lety +1

      @@KenLou VARCHAR(6). FTFY.

  • @nlhn638
    @nlhn638 Před 2 lety +39

    My solution:
    IF one adds a space after a name, that doubles the number of names you can have. Therefore our number of names increases for every character not used under the limit.
    Such a system would probably annoy them greatly, however, so they would likely moderize the system.

    • @grapetoad6595
      @grapetoad6595 Před 2 lety +6

      And you could add more than one space so Spot______VI and Spot____VI would both be valid and different dog names.
      Edit: consider the names Skylab and Sky Lab, they are different names, and as such why does the space being at the end and being in the middle make a difference

    • @HansMaximum
      @HansMaximum Před 2 lety +2

      "what's your dog's name?"
      "Spot____34, or was it Spot_____34? Shoot."

    • @Kane0123
      @Kane0123 Před 6 měsíci +1

      Had to scroll to find this comment before I posted it… “Spot” is a good boy, so is “Spot “. “ Spot” however is a little rascal.

    • @GunSpyEnthusiast
      @GunSpyEnthusiast Před 4 měsíci

      screw them, they're roman.

  • @iteeseemedia
    @iteeseemedia Před měsícem +4

    Veritasium just posted a video about number 37... this is so unbelievable...
    how I supposed to live with that ???

  • @nachomartinez4758
    @nachomartinez4758 Před 2 lety +51

    Writing 3999 as MMMIM instead of MMMCMXCIX, as it should, made me shiver.
    But then you went ahead and proposed writing 3 as IIV. That's the most cursed thing I've ever seen in my life.

  • @alansmithee419
    @alansmithee419 Před 2 lety +360

    "They're registered by breed, and therefore antimatter is a different list" is not a conclusion I would've expected going into this video.

    • @Nathan-dt2tu
      @Nathan-dt2tu Před rokem +6

      Want to break your head? Atoms aren't fundamental units. One atom should hold a few names for its quarks, leptons, electrons, etc.

  • @ChefSalad
    @ChefSalad Před rokem +37

    I'm pretty sure that the ultimate reason for this limitation is that the original system was likely coded in COBOL. COBOL has this thing for building data records using ASCII characters with a fixed width for each field, with a newline after each record. This makes reading through a file with a buttload of records in it quite easy since every record is exactly the same number of bytes, and finding a particular value within a record is easy for COBOL because it's always in exactly the same spot. This is what made/makes COBOL so good for this kind of record storage. Today, we'd use some kind of RDBMS but back when computers were new(-ish), such things didn't exist yet, and flat files written to tapes were the thing to use, so COBOL and the COBOL way of storing data made a ton of sense.
    In particular, knowing the size of each record in advance let you scroll through a tape very quickly and easily. This is important with tape since rewinding a tape is very slow, so overshooting the mark was very bad, and you couldn't just read the beginning and end of a file at the same time with a tape (which is needed for many modern storage methods, like ZIP files and RDBMSs), you had to read the whole thing from beginning to end. You also had to write the files from beginning to end without going backward, and it was unlikely that you'd be able to store the whole thing in memory at once, so you couldn't just make a table of contents for the beginning and then write out the rest of the file. You couldn't have generated the table of contents until after the whole thing was written so it would have to be written at the end, but you need the table of contents to navigate, so it needs to be at the beginning, but you can't do that, and OMG, it's not going to work.
    That's why you didn't usually put ZIP files onto tapes in the early days of ZIP files; their table of contents is at the end of the file. Tar files put it at the beginning, but at the cost of having to have the files already compiled onto a disk of some sort as an intermediate. The individual files could contain whatever tables of contents were necessary for navigation and because you were using a disk, you could write them to the beginning of the file after you'd already written the rest of the file's contents to disk. But you can't do that when you're writing directly to a tape with no disk storage intermediate. COBOL and its fixed width record-based files was perfect for the era when you had tapes but no disks.

  • @rijaja
    @rijaja Před rokem +11

    My database teacher would be mad for 5 different reasons if I handled things like they did.

  • @CosmicHippopotamus
    @CosmicHippopotamus Před 2 lety +521

    Why has Skylab been absent from your previous videos? The road to two million is paved with dog treats.

    • @bokkenka
      @bokkenka Před 2 lety +30

      By the way the dog has appeared in three of the last four videos Matt's put out, I'm guessing A) the dog is new, and 2) Matt knows.

    • @MCAndyT
      @MCAndyT Před 2 lety

      +

    • @murphygreen8484
      @murphygreen8484 Před 2 lety

      +

    • @jaapsch2
      @jaapsch2 Před 2 lety +7

      Skylab the Dog has his own channel: czcams.com/users/SkylabtheDog

    • @CosmicHippopotamus
      @CosmicHippopotamus Před 2 lety

      @@jaapsch2 That is excellent, thank you.

  • @reubenmckay
    @reubenmckay Před 2 lety +675

    Option 4: The American Kennel Club stops acting like an elitist clique and just uses a sensible database based on unique ID numbers....

    • @mostlyokay
      @mostlyokay Před 2 lety +156

      A kennel club ceasing to be elitist? Boy do I have news for you...

    • @KohuGaly
      @KohuGaly Před 2 lety +78

      Good sir, they are not _acting_ line an elitist clique :-D

    • @johanlugthart7782
      @johanlugthart7782 Před 2 lety +7

      They use just numbers. I would say that it is elitist to claim that everyone should use the same notation convention then you.

    • @dhayes5143
      @dhayes5143 Před 2 lety +56

      Option 5: Start a movement for everyone register their dogs' names using only the letters I, V and X in the hope of breaking their system somewhere down the line.

    • @Quintal100kg
      @Quintal100kg Před 2 lety +27

      @@johanlugthart7782 unless one notation is objectively superior to the other which is the case here

  • @ShadowDrakken
    @ShadowDrakken Před 2 lety +9

    Given how dogs are named in the AKC, it's unlikely to see 38 of the same name anyway. The majority of dogs official AKC names include the kennel names where the dog was bred, and potentially the kennel name of the borrowed sire.

  • @jebodeiasque
    @jebodeiasque Před 2 lety +19

    One thing I find interesting about Option 2 is that the word for 18 in Latin is "duodeviginti", literally meaning two from twenty. So by all rights it should be written XIIX.

    • @peterjansen7929
      @peterjansen7929 Před 2 lety +5

      No, it should be written "IIXX"!

    • @p-j-y-d
      @p-j-y-d Před 2 lety +1

      Same for "duodecentum" (two from hundred, 98) => IIC

    • @danielboyd4079
      @danielboyd4079 Před 10 měsíci

      @@peterjansen7929why not IXIX?

    • @peterjansen7929
      @peterjansen7929 Před 10 měsíci

      @@danielboyd4079 Because it's 2 from 20, not 1 from 10 plus another 1 from 10 (nor 10 plus 2 from 10, as jeboideiasque's suggestion would require).

  • @ScipiPurr
    @ScipiPurr Před 2 lety +979

    There's also the 4th and possibly most boring/"intellectually challenging" option depending on who you might ask: migrate the database to a more modern standard c;

    • @jarrod752
      @jarrod752 Před 2 lety +89

      I don't think they wanna spend the money moving all the punch cards around.

    • @aceman0000099
      @aceman0000099 Před 2 lety +36

      @@jarrod752 they would have to individualy re-tape half of the funched holes!

    • @prismaticmarcus
      @prismaticmarcus Před 2 lety +18

      do you wanna put Matt out of a job?

    • @jeffsergeant
      @jeffsergeant Před 2 lety +48

      Or the even more boring option, switch to using Arabic numerals in the same field

    • @magicmulder
      @magicmulder Před 2 lety +13

      @@jeffsergeant Sounds easy, but try changing primary key values with existing foreign key constraints in place. That's a nightmare.

  • @connordarvall8482
    @connordarvall8482 Před 2 lety +399

    How we began: In America, only 37 dogs of the same breed can have the same name.
    How we ended: We could potentially register every observable atom in the universe in the Kennel Club, even if they were the same breed of atom.

    • @tuckergary1516
      @tuckergary1516 Před 2 lety +2

      sombody ask the k-club how any fidos?

    • @user-un8hy5dd3j
      @user-un8hy5dd3j Před 2 lety +6

      Obviosly they're the same breed. It's atom breed

    • @jimchase3137
      @jimchase3137 Před 2 lety +1

      @@user-un8hy5dd3j is that the hiss and tones i hear when nothing else? Sound of atom breed?

    • @tillorrly1128
      @tillorrly1128 Před 2 lety +1

      That escalated quickly.

    • @hexagonist23
      @hexagonist23 Před rokem

      %90 of the atoms in the universe are the same breed, Hydrogen. The other %10 is Helium, and there are some rare elements other than hydrogen and helium

  • @TimothyFrisby
    @TimothyFrisby Před rokem +44

    Your solutions are nice, but I'm *way* more curious about why AKC's naming system has these limitations in the first place now. I'm trying to imagine a system where the roman numerals couldn't just be outright replaced with numbers, even pre-computerization.

    • @juanausensi499
      @juanausensi499 Před rokem +18

      When something stays the same for some time, it becomes tradition. And when something becomes tradition, rationality no longer applies.
      We still have 7 days weeks!

    • @Fuckyoubloodymoron
      @Fuckyoubloodymoron Před rokem

      The nerve to even suggest such a thing!
      Filthy prole.

    • @DadicekCz
      @DadicekCz Před 5 měsíci +2

      ​@@juanausensi499 I totally get your point but in this case I think it's probably just being lazy to update the database to accept more numerals because of some runtime issues etc.

  • @Seyhan60
    @Seyhan60 Před 2 lety +1

    I thought of option 2 while watching the video, a couple minutes before you showed it, that felt awesome lol

  • @lettuce141
    @lettuce141 Před 2 lety +136

    I love how excited Matt is about Option III but never even mentions how it only allows II more dogs.

  • @MAlanThomasII
    @MAlanThomasII Před 2 lety +507

    The rule about "no more than three in a row" and, indeed, the use of negatives is a partially modern invention. The Romans did regularly have to deal with numbers over 3999-the classic legion was larger than that, never mind the census data-and even older modern clocks have digits like VIIII instead of IX. There's no reason we can't update the rules further.

    • @weberman173
      @weberman173 Před 2 lety +59

      also.. 4 was often written as IIII

    • @vsm1456
      @vsm1456 Před 2 lety +45

      I once tried to search why "4" is written differently on clocks sometimes and couldn't find any "logic" to it. It's not tied to a location or a period of time, clocks with IIII were made even in 1960s, 1970s. It's a somewhat rare feature and looks like it was simply a choice of the maker.

    • @zzzzzzzzzzzspaf
      @zzzzzzzzzzzspaf Před 2 lety +42

      @@vsm1456 I heard it was because it make the clock be divided nicely into 3 equal part (the I part, the V part and the X part)

    • @weberman173
      @weberman173 Před 2 lety +32

      @@vsm1456 there is a "theory" that it may have IV may have been an old abreviation for Jupiter during that time..
      and so because having a clock read essential 1 2 3 GOD 5 6 wouldhave been "interesting" it was changed to IIII, and it just carried over
      once again its just a theory with no proof from what i could find

    • @vsm1456
      @vsm1456 Před 2 lety +42

      @@weberman173 Another reason people mention is, "IIII" helps visually balance out "VIII" that's on the other half of the clock.

  • @andrewdreasler428
    @andrewdreasler428 Před rokem +10

    Or, Option 4: The ACC drops Roman numerals INSIDE the database, and uses either base 10 (999,999 Dogs of the same breed with the same name) or base 16 (0xFF FFFF (16,777,215 dogs of the same breed with the same name).
    To keep their Display in Roman(ish) numerals, they could have a 'look-up table' in their database to pull up a string based on the value, adding new Roman(ish) numerals. We already have I=1 V=5 X=10 L=50 C=100 D=500 M=1,000, so, borrowing from Engineering notation, we can add T=5,000, P=10,000 E=50,000 Z=100,000 Y=50,000 ... Here the Engineering prefixes stop, so the 'No More than 3' rule and the 'no duplicate 5s' rule leaves us with ZZZY, 350,000.
    So we go with another Engineering habit, "when the 'numbers' run out, start using letters." So we'll have A=1,000,000 B=5,000,000 F=10,000,000, and now we can represent all 16x10^6 dogs with Roman(ish) numerals.
    Although it might just be easier to just use the hexadecimal numbers, the database is already working in that base internally (actually, it works in base 2, but 4 hex digits completely describes a 16-bit 'word,' the standard memory size in modern computers.)

    • @andrewdreasler428
      @andrewdreasler428 Před rokem

      @unsubtract those guys might be overwhelmed by the options there. Even counting puppy mills, has any breed even gotten close to that number, counting not only living dogs, but ancestors back to the establishment of the breed.

    • @irrelevant_noob
      @irrelevant_noob Před rokem

      @Andrew Dreasler why skip G in between M and T tho? I can understand counting "k" as lost, but not G. :-B
      Also, the ZZZY is not quite the max (also, your typo for Y made you write it wrong, 350,000=ZZZE and in fact ZZZY is invalid), the max would be YZZZPZ or 890,000. ;-) [Similar to how the largest 6-character number that doesn't use M is DCCCXC = 890]

    • @wasabi991011
      @wasabi991011 Před rokem

      Why stop at base 16? Base 64 can be done in human-readable ascii, using both the upper- and lower-case alphabets, digits, and the symbols + and /

    • @irrelevant_noob
      @irrelevant_noob Před rokem

      @@wasabi991011 because base64 is therefore ambiguous... unless you want to encode the operations (and potentially the spaces) as well, sacrificing any remaining bit of readability... :-s
      Also, it's not easy to work out a ballpark estimate of a number from its representation... which would be quicker to evaluate, A0F or oP, or maybe even MjU3NQ==(!) ?

  • @sagemorrison8228
    @sagemorrison8228 Před rokem +1

    I was wondering where I'd seen this video before, up until you plugged the podcast.
    Say hi to Bec!

  • @torrentails
    @torrentails Před 2 lety +289

    First thought was "what if they allowed an additional digit? How far can you get before hitting 8 numerals?"
    I was quite pleased to realise that 88 is actually the first Roman numeral of length 8 😁

    • @vigilantcosmicpenguin8721
      @vigilantcosmicpenguin8721 Před 2 lety +30

      I expected Matt to talk about the furthest you can get with a length of numerals. 8 characters would allow numbers up to 187, and 9 characters would get to 287. The longest possible Roman numeral is MMMDCCCLXXXVIII, or 3888.

    • @inshadowz
      @inshadowz Před 2 lety +15

      Repeat after me: “There's no eighter eight than eighty-eight!” 😁

    • @Perseagatuna
      @Perseagatuna Před 2 lety +1

      @@vigilantcosmicpenguin8721 Not true, you can use a vinculum (a bar above the number) to multiply it by 1000, allowing for waayyy more than 3888

    • @experi-mentalproductions5358
      @experi-mentalproductions5358 Před 2 lety +2

      @@Perseagatuna They weren't talking about the size of the number, they were talking about the length of the name of the number.

    • @CptJistuce
      @CptJistuce Před 2 lety +1

      LXXXVIII MILES PER HOUR!!!!!!!!!!

  • @Kreypossukr
    @Kreypossukr Před 2 lety +6

    "Assuming all atoms are technically the same breed. Antimatter. That's a different list" that one got me good

  • @jamiecole2096
    @jamiecole2096 Před 2 lety

    This one of my favs from you now.

  • @SeanBZA
    @SeanBZA Před 2 lety +637

    Going to guess the database was using Hollerith cards, like those that used to be used for census data. 80 columns of 10 digits, so likely they allocated 2 rows to store a representation of the Roman numerals, using 3 bits, and then 3 sets of numbers, and a check bit, over the 2 rows. Leaves 78 columns for use, with likely one taken for breed (512 breeds should be enough to handle any likely future use), leaving 77 for name of dog and a reference field to another card, containing address.
    Used machines that at the time were common, easy to get hold of as used and working, and also had the whole "computerised" feel to it. Easy to do lookup per field as to what would be allowed, and what translation to use, when sending to output as well.

    • @idontwantahandlethough
      @idontwantahandlethough Před 2 lety +5

      So... is BZA like RZA or GZA? Are you part of the Wu-Tang Clan?!
      Or are you from the Board of Zoning Appeals?
      Either way, we need to talk about some stuff!

    • @mikepennington8088
      @mikepennington8088 Před 2 lety +15

      Nice theory but the problem is that the letters of the alphabet all fit in one column. The trick is that they use two holes from different rows in the same column to do so. One hole is in the top three rows and the other in the bottom 9. See the Wikipedia article titled Punch card. I think that Matt's theory that only 6 bytes were allocated is most likely the correct one. They used to allow only 8 bytes for names on computer graded standardized tests back in the 60s. It was always alarming to me that I could not put my entire last name on the answer sheet.

    • @ianflemings4989
      @ianflemings4989 Před 2 lety

      XXIXIX

    • @erict.watson2460
      @erict.watson2460 Před 2 lety

      @@ianflemings4989 XXXIIX?

  • @cosmoluc
    @cosmoluc Před 2 lety +329

    Matt: "And that's where most videos would end: here's a crazy fact, here's the reason behind it, job done. But not here! The Stand-up Maths policy is to try and fix things! And I reckon I've got some solutions so Americans can have more dogs with the same name."
    Me: "Arabic numerals. With six digits, you can count op to 999 999."
    Option 3: if you were to start at 39 instead of at 1, you can have two more dogs with the same name.
    I like this channel so much.

    • @kacperfilipek8461
      @kacperfilipek8461 Před 2 lety +37

      Even better! Instead of six characters which would take 6 bytes of storage, you could use a 32 bit unsigned int! You could save 2 bytes storage space per dog, but you could still count to an absurd number of 4 294 967 296 dogs per name!

    • @kirbywankenobi
      @kirbywankenobi Před 2 lety +7

      @@kacperfilipek8461 And you could have a function translate that to a roman numeral for display, well at least the lower values that can be represented by roman numeral.

    • @Joemamahahahaha821
      @Joemamahahahaha821 Před 2 lety +3

      @@kacperfilipek8461 we need more though. 4 billion I don’t think I’d enough

    • @HenryLoenwind
      @HenryLoenwind Před 2 lety +6

      @@kacperfilipek8461 Why waste those 2 bytes? That's the kind fo thinking that gave us Y2K! Use them all for 281,474,976,710,656 dogs.

    • @thyrical
      @thyrical Před 2 lety +2

      At that point, just use the regular base 10 number system

  • @professorwreckless1
    @professorwreckless1 Před rokem +5

    When Skylab taps Matt’s arm to ask for another treat ❤️

  • @ceji566
    @ceji566 Před 2 lety

    Brilliant :) Made my day !

  • @defenestrated23
    @defenestrated23 Před 2 lety +243

    This might be less of a common issue than it might seem at first. AKC breeding dogs have 2 names, their "common" name ("Skylab"), but then they have these crazy gelical names like "Parker's Dazzling Stellar Cosmodog". So the AKC registered name tends to be very unique anyways.

    • @MichaelOnines
      @MichaelOnines Před 2 lety +38

      I thought only cats were jellicle.

    • @jhfl1881
      @jhfl1881 Před 2 lety +24

      Most breed registies do this. Often the registared name has somewhere the breeders farm buried in the name, so as the animal moves around (by sale or in liniage) one can instantly see the original breeder.

    • @johnladuke6475
      @johnladuke6475 Před 2 lety +17

      This real life solution is basically a practical implementation of the final option Matt presented. There's just so many unique options that it's almost inconceivable to need 37 iterations of the same text.

    • @nolin132
      @nolin132 Před 2 lety +9

      The fact that you need a second crazy "AKC certified" name IS the issue. If this rule didn't exist the dog could have one common name.

    • @rambling964
      @rambling964 Před 2 lety +23

      @@nolin132 Lots of competitive animal societies have the distinction in order to be unique when competing. Plenty of racing horses with a common name of something like 'Spot' or 'Blackie' have an official name more like 'Guyana Star Dweej' or 'It'sallinthechase'.

  • @Verlisify
    @Verlisify Před 2 lety +227

    I was here for the invention of Parker Numerals

  • @travesty-studios
    @travesty-studios Před 2 lety

    This video just kept. Getting. Better.

  • @rafaykhattak4470
    @rafaykhattak4470 Před 2 lety

    Yoo tnx dude, everything works. I LIKE IT

  • @alfsalte9493
    @alfsalte9493 Před 2 lety +110

    Regarding 8 as IIX the 18th legion used XIIX as their label which precisely follow that rule you mention. Yes, it was unusual but XIIX is nicely symmetric and so was probably the reason why it was chosen. Also of note is that it is not only read the same forward and backward but also upside down and that makes it very nice for a label which may appear in many directions during a battle depending on the angle of the banner with the ground.

  • @PopeLando
    @PopeLando Před 2 lety +350

    I can't believe I was right in the middle of a deep dive on Roman history, Roman mathematics and the Roman calendar, and look who drops into my feed! And Skylab too! 🐕

    • @justfrankjustdank2538
      @justfrankjustdank2538 Před 2 lety +5

      youtube version of 6 degrees of separations gonna have fun with this vid lol

    • @harrisondinsbeer4545
      @harrisondinsbeer4545 Před 2 lety +1

      Same. I’m a Latin teacher and I’ve been teaching about numerals and abacuses this week!!!

  • @gheffz
    @gheffz Před 2 lety

    Love it... thank you!!!

  • @TheJademan85
    @TheJademan85 Před 2 lety

    That was GENIUS!!

  • @jurrich
    @jurrich Před 2 lety +222

    Note on option 1: there was no actual rule "only three of each in a row" to the people for whom "roman numerals" were just "numerals". Even back when Julius Caesar still had things to say, IIII instead of IV could be found in official records.

    • @VivekYadav-ds8oz
      @VivekYadav-ds8oz Před 2 lety +34

      I think that was just an unspoken convention respected by most so there's no II/IIIIIIIIX (two) way to write a number.

    • @matthewbarratt6145
      @matthewbarratt6145 Před 2 lety +16

      I was listening to a podcast about the disappearance of the ninth legion and they said that it looked like some detachments wrote the legion's number as IX and others wrote it as VIIII.
      So as the inscriptions that from the Rhine all write the number in the less common way, that probably means that it was only a single detachment that got sent there and not the whole legion.

    • @connordarvall8482
      @connordarvall8482 Před 2 lety +12

      There was probably some guy who wrote numbers in Is just to annoy his workmates.

    • @highpath4776
      @highpath4776 Před 2 lety

      @@connordarvall8482 Called Parker ?

    • @carlos_takeshi
      @carlos_takeshi Před 2 lety +1

      One of Caesar's legions was Legio XIIII, rendered that way.

  • @Smithers888
    @Smithers888 Před 2 lety +152

    Fun fact: there is actually precedent for usage of option II in Roman times; the Wikipedia article on Roman numerals specifically mentions IIX for 8 and variants as "Irregular subtractive notation" (not necessarily consistantly - it shows both IIXX and XIIX for 18, for example).

    • @marco.trevisan
      @marco.trevisan Před 2 lety +22

      The same way we have sometimes the irregular IIII = 4.

    • @MarkRosa
      @MarkRosa Před 2 lety +14

      If you can *say* "duodeviginti" in Latin, you should be able to write IIXX too.

    • @PanduPoluan
      @PanduPoluan Před 2 lety +10

      So basically the Romans are doing exactly what Matt explained how he conceptualised Roman numerals ... if smaller digits come before larger digits, the smaller digits are negatives.
      Smart people, those Romans were.

    • @justinwatson1510
      @justinwatson1510 Před 2 lety +1

      Wouldn’t IIXX be a really long way of writing 2?

    • @Smithers888
      @Smithers888 Před 2 lety +5

      @@justinwatson1510 you have to parse it as "II before XX," not "IIX before X." It's more complex than just left-to-right, otherwise XIV would be 11+5=16 instead of the 10+4=14 it actually is.

  • @eugenenalpin6058
    @eugenenalpin6058 Před 6 měsíci +2

    8:45 I once was at some friend's house, when I noticed that the clock they had hanging in the kitchen had all of its values written in Roman. Nothing out of the ordinary, classic stylistic move.
    But, I noticed that the number 8 was written the Parker Way, in other words IIX. Ever since then, I was confused as to what was the real deal about Roman numerals

  • @LARAUJO_0
    @LARAUJO_0 Před 2 lety +270

    Even binary, the least dense numeric base, has more room with six digits than roman numerals
    It also has zero, so you can make use of all 64 rather than just 63

    • @michaelbauers8800
      @michaelbauers8800 Před 2 lety +17

      great point. Roman numerals are really awful. But with so many things, we improve over time.

    • @doctorwhouse3881
      @doctorwhouse3881 Před 2 lety +75

      Unary is less dense. You run out at exactly 111111.

    • @LARAUJO_0
      @LARAUJO_0 Před 2 lety +10

      @@doctorwhouse3881 Lmao

    •  Před 2 lety +9

      @@doctorwhouse3881 Base 1/2 is even less dense.

    • @michaelthornes
      @michaelthornes Před 2 lety +10

      although in terms of binary data, binary itself is much more space efficient. standard ASCII characters are 1 byte each, which is 8 bits, so the total amount of space used by 6 roman numeral characters is 6*8=48 bits. with 48 bits, you could store a 48-bit aka 6-byte integer (uint6) that would allow for 2^48=281474976710656 different unique identifiers for each dog name. then, if you really want to, just convert it to roman numerals once you're ready to display it somewhere

  • @SWebster10
    @SWebster10 Před 2 lety +77

    Another option is to start the list at -27 (-XXVII) and go up to 37, which gives a run of 65 different choices

    • @Macieks300
      @Macieks300 Před 2 lety +20

      you'd need one character for the minus sign though

    • @thethiefmaster
      @thethiefmaster Před 2 lety +9

      Romans didn't have a symbol for zero (only a word) so you'd have to allow the modern 0 or something if you wanted to use zero.

    • @thethiefmaster
      @thethiefmaster Před 2 lety +3

      @Henry 1 Nice, but in traditional roman numerals it's always singles before another symbol - 1s, 10s, 100s (I, X, or C)

    • @SWebster10
      @SWebster10 Před 2 lety +2

      @@thethiefmaster or just omit the symbol altogether. Skylab 0 would simply be Skylab

    • @SWebster10
      @SWebster10 Před 2 lety +5

      @@Macieks300 Which I’ve accounted for, -XXVII is six digits, -XXVIII (-28) is seven

  • @dr.kingschultz
    @dr.kingschultz Před rokem

    Thanks for your videos

  • @romulator6734
    @romulator6734 Před rokem

    What the hell was the conclusion?!! I LOVE IT! 🤣🤣🤣

  • @stilltoomanyhats
    @stilltoomanyhats Před 2 lety +156

    Some dogs are made of multiple atoms [citation needed] so we really need names long enough to handle the power set of all atoms in the observable universe.

    • @QuantumHistorian
      @QuantumHistorian Před 2 lety +25

      Only if the same atom can be in multiple dogs. Which is clearly the case (albeit rarely simultaneously).

    • @SaraWolffs
      @SaraWolffs Před 2 lety +23

      @@QuantumHistorian Depends on your definition of "in" but taken one way it is in fact a regular occurrence anywhere multiple dogs conspire to become yet more dogs.

    • @JimmyLundberg
      @JimmyLundberg Před 2 lety +11

      @@SaraWolffs "conspire" 🤣 love that

    • @flexico64
      @flexico64 Před 2 lety +8

      Ok, the "citation needed" made me laugh good job sir/madam! XD

    • @get-the-joke
      @get-the-joke Před 2 lety +7

      @@QuantumHistorian We need names for every possible combination of atoms. You wouldn't call a water molecule "That bloke with the hydrogen atom called Benedict DCLXVI"

  • @luitmeinen1902
    @luitmeinen1902 Před 2 lety +37

    Gotta love that he didn't once mention the solution of using regular digits instead of roman numerals because that would be too easy

    • @peterkelley6344
      @peterkelley6344 Před 2 lety +2

      That may have been the whole point.

    • @trejkaz
      @trejkaz Před 2 lety +2

      Or indeed increasing the length of the field. Literally one SQL statement.

    • @catprog
      @catprog Před 2 lety +4

      @@trejkaz If the database is a SQL database and not a flat file program.

    • @jangamecuber
      @jangamecuber Před rokem

      Or Base 32 which would give over a billion

  • @rvs1
    @rvs1 Před 2 lety

    damn, i love option 3. this was amazing.

  • @Lyonfeather
    @Lyonfeather Před rokem +3

    Here are a couple of other solutions:
    1. Just expand the database field to use more characters. This is a simple thing to do (depending on db system)
    2. Use an integer instead of a character based Roman numeral.
    3. Ok so you want to keep the Roman numbers, covert the database to use an integer and on the display of that value convert it on the fly to a Roman numeral. This could be done on a db "View" (assuming a sql type db) or on the UI.

    • @SarahC2
      @SarahC2 Před 5 měsíci

      If they're using RN, it's likely an ASCII character! 7 bits (8 bits)....... 256^6

  • @TacoMaster3211
    @TacoMaster3211 Před 2 lety +66

    Fun fact, I used to had a dog breeder as a client, and would see the bills for the name registrations. Most of the time the dog's registered name would be [Breeder name] [Actual Name]. Now, this was in Canada, so it was the Canadian Kennel Club, so their naming rules may be different. So if the breeder's business was called 'Starwood Country Kennel' they would register their dogs as Starwood Rover, or Starwood Spot. That way you never have to actually worry about having dogs with the same name.

    • @alveolate
      @alveolate Před 2 lety +7

      matt did mention at the end that they have like 36 characters excluding the roman numeral suffix, which also allowed all 10 arabic numeral digits. so they could simply bodge an arabic numeral into the registered name anyway. if they wanted to preserve the breeder prefix, they could probably also devise some sorta 3-char acronym convention so they saved more space for the actual name.
      in short: there are literally innumerable ways to work around a deprecated and badly designed database, instead of just consigning themselves to its restrictions.

    • @Disnamesucksass
      @Disnamesucksass Před 2 lety +4

      We're in Australia, where owning a greyhound comes with mandatory registration, and our last name is used as his last name.

    • @LiviuGelea
      @LiviuGelea Před 2 lety +1

      What do you do if you want to own 101 Dalmatians named "Spot"?

    • @chrisschack9716
      @chrisschack9716 Před 2 lety +6

      @@LiviuGelea Probably get asked if you had your name changed to Cruella

    • @CLove511
      @CLove511 Před 2 lety +4

      Horses can only be registered with a unique name, so in that same vein, you end up with ridiculous names like "JKB Frosty Cloud Dancer" but the horse is named "Dance".

  • @Insightfill
    @Insightfill Před 2 lety +25

    We had a regex at work that only allowed up to four characters. It went for years before someone realized that it was missing 18 and a bunch of other ones. I think the fact that the gaps weren't consecutive made it easier to miss.

  • @pinkraven4402
    @pinkraven4402 Před rokem

    The 2. option is by far my favorite!

  • @jacksharks6433
    @jacksharks6433 Před rokem +8

    [4:51]
    "Not the traditional way to describe Roman numerals but that is how it makes sense to me" - Well it should be! It is concise and makes sense. I have heard so many descriptions of how Roman numerals work and they all came down to "just look at these examples and work it out yourself".
    ... until the bit with Option 2. This explanation contradicts Option 2 ("The Parker way") since in for "3 = IIV" the first "I" does not have a larger digit to its right.

    • @Owen_loves_Butters
      @Owen_loves_Butters Před rokem +1

      What Matt said at 4:19 could have also meant if there's a larger number *anywhere* to its right, it's negative, not just directly to the right.

  • @seizan88
    @seizan88 Před 2 lety +52

    "No one can argue with that!.... people will argue with that :("
    It's really nice to see how self aware you are :'D great video

    • @erikblaas5826
      @erikblaas5826 Před 2 lety +1

      Ow, you beat me to it, drats...
      I was saying; on that all Karens in the world go like "I want to.."
      ( and then internet explodes )

  • @TheArtGremblin
    @TheArtGremblin Před 2 lety +49

    My partner related this story to me [web developer] while we were out walking our own dog last night. Never has a database design story caused me more psychic damage.

    • @Nathan-dt2tu
      @Nathan-dt2tu Před rokem +1

      You might have meant psychological damage. Psychic damage is when Mewtwo attacks.

    • @TheArtGremblin
      @TheArtGremblin Před rokem

      @@Nathan-dt2tu I guess you're new to the internet then? It's pretty common to use them interchangeably for comic effect, as though one is describing a 4e D&D power. Thanks for the splaining though.

  • @Ben-uf4dm
    @Ben-uf4dm Před 2 lety

    Hearing your podcast now I want to come back to the Pizza 🍕 problem of the second (?) Episode. You tested pizza and said that the center of the slices was off. And I wonder: how much of can be tolerated? Is there a distribution mechanism between 2 friends that compensates the off center part? How does the ratio between crust length an area change? So many math questions with off-center sliced pizza I would love to see answered here on this channel!

  • @2Fast4Mellow
    @2Fast4Mellow Před 2 lety

    For a thought exercise at school we once had to invent a 5000 character. We went with 'W'. V = 5 and it the upside down version of 'M' (1000) the last current numeral which is 5 x 1000 = 5000 (So MW = 4000).
    Why stick with Roman numerals? If you apply base36 (digits 0-9 + letters A-Z) the existing 'codes' are still valid, but that would allow a total of 36^6 = 2,176,782,336 combinations.
    If you allow both upper- and lower case you get 62 characters meaning 56,800,235,584 (62 ^ 6) combinations. If that is not enough we could always use a 6-byte (char) array. Meaning 255^6 = 274,941,996,890,625 possible numbers, but you can't print that number part because it contains several non-printable characters.

  • @517nickyj
    @517nickyj Před 2 lety +22

    The delivery of "... antimatter... that's, that's a completely different list" was gold

    • @HappyBeezerStudios
      @HappyBeezerStudios Před 2 lety +1

      Antimatter would obviously a different breed, so that allows for the same amount of dogs

  • @roelbrook7559
    @roelbrook7559 Před 2 lety +308

    After some Googling, it seems like the Romans actually had signs for the 1000s, like ↁ (5000) and ↂ (10000). But they had multiple ways of indicating 1000s. An alternative notation, and one that is easier to grasp, is the vinculum notation, where V̅ would be 5000. I'm not sure whether you could actually say that Roman numerals don't have the option to go above 3999. They could, but because there were multiple methods of handling that, we don't seem to teach them nowadays.

    • @TheZotmeister
      @TheZotmeister Před 2 lety +12

      This is the comment I was looking for. I mean, *I* learned about virgules in school, so why on Earth didn't a professional mathematician do so? Seems Matt got a Parker math education.

    • @mattgies
      @mattgies Před 2 lety +41

      He mentioned the vinculum in this video. Presumably the AKC doesn't (or didn't) have the ability to type a vinculum when they created the database (or didn't know about them at all).

    • @aaaah540
      @aaaah540 Před 2 lety +7

      This is SO cool!!! I wish I was taught this in school, but it makes sense that I wasn't. The only reason kids are taught Roman numerals these days is to understand places where they're traditionally used, and those symbols have fallen out of common usage.

    • @solarzone7247
      @solarzone7247 Před 2 lety +2

      Google translate does that - 5,000 is (V), all the way up to 4E6 - 1

    • @politedog4959
      @politedog4959 Před 2 lety +9

      Afaik the romans in daily practice actually did put 4 of the same characters after another. So instead of 9 = IX (as we would think), they wrote it VIIII. Same with the 4 having been written IIII instead of IV etc

  • @minkuspower
    @minkuspower Před 2 lety +51

    "NO ONE CAN ARGUE WITH THIS. people are gonna argue with this." i love it XD

    • @marcelo-ramos
      @marcelo-ramos Před 2 lety

      Well, that happens when you come up with your own rules for an existing numeric system.

  • @Snakeyes244
    @Snakeyes244 Před rokem

    I was on board with Option 2, but now I’m all in on Option 3!

  • @dans.8198
    @dans.8198 Před 2 lety +5

    Option 5: The original database was probably restricted to alphabetic characters only (no numbers). They could have used 6 letters instead of Roman numbers for millions of combinations.

  • @EebstertheGreat
    @EebstertheGreat Před 2 lety +168

    I like the idea that "elementary particle" is technically a breed of dog, and the entire observable universe is technically America, so each particle should have its own unique name registered with the American Kennel Club.

    • @mikek6298
      @mikek6298 Před 2 lety +29

      Manifest destiny at it's finest. "Can it be observed? Then it is AMERICA!"

    • @vigilantcosmicpenguin8721
      @vigilantcosmicpenguin8721 Před 2 lety +18

      Americans already put their flag on the moon. That's one celestial body down, a couple sextillion to go!

    • @charliedobbie8916
      @charliedobbie8916 Před 2 lety +20

      So the strings in string theory is just all the dog hair getting everywhere?

    • @highpath4776
      @highpath4776 Před 2 lety +1

      @@charliedobbie8916 Indeed, getting Matted

    • @HappyBeezerStudios
      @HappyBeezerStudios Před 2 lety

      Then I name my dog FDHJK'1116541CBNMG6816-81UI61A6

  • @awildeep
    @awildeep Před 2 lety +93

    Or you know, they could store the numbers as a database defined integer, and have a function convert said integer into a roman numeral for display. The limit at that point is the size of an integer in your DB, which should be easily large enough.

    • @justthink124
      @justthink124 Před 2 lety +34

      but that utility function would take a whole 15 minutes to implement! Way too costly to change 😉

    • @Raspberry1111
      @Raspberry1111 Před 2 lety +18

      ​@@justthink124 And It would make sense! We are not allowed to do things correctly here.

    • @eduardopupucon
      @eduardopupucon Před 2 lety +12

      i'm pretty certain that the institution is older than computers, so they are probably backed by some legacy mechanical system that is causing this issue

    • @mienzillaz
      @mienzillaz Před 2 lety

      @@eduardopupucon aka human

    • @eduardopupucon
      @eduardopupucon Před 2 lety

      @@mienzillaz humans would be able to count past 38, probably some punch card machine

  • @lforlight
    @lforlight Před 5 měsíci +2

    Tom Scott's Lateral podcast episode 40 had a question about this.

  • @4Bakers
    @4Bakers Před 2 lety +14

    As he's going through all of these proposals I'm just thinking to myself: Convert to Arabic numerals. They would allow just under 1 million dogs to share the same name, wouldn't they?
    Better yet: Cistercian numerals. 6 digits of Cistercian numerals would allow 999,400,150,000,000,000,000,000 dogs to share the same name (That's nine hundred ninety-nine sextillion four hundred quintillion one hundred fifty quadrillion dogs with the same name, by the way.)

    • @rah9722
      @rah9722 Před rokem +5

      You mean٩٩٩٩٩٩ dogs with the same name

    • @glowstonelovepad9294
      @glowstonelovepad9294 Před rokem

      Why 999400150000000000000000 in particular?

    • @ivanborsuk1110
      @ivanborsuk1110 Před rokem

      those numerals use two chars for every number in utf-8, so char(6) field goes only for 3 numerals

  • @danielbarnes3406
    @danielbarnes3406 Před 2 lety +27

    11:36 "I have become very focused on the Roman Numeral aspect -- don't get me wrong, had a great time." Having a great time with mathematics and sharing it with the world is what makes this channel awesome. :)

  • @58209
    @58209 Před 2 lety +225

    i love how mathematicians go on these weirdly absurd thought experiments, meanwhile the AKC probably hasn't even used roman numerals in decades and the rule only exists because it's been grandfathered in.

    • @wisnoskij
      @wisnoskij Před 2 lety +3

      I think you have to backwards tho, with teh advent of phones and the interenet, and other modes of instant communication, they only allow more than a single dog to have the same name becuase it is grandfathered in.

    • @grandpaobvious
      @grandpaobvious Před 2 lety +10

      They use the naming system to keep track of maternal and paternal lineages, and it would wreak havoc to have two dogs with the same name.

    • @nicholaslewis8594
      @nicholaslewis8594 Před 2 lety +12

      They could assign a separate identifier (like a number or code) and assign relationships by the coding instead of the name. That way even if two dogs are related and have the same name you can use tell they’re two separate dogs.

    • @stargate525
      @stargate525 Před 2 lety +1

      @@grandpaobvious "yes, this dog's dad was clearly the Skylab born in 1856."
      Is there an age-out period for the registration?

    • @orangenostril
      @orangenostril Před 2 lety +3

      @@stargate525 I don't think they meant using the identifiers to assign the dog's lineage lol, they just mean give each 'dog' in the system an ID number.

  • @tomschmidt381
    @tomschmidt381 Před rokem

    That was fun. Being a geezer learned about Roman Numerals in grade school. I can't imagine using them for construction or engineering.

  • @peepock7796
    @peepock7796 Před 2 lety +1

    Option two is by far the best

  • @carrots1550
    @carrots1550 Před 2 lety +154

    "They have so overpowered the rest of the name that there are enough names for everything!" Oh, Matt, how could you apply combinatorics to the characters in the names but not to the atoms you're trying to name? Ok, so we name every atom, but we can also name, e.g., "that galaxy", and presumably things like people and, well, dogs. But what if I want a name for me and my dog? What if I want a name for everything in my galaxy except my dog? At the end of the day, we need names for every combination of atoms, and that's going to need rather a lot of names.
    Loved the video.

    • @adrianstephens56
      @adrianstephens56 Před 2 lety +11

      And then you have to register each atom's name, and record that in a storage medium, which would take multiple atoms. We need a hyper or metaverse!

    • @BinaryBolias
      @BinaryBolias Před 2 lety +7

      Even more names if you name groups of names.

    • @jumpman8282
      @jumpman8282 Před 2 lety +2

      ...and then we break down the atoms into particles. Uh-oh, we are going to need more characters.

    • @alistairmackintosh9412
      @alistairmackintosh9412 Před 2 lety +4

      Power set of names....

    • @angeldude101
      @angeldude101 Před 2 lety +3

      Every single fundamental particle gets a unique ID. To described groups of particles, like protons, neutrons, atoms, molecules, dogs, planets, etc, you set the bits whose places correspond to the IDs of the particles that compose the group and that binary number can uniquely describe every possible group of particles you can name. (Seriously, binary numbers are really good at indexing power sets.)
      It would also imply that the universe itself can be described with the name of -1, because two's complement.

  • @Wimachtendink
    @Wimachtendink Před 2 lety +79

    I have been advocating for Parker Roman Numerals for nearly 3 decades now and I am glad that I'm no longer alone in this fight.
    Welcome, fellows.

    • @Nathan-dt2tu
      @Nathan-dt2tu Před rokem +1

      The problem is it lacks any sort of standard. Under Parker Roman Numerals, I could write IIIIIIIVXL to mean 28.

    • @Wimachtendink
      @Wimachtendink Před rokem

      @@Nathan-dt2tu I'm kheul with that

    • @CommieHunter7
      @CommieHunter7 Před rokem +8

      @@Nathan-dt2tu the rule is, minimize the number of characters, AND don't use more than 3. It really only should kick in on 8 or similar patterns like 80, where you'd be adding one digit plus three, instead of two subtracted from one.
      The video writing IIV kind of missed the point of minimizing, but it's still valid.

  • @BeatButton
    @BeatButton Před 27 dny

    IIV for 3 is so incredibly cursed, thank you so much

  • @misterkite
    @misterkite Před 2 lety +10

    Fun fact: roman numerals didn't switch to the subtractive system until after the fall of the roman empire. That's also one of the reasons why watches and clocks use IIII for 4.

    • @risharehraje793
      @risharehraje793 Před 6 měsíci

      Really? Tell me how is written the name of the 18th legion on Marcus Caelius epitaf again?

    • @misterkite
      @misterkite Před 6 měsíci

      @@risharehraje793 xiix is certainly not the standard subtractive system. So you just reinforced my point.

  • @RichardTallent
    @RichardTallent Před 2 lety +39

    The "changing the sign" explanation makes perfect sense to me, and parsing is quite a bit easier with that in mind (you would only need an accumulator, a mapper, and the previous individual value). But Option 2 would make that parser a bit more difficult to implement.

    • @MagicGonads
      @MagicGonads Před 2 lety

      option 2 is the same implementation detail as the regular interpretation, you just only allow two consecutive characters not three, and when you reach that threshold add the next character to the end, then pop off the left, then increment the right (just like how you already have to do it, just that popping off the left can only happen once normally, so I guess that explains "the previous individual value" has to become a stack/queue (of size 2?))
      I
      II
      IIV
      IV
      V
      VI
      VII
      IIX
      IX
      X
      ...

  • @SpencerTwiddy
    @SpencerTwiddy Před 2 lety +75

    If you are limited for naming to strings of length 6 made of the characters {"I", "V", "X", "L", "C", "D", "M"}, the optimal way to number dogs is to interpret the string in base-7, so e.g. "VXLDIL" could mean dog #22886, which is calculated by 1*7^5 + 2*7^4 + 3*7^3 + 5*7^2 + 0*7^1 + 3*7^0.
    This gives us the maximum of 7^6 = 117649 dogs, which is the most you could uniquely number using only these 7 Roman numeral characters.

    • @Zemnmez
      @Zemnmez Před 2 lety

      why is base-7 optimal? can't you just go for arbitrarily high bases? there are base encoding using the entire set of Unicode

    • @SpencerTwiddy
      @SpencerTwiddy Před 2 lety +4

      @@Zemnmez since we are limited to a character set of size 7, we can't do any higher base

    • @maxpoulin64
      @maxpoulin64 Před 2 lety +8

      @@Zemnmez that's assuming you can only use the existing 7 roman numerals, and 6 characters. So that's the maximum you can get out of it within those constraints.
      Of course if you can add more symbols then you can cram however high base you want, but that involves changing how the data is stored. The assumption is whatever antiquated database they use can only store those 7 characters and 6 of them. On a punch card, that could be represented with 3 holes in 6 columns with zero room for expansion.
      If you could just change database, then you might as well just store regular arabic numbers for up to 999999 dogs, or just store it as a regular unsigned 16/24/32/64 bit number and have practically unlimited dogs.

    • @jpaugh64
      @jpaugh64 Před 2 lety +4

      Great idea! And, you could convert the result to base 10 (and _then_ to traditional Roman numerals) after reading the value from the database.

    • @NeilRashbrook
      @NeilRashbrook Před 2 lety +2

      Assuming you're allowed strings of up to and including length 6 then you can use bijective base 7 with a total of 7¹ + 7² + 7³ + 7⁴ + 7⁵ + 7⁶ = 137256 dogs.

  • @justanoman6497
    @justanoman6497 Před rokem +2

    Option 4
    recode your own char system to be used for roman numerals
    Each char is 8 bits, 6 char is 48 bits.
    However, there are only 7 roman numeral characters. You can encode that in 3 bits.
    For the same space, you can have 16 characters, longer than any "real" roman numberals(i.e. 3999), so we can have all that. (this would fail at 5888, if we would to infinitely append M, that is the first 17 length)
    Just run a bitwise converter on the numeral versus the value stored in the DB and you can have all that which you want.
    Heck, just splitting each char into two 4 bit chucks will double your allowed length and the converter would be super easy(mask, bit shift, array pointer). That will give you 1887 (1888 being the first 13 length, according to google)
    I mean it would easier to just store numbers(6 byte is enough for an int and a short) and convert that, but... if it's about the spirit of things....

  • @dfitzy
    @dfitzy Před 6 měsíci +1

    ...Or option the best, use the data bits to represent an integer in binary and convert and display in roman numerals at best you could have 6 bytes (48 bits) or 281,474,976,710,656 dogs

  • @ronshinall
    @ronshinall Před 2 lety +13

    Or convert all the current Roman numerals to base 10 strings in the database (since it currently only accepts strings not integers) and display them as Roman numerals when retrieved. For example convert “XXXVII” to “37” in the database. That gives you 999,999 of each name.

  • @attilazimler1614
    @attilazimler1614 Před 2 lety +27

    Option 4: 6 characters is a storage for 6 characters - use 0-9 on those characters and have a function to decode it into Roman numerals if you want to present them as such.

    • @DemoniacDeath
      @DemoniacDeath Před rokem +3

      Even if for some unimaginable reason the storage can only use letters from roman numerals, since there are 7 letters (I, V, X, L, C, D and M) you can basically just use base 7. That would add up to 7^6 = 117649 dog names (maybe 117648 if not accounting for zero).

  • @DeJay7
    @DeJay7 Před rokem +1

    By now I've given up on understanding how Matt thinks, and I'm completely fine with it.
    But the last thing I was expecting when I clicked on this video was that it would end with anything related to antimatter.

  • @hattix6713
    @hattix6713 Před měsícem

    I absolutely love how Matt never once touches on the obvious solution, yet everyone knows it's there. That's the comedy here.

  • @johnchessant3012
    @johnchessant3012 Před 2 lety +10

    missed opportunity to name the dog MattLab...

  • @chrismartin8212
    @chrismartin8212 Před 2 lety +12

    So THAT'S why dogs are registered with such weird names. Growing up, we had a Great Dane named Rufus. Even though he was not registered with the AKC (at least I don't think he was), my mom insisted that his "official" name was Sir Rufusson of... "(something, something, something - I don't remember because we just called him Rufus).

  • @libri_dies
    @libri_dies Před rokem

    Skylab. :) Golden retriever here. Considered naming him Au thinking it would be great fun to call out 'Eh! You!" at the park. Decided to keep the au in the name and went with Tau. :)

  • @Alkarym24
    @Alkarym24 Před 5 měsíci

    Matt!! You told us the "rule" was: if a character has a bigger numeral to its right, it's negative... IIX does not work! The first "I" does not have a bigger numeral directly right off it

  • @lincolnlu9869
    @lincolnlu9869 Před 2 lety +15

    Skylab is such a beautiful pup. Labs are the best!

    • @saturatedodin476
      @saturatedodin476 Před 2 lety

      No

    • @dogwalker666
      @dogwalker666 Před 2 lety

      SkyLab is a beautiful dog, however IMHO Border Collies are the best but don't tell my Jack Russell.

    • @Fytrzaczek21
      @Fytrzaczek21 Před 2 lety

      ​@@saturatedodin476
      > Saturated Odin clicks on a maths video
      > something something roman numerals something
      > scrolls to comments
      > sees "Labs are the best!"
      > stretches
      > clicks REPLY
      > cracks his knuckles
      > starts typing
      > "No"
      > refuses to elaborate further
      > hits enter
      > leaves

    • @GeeItSomeLaldy
      @GeeItSomeLaldy Před 2 lety

      @@Fytrzaczek21 Establishing Dogminance

  • @claraphillips7900
    @claraphillips7900 Před 2 lety +217

    As a Hearing Impaired member of your fanbase, I must inform you that closed captioning is unavailable to me on this video. I have a very hard time understanding speech without CC, and so does my aging mother. I would appreciate it if you could accommodate us Hearing Impaired or others with audial processing issues.
    But that part about the atom dogs was great!

    • @tonymouannes
      @tonymouannes Před 2 lety +12

      Captions are auto generated. You might want to reach out to youtube about it.

    • @AlexM-xj7qd
      @AlexM-xj7qd Před 2 lety +13

      I'm commenting so he sees this

    • @jpaugh64
      @jpaugh64 Před 2 lety +34

      I know Tom Scott pays for CC, so that's another channel worth checking out. My understanding is that the automatic CC provided by CZcams takes time to generate, partly because there are hundreds of hours of content uploaded to CZcams every second.
      The best way to prioritize this video for CC is to share it with friends and like/comment/subscribe, I guess.

    • @theabristlebroom4378
      @theabristlebroom4378 Před 2 lety +11

      Some channels allow people to submit closed captions, but that is the channel's choice.

    • @ThePandaKingFTW
      @ThePandaKingFTW Před 2 lety +13

      @@tonymouannes They can also upload their own CC if I remember correctly, so he is able to do something about it if he's willing to manually add them.

  • @TheHippieRat
    @TheHippieRat Před měsícem +4

    Would you believe this is the first thing I thought of after Veritasium’s new video about the number 37?

    • @biolko_
      @biolko_ Před měsícem

      Same, and I only realised after some minute of video, that's kinda strange

  • @kellyshea92
    @kellyshea92 Před 4 měsíci

    I got a AKC corgi named Corki. Ill have to look at his paperwork again now

  • @jakobunfried2669
    @jakobunfried2669 Před 2 lety +9

    regarding the "everything could have a different name" part:
    seeing as a dog is composed of many atoms, we should also allow names for groups of atoms, not just individual atoms.
    and there are so many more distinct atom groups than there are atoms. that powerset is gigantic