Locknote: Programming’s Greatest Mistakes - Mark Rendle

Sdílet
Vložit
  • čas přidán 29. 09. 2022
  • Most of the time when we make mistakes in our code, a message gets displayed wrong or an invoice doesn’t get sent. But sometimes when people make mistakes in code, things literally explode, or bankrupt companies, or make web development a living hell for millions of programmers for years to come.
    Join Mark on a tour through some of the worst mistakes in the history of programming. Learn what went wrong, why it went wrong, how much it cost, and how things are really funny when they’re not happening to you.
  • Věda a technologie

Komentáře • 43

  • @Russtopia
    @Russtopia Před 7 měsíci +6

    Love the QR code t-shirt! Was tough reading it with him moving around but worth it

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

    I particularly like how they had 6 characters available for the dog identifier, which would allow 999,999 dogs if they used a digit for each character, or 2,176,782,335 dogs, if they used A-Z and 0-9 (case INsensitive, even), which would allow to track every dog on the planet... but noooo let's use ROMAN NUMERALS which have been obsolete for A THOUSAND YEARS. This disaster required serious effort.

  • @marklee81
    @marklee81 Před rokem +19

    Little known fact about Stanislav Petrov is that you'd think there'd be a universe where he didn't save the planet, but there isn't. He's just that good.

    • @plebisMaximus
      @plebisMaximus Před 8 měsíci

      I suppose there's the timeline where we don't point nuclear missiles at each other for half a century.

  • @remrevo3944
    @remrevo3944 Před rokem +20

    27:18 Rust actually has something called "null pointer optimization", which guaranties that an Option of a pointer that can't be null is represented as the same pointer, but with null. So you don't have to pay more memory, but still have do be explicitly check for null.

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

      I've seen this idea called "intrusive optional"

    • @remrevo3944
      @remrevo3944 Před 10 měsíci +1

      @@thewhitefalcon8539 There ist also the generellized term, niche optimization.
      When a data type doesn't inhabit all possible bit pattern those bit pattern can be used to store additional data.
      Like storing enum tags in struct padding.

  • @mog068
    @mog068 Před rokem +6

    One of my greatest hits was an error message in an OWL/WinNT popup dialog which said "Something is very wrong here. This should not have occurred!" Years went by. Eventually it happened and I got a very confused call from our customer support group.

  • @FlameRat_YehLon
    @FlameRat_YehLon Před rokem +13

    21:30 funny enough, I've heard that the reason HAL Laboratory (the game studio behind the Kirby series) was named as such exactly because they want to be one letter ahead of IBM.

    • @covoeus
      @covoeus Před rokem +5

      There was a rumor that HAL-9000 from 2001: A Space Odyssey got its name for the same reason.

  • @marklee81
    @marklee81 Před rokem +5

    The units for the climate orbiter weren't feet and meters, it was two different kinds of amounts of thrust.

  • @ari_archer
    @ari_archer Před 7 měsíci +4

    for anyone wondering the qr code on marks shirt is a yt link to a rickroll

  • @williamdavidwallace3904
    @williamdavidwallace3904 Před 2 měsíci +1

    At least one Cobol compiler was "fixed" to accommodate Y2K. It translated long dates from the data base to short dates or vice versa, I forget.

  • @ankor7625
    @ankor7625 Před rokem +8

    You have a mistake at around 44:30 - when you say that Arian 5 was the most powerful rocket built outside of US, which is incorrect. It may be the most powerful rocket built by countries of European Union, but Soviet Union had in late 80-s 2 launches of Energia rocket, which was about 3 times heavier than Arian 5, and could theoretically launch about 5 times more to Low Earth Orbit.

  • @GG-uz8us
    @GG-uz8us Před rokem +9

    Very curious that critical system is still in use and crashes every 24 minutes lol

  • @dpduser
    @dpduser Před rokem +20

    Ok, I have to admit... I've been just been rickrolled... Nice tshirt btw! Anyone else?

    • @GG-uz8us
      @GG-uz8us Před rokem

      Try scan the code on the tshirt

    • @dpduser
      @dpduser Před rokem +1

      @@GG-uz8us I did... I did🤣

    • @casperes0912
      @casperes0912 Před rokem +1

      Me too

    • @dpduser
      @dpduser Před rokem

      @@GG-uz8us In fact, I did ;)

    • @maxrburgess
      @maxrburgess Před rokem

      I scanned it but didn't visit the link!

  • @sigstackfault
    @sigstackfault Před 8 měsíci +1

    I recognize that QR code.

  • @BryonLape
    @BryonLape Před 9 měsíci

    Perhaps it is a billion in 1966 dollars.

  • @patricknelson
    @patricknelson Před 5 měsíci +1

    lol, pièce de résistance is JavaScript. Just JavaScript, that’s it. 😅

  • @killia999
    @killia999 Před 10 měsíci +1

    I spent so damn long trying to scan that QR code on your shirt... well played, but f*ck you man :P

  • @kybernetiks
    @kybernetiks Před 7 měsíci +1

    Ha ha ha, I programmed in Gupta SQL :-)

  • @WhiteThunder121
    @WhiteThunder121 Před rokem +8

    Video starts at 24:00

    • @human.earthling
      @human.earthling Před rokem +6

      2:40 you mean

    • @WhiteThunder121
      @WhiteThunder121 Před rokem +4

      @@human.earthling lmao what. Yesterday there was 24 min nothing at the beginning.

    • @roeniss
      @roeniss Před rokem

      @@WhiteThunder121 congrats. You saw a rare yt bug

    • @-parrrate
      @-parrrate Před rokem +2

      @@roeniss not a bug; NDC just cut out a part of the stream recording

    • @roeniss
      @roeniss Před rokem +2

      @@-parrrate Aha. It seems possible to cut clip after uploaded!

  • @HarrisonAtherton
    @HarrisonAtherton Před rokem

    HA HA HA HA

  • @Bolpat
    @Bolpat Před rokem +1

    The metric system is essentially the compromise between an actually sensible system and the imperial system.
    1 liter (1 dm³) of water does not weigh exactly 1 kg, only close.
    Time units are not decimal, except sub-seconds. There is not kilosecond, but 60-based minutes and hours, then it gets even messier because what exactly is a year?
    Weight units are also weird. There’s the gram, but for whatever reason, SI decided to make not it, but the kilogram its base unit. 1000 kg is not a kilokilogram (that would be silly), but neither is it a megagram, it’s a ton. So you have regular sub-grams like milligram and microgram and nanogram etc., the “regular” kilogram (which is the base unit) and you have tons and super-tons like kiloton and megaton etc. In 1953, Italy proposed using _bes_ (unit symbol: b) for weight (1 kg = 1 b) to get rid of this nonsense, but that was rejected.
    If you think it cannot be dumber, in SI, angles are declared dimensionless because some fool thought they were “the ratio of lengths” and experts believed that nonsense. To convince you it’s not, take degrees: If angle were dimensionless, the ring symbol for degrees would mean a factor of π/180 the same way k means factor 1000. Thus, I weigh about 4600° kg.

    • @AnarchistEagle
      @AnarchistEagle Před rokem +4

      Angles are dimensionless, but not unitless. If angles had dimensions then the square of an angle would be expressed in units of "°^2". But that causes problems for stuff like Taylor series expansions or polar equations.
      sin(x) expands out to x + x^3 / 6 - x^5/120 + ...
      If x has a dimension then that means sin(x) cannot be resolved because you cannot add ° to °^3 for same reason you can't add a meter to a square kilometer.

    • @Bolpat
      @Bolpat Před rokem

      @@AnarchistEagle You confused the mathematical function sin: *R* → [0, 1] with the physics function sin: Φ → [0, 1], i.e. angle to number. If you have an angle φ, it has a value {φ} and a unit [φ]. If you want to calculate sin φ, you can convert it to radians, i.e. you find a number x such that φ = {x} rad. You use the _number_ x in the series. For the Taylor series to work, you _must_ use the numeric value for radians; it is therefore quite obviously not a physical formula.
      There are several systems of measurement that set commonly occurring constants equal to 1. en.wikipedia.org/wiki/Natural_units lists the common ones.
      Further reading: Paul Quincey, Peter J Mohr, William D Phillips: _Angles are inherently neither length ratios nor dimensionless_ arxiv.org/abs/1909.08389 (6 pages, no difficult math)

    • @mittelwelle_531_khz
      @mittelwelle_531_khz Před 8 měsíci +3

      While I highy appreciate dimensional analyis as a basic sanity check for non-trivial equations, we should not overestimate the (SI) system.
      Eg. what sense does it make if you measure the fuel efficiency of your car in "square meter" (Europe) or its inverse (USA)?
      To explain: most people divide the volume (of fuel) by the length (how far they can drive with it) giving length squared. Or its the reciprocal.
      Also Nm is both, the unit of work (or energy) and the unit of torque (eg. to fasten a bolt nut).
      I somewhat agree that our time system should be decimal and France even tried after the french revolution but failed. Apparently it's too ingrained in our dayly (pun intended) live. OTH it also makes sense to adjust and synchronize with units prominently showing up in our day to day life, but should these be days or weeks and years which have no fractional relationships to each other which are not even constants.
      Heck, even the nation which considers itself to be the "most technically advanced" can't cope with numbers bigger than 12 when it comes to the hour in their time of day and insist to cycle twice through 1[*] to 12 per day and fix the ambiguity by appending "am" and "pm".
      *: Quite obviously a number system designed when the concept of zero wasn't yet common place.
      To close: as an engineer I dont grapple too much with "kilo" and "milli" or "nano" as long as they have multiple of tens as ratio as I prefer the notation with an appended exponent. (Also as relieve from the language problem whether a "billion" means a factor 1e9 or 1e12.)

    • @olafschluter706
      @olafschluter706 Před 8 měsíci +3

      As far as I know, SI does not define any other unit for time but seconds. As all other time units used throughout the world are essentially astronomical and historical and vary over time when expressed in seconds - e.g. the length of a day is ever increasing due to tidal interactions of the earth and the moon and varying by climate change causing shifts in the moment of inertia of the earth (like ice-free poles vs. iced poles) , the length of a year varies due to the precession of the rotation axis of earth in an about 28.000 year cycle . During the french revolution France tried to introduce a decimal system to measure the time of day in 10 "hours", a 10-day "week" and 10 month in a year. People did not accept it.
      Angles happen to be dimensionless as they are defined (by math) as the length of the arc covering the angle on the unit circle. The unit circle is a circle of radius 1 in whatever dimension of length you choose and if you measure the length of the arc in the same dimension it turns out to be always the same number for the same angle, something between 0 and 2*pi. As a consequence the angle is just the number. This make the trigonometric functions like sinus or cosinus well-defined over the space of real and even complex numbers using the euler equation. The natural unit for an angle would be pi, but that is just a number and wouldn't change much. But in math we often try to express known angles in terms of pi, less digits to scribble down often. And nature appears to like simple fractions of pi as angles.
      The purpose of the SI system is to define units for measurement that can be determined by physical means without referring to any unit prototype (like the "Ur-"meter or the "Ur-"kilogram once stored in Paris). The 2nd purpose of the SI system is to enable you to calculate the proper unit of any mathematical expression containing quantities measured in SI units by an easy set of rules. It helps a lot when dealing with the math of physics or engineering. Nevertheless even physicist use other units when convenient, from measuring mass in terms of energy and that again in equivalents of the energy of an elektron raised to the potential of 1 V (eV) up to making the speed of light in vacuum dimensionless and equal to 1. Since aeons we even use degrees to measure and name the position of any celestial object.
      The imperial system isn't part of any compromise, it is broken without compromise. Without SI it would even lack a proper physical definition.

  • @bflopolska
    @bflopolska Před 11 měsíci +2

    If you want to understand how a QUANGO works, check "Yes, Minister."