The Boston Diaries

The ongoing saga of a programmer who doesn't live in Boston, nor does he even like Boston, but yet named his weblog/journal “The Boston Diaries.”

Go figure.

Monday, Debtember 03, 2018

It actually looks like one can construct a computer keyboard out of Lego and have it work

Last month I mentioned a Commodore-64 designed out of Lego. Back then, it was just a design, but now it actually exists! There are two keyboards—one where a real Commodore-64 keyboard has the keycaps swapped out for Lego keycaps, and the second keyboard is a fully mechanical Lego design.

I think it would be possible to use the pure Lego keyboard on a real computer, but it would probably require a custom PCB to handle the different mechanical action. Size wise, it's a perfect fit though. And boy, does it have that sweet clicky sound of a mechanical keyboard.

Wednesday, Debtember 05, 2018

Charlie Foxtrot is alive and well

It's been an interesting week, in the Chinese sense of “interesting.” First was the grueling deployment to production that ended at 6:00 am, followed by a mandatory all-day meeting starting at 11:00 am and that was just Tuesday! Today was another mandatory all-day meeting, followed by a trivial but show-stopping bug (read “rookie mistake” made by yours truly) being found in production and the subsequent six hours to get a patched version installed (it took less than 10 minutes to reproduce the bug, find the root cause, and fix it) because most of the operations team (who do the actual deployments) were flying back to The Corporation Headquarters in Seattle, having attended the said two-day mandatory meeting here at The Ft. Lauderdale Office of The Corporation.

Then my “self-review” (which was designed solely as some abstract HR process, despite the protestations of upper management of Our Corporate Overlords of the Corporation) was rejected as not being “meaty enough” (what ever that means) and I'm like … yeah … about that flair … (it only took Bunny two hours to talk some sense into me).

Thursday, Debtember 06, 2018

The process of our process is to process the process to ensure the process has processed the process

Bunny was helping me with my “self-review” since I was at a total loss of what to even say. “You aren't built for dealing with bureaucratic processes, are you?” she asked.

“No,” I said. “I'm not. I never have been. I remember back in fourth grade—”

“No! I don't want to hear it!”

“And then there was that time in middle school—”

“I'm not listening!”

“So I guess you don't want to hear about high school then?”

“La la la la la la la la la!”

Yeah, my rage against the bureaucratic process goes back a long time.

I mean, I understand that processes are at times required. There can be good reasons to have a process so everybody knows what to expect and get consistent results. But this “self-review” is just not one of them. I eventually spent over eight hours trying to say enough to avoid the “rejected due to cursory responses” (never mind them being “meaty enough” and I still don't know if I succeeded at it). And the weird thing is, the majority of the “goals” didn't even apply to what I do! They were more geared towards a manager than a programmer.


This is almost making me want to work with the Protocol Stack From Hell again.


Wednesday, Debtember 12, 2018

Thoughts at the edge of boredom

Years ago in college, I worked in the auditorium as part of the stage crew and one of the many jobs was running the spot light during shows. There was one two hour show I worked where the spot light would only be used for about fifteen minutes about half-way through the show. This meant I had to sit next to the spot light for nearly an hour, do the fifteen minutes of work, then sit there for another hour until the show was over.

As I sat there waiting for my cue, my mind wandered. I'm about twenty to thirty feet above the audience, I thought. This platform is suspended from the ceiling and held into place with those four bolts. I wonder when was the last time they were checked? What would I do if they failed? Could I grab and hold onto something? What could I grab? What was that creak? Oh, part of the show, okay. How much does that spot light weigh? I sure hope these bolts hold for another 98 minutes …

I was reminded of this today as I sat in our daily, thrice-weekly standup scrum meeting. Our acting manager and a team leader from another team were going back and forth about an overscoped and time deficient schedule when my mind wandered again. Staring out the window, I was watching the sun behind a hazy layer of clouds. At our latitude, I thought, we're moving at 940 mph towards the east. The earth itself is moving at 67,000 mph around the sun, and the sun itself is moving our entire solar system at 514,000 mph. All of this is held together by the force of gravity, a force so weak that a kitchen magnet can overcome it. It's a wonder everything doesn't just fly apart. I sure hope those bolts hold for another— “Huh? What?”

“I asked what have you done in the past 48 hours since our last daily, thrice-weekly standup scrum meeting?”

“Oh, just pondering the ridiculous speed we're hurling through space as we're held together with four small bolts.”

“Are you okay, Sean?”

Wait! How did I end up with legacy code? I never got the memo!

I changed the image on my homepage. Normally, I wouldn't comment on this, but this time? This time I had to track down a sixteen year old bug in code I wrote in a language that makes COBOL look terse that manages the non-bloggish part of the website. All because I broke from twenty-one years of tradition and used a different image size! (It's a really good picture a friend took and it really benefits from the non-traditional size)

I had thought the code I wrote would deal with the non-traditional size and yes, it picked up on the new size, but that size was then used for every self-portrait on the site.

It's also been ten years since I last dealt with the code, and even then, it was just to get it running under a newer version of the language. This time, I had to figure out what the hell I was doing sixteen years ago. From various timestamps, I can tell it only took about an hour to track down the bug and fix it (eight new lines of code, mostly under 140 characters in length—sigh) but it certainly felt longer.

This is one of those situations where the language is ugly, the solution aggravating to maintain and yet, it works, and for what I want it's still the best solution to the problem of maintaining a static website.


Hopefully, I can go another ten years before the next bug manifests itself.

Thursday, Debtember 13, 2018

This reminder is to remind you of the reminder

So I received this in email today:

Sean, employee pricing is back on most Chevy cars, trucks and SUVs
Thu, 13 Dec 2018 17:11:46 -0800 (PST)

This is plain text, with a line break:
Next new line

And the thing that I immediately thought of were old IBM manuals that would have a page with the following text:

This page intentionally left blank.

No it's not. It should have read:

This page intentionally left blank, except for this line of text.

At least this email from Chevrolet is more accurate than the old IBM manuals. But then again, I wonder what Chevrolet was trying to sell me.

Tuesday, Debtember 25, 2018

Something something peas on the hearth … something someting wind towards Mars, I don't know … there's something significant about today

           *             ,
                      <     >
     *                 /.-.\         *
              *        `/&\`                   *
                     /_o.I %_\    *
        *           (`'--:o(_@;
                   /`;--.,__ `')             *
                  ;@`o % O,*`'`&\ 
            *    (`'--)_@ ;o %'()\      *
                /&*,()~o`;-.,_ `""`)
     *          /`,@ ;+& () o*`;-';\
               (`""--.,_0 +% @' &()\
               /-.,_    ``''--....-'`)  *
          *    /@%;o`:;'--,.__   __.'\
              ;*,&(); @ % &^;~`"`o;@();         *
              /(); o^~; & ().o@*&`;&%O\
        jgs   `"="==""==,,,.,="=="==="`
         '`         \)_`"""""`
                 .--' ')
               o(  )_-\ 

Printing beyond the bounds of two dimensions

I'm not a fan of printers.

My first printer was a daisy wheel printer that sounded like a machine gun when working. I only had two “wheels” (a cartridge with the character set splayed out in a wheel shape, hence the name), I think both where Courier, but one was 10 characters per inch, the other one 12 characters per inch. Despite the price, I think I used it for one term paper (high school) and for the humor column for the university paper (that is, when I wasn't frantically pounding out an article on my portable manual typewriter 20 minutes prior to the deadline, but that's another story). It was obnoxiously loud (Harley owners would complain of the noise) and obnoxiously large.

My second printer was an 80-column dot matrix that used fan-fold paper. It was quieter than my first printer (what wouldn't be?), a bit faster, and much less fuss as I didn't have to constantly feed paper into the thing. I used it a bit more than my first printer, but as time went on, I found myself using it less and less.

Printers ever since have been owned by significant others. Cheaper to buy, yes. More expensive to maintain as printer companies learned to charge outrageous sums for inks and toner cartridges and after a few scant years they just stop working. Horrible things in my opinion (I think we're on our fourth such printer at Chez Boca since I moved in over a decade ago). The only time I use them these days is to print out the tax forms once a year (and for those, I could go down to the library and pick up the proper forms).

So guess what I got for Christmas?

A printer.

But unlike the printers of the past, this is a freaking 3D printer!

Woo hoo!

I can print solid objects now!

My only complaint about the printer is the manual. Upon turning it on, it made a horrible noise (much like the sound of the Apple ][ disk drive as the head was moved to a known location) and the small screen on the unit gave an error number. The manual listed the symptom as “Y-axis movement abnormalities” and the action “check motor/sensor connection.” That's it! Nothing else about how to go about checking the motor or the sensor.


It turned out to be an easy fix (just force the “print head” forward all the way in the case—it had slipped a bit in shipping) and a few minutes later I was printing my first object (a plastic heart pendant for Bunny). It took about as long as expected (half an hour) and was a bit harder to remove from the printing platform than expected, but it works.

And judging by this video, it could prove to be useful to have around the workshop.

Wednesday, Debtember 26, 2018

Observations made at a mall one day after Christmas

Had I known the traffic around the Town Center Mall was going to be so insane, I would have suggested a different location to meet Bunny. Parking was insane along the Glades Road side—cars were parked everywhere! Even on the grass, and that's saying something because of the 6″  curb between the asphalt the grass! The normal traffic was changed for the holidays and I ended up back on Glades Road unexpectedly. I ended up parking in the back 40 where parking wasn't quite as insane.

I had no idea Microsoft had physical stores, much less one at the mall! I guess they have to keep up with Apple, although the Microsoft store is easily a sixth the size of the Apple one. It's kind of sad, and understandable why it's located away from the Apple store.

I have to wonder about the wisdom of letting high school girls play Just Dance 2015 in the middle of the mall. I also have to wonder about the wisdom of the high school girls who were dancing the Macarena in the middle of the mall. Really? That over “You Spin Me Round (Like a Record)”?

Kids today.

I was so tempted by the Häagen-Dazs store. But I made my saving throw vs. ice cream and resisted the temptation. I thought I was safe until I saw the Godiva store selling ice cream. I was seriously tempted, but again, I was just able to make my savings throw vs. ice cream.

When did Godiva start selling ice cream? And why did I not get the memo?

Ah, Gallerit! How can I describe you? Um … nouveau riche tackiness. Human sized bronze statues of half-naked women. Gemstone globes on gilted ostentatious stands. Giant sized bronze statues of Brittish Bull Dogs. Famous painting reproductions in huge gaudy frames.

All of it horribly tacky! All of it glorious to behold! And much larger than the Microsoft store!

Obligatory Picture

[The future's so bright, I gotta wear shades]

Obligatory Contact Info

Obligatory Feeds

Obligatory Links

Obligatory Miscellaneous

You have my permission to link freely to any entry here. Go ahead, I won't bite. I promise.

The dates are the permanent links to that day's entries (or entry, if there is only one entry). The titles are the permanent links to that entry only. The format for the links are simple: Start with the base link for this site:, then add the date you are interested in, say 2000/08/01, so that would make the final URL:

You can also specify the entire month by leaving off the day portion. You can even select an arbitrary portion of time.

You may also note subtle shading of the links and that's intentional: the “closer” the link is (relative to the page) the “brighter” it appears. It's an experiment in using color shading to denote the distance a link is from here. If you don't notice it, don't worry; it's not all that important.

It is assumed that every brand name, slogan, corporate name, symbol, design element, et cetera mentioned in these pages is a protected and/or trademarked entity, the sole property of its owner(s), and acknowledgement of this status is implied.

Copyright © 1999-2024 by Sean Conner. All Rights Reserved.