I had to implement a firewall in a panic back in the mid '90s because my boss wanted to provide Internet access to the higher-ups using a bank of modems and AOL accounts. I was a desktop support jockey back then, and knew a thing or two about how much of a pain supporting a single modem was, let alone a bank of them, and let alone for aged higher ups with little computer knowledge and less patience for technical problems.
Thing was, the place already had a massive (10Base5! It's still the only one I've ever seen) network, and a T-1 connection to the Internet, but being semi-government, the T1 connected network was not connected to the enterprise network. I figured it would be less of a pain to figure out how to connect the more modern network to the legacy network than to support a bunch of modems and dial-up accounts on Windows for Wastebaskets.
I did a bunch of reading about Internet security and it filled me with Fear & Loathing. There was this TIS Toolkit thing that I barely understood. I managed to find a DOS-based firewall, and was off to the races. DOS and PC hardware were very much my comfort zone back then. The DOS thing kinda worked, and had hilarious angel and devil pictures in its configuration screen. Unfortunately, it didn't handle many concurrent connections well. OK, it didn't handle them at all.
Now I'm really between the modem-bank immovable object and execs-need-Internet irresistible force, and the deadline looms ominously. Some more frantic Internet searching (Infoseek or Altavista, I don't remember) led me to stumble upon the Netscape Proxy Server. I figured that's what I needed plus a locked-down Unix server. I'd done the thousand-floppy, compile-the-kernel Slackware Linux install recently, and it had not exactly filled me with confidence. The NPS didn't support Linux anyway. It only supported Solaris or something called "BSDI". Solaris meant Sun hardware, which I'd only just recently seen for the first time, and the price of which gave me cold sweats. There's another story about me, the Anderson consultants, and the new Sun workstation.
This BSDI thing supported PC hardware, and I knew that really well. I figured at least I'd be able to troubleshoot hardware problems. I girded myself for the worst, had the uncomfortable conversation with my boss about buying thousands of dollars of hardware and software, and waited anxiously for the mail room.
BSDI was one of the most pleasant surprises of my career. It installed and ran flawlessly (keep in mind that I was expecting a Windows for Wastebaskets experience.) It also came with the "Unix System Administration Handbook" by Nemeth et al, which is still one of the best technical books I've ever read. I screwed up the IP address configuration (hey! it was my first time) so I had to call their support. I was girded for the idiot quiz ("is it plugged in?; is it turned on?"), and in a combative mood. We'd spent a lot of money on this thing after all, and the deadline had me in no mood for foolishness. Another pleasant surprise. The support rep was knowledgeable, precise, and terse. Given just a cryptic ARP error message, he pinpointed the mistake I'd made setting the netmask and told me exactly how to correct it. Everyone got seamless access to the Internet. BSDI made me a hero.
Then I moved to California, and got another job supporting Windows on PCs. Massive increase in pay aside, I was still a little sad about leaving BSDI behind. Lo and behold, I stumbled upon this Freebsd thing that was the same as BSDI as far as I could tell, and it was free! I got me a Walnut Creek CDROM subscription and set up my first mail server using fetchmail over my dial-up connection.
Over the years I tried and mostly failed to get Freebsd adopted at various workplaces. The irony of having some hipster freak out about using Freebsd while tapping away on his Macbook Pro! The few times I did succeed Freebsd's reliability was its undoing. The Freebsd machines worked so well and needed so little maintenance everyone, including me, would forget about them.
At some point I switched my home firewall to Openbsd 'cause I really liked the pf(4) rule syntax. I'm sad to say I got into an abusive relationship with Gentoo Linux for more than 15 years. I finally had enough of LVM and systemd-creep and decided to try ZFS on Freebsd -- aaand I'm back! I so wish I'd done this years ago.
Thank you for reading the wall of text.