loading...

Discussion on: Do you have a university degree?

jonrandy profile image
Jon Randy

Back when I started programming, the 'high level' languages on the machines I had access to were really quite limited and slow. If you wanted to tap in to the real power and capabilities of the machines, you had to start learning about how the machine actually worked at quite a technical level - directly modifying memory, calling ROM routines, etc. At that time, there were plenty of books and magazines to teach this kind of stuff - even kids books.

I've written code in Z80 assembly language which looks like this (I couldn't say exactly what this is doing, I just randomly grabbed it from Google as an example):
Z80 Assembly

It's very different to working in a high level language. I think the skills that could be carried through to higher level languages are: a good understanding of binary and all the tricks that can be achieved with it, and also a knowledge of lots of optimisation techniques to speed things up or save memory. Admittedly a lot of this isn't really needed these days as the performance of machines has way outstripped our ability to take full advantage of them, but back then all this knowledge could be absolutely crucial to getting something running well (I believe the Z80 processor had a clock speed of around 4mhz 😃)

Thread Thread
dandv profile image
Dan Dascalescu

I also started with assembly. But along with CPU performance and RAM size increasing by orders of magnitude, so has software bloat. Back in those days, we had operating systems that fit on a 1.44Mb floppy disk. Now they take 1.44Gigabytes. I'm not sure functionality has increased 1000 times, and performance certainly has not.

Thread Thread
jonrandy profile image
Jon Randy

100% agree