Apollo 10 Source Code: The Art of Commenting

Ғылым және технология

Mike has gotten hold of an original listing of the Apollo 10 source code. We look at what might be some of the best ever commenting, embedded into historically significant Apollo code, courtesy of AGC programmer Don Eyles.
T-shirt and Hoodie about good commenting habits, inspired by this episode:
teespring.com/thou-shalt-comm...
The scan of the Luminary 69 listing from this video is available here:
archive.org/details/luminary6...
Links to other versions of Luminary from Ron Buckley Virtual AGC Website:
www.ibiblio.org/apollo/Lumina...
Our sponsor for PCBs: www.pcbway.com
Support the team on Patreon: / curiousmarc
Buy shirts on Teespring: teespring.com/stores/curiousm...
Learn more on the companion site: www.curiousmarc.com
Contact info: kzread.infoa...

Пікірлер: 450

  • @johnopalko5223
    @johnopalko52234 жыл бұрын

    Then, there's the famous comment in the Unix V6 kernel context-switching code: "You are not expected to understand this."

  • @greendryerlint

    @greendryerlint

    3 жыл бұрын

    My favorite from Linux when you su to or manage to login to a machine account that was never meant to be logged into directly: "You don't exist. Go away."

  • @lukeonuke

    @lukeonuke

    Жыл бұрын

    @@greendryerlint you dont exist. go away ahahhahahaha

  • @luke_fabis

    @luke_fabis

    Жыл бұрын

    As I recall, that one was meant for a graduate student to read through the code and explain it in detail. That comment was added so that the student didn't feel too pressured about a section they weren't going to be grilled on. But it accidentally got left in the code afterwards.

  • @darrennew8211

    @darrennew8211

    Жыл бұрын

    I think the favorite comment I've personally seen was in a mainframe OS. The subroutine was was for "External Interrupt Enable for Input and Output." And the only comment was "With a SYNC SYNC here and a NAK NAK there."

  • @puppergump4117

    @puppergump4117

    Жыл бұрын

    @@darrennew8211 Makes sense to me

  • @hornetsilksong
    @hornetsilksong Жыл бұрын

    It's beautiful to know that the shared suffering of programmers transcends generations

  • @nqnqnq

    @nqnqnq

    Жыл бұрын

    i, too, wish my grandchildren will have to go through the painstaking process of trying to figure out very low level programming. i am definitely not a sadist, though.

  • @hamyzschidenfeld3215

    @hamyzschidenfeld3215

    Жыл бұрын

    Suffering? They seemed to be having fun with it.

  • @lenowoo

    @lenowoo

    Жыл бұрын

    ​@@hamyzschidenfeld3215because the narration

  • @vadiks20032

    @vadiks20032

    Жыл бұрын

    @@hamyzschidenfeld3215 i think eventually programmers just get used to suffering and they start enjoying the programming but still deeply know that it is pain

  • @boogiehasfun

    @boogiehasfun

    Жыл бұрын

    @@vadiks20032mm, we are definitely going to get used to going through debugging hell just to figure out you misspelled something

  • @DanielGBenesScienceShows
    @DanielGBenesScienceShows Жыл бұрын

    I know this is two years old, but I’m so grateful that this source code ended up in your hands instead of tucked away in some wealthy auction winner’s curio cabinet. ❤

  • @spartanipods

    @spartanipods

    Жыл бұрын

    This belongs in a museum

  • @BartJBols

    @BartJBols

    Жыл бұрын

    @@spartanipods *cracks whip*

  • @jnharton

    @jnharton

    Жыл бұрын

    @@spartanipods While that is a good place for many historical things of public interest, it sometimes leads to no one ever seeing things again. Even when it does end up on display, preservation for its own sake can make things like this basically inaccessible. I.e. you only ever get to see just the one page a curator thought was interesting.

  • @Soken50

    @Soken50

    Жыл бұрын

    @@jnharton All of the above are correct, whenever possible first study, restore, reproduce, then properly store away the original and keep displaying/working on the copies unless you absolutely need to refer to the original. that way you can make as many people as possible have access to the material while keeping the original intact.

  • @litterbox019

    @litterbox019

    11 ай бұрын

    what if he is a wealthy auction winner?

  • @FesixGermany
    @FesixGermany4 жыл бұрын

    At work we had an old guy who retired a couple of months ago who worked in the test engineering department and also wrote hilarious programs and messages popping up on the user interfaces. Now that he is gone everything turns to be very strictly serious...

  • @opal9583

    @opal9583

    Жыл бұрын

    ​@@koolaidblack7697I think he meant gone gone

  • @cheezmartian

    @cheezmartian

    Жыл бұрын

    @@opal9583 Hopefully not.. that would be a short retirement

  • @zibbitybibbitybop
    @zibbitybibbitybop11 ай бұрын

    I'm a software dev, and me and another guy wrote the loading screen for one of the apps we work on so that it now has a long list of movie quotes and memes that it picks from at random and displays onscreen anytime somebody is running the app on their local dev machine. The relevant code even has a minimum wait time of 3 seconds to ensure that the viewer has time to read the text, along with the comment "you will see the damn easter egg" above the line of code with the wait timer.

  • @Sharklops
    @Sharklops4 жыл бұрын

    that "see if he's lying" comment cracked me up

  • @theknightikins9397
    @theknightikins9397 Жыл бұрын

    I love the idea that NASA gave their highly trained astronauts less fuel than they could because they were worried the astronauts would try to land anyways. That is totally something I would have done. “Hey guys, want to land and just see what’s there? Come on, 20 minute adventure.”

  • @BoredInNW6

    @BoredInNW6

    Жыл бұрын

    A more prosaic explanation is that it would have been wasteful to include enough fuel for something they wouldn't be doing. I don't think these were the sort of guys who would be prone to insubordination of that magnitude (with the whole world watching!)

  • @notfeedynotlazy

    @notfeedynotlazy

    Жыл бұрын

    @@BoredInNW6 dude, astronauts. In the heroic age of astronauts. They'd TOTALLY have done so and claimed it was an accident.

  • @hithere5553

    @hithere5553

    Жыл бұрын

    The astronauts of that era were absolute hotshots. If you gave them the opportunity they absolutely would go through with it. What is Houston going to do? Stop them? Throw the first men on the moon into prison? They’d have a presidential pardon before they even reentered the atmosphere.

  • @Caffin8tor

    @Caffin8tor

    Жыл бұрын

    @@hithere5553 NASA probably wouldn't be able to stop them, but wives/girlfriends would absolutely make them wish they stayed on the moon.

  • @UnnamedThe

    @UnnamedThe

    11 ай бұрын

    Maybe that was the plan after all. Staying far away from the hell at home.

  • @DeputatKaktus
    @DeputatKaktus4 жыл бұрын

    I love all the cultural references in there. And I think this tradition is still being upheld in some places. But finding Winnie the Pooh references alongside the Wizard of Oz as well as some Latin puns and classic art references - that speaks volumes about their level of education as well as their kind of humor. Best „easter egg“ I know of is in a bit of calibration software for scientific equipment. A friend who worked on the software told me this. It is part of the debugging routine that only devs get to see usually. One specific debugging message associated with an unrecoverable crash of the main program is called „He‘s dead, Jim.“.

  • @TheSpookiestSkeleton

    @TheSpookiestSkeleton

    Жыл бұрын

    What it speaks volumes about is that humans are always humans no matter when you look at them and also that they're a bunch neeeeeeeerds.

  • @peterfitzpatrick7032

    @peterfitzpatrick7032

    Жыл бұрын

    I love that line... Bones immortalised... 😏

  • @nickmax123

    @nickmax123

    Жыл бұрын

    Luckily memory isn't really an issue when naming variables anymore, but by GOD would I lose my mind if I came across a reference I didn't get 😅 Good programmer: function division(numerator, denominator) { if (denominator === 0) throw new Exception("He's dead, Jim") return numerator / denominator } Bad programmer function doTheThing(x,y) { if (y ==0) { console.log("He's dead, Jim"); return } return x/y }

  • @dmitripogosian5084

    @dmitripogosian5084

    11 ай бұрын

    ​@@nickmax123Second version reads easier to me, just doThisThing is too long and with annoying capitaluzations

  • @indianajones91
    @indianajones914 жыл бұрын

    Fun fact. Luminary 69 can do the lunar landing pretty well! We tested it in NASSP and it performs quite well, despite having several differences to the later programs (descent guidance doesn't account for the 2 second guidance cycle, which makes everything a bit more unstable). But for the longest time we actually thought something about the Landing Radar interface was broken in Luminary 69, as it gave bad results when the LR data was processed by the LGC. And so we didn't think it was fully capable to land. But it turns we were following an older Apollo 10 procedures document, which has the astronauts test P63 and then quickly exit from it again. And during that test they had the LR spurious test routine (R77) running, which interferes with normal LR data processing. No problem if you didn't actually want to land, but big trouble if you rely on data from the LR. So with that realization landing with Apollo 10 became quite possible. Of course you will run out of fuel on the ascent then, not enough APS propellant on Apollo 10...

  • @G-ra-ha-m

    @G-ra-ha-m

    4 жыл бұрын

    Why could Neil never master the flying bedstead but 6 astronauts - with no visible training - were able to make perfect (and silent?!) descents? The LM was fundamentally unstable and the software stability system would have to be extremely well developed and tested to achieve anything near the 'end-of-crane' stability we saw from 6 landings, without a single comment about stability, In reality the timescales for testing that type of software on the LM with it's limited digital (on/off) RCS thrusters would take years, yet the time from Neil's ejection to a perfect landing does not allow that.

  • @allangibson8494

    @allangibson8494

    4 жыл бұрын

    @@G-ra-ha-m Because the bedstead was flying in an atmosphere - every time it crashed was due to turbulence and high winds. If you are just fighting gravity the problems are MUCH simpler. The LM control design started in 1960. I think that qualifies as years to 1969.

  • @G-ra-ha-m

    @G-ra-ha-m

    4 жыл бұрын

    @@allangibson8494 The Falcon-9 manages to land perfectly well in the atmosphere onto a rocking barge. Additionally the lander's impingment plume will not only rip off the LM's lower insulation but create a high pressure point of instability and turbulence. Thirdly: why would NASA risk lives on live TV in an untested move in the untested LM when there was not a single instance of it working properly?

  • @colderwar

    @colderwar

    4 жыл бұрын

    NASA were risking the astronauts lives from the moment they climbed onto the rocket right until the capsule splashed down. The program was from an era before everything became pussified. Tell you what - take a replica LEM to the moon and see if it works as advertised. If it doesn't then I'll admit that you aren't a conspiritard and Capricorn One wasn't just a movie.

  • @allangibson8494

    @allangibson8494

    4 жыл бұрын

    @@G-ra-ha-m Other than the successful test flights on Apollo 8 and Apollo 10? The LM engine systems were directly derived from the Agena engines that had been used since the mid 1950's. The LM had more proven systems than the Command Module. As for back blast - the engine thrust is on par with a leaf blower and shutdown 6ft above the lunar surface, the LM was supposed to drop the last bit in free fall. Landing on Earth using thrust is MUCH harder but that was done in the early 1950's as part of VTOL fighter development.

  • @ThomasHaberkorn
    @ThomasHaberkorn4 жыл бұрын

    low level assembly combined with high level culture referencing

  • @silverseth7
    @silverseth711 ай бұрын

    You know, it's stuff like this as what's going to make our computer's cool when they gain sentience. They don't 'activate ignition', they 'burn, baby'

  • @AsbestosMuffins
    @AsbestosMuffins4 жыл бұрын

    "Don can you sign my book?" "Sure" *Crushes table with book*

  • @chenzhuoyu1992

    @chenzhuoyu1992

    4 жыл бұрын

    Legit signed code

  • @richardlincoln886
    @richardlincoln8864 жыл бұрын

    These are the best sort of inline code comments/documentation - not what the code is doing, but why its doing it and insight into the developers internal monologue and thoughts. Helps massively when trying to read old code and debug. (Ex. developer) I tended to quote lord of the rings/Tolkien in comments back in the day :)

  • @John_L

    @John_L

    4 жыл бұрын

    Yes absolutely, Richard. When I was writing assembler code (IBM 360 BAL) we were taught that we had to comment every line with what it was doing. That was a crazy and ridiculously time consuming statement of the obvious, so we quickly ditched that in favour of "why". We were all youngsters so it was inevitable that the memes and humour of the era would find an outlet in the code we were writing.

  • @1944GPW

    @1944GPW

    4 жыл бұрын

    I wholeheartedly agree. Comments that have the rationale for why the code exists. And there is an good explanation at the start of (presumably) each program. I always endeavour to write my code like that. Sadly a lot of programmers (er 'coders') these days offer that lazy cop-out excuse "the code is the comments".

  • @whannabi

    @whannabi

    Жыл бұрын

    Programmers are insane that's all there is to it. But it feels strangely conforting to know that it's almost a natural thing to write this way at some point.

  • @rabidpb
    @rabidpb4 жыл бұрын

    The motto "Honi soit qui mal y pense" is on the British Royal coat of arms, so it shows up on everything from our coins to our passports. It dates from 1348, when the court language was French (English was not made the official language of Parliament until 14 years later, and it'd be another 49 years before we had a monarch who spoke English as a first language.)

  • @tissuepaper9962

    @tissuepaper9962

    Жыл бұрын

    friggin' Normans and their Conquest.

  • @JohnnyWishbone85

    @JohnnyWishbone85

    Жыл бұрын

    Specificially, it's the motto of the Order of the Garter.

  • @abyssalboy8811

    @abyssalboy8811

    Жыл бұрын

    "Honey swah kimalley pahnce"

  • @tsm688

    @tsm688

    11 ай бұрын

    @@abyssalboy8811 hockey swat kimaley pants.

  • @squidkid2
    @squidkid22 жыл бұрын

    I remember my dad and the printouts that he had stacked up in huge chaotic piles in his bedroom when he worked on the LEM for Grumman. You had to be in good shape to be a computer programmer back in those days. My dad used to sit on his bed pouring over the printouts and he did let me view them but I was only in my early teens at that time so I really couldn't comprehend the significance of what I was seeing. To software guys like Mike today those piles of code printouts would be fascinating but back in my day they were just stacks of dust covered binders stuffed with indecipherable code. I guess it's possible that one of those stacks in his bedroom might have contained a printout of the infamous Apollo 11 LGC flown code but I'm sorry to say I have no idea what happened to them or if they still exist.

  • @thatdognotthepuppy5809

    @thatdognotthepuppy5809

    Жыл бұрын

    Is your old man still around? Very grateful for the work he did, hope he's had a good life.

  • @squidkid2

    @squidkid2

    Жыл бұрын

    @@thatdognotthepuppy5809 No he passed away in 1987. After Apollo he worked for Rockwell on the Shuttle glide slope tests. I don't know if he had a good life but he certainly had an interesting one!

  • @snoxwashere

    @snoxwashere

    Жыл бұрын

    My grandfather had the same job at Grumman as well, working on the LEM programming. It's a shame that he never kept any notes or punchcards, I'd imagine it'd be fascinating to read through.

  • @thatdognotthepuppy5809

    @thatdognotthepuppy5809

    Жыл бұрын

    @@squidkid2 My condolences, I hope he's at peace. I lost my father recently, I didn't really know him very well but I understand that it's a hard thing to deal with, hope you're doing well and living happily.

  • @robertbilling6266
    @robertbilling62664 жыл бұрын

    That looks remarkably like the output of an IBM 1403 printer. And yes, all of us from that period do amusing comments and variable names. I once had an error handler called OBOTHER. Think of Winnie the Pooh.

  • @interestingoldthings4889

    @interestingoldthings4889

    3 жыл бұрын

    Can concur. The guys I learned FORTRAN and Moto 68XXX assembler from back in the '80s were programming veterans, and cheesy puns alongside erudite cultural references were ingrained in the culture.

  • @stargazer7644

    @stargazer7644

    Жыл бұрын

    It's remarkably like the line printer output of any of dozens of printers of the era.

  • @sioux4358

    @sioux4358

    Жыл бұрын

    The IBM 6500 (and others) have similar outputs. I think it's just a dot matrix thing

  • @simonknights7526

    @simonknights7526

    Жыл бұрын

    ​@@sioux4358the 1403, and similar, were not dot matrix printers. They were, for the time, high-speed impact printers with the characters on a 'chain'. And VERY noisy!

  • @sioux4358

    @sioux4358

    Жыл бұрын

    @@simonknights7526 Explains my confusion when I learned it had a hammer bank. Neat!

  • @miigon9117
    @miigon9117 Жыл бұрын

    3:23 "because 69 is the one designated to fly" is such a great sentence i loved it

  • @reconciliation86
    @reconciliation86 Жыл бұрын

    I love how this paper gives them exactly 3 rows per color change to print on and they just printed wherever. That's the kind of practically I stand for. It's not perfect, but damn it's good enough.

  • @stargazer7644

    @stargazer7644

    Жыл бұрын

    It is standard green bar 160 column tractor feed paper.

  • @bradwilmot5066
    @bradwilmot5066 Жыл бұрын

    If anyone ever digs far enough into the routines for my building management software, they're going to think (probably correctly...) that I'm clinically insane... I've used so many movie and cartoon references, imaginative swears/threats, and off the wall remarks...

  • @opinionatedfoxl8369

    @opinionatedfoxl8369

    Жыл бұрын

    Lol

  • @TeodorLojewski

    @TeodorLojewski

    Жыл бұрын

    Cool!

  • @PamellaCardoso-pp5tr

    @PamellaCardoso-pp5tr

    Жыл бұрын

    I love to writte comments that is basically me arguing with myself, sometimes even insulting myself about why i need to do such thing, and complaining about each hack or warning myself if i found anything that may cause a memory leak.

  • @marccolten9801
    @marccolten98014 жыл бұрын

    I've been programming since the mid 1970s and have encountered some interesting comments "If you've reached this line you are lost" "The value is 1. I don't know why or what it does but anything else will crash everything"

  • @userPrehistoricman

    @userPrehistoricman

    4 жыл бұрын

    I recently watched a video called "the rapidly dwindling sanity of valve programmers as expressed through code comments" and it's a treasure trove of these kinds of comments.

  • @Gartral

    @Gartral

    4 жыл бұрын

    my favorite: // // Dear maintainer: // // Once you are done trying to 'optimize' this routine, // and have realized what a terrible mistake that was, // please increment the following counter as a warning // to the next guy: // // total_hours_wasted_here = 42

  • @rpavlik1
    @rpavlik14 жыл бұрын

    Makes me feel less bad about the jokes and cultural references in software I've worked on.

  • @hornorama
    @hornorama4 жыл бұрын

    This whole series with the AGC and its code has been one of the most incredible achievements and a terrific watch - really big thanks for all the effort. Amazing stuff!

  • @G-ra-ha-m

    @G-ra-ha-m

    4 жыл бұрын

    Un-credible and 'fantastic' as in fantasy. Why in 2020 are we believing this rubbish still? Where di people's critical thinking go?

  • @G-ra-ha-m

    @G-ra-ha-m

    4 жыл бұрын

    @Chandan Sinha Please stop defending this 50 year old lie being trotted out all the time, each new sycophant to the lie makes it even more of an abomination. I'm entitled to my view which is considerably more educated than yours, I realise the *truth* about the Apollo hoax, never replicated or verified and the deadly radiation of the VAB and beyond may spoil your delusions, but that's tough. We've tried it your way, of trusting the american government for 50 years now and where has that got us? Last week the Dragon replicated functionality we had in 1965 with Gemini, america is at constant war with at least 10 (all innocent) countries and now we're not even allowed out of our own homes! This lying and cheating american way has failed us all, especially *you* if you have any interest in space. By propagating the lie of Apollo; work on combatting the VAB has been driven underground, away from the best minds because of the false dogma that it's not a problem. But it _is_ a problem, it's the _biggest_ problem and that's why no man has ever gone into or above the VAB except for the fantastical Apollo fairy story. So congratulations on your part in preventing progress on manned space exploration, you must be so proud.

  • @alvinthekalvin4398

    @alvinthekalvin4398

    4 жыл бұрын

    @Graham it would be so much more work to make a fake movie set, replicate the wacky gravity of the moon, and then film it, rather than to actually put someone on the moon! It’s incredible people still believe that the moon landing was fake.

  • @G-ra-ha-m

    @G-ra-ha-m

    4 жыл бұрын

    @@alvinthekalvin4398 Movie sets are simple - how many hundreds of thousands of films have been made? What part do you think is difficult? I'll tell you what is difficult: Building a manned moon mission in less than a decade, having it all work, and avoiding the lethal radiation in and beyond the VAB. That's so difficult we still can't do it.

  • @adrianshingler9783

    @adrianshingler9783

    4 жыл бұрын

    Graham oh I get it, you are the fully educated one and everyone else is a sheep 🐑 yes? 😆😆. Thanks for clearing that one up.

  • @gregorcutt1199
    @gregorcutt1199 Жыл бұрын

    "noli me tangere" are three of the most beautiful words ever uttered. It's brilliant to adapt this to constants. It's tragic that more people these days don't know the reference

  • @letsgocamping88
    @letsgocamping884 жыл бұрын

    Would be great to have artefacts like these available digitally and free for all for to pour over. Who knows who’s eyes it will appear before and what information will be gleaned from it.

  • @CuriousMarc

    @CuriousMarc

    4 жыл бұрын

    All of the scans have been posted many Moons ago ;-)

  • @davidswanson5669
    @davidswanson5669 Жыл бұрын

    I love that these comments were never meant to be showcased to anyone, nor were they concerned that the comments could very easily be seen by whomever - they wrote them because it felt good to do so. I’m not a programmer, but I’ve done the same thing all my life - embed some offhanded or witty quip into things that weren’t meant to be an effort to communicate it to someone. It helps break up the monotony of work, and gives you a chance to express your mood at the time, plus hone your humor. It’s gotten me into as much trouble as a living human can get, and yet I still do it.

  • @kspencerian
    @kspencerian4 жыл бұрын

    The Lunar Module ascent stage was *not* short-fueled to keep the astronauts from landing. It was short-fueled so to simulate conditions of the ascent stage at that altitude of descent stage separation. The descent stage wasn't short-fueled. Snoopy was unable to land because it lacked the proper landing software, the LM was too heavy and the crew lacked any EVA gear. This is easily located in Apollo histories only such as the Apollo 10 Flight Journal.

  • @CuriousMarc

    @CuriousMarc

    4 жыл бұрын

    Not true. One can land with Luminary 69. We (as in Niklas, of NASSP fame) checked. See the most popular comment at the top.

  • @robertw1871
    @robertw18714 жыл бұрын

    It’s great to see that brilliant guys could still maintain a sense of humor with such a critically serious piece of gear, and it’s so fortunate that it’s been preserved.

  • @Sally4th_
    @Sally4th_ Жыл бұрын

    I had to port some Fortran code (yes, really) to an early PC and the compiler was, well, let's just call it "shonky". There were locations in the code file it simply wouldn't look at. I got the program working eventually but had to leave a comment to the effect "Don't delete this comment or add anything above it. I have no idea why but the compiler won't work with code or a blank in this line."

  • @ShrubRustle
    @ShrubRustle Жыл бұрын

    8:25 the funny thing about Latin is, to say "don't do this" you pretty much have to say "don't want to do this". 'Nolo, nolare" means "to not want", and that's basically your only option for negative imperatives

  • @foolofdaggers7555
    @foolofdaggers7555 Жыл бұрын

    I love how Actual Goddamn NASA insisted on having the flown version's number be 69. Iconic

  • @danielson9579
    @danielson95794 жыл бұрын

    The engineering team where so well cultured.

  • @markevans2294
    @markevans22944 жыл бұрын

    The Apollo 10 ascent module is still in solar orbit. It would certainly be interesting were it ever recovered. Likely with the AGC code intact.

  • @allangibson8494

    @allangibson8494

    4 жыл бұрын

    Unless a meteor has hit the memory cards - absolutely certain with magnetic core ROM. The magnetic core RAM is probably readable too.

  • @keeperofthefate
    @keeperofthefate4 жыл бұрын

    "Oldest" programming I ever done was some simple commands in Commodore 64 basic. This is like another "god-like" tier that I will probably never ever have oppurtunity to type.

  • @invisiblewizard2538
    @invisiblewizard253811 ай бұрын

    "Honi soit qui mal y pense" was on our coins in the UK for a while. There are many French phrases and mottos in the UK - they come from the long period where the nobility of England and France were deeply mixed, ending in the Hundred Years War, Agincourt, Joan of Arc, and all that exciting historical stuff.

  • @samstade5598
    @samstade5598 Жыл бұрын

    This is so cool! Every generation of coders need to see the light hearted spirit of our predcesors! We must never take ourselves too seriously lol.

  • @AllElectronicsChannel
    @AllElectronicsChannel4 жыл бұрын

    Unbelievable !! Imagine these guys programming and debugging the code that would put man in the moon and could not fail !

  • @CuriousMarc

    @CuriousMarc

    4 жыл бұрын

    Lots and lots of simulation and testing.

  • @AllElectronicsChannel

    @AllElectronicsChannel

    4 жыл бұрын

    @@CuriousMarc Would be nice to see what kind of closed loop controllers we have on the source code. Lots of kalman estimators and PID ?

  • @Clancydaenlightened

    @Clancydaenlightened

    4 жыл бұрын

    Imagine having to program it bit by bit, pretty much in binary, compiling was done via physical assembly, the single chip CPU doesn't yet exist, no ide, no modern high-level language and in-software emulation...... nowadays you could probably fly to the moon with a few arduinos, but going to space is expensive so everything is over engineered, you don't want solar radiation wiping or crashing or resetting it during flight

  • @dustysparks

    @dustysparks

    4 жыл бұрын

    @@Clancydaenlightened AND no Google or Stack Exchange if you get stuck!! Maybe a BBS or two, but then again this was all custom hardware!

  • @MistahHeffo

    @MistahHeffo

    4 жыл бұрын

    @@Clancydaenlightened a few arduinos? You could get the job done with one and a whole mess of IO expander hardware

  • @cybr69lol
    @cybr69lol Жыл бұрын

    the fact that the apollo 10 source code has references to random media during its time is pretty funny to me, it makes you wonder if people in the future will put references to memes in spaceships in the future lol

  • @Renville80
    @Renville80Ай бұрын

    Many years ago, I printed out a listing for an address book program on the Apple 2, and I remember there being some comments in the listing: ‘find a match’, then ‘found a match’, then ‘OK then, kill it!’ Still makes me chuckle a bit 40 years later.

  • @slordmo2263
    @slordmo22634 жыл бұрын

    Yep, interesting insight into these young nerdy 60's kids....working on some momentous software. Just think, alot of their contemporaries of the time were tripping, free loving, and/or knee-deep in jungle mud.... but these guys were writing history.....the contrast of that era is amazing.... (keep up the good work, you guys....really interesting stuff)

  • @astralwerks4

    @astralwerks4

    3 жыл бұрын

    A lot of those "kids in mud" wound up working in software many times more advanced than this stuff. :)

  • @raysutton2310
    @raysutton2310 Жыл бұрын

    This dates back to about 1992/3 I was working in the airline industry writing application assembler code on TPF, needed a date calculation routine, to save space I omitted the millennium adjustment (since 2000 would be a leap year) Knowing some smart-ass would pick this up during code review I added a comment, which I still remember today. "This calculation will fail in the year 3000, I don't care as I'll be safely tucked up dead by then" (I may have used algorithm instead of calculation, but the essense is correct) Not as classy as the "guys" who wrote the Apollo code but it got a chuckle at the code review.

  • @aaronbredon2948

    @aaronbredon2948

    11 ай бұрын

    That's better than a bunch of other programs that treated 2000 as a non-leap year. You knew the code was incomplete, but that it would be valid for over a century. And you put a comment in to indicate you understood the shortcut you took. There were literally a lot of programs that did date arithmetic based on "every 4th year is a leap year unless it happens to be divisible by 100", leaving out the "but every year divisible by 400 is a leap year". They would have been fine with "every 4th year is a leap year". But they knew there was an exception, and didn't even bother fully coding the exception. So they broke on 2000.

  • @raysutton2310

    @raysutton2310

    11 ай бұрын

    @@aaronbredon2948 Tell me about it I ended up fixing a few!

  • @aaronbredon2948

    @aaronbredon2948

    11 ай бұрын

    @raysutton2310 I remember dealing with some that considered 1900 a leap year but 2000 not a leap year. I think some versions of Excel were like that.

  • @amojak
    @amojak4 жыл бұрын

    reminds me of the day i had to look through the source code for a naval echo towfish system and it had many error traps. the final trap that covered all undocumented events said "Something somewhere has gone horribly wrong". this it would of printed out on a sonar printer on a boat :)

  • @kaboomgaming4255

    @kaboomgaming4255

    Жыл бұрын

    That would be terrifying to see

  • @B-System

    @B-System

    11 ай бұрын

    @@kaboomgaming4255 You get used to it.

  • @ardentglazier2867
    @ardentglazier28674 жыл бұрын

    Back in the day I was dredging the source code for the bootstrap for Unix System V/286 that I was writing drivers for. One assembler bit went something like: repz movsb mov di, $0 ; Never trust a micro

  • @tonyvancampen-noaafederal2640
    @tonyvancampen-noaafederal26404 жыл бұрын

    @ 7:15 "Honi Soit Qui Mal y Pense" is the motto of the English Order of the Garter. Wikipedia claims that the translation of the motto is: "Shame on him who thinks evil of it." The patron saint of the order is St. George, my guess is that it was included as a reference to taming fire breathing dragons. I should have watched further though as the team figured out the next riddle as well. Amazing what a well rounded engineer knew back in the day. A bit surprising that Santa Barbara didn't make an appearance.

  • @MatawguroRobbie
    @MatawguroRobbie4 жыл бұрын

    Noli se tangere /* Don't touch. Magic */

  • @soniclab-cnc
    @soniclab-cnc4 жыл бұрын

    mike is a wizard

  • @1944GPW

    @1944GPW

    4 жыл бұрын

    I wonder if Mike has seen 'The computer wore tennis shoes'? Quiz tournament special topic: the AGC!

  • @pmcgee003

    @pmcgee003

    4 жыл бұрын

    Possibly a sorceror.

  • @turpialito
    @turpialito4 жыл бұрын

    Priceless. Those guys were veritable erudites with a delightful sense of humor. Thanks for sharing this little gem. Cheers!

  • @analdisco
    @analdisco Жыл бұрын

    Thanks Marc and everyone involved documenting and sharing this. I'm going to give that book a try.

  • @mission2858
    @mission2858 Жыл бұрын

    Reminds me of KSP engineering: “While something exploded, it didn’t seem that important” - Reid Captain, 2023

  • @hofii2
    @hofii24 жыл бұрын

    "Honi soit qui mal y pense" is for the Knights of the Garter (England's most exclusive order). It was created when the royalty still spoke French and had significant lands in modern France.

  • @keithmills778

    @keithmills778

    3 жыл бұрын

    Also, the motto of several military regiments throughout the Commonwealth. I recognized it as a Canadian motto, but it’s also used as a regimental motto in Australia, New Zealand, and the UK.

  • @PRRGG1
    @PRRGG1 Жыл бұрын

    Oh how I wish I could hang out with you characters. These AGC videos have been so much fun.

  • @TheFleetz
    @TheFleetz4 жыл бұрын

    Mind boggling what you guys are doing! Fascinating stuff....😄👍

  • @CarloRoosen
    @CarloRoosen4 жыл бұрын

    It can't get much nerdier than this...

  • @aaronr.9644
    @aaronr.96444 жыл бұрын

    Any warning in Latin will always sound pretty ominous :D

  • @AndreasDelleske

    @AndreasDelleske

    4 жыл бұрын

    Aaron R sic transit Gloria Mundi for the self destruct routine...

  • @alias7goldenletters
    @alias7goldenletters Жыл бұрын

    we came from this to great gaming notes compilations, hard working people steaming off is always wholesome

  • @TroyRubert
    @TroyRubert4 жыл бұрын

    I volunteer for the tedious work. I think it’s to the point where the archives and things in private collections should be brought out in to the light for everyone.

  • @andremantovani
    @andremantovani Жыл бұрын

    this (as all the previous videos) is AWESOME

  • @KevinBalch-dt8ot
    @KevinBalch-dt8ot Жыл бұрын

    My understanding was that Apollo 10’s ascent stage was short-fueled was to be able to accurately reflect what it’s fuel inventory would be had it actually landed and reached the altitude where they separated from the descent stage, not to discourage a landing. Had they landed, they would not have been able to meet some of their mission objectives.

  • @CuriousMarc

    @CuriousMarc

    Жыл бұрын

    Your understanding is correct.

  • @jjju3
    @jjju3 Жыл бұрын

    "please crank that silly thing around" is literally exactly how me and my friends talk to each other, thats hysterical. crank that silly thang around.

  • @michallacki9462
    @michallacki94622 жыл бұрын

    I wasn't aware of the book written by Don Eyles. Thank you for the tip off!

  • @38911bytefree
    @38911bytefree4 жыл бұрын

    All the listing should have given to Mike wtihout going into any auction.

  • @pmcgee003

    @pmcgee003

    4 жыл бұрын

    You've got to fight ... for the right ... to paaaarty.

  • @mumblbeebee6546

    @mumblbeebee6546

    4 жыл бұрын

    Nah, let people own the paper if they want to - but yes, Mike should have an automatic right to scan all Apollo documents, nevermind who owns them ;-)

  • @garbleduser

    @garbleduser

    4 жыл бұрын

    @@mumblbeebee6546 your statement Rings loud and clear to all that is right.

  • @stargazer7644

    @stargazer7644

    Жыл бұрын

    They were

  • @sanches2
    @sanches24 жыл бұрын

    Loved the episode thank you!

  • @ZsomborZsombibi
    @ZsomborZsombibi4 жыл бұрын

    This is the most exciting investigation story I have ever seen. I wouldn't be surprised if National Geographic asked you to participate to a whole-night movie.

  • @ENCHANTMEN_
    @ENCHANTMEN_ Жыл бұрын

    "Come on astronaut, crank dat soulja boy"

  • @DeclanMBrennan
    @DeclanMBrennan Жыл бұрын

    That's renaissance level code commenting as befits a pivotal moment in both the history of space flight and software development.

  • @EndingSimple
    @EndingSimple11 ай бұрын

    Old IBM 370 assembler programmer here. Comments. Yes, I remember those. One was at the beginning of a program that said "NOBODIY KNOWS THE TROUBLE I"VE SEEN." (line from an old African American hymn). Now I'm playing Patrician IV on a DeskTop PC. The interface for automatic routing of ships turns out to be nothing less than a programming language. Why do I know this? Because it has the key flaw that all programming languages have: they do exactly what you tell them to do instead of what you want them to do.

  • @glenwoofit
    @glenwoofit4 жыл бұрын

    I find this truly fascinating.

  • @MYOB990
    @MYOB9904 жыл бұрын

    I hope NASA has some kind of History section who is responsible for indexing and archiving current code, and other artifacts so 50 years from now, no one is trying to find and recover information.

  • @edgeeffect
    @edgeeffect4 жыл бұрын

    I can almost smell that listing.... I sometimes wish I had kept more of mine.... nothing anywhere near as historic or important as Apollo.... but still.... if it's on green stripey paper with sprocket holes, it cool! Right?

  • @letsgocamping88

    @letsgocamping88

    4 жыл бұрын

    edgeeffect I like that it’s bound with what looks to be an off cut of electrical wire.

  • @heavenstomurgatroyd7033

    @heavenstomurgatroyd7033

    4 жыл бұрын

    I knew guys who could read punch cards........

  • @edgeeffect

    @edgeeffect

    4 жыл бұрын

    @@heavenstomurgatroyd7033 oooh.... I never read a punch card but paper tape was like my braille. ;)

  • @shadmtmtn1603
    @shadmtmtn1603 Жыл бұрын

    As a french guy, i can explain why "honni soit qui mal y pense". It means, "be ashamed to think bad of us", we think of it, but these are desparate routines, we never want to see their effects, we hope to never know, but, maybe, to save people, we may sacrifice whatever 😟 dangers are everywhere, in many shapes... 🖖

  • @danieldare2640
    @danieldare264010 ай бұрын

    Thank you so much for posting this. Really appreciate it. I assume this is machine code used specifically on the Apollo craft hardware and the comments are not read by the programme but used by the programmers explain what's happening? So many questions I will have to go and have a look at some of your other videos and do some research, Again thank you so much

  • @Gunbudder
    @Gunbudder Жыл бұрын

    i was very lucky to work with some old timers and see some of the comments in their code from the 80's, and it was quite similar with the amount of humor. they let a lot more rip back then with humorous comments and even PII in the comments

  • @MrHichammohsen1
    @MrHichammohsen14 жыл бұрын

    Thank you for the eye treats as usual.

  • @MrFranklitalien
    @MrFranklitalien Жыл бұрын

    absolutely fantastic stuff!!

  • @gunnark9823
    @gunnark98234 жыл бұрын

    I have one question, did the NASA has transfered these old listings on paper to tape? A former colleague and I had helped someone from them to restore old archives in CVS format they had used for one of their mars misson.. They had no idea how to read those old archives and my colleague was an expert on CVS. Finally, the code from the archives was restored, a great moment for me.

  • @CuriousMarc

    @CuriousMarc

    4 жыл бұрын

    We have not had access to any of the original MIT tapes, if they still exist. But Mike has recovered the source code from the listings, an assembler faithful to the original as been rewritten, and recompiled the source to byte exact. And then we ran the code on an actual AGC. Mike is trying to see if we can recreate the source punch card deck, but as we said in the previous video, the number of cards is so large that the expense quite great. Ken is hard at work trying to emulate the actual Honeywell computer on which this was done.

  • @johncongerton7046
    @johncongerton70466 ай бұрын

    the courage required to deliver all that

  • @NuncNuncNuncNunc
    @NuncNuncNuncNunc Жыл бұрын

    Funny, as soon as I saw the title, I thought of Don Eyles. Really nice guy.

  • @macronencer
    @macronencer11 ай бұрын

    Yep, Latin references in warning comments and "N. B." actually expanded to "NOTA BENE". Education was different back then! Fun code comments are less of a good idea these days, because often code is in a public repository that is sometimes accessible by the customer. Used to have a lot of fun in the 1990s though. My team were in the habit of using fantasy-style "mediaeval" language, such as "WRITE TO DATABASE, ELSE THE WRATH OF MY BEARD SHALL SMITE THEE". And of course... the Easter Eggs we made. Oh wow!

  • @SSJIndy
    @SSJIndy8 ай бұрын

    DoD Navy had a requirement for a comment on every line of code. There were many lines that said 'This is a comment' in order to comply.

  • @Hans-gb4mv
    @Hans-gb4mv4 жыл бұрын

    Let's crowdfund a SpaceX rocket to go to Snoopey and recover some hard- and software.

  • @allangibson8494

    @allangibson8494

    4 жыл бұрын

    Why not just get the whole thing?

  • @Hans-gb4mv

    @Hans-gb4mv

    4 жыл бұрын

    @@allangibson8494 Because it's not designed for re-entry into our atmosphere.

  • @allangibson8494

    @allangibson8494

    4 жыл бұрын

    @@Hans-gb4mv So you put it in a box that is... Sort of an oversized dragon capsule. If you have an engine bell docking probe you just need a cover over the top. The structure was launched from the ground so it will handle 4G with no problems. The cover doesn't need to be pressure tight but water tight would be useful. A mission extension module similar to Intelsat 901 could handle the return to low earth orbit.

  • @gleggett3817

    @gleggett3817

    3 жыл бұрын

    @@allangibson8494 Basically "You only live twice" without the villain lair in the volcano

  • @allangibson8494

    @allangibson8494

    3 жыл бұрын

    G Leggett If you are talking Elon Musk - don’t bet on that not being an option....

  • @RubenKelevra
    @RubenKelevra4 жыл бұрын

    Can you please try to recover the Saturn V code from one of the memory modules which are still somewhere in a museum?

  • @alexanderross2786
    @alexanderross27864 жыл бұрын

    You guys rock!!

  • @stephanc7192
    @stephanc71924 жыл бұрын

    Fascinating Love the old humor!

  • @nonenowherebye
    @nonenowherebye Жыл бұрын

    I had always been told that the short fueling of the LM wasn't so much about preventing the astronauts from landing, but rather so that the flight and performance dynamics would be modeled correctly, but at a higher altitude. If they had fully fueled it, when firing the descent engine, they wouldn't be accurately modeling the time near landing (which was one of the goals), and when returning to the CM, they would be overly heavy.

  • @user-fr5rk2ct9k
    @user-fr5rk2ct9k Жыл бұрын

    رائع ! ، كم هو جميل ان نطلع على تلك الاسطر من البرنامج التى لاشك انها كانت تعد من احدث التكنولوجيات التي وصل اليها العقل البشري .

  • @wisteela
    @wisteela4 жыл бұрын

    Superb and amazing

  • @jaycee330
    @jaycee33011 ай бұрын

    7:31 It's Old French for "Shame on him who thinks evil of it', it's the motto of the British Order of the Garter.

  • @George-W-Jenson
    @George-W-Jenson11 ай бұрын

    In those days the hardware and software was tied very close together. In order to fully understand the code, you have to understand the archicture of the hardware that where manipulated by the software but also how the hardware was connected to external units (e.g. the radar).

  • @meihem76
    @meihem76 Жыл бұрын

    As an aside, the Order of the Garter still exists. Members are knighted by the reigning monarch using Richard the Lionheart's arming sword. That is the sword that Richard II actually hit people with.

  • @theprimalpitch190
    @theprimalpitch190 Жыл бұрын

    Does anyone know where the software edit/devel process was hosted? I'm guessing some IBM mainframe stored the files and allowed editing. Was it transferred by hand via paper to the actual rope memory?

  • @soranuareane
    @soranuareane Жыл бұрын

    Would you be willing to do a video on the AGC microcode, instructions, and how the pipeline works? It might be way over the average viewer's head, but as a software engineer I'd love to see how they designed the processor.

  • @CuriousMarc

    @CuriousMarc

    Жыл бұрын

    Here is a great detailed architecture video on the AGC: kzread.info/dash/bejne/qqxrrsihZbaxhbQ.html . And there is of course our epic AGC restoration series where we explore and debug every part of it at the component level and make it work in the end: kzread.info/head/PL-_93BVApb59FWrLZfdlisi_x7-Ut_-w7

  • @MarioAndreschak
    @MarioAndreschak11 ай бұрын

    I am a ABAP programmer and inside the SAP systems' source code you'll often find things like "do not change this, or it will be your job to painfully recover the original source code on database level during the upcoming weekend because nobody will be able to log into the system anymore". I think it's hilarious.

  • @525Lines
    @525Lines4 жыл бұрын

    I'm actually a bit peeved that every little bit of this isn't in the Air and Space Museum. At least it's all been scanned.

  • @CuriousMarc

    @CuriousMarc

    4 жыл бұрын

    It will all end up there eventually. The problem with the Smithsonian is that if you donate it there, the stuff ends up in a giant black hole. There is a lifetime limit of how many scans you can request from the Smithsonian, which happens to be 5 items or something like that. Mike reached his lifetime limit in a nanosecond. Plus the insanely high cost per page they charge would make it more expensive than purchasing the real thing. I got a nasty email from the director when I requested visual access to stored hardware, despite being recommended by no one else than NASA’s former director of human spaceflight. And if Ron Buckley had not become an archivist at NARA, we would never have been able to get the documents we needed for the AGC restoration. Etc, etc... The one museum we got great support from is the MIT museum, who has several listings, and the sister of “our” AGC. But it’s the exception rather than the rule. We have had far better study access from private collections.

  • @heinrichhein2605

    @heinrichhein2605

    4 жыл бұрын

    Please do a video about that topic i think it is important for the people to know that! This is so important! I think allot if not all do not know this problem! Thank you for doing such amazing work.

  • @jonathanvanier

    @jonathanvanier

    4 жыл бұрын

    @@CuriousMarc It’s really too bad that the Smithsonian treated you fine folks like that. It does sound like the worst mix of public servant entitlement and paranoid museum curatorship. I mean, I fully understand (and support) a museum’s duty to preserve and protect their collection for future generations, but it is counterproductive to prevent (or charge unreasonable fees) for safe and non-destructive access to stored materials. It is sad that some museums forget that they have the double mission of preserving AND broadcasting the historical materials that they are entrusted with. After all, a collection that is left in the dark for too long only risk becoming unimportant or irrelevant to decision makers and the general public, thus threatening the very core of their raison d’être in the long run. As for the source code binders themselves, I am glad that you guys got their stewardship: not only are you respectful of history and the importance of preserving historical materials, but - as you say in the video - Mike is among the very few people to both have the expertise to bring back these documents to life, so to speak, and the interest to do so while sharing the journey and end result with everyone. Something that a museum like the Smithsonian should be first in line to support, come to think of it. Oh well. Can’t wait for the next video in this superb series!

  • @525Lines

    @525Lines

    4 жыл бұрын

    @@CuriousMarc I was a librarian. So, that sounds about right. I'd be curious how you OCR bar code, too.

  • @CuriousMarc

    @CuriousMarc

    4 жыл бұрын

    @@jonathanvanier Well it’s a tough dilemma. Traditional museum historians are the remotest thing you can find from an engineer. Goal #1 is preservation. They treat their artifacts as Mona Lisas, whereas we view them as items that were engineered to work. Therefore the item contribution is somewhat lost if you are not allowed to look at its engineering, which often means you need to get it working, at least for a brief moment. We have interesting tensions on the subject with our own home institution, the Computer History Museum. They were hesitant at first to let us read their AGC core rope - it’s not like they have many of these if we break it. But they were so very glad when we recovered the data and got it to run on our AGC. I hope we can do more of this in the future.

  • @redpillcommando
    @redpillcommando4 жыл бұрын

    This is very cool, but it reminds me of all the deep trouble I go into with some of the silly things I put in comments. Some of the people I worked with back in the nineties were somewhat humor challenged.

  • @geekmoto1363
    @geekmoto1363 Жыл бұрын

    anyone know which page the Astronaut: Please crank the silly thing around is located on, i got a pdf version of th listing from internet archive and am trying to find it EDIT: NM Found it, the PDF from the Internet archive has it on page 739 for anyone wondering

  • @Dr.PandaUndergrad
    @Dr.PandaUndergrad Жыл бұрын

    I never appreciated NASA or anything related to the subject matter in the video but wow it's so cool to see something so remarkably human.

  • @big_dad9465
    @big_dad9465 Жыл бұрын

    My dad showed me a compilation of a program he wrote in the late 70s. Its full of dirty jokes and batman refrences.

  • @big_dad9465

    @big_dad9465

    Жыл бұрын

    "If your seeing this you're fucked" is probably my favorite.

  • @evilborg
    @evilborg4 жыл бұрын

    Reminds me of some of the early comments I made in the linux kernel when I worked on it :)

  • @PCJ52
    @PCJ528 ай бұрын

    I once found this comment in business software on an IBM server running AIX : "SHUT 'ER DOWN, CLANCY, SHE'S PUMPING MUD!" I guess it was a common saying, but I'd never heard it.

  • @misz3
    @misz3 Жыл бұрын

    The best thing is when a super serious coworker just leaves the most unhinged commit messages

  • @xnamkcor
    @xnamkcor Жыл бұрын

    "Off to see the wizard". American viewers: "I understood that reference!".

Келесі