HNHacker News
TopNewBestAskShowJobs

don-code

1,788 karma · joined September 13, 2020

President, Boston DevOps Network

https://hardwarehacks.org

submissionscomments
don-code··on A story about USB floppy drives (2004)
My understanding is that the PC is actually the odd one out there. Many pre-UEFI devices (PowerPC Macs, Sun SPARC boxen, etc) ran Open Firmware, which used device-independent bytecode in their boot ROMs. You could swap the graphics card out of a Mac and put it in a Sun machine, and things would work. PCs, on the other hand, put x86 machine code directly in the boot ROM.
don-code··on A story about USB floppy drives (2004)
I once ended up being the beneficiary of Crucial making a gambit on "Mac memory", which was standard DDR memory with a different label on it. The SPD literally showed it as a different, non-Mac-specific SKU. Luckily, few people fell for this, and Crucial later unloaded the "Mac memory" at a discount relative to standard DDR memory.
don-code··on Zildjian, a 400-year-old cymbal-making company in Massachusetts
I lived down the street from the old Zildjian plant in Quincy. It's amazing how much product they were able to produce in such a small space.

Sometime within the last ten years, it was knocked down and replaced with an apartment building even bigger than the plant.

don-code··on Switched Back to Windows After over 10 Years on Linux
It's telling that - as the family IT person who buys the computers - any time I buy someone a new computer, I need to spend _at least_ a few hours hammering out the rough edges. There's software that needs to be installed, software that needs to be _uninstalled_, drivers that need to be updated (I once bought a laptop that was shipped with a non-working mic; driver update available), software that needs to be bought ("what do you mean Office isn't included?!"), and so on. Most users aren't able to navigate that themselves.

Moving someone across ecosystems isn't always possible, either. While I've made some Linux migrations, and might consider Mac in some others, there are use cases where Windows is a must. Of the Windows installs I'm theoretically in charge of, there's Windows printing to a 20-year-old ribbon printer, Windows "because I need, specifically, QuickBooks Pro 2016", Windows on a cash register (!) that the vendor no longer supports, Windows for an autistic girl who I wouldn't ask to adapt, and so forth.

don-code··on Is stuff online worth saving?
I DVR the nightly news with NextPVR, more as a convenience in case I'm doing something when it's on, want to pause/rewind, want to watch it the next morning instead, etc.

Come 2020, I was convinced that the world was going to end. So I simply... turned off the retention rule. One hour of news is around 5GB, but that's a very-high-bitrate MPEG-2 stream with an extra audio channel in Spanish. So I instead wrote a cron job to take that week's news, drop the stuff I don't care about, and H.264 the entire set of them down to 4.7GB, then burn them to a DVD for offline storage, since there's not much value to keeping them online.

By 2022, it was obvious the world was not, in fact, ending, but I never stopped this practice because of how simple it was, and how unobtrusive to store they are. I just make sure a fresh DVD is in the NAS every week, and put the DVDs on a spindle - they collectively take up about as much room as a toaster. I could make that even smaller and simpler if I opted for a portable hard drive.

Occasionally I'll manually toss something interesting in, like the presidential debates, or special coverage of some newsworthy event.

In 20 years, when it comes time to re-burn the earliest of them, maybe I'll make a value judgment on whether that's worth it, but for now it feels like I'd be losing something for not much of a good reason.

don-code··on How Boston City Hall was born
Architecturally, the city of Boston has changed many times. You can more or less pinpoint when a building was built by its appearance. City Hall's architecture is mirrored in most of the transit stops from the 1970s-era expansion. Some of them (e.g. Wollaston, Harvard) have since been rebuilt; others (e.g. Quincy Adams, Malden Center) are still concrete behemoths like City Hall.

Anything built within the last ten years is, of course, LEED-chic - the building is a glass box.

don-code··on When was the famous "sudo warning" introduced? (2019)
Indeed, I've been having this conversation with the junior engineers on my team. UNIX was designed for the days when computers - and the operating system - were shared resources, and each individual's permissions to it had to be strictly defined and controlled. Nowadays, we have users as a vestige, and partially as a hindrance, especially where our applications in production are all single processes deployed in containers.

But anyway, it at least gives them the context on why they're working on these projects to not make containers run as root.

don-code··on What does this button do? – My new car has a mysterious and undocumented switch
87 BMW here. I believe my servo is controlling the throttle cable itself. When the cruise control commands the vehicle to accelerate, the pedal physically moves.

It's not my daily driver, but I would absolutely love to one day get another one as a project car - one that's not in such good condition that I'd feel bad removing the engine - and drop an electric motor in it. That likely _would_ become my daily driver. The car's incredibly well made, and a joy to drive.

don-code··on Netflix buffering issues: Boxing fans complain about Jake Paul vs. Mike Tyson
Sometimes this just isn't feasible for cost reasons.

A company I used to work for ran a few Super Bowl ads. The level of traffic you get during a Super Bowl ad is immense, and it all comes at you in 30 seconds, before going back to a steady-state value just as quickly. The scale pattern is like nothing else I've ever seen.

Super Bowl ads famously seven million dollars. These are things we simply can't repeat year over year, even if we believed it'd generate the same bump in recognition each time.

don-code··on Casio has released a ring in the form of its iconic watch
The original announcement from Casio said they'd be making a ring version of the venerable DBC-611 calculator watch as well: https://www.g-central.com/casio-to-release-casio-watch-ring-...

It looks like they've instead made a ring version of the CA-53W, which - in the staggeringly few times I see someone wearing a calculator watch - is usually the one they're wearing.

I still wear a DBC-610 as my daily driver, and I do use the calculator and countdown timer features quite often.

don-code··on Debugging my wife's alarm clock
I have a handful of Realistic Chronomatic clock radios scattered about the house, including one at my bedside. The LED digits are large, and the alarms are loud - basically, exactly what I want in an alarm clock.
don-code··on Booting Sun Sparc Servers
I got to have this kind of fun a few years ago, when a company in our building threw away a Sun Ultra 45, which I believe was the last of the SPARC boxes packaged into a desktop form factor. These things were the stuff of legend - we had the later x86 Sun's in college - and I quite nearly blew a fuse after my coworker sent a photo of it in a dumpster, without telling me where it was until 30 minutes later.

By this point, Sun hardware was mostly PC-like: it took SATA hard drives, DDR memory, and USB peripherals. You didn't need to issue STOP to get to the `ok` prompt, you just had to do some specifically-timed dance with the (soft) power button.

My guess, based on the company throwing it out, is that they hit the power button, got a blinking red light with no video output, assumed it was dead, and tossed it. At this point, I didn't even know yet that there was an `ok` prompt to get to, and I spent a few hours at the office that night, wrapping my head around the service manual before getting it to dump me to `ok` and let me poke around.

I dreamt for years of restoring it and using it as a NAS (ZFS!), but life got in the way, and I eventually sold it (sufficiently refurbed to be running Solaris 10, but missing things like the side panels and drive cage) for only $250 or so.

don-code··on Why I self host my servers and what I've recently learned
I do self-host my mail, and I've done so since about 2005! It gets harder and harder to with every passing year. Some notable things that have changed since then:

Many ISPs now block inbound port 25, required to receive mail via SMTP. It's quite hard to get an ISP to unblock this. My university wouldn't at all, and I left a laptop under my parents' couch for four years to do it instead. Some time later, Comcast began blocking it as well, and the only way to get it unblocked was to call support, work your way up the phone tree to someone that realized you were talking about inbound rather than outbound (no, this is _not_ a misconfiguration in Outlook), and get them to push a special config to your cable modem, which would be reset whenever another config was auto-pushed, or your modem lost power. You may notice that implies extended downtime when Comcast, my electric service, or my physical operations (read: I unplugged it by accident) suffers a failure.

Many mail servers (e.g. Gmail) require you to have reverse DNS that matches your forward DNS. Getting your ISP to understand what they're asking you to do is... difficult. The last time I changed ISPs, it took about a week to get this done. Comcast batches these updates weekly, and support wanted to double, triple, and quadruple-check that what I was asking for was, indeed, what I was asking for.

There are a bunch of anti-spam measures in effect that use DNS: SPF and DMARC are table stakes for most mail servers (again, e.g. Gmail) to speak to you. I've so far managed to get by without setting up DKIM, but I suspect that's next.

The worst part, by far, is spam blacklists. Many blacklists will already have your IP address listed by policy - you're a _residential IP_, not to be trusted. The Spamhaus PBL, for instance, automatically blocks all Comcast residential IPs. There is nothing you can do about this, and many mail servers will refuse to speak to you if you're on a blacklist.

These days I am paying Comcast an arm and a leg for business-class service, which both gives me unbridled inbound port 25, and also a (luckily!) clean IP on block lists.

don-code··on NASA acknowledges it cannot quantify risk of Starliner propulsion issues
I'm somewhat surprised that, after the SpaceX / Boring Company "rescue submarine" offer a few years ago, Elon Musk hasn't personally suggested (over X, of course) that SpaceX send up another Dragon inside of some compressed timeframe. I'm assuming there must be some other limitations at play - maybe one can't be readied that fast, or there's some other regulatory reason?
don-code··on Blocking=render: Why would you do that?
I've noticed there's a behavior of newer React apps, to load the static text "You need to enable JavaScript to run this app" (or similar). It'd be nice if they could instead use this feature to gate rendering the page, as I assume that plugins like NoScript would be implemented to ignore it entirely and render whatever static content is there.

It'd for sure still be up to content designers to degrade gracefully.

don-code··on Blocking=render: Why would you do that?
That's very much a double-edged sword. Jira is probably the product I use which has the worst UX around this - fields jump around the page for 5-10 seconds when I load a ticket. That said, while the likelihood that I personally (team/tech lead) am going to edit a ticket is quite high, I imagine the rest of my team (there are more of them than me) would be suffering through 5-10 second load times just to read a ticket.
don-code··on How not to say the wrong thing (2013)
I don't think that's irreconcilable with the author's point. Indeed, I find myself the "adult in the room" amount many of my friends and, frankly, most of my family. If something happens to me, it's usually my job to manage emotions. Likewise, if two people start a heated argument, or if one person wants to do the same with me, it's usually my job to de-escalate.

These aren't what I _want_, or what I _need_, for sure - especially if I am the more challenged of the two parties. That's the author's point. (You're sick? Why did you get sick?! You knew you needed to take precautions...!) But frankly the outcome is better for both of us if I choose to manage the situation on both our behalf - both of us "suffer" less.

don-code··on The End-of-Line Story (2004)
Sad to say, I filed a bug in an internal tool just two weeks ago relating to how it processes Windows linebreaks. The tool is written using modern languages (Python 3.11) and frameworks (FastAPI).
don-code··on Engineering for Slow Internet
I've also found that the AWS and Azure consoles behave this way. While not listed in the blog post, they load JavaScript bundles in the tens of megabytes, and must have a hard-coded timeout that fails the entire load if that JavaScript hasn't been downloaded inside of a few minutes.

To Amazon's credit, my ability to load the AWS console has improved considerably in recent months, but I can't say the same for Azure.

don-code··on Engineering for Slow Internet
Slack additionally decides to hard-reload itself, seemingly without reason.

I work on the road (from a train / parking lot / etc) for five or six hours per week. My T-Mobile plan is grandfathered in, so I can't "upgrade" to a plan that allows full-speed tethering without considerably impacting my monthly bill.

Realistically, I hit around 1.5Mbps down. When Slack reloads itself, I have to stop _everything else_ that I'm doing, immediately, and give Slack full usage of my available bandwidth. Often times, it means taking my phone out of my pocket, and holding it up near the ceiling of the train, which (I've confirmed in Wireshark) reduces my packet loss. Even then, it takes two or three tries just to get Slack to load.

don-code··on Just a Bunch of Scanners (JBOS?)
While it's not a SCSI model, I suspect that the scanner on my LaserJet 1100a, circa 1997 - which I still use at least weekly - has more staying power than many scanners made available in the last 10 or 20 years. I still use it with SANE on a modern laptop running Fedora.

The last released driver for this scanner was for Windows 2000. That driver works fine on Windows XP, but not on Windows Vista or higher. Luckily, as a Linux user, hplip supports the scanner out of the box. When I was still a Windows user, I'd run NT4 in a virtual machine, pass the parallel port through, then share a folder between the local machine and the VM.

The fact that it's a parallel scanner presented its own set of archaic problems, like "what mode do I put the parallel port in?". Luckily, since upgrading to a machine without a parallel port, I've let that be the responsibility of a JetDirect 300x, which exposes the scanner as an IP network device. I've had significantly fewer problems since adopting that setup.

The page count on the scanner is around 25,000, and still holding strong.

don-code··on Palm OS and the devices that ran it
I was a Palm holdout into close to 2013. They weren't capable of the same range of things that a modern Android smartphone is, but it genuinely felt that someone had put time and effort into making the absolute best experience out of what they _could_ do.

On the Treo 650, for instance, making a call meant hitting Send (a hard key) from anywhere in the UI, typing a name to start a live search - you did not need to focus into a text box first - and hitting Send again to start the call. Likewise, if I wanted to send a text message, I'd hit the SMS button, start typing a name, hit Select to open that conversation, and then start typing the message. The device had a touchscreen, but for the most common activities, you didn't need it.

The 650 did not have built-in Wi-Fi, but with the Enfora Wi-Fi Sled and Opera Mobile, Web browsing was actually a decent experience. Likewise, I had some basic networked apps like AIM on there.

Before the 650, I had a Handspring Visor and the VisorPhone attachment. The VisorPhone was way ahead of its time, but what finally killed that for me was a side effect of Palm devices not having memory protection. If someone sent me an MMS message, the entire thing would immediately freeze (it had no MMS support, and didn't handle receiving one gracefully). I'd have to take the batteries out to reset it. As more and more people did this, it became a more frequent occurrence.

don-code··on Ask HN: Please recommend how to manage personal serverss
I agree that k3s is a great way to get started. You can easily bring new nodes online and upgrade them.

If you want your Services to behave a little bit more like physical boxes or VMs, where each service gets its own IP address (instead of using an ingress controller or service mesh, which are different beasts entirely), have a look at MetalLB. MetalLB allows associating an IP address on your home network with a Service, which is more or less exactly what you'd do with a VM or a Raspberry Pi.

don-code··on Ask HN: Please recommend how to manage personal serverss
Kubernetes. No, seriously.

It's an orchestration tool that's common in the real world, and also notoriously hard to learn and "get right". Downtime due to obvious, important mistakes is common, and it leaves both engineers and lower management wondering if it was a good idea to adopt.

The thing is, in your home environment, you have no (or hopefully significantly lower) uptime requirements. If you break the entire cluster for a few days, because you ran into a network problem or upgraded it wrong, who cares? That's a potentially hundred-thousand-dollar learning opportunity at a large organization, for just the cost of electricity in your home.

For what it's worth, I run Kubernetes both in my day job and in my home lab. I've learned more about networking from running my own cluster on bare metal (HP DL360 boxes) than I have from ten years of managing infrastructure for bigcorp's, and it also gives me a safe place to play with functionality that I might want to adopt at work.

don-code··on When teaching computer architecture, why are universities using obscure CPUs?
Much as I also have never understood universities teaching to "teaching" architectures (DLX), or "teaching" languages (Eiffel - luckily removed from our curriculum before I started), at the same time I did not land a job based on having learned "practical" architectures 68k or MIPS either.
don-code··on A cheeky intern nearly turned MS-DOS into NSFW-DOS
Thanks, Jia!
don-code··on KDE1 on Debian 13
KDE2 on Mandrake 8 for me. The look and feel of that desktop was a big part of what made me want to start using it over Windows. Whereas XP had just launched the Bozo the Clown-inspired theme, KDE offered something that somehow looked more real, and lived-in.

The other part, of course, was that the tools it shipped with were far and away better than the ones on Windows. Konqueror (way faster than Netscape) and Gaim (way more functional than AIM - I know that wasn't part of KDE) are two that came to mind almost immediately. Nowadays I live my life in a Web browser, and I'm not sure I'd have had the same impressions there.

don-code··on StarTech Unveils 15-in-1 Thunderbolt 4/USB4 Dock with Quad Display Support
I feel like manufacturers still haven't cracked the 3+ monitor code.

My ThinkPad T500 could output to three monitors, way back in 2009 - but you needed to disable Windows' driver signing, and run a custom, patched video driver. Linux on the other hand supported it natively, but you lost the ability to switch between the Intel and AMD graphics cards - it did this by running one display off the Intel card.

Luckily, my daily driver (ThinkPad T460p) outputs to three monitors just fine.

At work, I've specifically requested that I keep my circa-2019 Intel MBP, because it can support three monitors, but at least one of them must be DisplayPort. They're now giving out MBPs with the M2 Pro, but these only support two external monitors at all, and that's a dealbreaker for me.

don-code··on How to mess with your roommate (2018)
While not necessarily "messing with my roommate": I lived with a very foul-mouthed roommate during my undergrad. The .NET Framework 3.5 (I think?) released during this time, and it had an API for speech recognition.

I wrote a small program with a dictionary of a single word - f** - and let it count up the number of times that it heard it. (I know now that this will result in lots of false positives, but I was 19 or 20 at the time.)

Of course, I only had one laptop capable of running Windows, and messy as our apratment was, I couldn't just leave my laptop outside his bedroom for a day. I instead took one of my CB radios, taped down the transmit button, and left _that_ outside his room.

If I remember correctly, it counted 19 F-bombs dropped in one day.

don-code··on Ask HN: How many of you are consciously downsizing your devices/going retro?
A phone, like my other digital devices, is a tool - I try to upgrade my tools only when I can't feasibly fix them anymore, or they by nature can't do what I need them to do.

I don't really use my phone much, and go out of my way not to install apps. Though that means I get into some sticky situations, it also means that when I need a new device, I can typically buy last year's flagship at half price. My current phone (2021) is more than enough to meet my needs. Frankly, my phone before that (2016) also was, but sadly none of the corner "fix your battery!" shops wanted to open up an HTC phone.

My laptop is a ThinkPad T460p (2016 model, acquired 2019), which replaced a ThinkPad T500 (2009 model, acquired 2012) when said ThinkPad struggled with rendering 1080p video, which replaced an HP nx6325 (2006 model, acquired 2006) when said HP proved itself unable to do video calls at more than a few frames per second.

I wouldn't call these things "retro" by any means - those honors go to some other systems in my life. I have a 100-milliwatt FM transmitter, some radios, and Kodi Media Center, in place of a Sonos system. Ditto the Casio calculator watch, instead of a smartwatch - the calculator and other functions actually do get used multiple times per week.

← PreviousPage 3 of 12Next →