You are viewing fallenpegasus

entries friends calendar profile My Website Previous Previous
Mark Atwood
One of the tricks to writing with a fountain pen with highly saturated ink is to keep a small glass of water and a heavy paper napkin on the desk. If the pen ever skips, dip the nib for a moment into the water, and then wipe it off with the napkin.

I've been writing with FPs since 1987, and only figured this trick out this year.

This entry was originally posted at Please comment there using OpenID.

Current Location: Ada's Technical Books & Cafe, Capitol Hill, Seattle WA

When I lived in North Carolina, my best friend was Michael Wilson. He was a big kid, two years older than me, one year ahead of me in school, and he lived on the same rural dirt road that I did.

We met on the school bus one of the first weeks of school when I was in the 1st grade, and completely new to the area. He decided we should be friends, and thus so we were. He was a big happy guy, despite his family's grinding rural poverty and the death of his father to lung cancer.

We stayed best friends for the next 7 years, until I left NC in 1982 at the age of 13 to move to UT. This was, of course, long before email and facebook, and cross country phone calls were expensive, so we promptly fell out of touch with each other.

A few years ago, I started considering finding him again, and hoping to discover him owning his own machine shop somewhere around there in NC. Last week I discovered that my sister Suzanne was FB friends with one of her old friends from NC who also lived on that street, and so I asked her about Michael.

Two years after our family moved away, in 1984, he and his mother were killed in a serious traffic accident. He would have been 17 at the time.

Goodbye, Michael. You are remembered. You were the first real friend to a shy scrawny overly smart kid who didn't know how to be friends with anyone until then.

This entry was originally posted at Please comment there using OpenID.

Current Location: Home, Capitol Hill, Seattle, WA

Original post here.

Over a decade ago, in the mid 1990s, I had a subcontract gig to fix a broken backup for an early web message board. The users were mainly from the northeastern US.  And they were all cops.

The owner of the site would check the credentials of all the users, to make sure they were actually real police officers. He then outsourced the technical operation of the site to technical contractors. To people like the sysadmin who subcontracted to me to fix the broken backup system.

The operating sysadmin picked me for the gig in part because he thought I would find the site content illuminating, and encouraged me to read it. I read all the message boards posts via the database. Post after post of cops chattering among themselves, thinking they were "safe", thinking only "brother officers" would read their words, telling each other on-the-job stories, and expressing stomach churning levels of bigotry and hatred, and sharing tips and tricks for all sorts of ways engaging in small and medium scale corruption, thuggishness, theft from the public, fraud on the court, techniques for abusing the people they were detaining and arresting, and why it was ok that they do all these things.

One of the more interesting regrets in my life is that I didn't make a copy of that database, and anonymously send a copy to every investigative reporter, defense attorney law firm, and social justice org in New England.

To this day, I cannot say if I did the Right Thing or not.

I've been hearing about a modern site called "", which sounds to be a nationwide successor to that small regional web bbs. And from what I can tell from what leaks from it, it sounds like the kind of outlook and conversation has not improved any.

This entry was originally posted at Please comment there using OpenID.

Tags: , ,

At one company I worked at, one of the problems it didn't have was IT.

When someone was hired, by the time they got to their new desk, there was a computer on it with the correct image on it, their desk phone worked, their email worked, the calendaring and scheduling worked, and all necessary passwords and ACLs were configured. The internal ethernet networks all worked, were fast, and were properly isolated from each other. The wall ports were all correctly labeled, and there where the right kinds of wall ports in each cubical and conference room. The presentation projectors and conference room speaker phones all worked. The printers all worked, printed cleanly, were kept stocked, and were consistently named. The internet connections were fast and well managed. Internal and external security incidents were quickly recognized and dealt with. Broken machines were immediately replaced with working and newly imaged replacements. If someone accidentally deleted a file, getting it back from backup typically took less than an hour. Software updates were announced ahead of time, and usually happened without issue.

The IT staff did not seem noticeably bitter, angry, harried, or otherwise suffering from the emotional costs traditionally endemic to that job role. In fact, they were almost invisible in their skill and competence.

So, of course, came the day when the senior executives said "the carpets are just naturally clean all the time, we don't need all these janitors!". IT was "reorganized" into a smaller staff of younger and much less experienced (and probably cheaper) people.

Of course, it all went to shit. New employees would go a week before they had machines, phones, passwords, and ACLs. Printers ran out of paper, projectors ran out of lightbulbs, servers ran out of storage, networks got misconfigured, and so forth. The total time lost and wasted across the whole company was most certainly greater than the savings of laying off the expensive and skilled IT staff.

This is not to say that the reorganized IT staff were stupid or lazy. They worked very hard and ran themselves ragged trying to keep up with the cycle of operations, while trying to skill themselves up in their "spare time" and with a slashed training budget.

The lessons I learned from this experience speak for themselves.

What lessons that may have been learned by any of the other people involved, especially the executives who made these decisions, I cannot say.

This entry was originally posted at Please comment there using OpenID.

Tags: , ,
Current Location: Capitol Hill neighborhood, Seattle WA

I was working on a highly constrained consumer electronics device, a little "satellite device" that spoke to the main device over a CATV RF coax cable and also received commands from an IR remote control. My code was failing in bizarre ways. I adopted an extremely paranoid defensive programming stance, filling my code with asserts and doing paranoid cross checking of all inputs. This didn't make the device work. Instead it consistently didn't work, instead of inconsistently, because the cross checks and asserts would usually (but not always) trip before it would crash. It also started to run out of memory because of the all the paranoia code I had added.

I asked for the source code for the driver for the IR receiver, and for the driver for the CATV RF digital transceiver, and for the peer code that was driving the cable digital that ran on the main device.

The driver for the CATF RF digital transceiver was handed to me the first time I asked. And by "handed to me" I mean that I was pointed to where it was sitting in the source repo.

The business partner / hardware supplier who was supplying the IR glue and drivers just , after giving me a runaround, finally just flat out refused, citing trade secrets, confidentiality, secret sauce, and similar bullshit.

So, I finally "stole" the source code with a disassembler. And found the sources of many of my problems. It was complete shit. "Unexpected" input from the silicon would cause wild random pointer writes. And random sunlight on the receiver optics would cause it. "Expected" input of undefined remote commands wasn't much better, generating and handing back blocks of garbage with incorrect block length headers.

I ended up writing, nearly from scratch, a replacement IR receiver driver.

The peer device driver code was written by a developer in a different group in my same company. I finally got the P4 ACLs to read it after loudly escalating, over the objections of it's developer and his group manager. It was also complete shit. I cannot even begin to remember everything that was wrong with it, but I not only figured out may of the sources of my own pain, I also found a significant source of crash and lockup bugs that afflicted the main device.

I was not allowed to rewrite the peer code, as it was not in my remit. However, I was able to sneak in and check in a large number of asserts, using the excuse that they were "inline documentation".

On, and the device driver for the CATF RF digital transceiver? The source code I got for the asking, without a fight? When I reviewed it was easy to understand, efficient, elegant, and as far as I could tell, bug free.

In the end, I made my part work. It just took over two months instead of the original guesstimate of less than two weeks. This caused a schedule slip in the release of the satellite box. Which would have been a more serious problem, except…

Except there was also major schedule slip for the main box. A significant reason for that slip was because the peer code that I had filled will asserts was now crashing with assertion failures instead of emitting garbage. I was lucky that I was not more officially "blamed" for that. The reason why I wasn't, was mainly because the people who understood what I did understood the problem, and the executives who didn't understand what the problem was were also too clueless to blame anyone, let alone me.

My lesson learned from this experience is: if someone is refusing to show the source to suspect driver code, citing trade secrets, confidentiality, secret sauce, partnership agreements, or similar excuses, it's not because they are protecting their magic. It's because they have screwed up, and they are trying to hide it.

A second rule of thumb I have is: source control systems that don't allow any developers to check out and review any arbitrary source code file are expressions of moral failure. It is unethical for an engineer, designer, or other technologist to ever sign off on a project that has been mutilated by such a broken tool.

This entry was originally posted at Please comment there using OpenID.

Tags: , , ,
Current Location: Newark Airport, NJ

It's really annoying to be so aware of a non-rational mental block in my own head, know it's origin, understand what it's trying to protect me from, know how and why it's counter-productive, and have that piece of non-rational pattern of thought also be the very thing that is stopping me from letting go of it.

This entry was originally posted at Please comment there using OpenID.

Current Location: Home, Capitol Hill, Seattle WA


I just went on a half-hour binge reading about pertussis, as a result of reading that WA state has an epidemic outbreak that the public health agencies are struggling to stop.

Reading people's first hand accounts of having it will cross your eyes in empathized pain. One person described that she has given birth, has suffered a compound fracture of a leg, has passed a kidney stone, and has had whopping cough. Only one of them made her wish for death. It's been described as feeling like an asthma attack while someone is punching you in the ribs. Oh, and most all cough medicines do pretty much nothing for it.

You, reading this. You. Right now, pick up your phone, and call your doctor's clinic. Ask them if you're up to date, and if you're not, go get your freaking DTaP shot. You can get one at Walgreen's for less than the cost of a high-end Starbucks drink. You owe it to yourself, you owe it to public health, you owe it to your friends and coworkers, and you owe it to every pregnant woman, every newborn, and every immunocompromised person you share this biosphere with.

This entry was originally posted at Please comment there using OpenID.

Current Location: Capitol Hill neighborhood, Seattle WA

If you found this personal blog from some link about my work on open source and open standards work, my work on OpenShift, on Drizzle, or my speaking at and participating at some technology conference, or so forth, you probably want my tech blog over at Machines Plus Minds.

This personal blog is entirely for stuff about my personal life, and if you don't know me personally, you will probably find it utterly uninteresting.

This entry was originally posted at Please comment there using OpenID.

Current Location: Home, Capitol Hill, Seattle WA
Current Music: (Joey Fehrenbach) Beltenebros

The daffodils are blooming again.

It's now been three years since I wrote Love Stinks, and a year since I wrote Love Stinks, Two Years Later

I read them, feel the scars again, and muse. Any fundamental change? Not really.

I do not retract a word of it. But my outlook has become more nuanced.

Some of that nuance is even more bitter, some of it more gentle.

I understand more. Understanding does bring peace. Or, at least, it moderates ineffective action.

Things that use to hurt all the time, now only have the occational pang.

I've gotten better at keeping my teeth together, and my tongue still.

I have gotten better at knowing how and how much to trust people.

Some people are selected out from my life.
Some people have drifted into my sphere.
Some people have drifted out.

With some, there has been rapprochement, and a friendship again.

Some old acquaintances, have become new friends.
Some old friends, have become new friends.

And there have been some pleasant surprises, and some new adventures.

I still don't trust "love", but friendship and affection are nice, and I try to enjoy what of it I have, from where and when it is offered.

This entry was originally posted at Please comment there using OpenID.

Current Mood: thoughtful thoughtful

Comparing the crowd at Denver International Airport with my recent post about the crowd on the Metro bus in Seattle.

The racial mix is significantly more white. The people are generally taller and more stocky. There are a lot of people with tanned skin. Many of those tans are leathery. Faces, hands, arms, and necks, everywhere I look I see signs of significant long-term sun damage and other weathering, almost as bad as what I saw in Los Angeles. Their clothes are just as layered as in Seattle, but significantly more warm, and in darker colors. Lots of heavy wool full jackets, and lots of heavy weather coats. A lot of blue denim jeans. Lots of waterproof shoes and boots with high-traction soles, and showing a lot of water, salt, and snow damage. What "flair" there is, if any, is of a southwest and/or cowboy theme.

This entry was originally posted at Please comment there using OpenID.

Tags: , ,
Current Location: Denver International Airport (DIA), Denver CO

Mark Atwood
Name: Mark Atwood
Website: My Website
Back May 2014
page summary