Real Programmers Write Machine Code

preview_player
Показать описание
Recorded live on twitch, GET IN

### Article
By: Ed Nather

### My Stream

### Best Way To Support Me
Become a backend engineer. Its my favorite site

This is also the best way to support me is to support yourself becoming a better backend engineer.

MY MAIN YT CHANNEL: Has well edited engineering videos

Discord

Рекомендации по теме
Комментарии
Автор

Real programmers don’t need machines to run their code, they simply execute it on their minds. Anything short of that is a skill issue

MrBran
Автор

Real programmers flip individual bits with their fingers.

marcr
Автор

Rewrite in Rust ❎️
Rewrite in Assembly ✅️

flamakespark
Автор

We're all standing on the shoulders of giants.

UnFiltered
Автор

I worked for Prime, his mustache is a npm package

Blingoose
Автор

Well, in 1981 I was paid to program for the first time, in raw unadorned, inscrutable hexadecimal numbers. The old Marconi Research labs had just received some Motorola 6809 microprocessors and wanted me and another junior engineer to evaluate them. There was no support, no circuit board, no assembler, just the chips. First we had to design and build an SBC to get the chips running. Then we set about building a debug monitor program, in hexadecimal, programmed to EPROMS. When done our debug monitor could load and run code from C60 cassette tapes or paper tapes. We had typical run, halt, breakpoint and memory inspection commands. All displayed on a VT100 "class teletype".

Heater-v..
Автор

Happy to have contributed an article. Nice to watch your reaction to it. 🎉

In the 80s I was in awe at the magic some young hackers could execute on some Spectrum, BBC, IBM or, later, theNAmiga. Their magic was surreal. I think I lost my balls there and then. There's no way I was going to be as good at hacking the hardware to the maximum and roll out such an experience that would fit in a measly 3.5" disk. What was that? 800kb?

elmersbalm
Автор

real programmers don't use keyboard, they use punched-cards.

carriagereturned
Автор

It's a fub story, but a couple important points. Mel was obviously a smart guy but wasn't really doing anything weird or wizardly. He read the LGP-30 manual (and so can you; it's linked in the article!) memorized its 16 very simple instructions, and programmed it with normal, run-of-the-mill self-modifying code, which is how you do loops and have variables on that machine.

A lot of the other details about the machine the author gets totally wrong, like there being a goto built into every instruction. No, it doesn't work like that, it executes instructions in order unless you explicitly jump, just like a modern PC.

On the other hand, optimizing execution time by picking address locations is certainly worthwhile, and surely a hassle, but the manual literally explains the drum timing and how to do this. However, you absolutely cannot do the kind of precise timing like the article implies because the drum rotation is was not synchronous to program execution.

Anyway, the article is fun, and both the author and Mel are great guys, but nothing described there really required anything other than reading the manual, and the article is super apocryphal in many respects.

TLDR: if you didn't RTFM it's your own skill issue. 👍🏻

icedtonberry
Автор

Real programmers flipped switches, dialed knobs, pulled levers, and pressed buttons on a machine. That's where the term "programmer" came from.

SimGunther
Автор

Real Programmers write code they still talk about in youtube videos 40 years later 👍❤

scitor
Автор

The folks who make the pretty sand do math were just built different.

EricVulgaris
Автор

Real programmers don't write code. They actually transfer electrons from one state to another and then transfer the voltages, do actual switching inside a transistor to do the logical operations.

She-Jinping
Автор

In the early 70s, one of the linkage types for compiling programs on the mainframe was "overlay", not just static or dynamic options. Memory was so precious that overlaying a last program module with another wasn't unheard of. Separately, I did see an OG in 1999 write self-modifying assembler code - he did things like having the comparison operators of less than or greater than be set by earlier instructions in the program to be able to reuse even the smallest amounts of code.

donaldjohnson-ow
Автор

Growing up in the 80ies, being around 10yo we used to write those machine-code programs from magazines into our c64 and zx spectrum. those where the times :)

AndrewTSq
Автор

Drums are akin to HDDs. Instead of stacks of flat, spinning platters and read heads, the format is a cylindrical drum with a ready head. Think vinyl records vs wax tubes. Mel was basically calculating the time it took to complete his instructions and optimizing the physical location of his most used instructions so there would be minimal wasted time Seeking them on his drum. The insanity, by today's standards. Optimizing your program for your unique storage medium. The kind of full-stack understanding of the entire computing process from the ground up something like that requires is just mind-boggling. That Mel understood the CPU, memory, registers, and indexes available well enough, he could plan out and optimize on that level is simply bananas. Imagine if Mel translated that expertise into a compiler, and enabled all the programmers there to keep up with him.

21:00 "[...] state of tenseness just short of rupture." Probably should be tension, not tenseness, but the point is that they code and sharpen things and bend them in such obtuse ways, then pin them in place such that if you simply look at the code, it breaks.

crimiusXIII
Автор

Real programmers make their own CPU from rocks

piotrjaga
Автор

I couldn’t agree more! I am not that old at 51, and I even bootstrapped a PDP-11 by entering the instructions in octal with the switches on the front. And at least once a month I hack in 6502/Z80/68000 still — and you see that on my channel. For me it’s nostalgia and real programming.

And yes even in 1990 in college we wrote Z80 in hexadecimal of the MPF-1.

CallousCoder
Автор

Bwah! All child's play. Chuck Norris just stares at the machine until it surrenders to his needs....

FredBakker
Автор

As someone who spent a sizeable part of their career writing machine code (well, assembly language, actually) on Motorola 68k processors (because the C compilers were a total joke) I must concur. I fully endorse this episode 😊
(Old grey-beard coder here!)

NotMarkKnopfler