My first "language" were hardware opcodes on an IBM 1620. I was in high school in the early 70s and a local government lab gave school access to the system which was still maintained by IBM at that time. It had a typewriter and a card reader/punch. You could enter instructions through the typewriter or read them in through cards.
Each op-code had two decimal digits and up to two parameters. No registers as such operations were memory-to-memory. There were 20K words each 6 bits -- 4 for BCD and two flag bits. Core memory of course.
Always fun that in order to do arithmetic you had to pre-load the addition table. The architecture was decimal-based and did not include hardware addition logic. For that reason the system earned the name "CADET" (Can't Add Doesn't Even Try).
There was a FORTRAN II compiler for it that we didn't use much except to try it. It was a multi-pass compiler and it would punch out intermediate steps on cards that you had to feed back in to perform the next pass. Good times.