My first experience on a multi-user UNIX system back in the 80’s was on SunOS, so the concept of Berkley UNIX was one that was ingrained in me very early. I went from that experience to writing and maintaining a cross-platform GUI programming language (roughly based on Pascal) that ran on OS/2, Windows, AIX, HP/UX and Solaris.
At one point, I heard about Linux and managed to cobble together a machine that I thought could run it. I was surprised that my 8-bit ISA SCSI card (yes, this was pre 1.x Linux) wasn’t fully supported so I hacked on the driver source until I could actually boot it. I managed to get our cross-platform programming language ported to Linux over the span of a few years and really enjoyed the freedom that came with an open source system.
From there, I moved into doing Windows programming on the .NET platform in C# for many, many years. Recently, I moved into the open source world doing Java and JavaScript web applications where the UI is completely decoupled from the middle tier via a REST API that the middle tier expresses.
I re-discovered the BSDs a few years ago and found them to be very compelling. For some reason, I gravitated towards OpenBSD because of the care that the developers take with making sure that the code is clean and that technical debt is not allowed to pile up. The fact that you see features being actively removed from the source tree is something that is very appealing to me – it’s like addition through subtraction. The end result is a very solid and secure platform.
I had been playing around with OpenBSD and wondered if I could get a laptop that ran the OS natively and actually “live” / work from it. I got an old Thinkpad x220 (because my research indicated that this would be a solid platform that was well supported) and got to work.