Grrr...*flex*
Bare Metal development - the kind of engineering that real nerds do. There's just something super nerdy about the job of swapping out a kernel on a development board that really gets the juices flowing. Of course, don't get those juices anywhere near the development board because I've noticed that PCBs and solder don't really appreciate freshly squeezed orange juice. Makes the board all tacky and nasty.
Although I depend mostly of the cloud these days it still pays to know how to bring up a piece of hardware from scratch. This is the domain of operating systems and kernels, Input/Output ports, Interrupt ReQuest lines and Interrupt Service Routines, and all the things that actually make a computer tick. For the most part I don't get too involved in that because I'm sensible. I use Debian Linux instead - like sensible people do.
A thoroughly sensible operating system for very sensible people that like to know that their kernel is nice and sensible. Debian is definitely a no frills operating system. It doesn't incorporate all the fancy pants stuff that goes along with things like Ubuntu, and that's just the way I like it.
Nope. Debian is definitely for boring people that don't want things to go wrong very often. That's what this is - very, very stable. Very, very boring.
If you like your computer to explode all the time, consider using Arch Linux instead.
So, why Linux? That's because I'm thoroughly through with Windows. I used to use Windows all the time. I used to swim in NT kernels and pull PCIe cards out of PCs, blow the dust off the fans, and put them back. That's all IT stuff, but I moved from the world of fixing computers and now live firmly in the "I want my computer to actually do stuff and not just need repairing all the time" world. That was the problem with Windows - it constantly needed fixing.
The time I was sat in a meeting room at Sony and my computer rebooted while I was in the middle of working was probably the final straw. I use Notepad to take notes and that application has no shutdown save behavior, so the result was that all my notes for the meeting simply got destroyed. Thanks Microsoft.
The other great thing about Linux is that it runs on just about anything.
...including this cute lil' guy.
Welcome to the world of tiny computers. This one here is particularly interesting because it's capable of just about anything your desktop can do. The only thing it really lacks is a giant PCIe bus to allow it to accept a big GPU, but that's not what you use boards like this for.
I like tiny computers. I like my computers to basically be almost nothing, and this is about as close as you can get to a computer that is almost nothing. Sure, there's an even smaller version of it that doesn't have ethernet or USB ports, but I do need to be able to plug at least a keyboard into it, thx.
Computers like this are great because they remind me of my Commodore 64. There's enough going on here to be interesting, but not so much that the machine is overwhelming. That makes this machine perfect for the education sector. This machine is designed for tinkering and messing around - which is most of why I got into computers in the first place.
This lil' guy here is antique now. I still have two of them lurking around somewhere but everything I learned about computers as a kid was done with one of these: either the C64 or the C64C.
They're very BASIC computers, but they don't hide away the fact that they have Memory Mapped Input/Output ports that let you mess around with some sophisticated devices like the SID or the VIC-II.
I'll never forget the day I found out that $EA31 is the ISR jump address for the BASIC interpreter. If you patch that to $C000 you have enough time to service a raster split routine. I actually wrote a raster split from first principle in an afternoon after teaching myself 6510 assembly (basically just 6502). It was great. I nerded out so hard that day. I also ported a RAM copy of the CHARGEN ROM to 6502 so I could change the character set at runtime, then I made an animated fire effect using BASIC.
I did all of this because, clearly, there is something very wrong with me.
This is what computers were to me - they were bare metal machines that you could nerd out on. Now, I could say that I got out of computers because they're no longer like this. It's practically impossible to understand a modern computer now, they're just too complex. That doesn't mean they're gone from my life, it just means that I tend to spend much more time using them than tinkering with them. Other parts of this site you'll see me just messing around with software.