Showing posts with label beer. Show all posts
Showing posts with label beer. Show all posts

Friday, May 29, 2026

A favorite beer

Tonight I'm celebrating the end of the work week with a Firestone Walker Paraboloid.  This beer isn't readily available on the east coast so I have to order it directly from Firestone Walker in California.  This brewer was founded by a couple guys with experience in wine making.  They make some amazing beers with all the complexity of a fine wine.

Sipping on the Paraboloid made me remember the first time I had its little brother, a beer called Parabola, about 11 years ago at a restaurant in Leesburg called Leesburg Public House.  LPH had been opened by a friend and quickly became one of our favorite weekly happy hour venues.  I had been reading about this legendary beer for a few years but had never seen it available nearby.  Jay, one of the servers at LPH, was very knowledgeable about craft beer and had a few connections in the beer world.  He was able to get a few highly rated beers such as Parabola to sell at the restaurant.

When we arrived at LPH that night, Jay told us that they had just received the Parabola.  I managed to convince Dave, a friend I had worked with at 5 different companies, to split a bottle with me.  Jay brought us the Parabola and served it with the flourish fitting such a special beer as you can see in the photo below.  Dave loved the beer as much as I did but he never let me forget that it was me who got him hooked on more expensive beers.  Each year when it was released we'd compare notes on where to find it in nearby stores.

 

This rambling train of thought caused me to remember that it's almost the 1 year anniversary of my buddy Dave's untimely death.  It would be difficult to express how much I miss him.  One of the things I miss most about Dave is how we both enjoyed talking about low level programming.  If he were still around I'd be telling him about the pointer math I had to do in a C program today.   I was doing that to solve the problem of a device at work occasionally misplacing its timestamp from the usual location at the start of a buffer to somewhere in the middle of the buffer.  Knowing where the timestamp ended up could provide clues about what's causing the problem.  This timestamp takes the form of a 64-bit integer.  This wouldn't normally be a problem to find that given the fact that the upper 16 bits of the timestamp contain an easily identifiable value but on ARM CPUs, 64-int integers are stored in little endian format.  So having found the correct 16 bits somewhere within the buffer, it was necessary to back up by 6 bytes to get the entire timestamp before the timestamp could be displayed in all its glory.  Pointer math is always fun.

Well, my celebratory beer is nearly gone now and that low level programming tired me out.  I think I'll sign off for now. 

 

 

Sunday, March 29, 2026

More about me

I've been working in the computer industry since 1977.  For the first 6 years of my career, I worked as a field engineer which is basically a computer mechanic.  In those days I serviced Honeywell and GE mainframe computers followed by a short stint working on DEC PDP-11 minicomputers.  I only lasted 8 months maintaining DEC PDP-11 computers because they were so simple compared with mainframes that they weren't very challenging.  Most of the service calls involved fixing the peripheral equipment such as line printers, disk drives, magnetic tape drives, card readers/punches, paper tape reader/punches, and a variety of terminals.  The calls I enjoyed most were those which involved a computer which crashed or which failed to boot since those offered hours of debugging fun.

After having a DEC PDP-11 fall on me (it's a long story) in late 1982, I decided to make the switch from computer hardware to software since it seemed safer.  It wasn't a huge change since I had been filling my idle hours working night shifts figuring out how to write machine language programs via the maintenance panel switches (see image below).  After the long hours of figuring out the data patterns to write to memory via CPU maintenance panel switches, it was easy to use switch to using an assembler for generating the executable code for me.

Honeywell 6180 maintenance panel (from multicians.org)

 

Since then I've mostly worked on systems software in both assembly language and C.  I've occasionally worked on networking protocols.  There have also been a couple strange forays into other areas of the industry like 9.5 years working on the software which runs on cable TV set-top boxes.  The technology was interesting and I loved the company but I really missed systems programming.

In 1990 I discovered that I have a strong preference for Unix and Unix like operating systems when I took a job which gave me a Sun workstation to use. Unix made me so much more productive that I couldn't bear the thought of not having access to it.  Since then I've tried to only take jobs which satisfied that itch.  Whenever I've been stuck using Windows somewhere, I've usually installed Cygwin to give myself access to a Unix style development environment.  The exception is my current job which has given me a Windows laptop too locked down to be able to install Cygwin.  Fortunately, I have multiple Linux servers at my disposal as well.

Since 1994 I've been working mostly at startup companies.  Several have been bought by larger companies which inevitably leads to unpleasant changes in company culture which I haven't enjoyed.  For example, in 1996 I took a job at a startup which developed ISDN modems shortly after it had been bought by U.S. Robotics.  USR managed to preserve the small company feel of our office but that disappeared when USR was bought by 3Com a couple years after I joined.  It was a shame since I really enjoyed the great group of people I worked with there but 3Com's changes made it clear that they would eventually shut down that remote office which they did about a year after I left.

One of my favorite projects at USR was an ADSL modem which connected to a Windows PC via USB.  We were developing that device in late 1997.  Windows 95 only supported USB via a USB support package and it really didn't work that well.  Windows 98 and later Windows 2000 fixed many of Windows' problems with USB but we had to do full drivers before the USB interface was documented in the Windows DDK.  This was during the early days of USB so the USB communications device class didn't exist yet.  I spent many hours with a USB analyzer verifying that we had the protocol correct.  USB has remained one of my favorite technologies to work on ever since.

After leaving USR, I took a job at an optical networking startup called Ocular Networks.  That was another great group of people to work with until Tellabs bought the company.  I enjoyed the team I worked with so much that we started meeting for regular happy hours at the Old Dominion Brew Pub once a week after work.  After I left Tellabs, I didn't want to lose contact with my friends, so I started a mailing list to continue our regular happy hours.

Old Dominion Brew Pub was a wonderful place to meet.  They had great good, interesting beer, and a pleasant atmosphere.  Unfortunately, Old Dominion sold their brewery and brew pub around 2008 and the new owner moved their brewing operations up to Delaware. That left our happy hour group a number of places to meet for happy hours, none of which seemed to last more than a few months. We wandered from place to place until the Fairfax Dogfish Head Alehouse opened in 2009.  We continued meeting there until the pandemic made it hard to do in-person meetings.  After that, we changed our happy hours to virtual ones, meeting via video chats.  Unfortunately, between the slowdown caused by the pandemic and a landlord who kept raising the rent, DFHA ended up having to close their Fairfax location in 2023.

Saturday, February 21, 2026

Darts and hanging out with friends after work

A few days ago while doing some neck exercises given to me 8 years ago by a physical therapist to help prevent pain from bone spurs in a neck vertebra, instead of stopping at 50 repetitions as I usually do, I continued to 51 by mistake.  That triggered the thought that 51 is 3 x 17 which made me think of playing darts where landing a dart in the triple 17 ring is desirable.

I started playing darts around 1985 or so.  At the time, I was working at GE Information Systems in Rockville, MD at the time and commuting there from Northern VA.  At GE I became friends with a Brit named Dave there who organized weekly lunch outings to area ethnic restaurants.  Those outings were a welcome distraction from the repressed corporate atmosphere at GE.  Dave left GE about a year after I met him and he started working at Sprint International in Northern VA.  Few recognize the name Sprint International.  It's what was left of Telenet which used to run one of the largest packet switched networks in the world.

Since Dave lived in MD and was commuting to Northern VA, we had commutes which were close to the opposites of one another.  He and I missed chatting and we figured out that McLean would be roughly halfway if we wanted to meet for a beer after work.  He found a great little place called McKeever's Pub which had a great atmosphere as well as featuring a couple dart boards and we began meeting once a week there.

Dave was quite skilled at darts.  With practice I became a mediocre player but only for about an hour or so when the beer I consumed balanced out the residual caffeine from my workday which tended to leave me too jittery to have much accuracy.  At some point, my skills started waning as the caffeine lost the battle and I relaxed too much.  We usually played either Cricket or 301.  Despite not being very good, I enjoyed playing darts unless forced to play against someone who was too competitive.  

The strange train of thought which began with my 51st repetition next had me wondering what happened to the owners of McKeever's Pub.  I had heard a rumor that it it had closed about 10 years ago which made me a little sad but still nostalgic for the many evenings spent there chatting with friends and trying not to embarrass myself at darts.  It turns out the rumor of the pub closing was true and I discovered that one of the patrons had loved the place so much that he bought up the furnishings and recreated it in his basement.  Those of us who enjoyed the McKeever's Pub's welcoming atmosphere and excellent food (I still miss their bacon cheeseburger and home fries) can understand the impulse to keep it alive.  Then I discovered that the owners had opened a vineyard and restaurant on their farm in Leesburg, VA.  It's called EagleTree Restaurant and Winery and judging by the menus I looked at, it sounds amazing.  I think a visit may be in order at some point.

I hope everyone finds a happy place to meet friends to unwind after work.  I've had a few since McKeever's including Old Dominion Brewpub, Dogfish Head Alehouse, and Leesburg Public House.  Discussions outside of the office tend to let you find interests you may have in common and can make work friendships closer.