RSS Feeds
Posts
Comments
Photos
Twitter
technmsg

Two months ago I started at Cloudera, a mid-sized Silicon Valley startup that focuses on open-source software.

The decision to leave my old job was hard.

To start, I had many of the same reservations that I did back in 2008 when I left a previous project for “something new, something promising, something challenging,” except this time it was harder. In the past four years I’d become an intricate part of a small team and we were responsible for some amazingly cool, important, and far-reaching things. There was no question whether what we were working on was important, and I felt that I was a valued member of the team. I had become a proponent of change, advocating for improvements to software and policy, and a go-to guy for a couple different subject areas. I felt important, like what I did mattered, and that I mattered. That’s a powerful, alluring feeling.

And yet, it wasn’t enough.

The atmosphere within SAIC changed considerably when we went public in 2006. More managerial time and effort were spent on boosting quarterly numbers to please market analysts than on customer satisfaction. With each passing CEO reorganizing the company to suit his pleasure, the company became increasingly fractured, the spirit of employee ownership and pride dissipating rapidly. I can’t even count the number of reorganizations due to change in management personnel or business priorities and for most of my time post-IPO I couldn’t have told you what business unit I was part of, less so the continually changing faces that were in charge of them.

What I do know is that the small Annapolis division that I had come to know and love was consumed by a larger organization, and this in part was a precursor to my eventual departure. The new management style was much more opaque, layered, rigidly structured, and much more concerned with profit margins than with the group of close-knit people they have just inherited from Annapolis.

The nature of contracting helped.

Being embedded in a customer’s space full time makes compartmentalizing easier. While there are plenty of split-brain contractual hoops to jump through, I effectively became an employee of whatever customer I was working for. This suited me fine, since I was always more interested in the work than who was signing the payroll checks. The customer’s goals became mine, as did their problems, policies, work ethics, organizational politics, successes and failures; when you’re in the trenches together it isn’t uncommon to have great working relationships with your customers even when things are a touch rocky with your employer.

For the most part SAIC management was content to let me do my job without any interference. Even when they didn’t, I always found my immediate supervisors incredibly supportive throughout my time with the company, in many cases sitting and working side by side on a daily basis.

Simply put, 2011 was a mess.

Tumultuous, defined. The first half of the year I was running three days a week before work, in and out of a whirlwind long-distance relationship, working on some high-profile code for a customer, staying in touch with my family, doubling up on online courses working towards a Master’s degree, keeping up some semblance of a social life, all while attempting to get a reasonable amount of sleep each night necessary to fuel my hectic schedule.

It was at this point that SAIC management decided to get involved with certain aspects of my work. I don’t want to relive the details, suffice to say mistakes were made all around and the matter wasn’t handled well. The end result was that I was left in a position where I was contractually obligated to continue to work for people with whom: I wasn’t comfortable, I didn’t trust to keep my best interests in mind, I didn’t feel understood me or my objectives.

Even after the direct involvement passed, there were still lingering reminders of how it had gone wrong and little recourse to restore things to the way they were before.

It was inevitable.

The signs were there, although I didn’t recognize them for what they were.

When you’ve got trust issues at work, those emotions don’t tend to stay at work; even if you bottle them up (while on the clock, in the name of professionalism), they’ve got to find an outlet. My personal life outside of work was affected; I completely lost my desire and motivation to write and share, which I rationalized away as due to lack of time. Something I genuinely take joy in, rationalized away for months.

It wasn’t a big secret to those close to me that things weren’t going so well. There was more tension, although I wasn’t able to put my finger on the source. I thought it was a temporary feeling, brought on by taking on too much at once (a few tough classes, particularly), and that once things settled down everything would be fine. I got through the classes, but I still wasn’t comfortable.

A leap of faith.

After more than nine years with SAIC, I found myself running out of reasons to stay.

Throughout the year I’d been hanging out with a friend who had recently accepted a job with Cloudera. He seemed to be enjoying the work and he suggested that I might as well, and that they could use someone with my skill set. I didn’t know exactly what it would be like at Cloudera or whether I’d like the atmosphere, whether the company would be around in 2-3 years, or whether I’d miss the kind of work I’d been doing, but I figured it wouldn’t kill me to learn more.

When I talked to my family about the prospect, my sister put it bluntly: “you haven’t been happy [at SAIC] for a long time.” I was taken aback, but it was exactly what I needed to hear. After a lengthy lunch meeting with my friend (and now coworker) about what I could expect, I applied for a position. In the subsequent weeks I spoke to several engineers at length, managers, even the CEO. Everyone was really enthusiastic and I felt like it could be a good fit.

I submitted my letter of resignation to my division management at SAIC — six months short of my 10-year anniversary — and instantly knew that I had made the right choice. I felt free. In the two weeks following I spent a lot of time briefing my teammates on my work and documenting the same, backing things up, preparing for my departure. There was no time for guilt about leaving, less than a month after my first serious talk about Cloudera I found myself sitting in our Palo Alto office getting the rundown on healthcare, company culture, meeting the staff, and starting anew.

Bring it on.

Last Flight of Discovery

It’s hard to express why I wanted to see Discovery make her final voyage, but I just had this feeling that I had to. A fascination and curiosity to see her in flight, without turning on a television or loading photos in my web browser.

Father/Daughter Discovery

I’ve wanted to see a night launch for years, experience night becoming day. I’m told that you could read a book for ten minutes after, so much raw energy being expended from the solid-fuel rockets. There is something intense about breaking free of Earth’s gravity and how much fiery power is required to do so, and I can only imagine that forces of that magnitude can only be fully appreciated in person.

My desire to see Discovery be ferried over Washington, D.C. is more of an emotional draw, the source of which I can’t explain. But the decision was simple, last Tuesday I took the day off and boarded the Metro, destined for the National Mall and eventually the Washington Monument.

I wasn’t alone.

One man — wearing a NASA windbreaker — told me that it was a special day for him, having been to Discovery’s first launch and every one after. One amateur photographer — lugging around a rolling suitcase full of clothes and equipment — had driven down from Michigan the night before, just for the day, before planning to drive back that night. The press was on the scene as were dozens of families, milling around the base of the Washington Monument waiting to catch a glimpse.

Until someone shouted, “there she is, 2 o’clock!”

Sure enough, we could see the landing lights of the Shuttle Carrier Aircraft (SCA) shining in the distance, growing closer by the second. There was a tension in the air, then the cheers broke out. Even with nearby airports, it was surreal to see a 747 at that altitude, following the Potomac River but appearing to be aimed straight at the Washington Monument, much less with a space shuttle bolted onto the top. As she banked to the right and flew over the Lincoln Memorial we got our first view of Discovery’s profile and all we could hear was the crowd’s excitement and the rapid-fire clicking of cameras all around.

IMG_5962

She was huge, making the even more enormous 747 (for which I have a sense of scale) look like a toy and the T-38 chase plane look like a bug. In most of the photos I took the T-38 Talon is reduced to a handful of pixels, despite being 46 feet long. Even at an altitude of 1,500 feet I could see that Discovery’s skin was far from pristine, her tiles grayish instead of black, the result of many missions into space. I’ve read that the Smithsonian intends to keep her exterior as-is, scuffs and bruises intact. This pleases me.

She banked to the left as she flew over the Marine Corps War Memorial, taking an amazing 45 minutes to make several large counter-clockwise passes around the National Mall, over us, the Capital, and the Department of Commerce.

In what I normally find to be a beautiful but self-centered city, I found dozens of strangers talking to each other about their memories of the Shuttle program, smiles abound. Small kids were perched atop their parent’s shoulders. Adults were madly dashing around the Washington Monument to follow the aircraft, just like small children would. It’s amazing to see an event bring people together from all walks of life.

I didn’t have the greatest camera gear along, my lenses are a little short to get anything super-detailed, so I opted for composition and creativity. CNET picked up one of them all the same, which is a pretty cool thing by itself. I shot a few hundred pictures, many of which I plan to turn into a flip book; the cloud cover might have been a downside for some, but for animation purposes it will help create the sense of motion.

IMG_6082

Are there better shots that captured the event? Sure. But that’s not as important to me. I was there. I felt the cool spring breeze on my skin. I heard the high pitched whine of the engines as the shuttle arced across the sky, framed between green grass, cloudy blue skies, and national monuments in between. I felt the excitement of the crowd, heard their cheers, and saw their smiles.

I’ll never forget it.

BBQ Beef at A&W

Hello, I’m a BBQ Beef sandwich from A&W Pit Beef at Duvall’s Marketplace. I am generous portion of thin-sliced pit beef atop a tasty roll, drizzled with a sweet tomato-based hickory BBQ sauce.

BBQ Beef Sandwich from A&W

I can be yours for $6 (with a bag of chips), to be enjoyed at one of many outdoor picnic tables. Pleased to meet you.

A&W Pit Beef at Duvall's Marketplace on Urbanspoon

The Panasonic KX-T3968 is a very old 900 MHz cordless phone, but still functional. Manuals are not available on Panasonic’s operating manual site, but it’s easy to program auto-dial or speed-dial numbers using either the base station or the cordless handset.

Note: Buttons to press are indicated in bold type.

To store a number on either the base station or the cordless handset, press the Program button, dial the digits you want to store, then press Auto button followed by the digit of the location want to store the number in. You’ll hear a one second confirmation beep.

To dial a stored number, press Auto followed by the digit.

For example, to store 202-555-1234 to Auto 1, you’d press the following buttons:

Program, 2, 0, 2, 5, 5, 5, 1, 2, 3, 4, Auto, 1

You can also insert pauses in the number by using the Pause button on the cordless handset or the Redial/Pause button on the base station. Just in the event you need to dial 9 and then wait, I suppose.

Both the base station and the cordless handset provide storage for 10 phone numbers, one per digit. The stored numbers do not appear to be shared, so effectively you could have 20 unique numbers. The procedure for storing numbers is the same.

Textbooks Can Be Wrong

I was doing assigned reading from Guide to Computer Forensics and Investigations (Fourth Edition). The text on page 104 concerned itself with acquiring compressed disk images as evidence, particularly the importable of ensuring that the copied data is the same as the original.

Popular archiving tools, such as PKZip, WinZip, and WinRAR, use an algorithm referred to as lossless compression.

According to the book, lossless compression is used for forensics acquisition. Lossy compression isn’t, because it alters the original data.

That makes sense.

But then came the following text:

An easy way to test lossless compression is to perform an MD5 or SHA-1 hash on a file before and after it’s compressed. If the compression is done correctly, both versions have the same hash value. If the hashes don’t match, that means something corrupted the compressed file, such as a hardware or software error.

When I read this, I stopped. I didn’t believe it. While hash collisions are certainly possible from a mathematical perspective, they aren’t likely during everyday use. But I had to see, just for my own sanity.

$ echo "Hello world." > test.txt
$ md5sum test.txt
fa093de5fc603823f08524f9801f0546 test.txt
$ sha1sum test.txt
4177876fcf6806ef65c4c1a1abf464087bfbf337 test.txt
$
$ zip test.zip test.txt
adding: test.txt (stored 0%)
$ md5sum test.zip
76e13462f780d302e0eb0246c6e4d6d4 test.zip
$ sha1sum test.zip
edfc4a3ee2082fef21dae7028d11d031eef65242 test.zip

Just as I suspected, neither method generates the same hash. I wouldn’t expect it to, even if the file were just stored within the archive there’s still content metadata that is added to the archive.

$ rm test.txt
$ unzip test.zip
Archive: test.zip
extracting: test.txt
$ md5sum test.txt
fa093de5fc603823f08524f9801f0546 test.txt
$ sha1sum test.txt
4177876fcf6806ef65c4c1a1abf464087bfbf337 test.txt

As expected, the decompressed file has the same hash as the original.

I suspect this was merely an editing error. Perhaps a non-technical editor simplified the paragraph and none of the proofreaders caught it. I hope that the authors don’t really believe the cited sentences above. I hope that digital forensic evidence isn’t being tossed out due to compressed file hashes not matching up to their source hashes.

I think the text intended to say that the hash of the original file should remain the same as a decompressed file, presuming that a lossless algorithm was used. But that’s definitely not how it sounded, and could be critically misleading to someone without previous knowledge.

The Teppanyaki Grill reminds me of Las Vegas.

As soon as you walk in, the tile floor gives way to a marble-encased wall of waterfalls. A room full of food sits behind them. You pay for the buffet and any drinks up front, then you’re led to your seat. There’s ample room for large parties, set back away from the buffet lines.

And then you go to town.

Typical Chinese buffets around Maryland might have one or two stations with two dozen dishes, but Teppanyaki goes overboard and has several hundred dishes. In addition to the usual Chinese staples, they’ve got a variety of Japanese and American dishes too. It’s typical buffet-quality as you would expect (some things are a little better than others), but there’s not much that isn’t offered here.

Various rice and noodle staples, check. Typical chicken and beef Americanized Chinese staples, check. Dumplings and egg rolls and spring rolls, all there. Pizza slices and seafood pasta and macaroni and cheese, check. Spiral cut ham. Salmon fillet. Chicken wings, plus a bacon-wrapped chicken dish that’s been cooked in butter. Crabs, clams, oysters, and shrimp, check, as well as some other shellfish that I didn’t recognize.

It continues.

They’ve got a crew of two making sushi rolls non-stop. I wouldn’t expect miracles from that department compared to the numerous options in Columbia and Annapolis, but it’s there. They’ve also got a passable hibachi grill station, with chicken, beef, shrimp, and all the usual vegetables you can load up on your plate. You don’t have all the sauce selections that you might at a Mongolian joint, but the grill man manages 8-10 plates at a time without mixing anything up.

Don’t forget dessert.

There is a fresh fruit and desert bar, complete with Oreo cookie ensemble, cheesecake, and red velvet cakes, as well a variety of pastries, brownies, pies, and cookies; don’t forget your pudding and tapioca. A large chocolate fountain sits to the side, pre-stocked with marshmallows and pineapple (although someone had the ingenious idea of dipping the aforementioned bacon/chicken contraption), located right next to the ice cream cart.

It was pretty crowded near the end of the lunch rush, but there was never an enormous line for anything. It’s organized, the mark of a well-run chain/franchise operation. The staff does a good job of monitoring the pans and replacing them when they get low. Table service was excellent, plates cleared and drinks refilled without having to ask.

Lunch runs $7 per person, Monday-Saturday 11am-3pm; $3.35 for kids 3-6, $5 for kids 7-10, free for kids under 2. Dinner prices are similarly tiered, running $11, $5, and $7 respectively. Military members get a 10% discount from the start. The local papers are publishing all sorts of $1-2 coupons, making it even cheaper to try out.

There’s something for everyone at Teppanyaki, and the price can’t be beat considering the diversity of food being offered.

Teppanyaki Grill & Supreme Buffet on Urbanspoon

Afghan Cuisine at Faryab

Saturday night we went to Faryab in Bethesda. Located amidst many excellent sounding/smelling dining options on Cordell Avenue, Faryab dishes up humble yet rich Afghan dishes without fanfare or frolic. The restaurant sits in a quiet, unassuming store front adjacent to a cigar shop. In the warmer months they have an outdoor patio. There is a nearby parking garage, free on most evenings and weekends.

I sampled quite a few appetizers and dishes from around the table:

Bulanee ($7) are turnovers stuffed with spiced scallions and herbs, and one of two vegetarian options on the appetizer menu. After a few nibbles, found these to be very light and refreshing and with a kick of pepper.

Badenjan Goushti ($21) is seasoned lamb, braised, topped with eggplant, onions, and tomato, baked, served with basmati rice. The lamb itself was very tender, falling apart in your mouth as if it were chipped beef. Not a very gamey cut of lamb; lamb lovers probably won’t care for it; lamb haters probably won’t mind it. I expected a little more flavor from the sauce, the tomato stood out among all the other ingredients.

Sabsi ($7) is fresh spinach cooked with onions and garlic. Shredded super-fine but not at all watery, my side order was sweet to the taste as if they’d used sugar-injected sweet onions. By comparison the spinach served with the lamb had a different flavor entirely; both were good, but I preferred the sweet.

Shalgham Goushti ($21) is seasoned lamb, braised, topped with tender, sweet and spicy turnips, served with basmati rice. I only got a little taste of the Shalgham dish, since it wasn’t mine; my intention was to experience a turnip for the first time, so I can’t speak to the lamb, but I was amazed by the sauce. More on this shortly…

If you take away nothing else from my experience, read the next paragraph carefully.

If you like spiced dishes, you must go to Faryab and order something with Shalgham. The sweet and spicy sauce used was probably one of the best spiced flavors I’ve ever tasted. Ever. It’s instantly sweet to the taste, and reminded me slightly of cinnamon. But then a unknown blend of spice migrates to the back of your tongue and explodes. Like a pepper might, except that it wasn’t particularly peppery. It packs a punch that will catch you off-guard, but it’s not a sweat-inducing heat. Less of a heat than a shock to the taste buds. I’ve never tasted anything like it, nor could I readily identical any of the flavors nor any of the ingredients used. That’s rare for me. Whatever is it in, it’s finely ground and not visible to the naked eye. And it’s delicious.

Enough about that, now. Overall, the fare was pretty simple and I can’t say there was a bad dish among those I tried.

There are some weird price points, where I can’t reconcile whether the appetizers were priced high or the entrees were priced low. Consider Mantu; perfectly steamed dumplings filled with a rich mixture of ground beef and onions, topped with a slightly tangy yogurt and a hearty meat sauce. If you order the appetizer ($7) you receive four dumplings. If you order the entree ($19) you receive eight, which means you’re paying $5 for an iceberg lettuce salad and one or two piece of bread.

I thought that portions were a tad small, given the cost. When in Bethesda, however…

It wouldn’t be exactly fair to compare the flavors of Faryab to that of Helmand (in Baltimore), since both feature cuisine from their respective provinces of origin (both of which they are named after). But there are some differences worth noting. The bread at Faryab was thick and heavy, very unlike the naan-like pita at Helmand. The sauces at Faryab were more tomato and vegetable based, where Helmand seems to be more broth-based. For what you pay at Faryab, you’d expect a little more ambiance; both have tablecloths and while linens, but Helmand feels a little more upscale.

Faryab on Urbanspoon

The lunch specials at China Dragon are enormous and inexpensive.

Szechuan Chicken from China Dragon

There’s better take-out to be had and the spiciness just isn’t there, but sometimes you just want a whole lot of cheap take-out (for comparison, note the size of the fork). For $5.25 you’ll get a massive dinner-sized portion of your entree, fried rice, and an decent egg roll.

China Dragon is located in a small plaza off Route 1, just north of Guilford. Purely take-out, there’s no room to sit. There’s an abundance of prepaid phone cards hanging behind the counter as well as a handful of burner phones. Also, the staff isn’t known for their friendly telephone demeanor… but they’ve got some mean lunch specials.

China Dragon on Urbanspoon

I got a direct message on Twitter last night, asking me if I wanted to go to the Hippodrome to see Wishful Drinking. I had never heard of it, but the name sounded interesting enough. I did a quick search and found that it concerned the life experiences of one Carrie Fisher, both written and performed by Carrie Fisher.

Wishful Drinking posterI was sold.

I’m not even a huge Star Wars person. I enjoyed the series for the most part, but I remember her more for playing Marie in When Harry Met Sally. She’s been in Hollywood her whole life, a fact that you’ll learn all about during the performance. But fear not, Star Wars fans, there’s plenty of stuff for you here too.

I love dry wit.

After reading the notes in the program, I knew I was going to enjoy this one; in the thank-you portion of the program, Ms. Fisher recognizes her mother, daughter, all 12 of her shrinks, and her father:

Thanks for bringing your drug dealer to my opening in Berkeley. His notes were inspirational.

Truth can be stranger than fiction.

She starts by talking about how a man died in her home. In her bed, actually. As she lounges around a cozily outfitted stage in bare feet smoking an e-cigarette, she touches on her life experiences with perfect pacing: famous parents, Star Wars, bipolar disorder, good memories and divorces, Paul Simon, addiction and rehab, her gay husband, getting old.

It’s all in there.

Both personal and comic at the same time, a wonderful mix of both personal sweets and bitters. There’s something energizing about someone speaking to a crowd about her demons and asking them for their opinion. It’s personal. It’s comic. And it’s over too soon.

The last two shows in Baltimore are today at 1pm and 6pm. I suppose you could catch it on Netflix or Amazon if you don’t want to drive to Ohio, but it wouldn’t be the same. You better hurry.

I know next to nothing about Korean food, except that I really enjoyed a recent lunch at Shin Chon Garden. While I didn’t elect to cook my own meal at the table, it was still a new experience.

Banchan at Shin Chon

Before your order is taken, banchan are set out. These are small appetizer-sized dishes meant to be shared by the table. We noted pickled cucumbers, mushrooms, sprout salad, kimchi, and a few other zingy dishes that we couldn’t readily identify. No matter, we left most of the dishes empty by the end of the meal.

Beef Bulgogi Box at Shin Chon

I ordered the Beef Bulgogi Box ($8), expecting a smaller portion. I was wrong. Horribly wrong, but in a wonderful way. In addition to the entree, the box contained two pork dumplings, a spring salad with citrus dressing, two hand rolls, sticky rice topped with sesame seeds, some sort of pickled vegetable (beets, we thought), and a vinegar/soy dipping sauce. I passed the rolls off to a coworker who would better appreciate them, but otherwise I indulged and enjoyed everything there. The beef bulgogi itself was tender and flavorful, served mixed with julienne onions, sesame seeds, and green onions. All was marinated in a rich and savory broth; I made a point to finish it off as a marinade for the rice I had left over.

There’s a lot more to explore here.

Located in Ellicott City off of Baltimore National Pike, the first thing I noticed when we arrived was the stack of Korean newspapers and journals stacked on the floor by the door. As far as authenticity goes, that’s never a bad sign. Neither is the lack of English-speaking patrons and staff; if you don’t speak fluent Korean you’ll be in the minority. The menu is written in both English and Korean, but without much in the way of description. Our server managed the basics of our order without too much difficulty, but our follow-up questions took a little more effort. We were fortunate to have a native-speaking coworker with us, who translated, described what each dish would be like, and made recommendations for us.

One tip: since barbeque is done out in the eating area, expect pungent aromas and strong flavors. If you have clothes that you don’t want to absorb the smells of your meal, you shouldn’t wear them to Shin Chon.

If you insist on English-speaking servers or knowing exactly what you’re eating down to the individual ingredients, Shin Chon probably isn’t for you. I wouldn’t let that stop you, however, since you’ll be missing out.

Shin Chon Garden on Urbanspoon

Chris’ Restaurant is a small, family-owned business, offering a mix of Latin, Mexican, and Salvadorian style food in an informal sit-down setting. Both traditional and Spanish breakfasts are offered all day. You get a lot of flavorful food for your money, here. Put simply, it’s one of my new favorites.

I was hesitant at first, mostly because the location has a history of failed restaurants (pizza, Mexican, etc) dating back to the late 90’s. But after a hearty recommendation from Damien, I figured I’ve give it a try. Ever since my personal ban of Rivera’s (which was tough, given their tasty cuisine), I had been without a go-to Mexican restaurant in the Severna Park area. Not anymore.

Chicken Burrito at Chris' Restaurant

Whenever trying a new restaurant, I start with something familiar and simple. I want to see how the kitchen is going to take a few ingredients and put their unique spin on them. Nothing is worse than waiting for a complicated dish only to find that you don’t care for it at all, so I opted for a chicken burrito.

But I’m getting ahead of myself.

Complimentary Chips/Salsa at Chris' Restaurant

It isn’t a proper experience unless complimentary chips and salsa are provided. I don’t care about authenticity here, we’re accustomed to munching while we peruse the menu. Given that most Mexican menus have more or less the same set of staples, we take longer to look at it than we would other types of restaurants, probably because we’re searching to see if there’s anything new or unique offered. The irony here is that even if you see something unusual after scouring each item’s description, you’re likely to order your standby favorite.

A basket of warm chips were provided, along with cups of curtido and salsa. Thin and crunchy chips, unsalted. The salsa was thin like you might find at Chevys, but far more smoky and spicy.

As I waited for food to be prepared, a nearby couple sipped their horchata and conversed with the server in Spanish.

I ordered a Pork Pupusa ($1.75) to get started, a traditional Salvadoran dish quite suitable for snacking. Effectively a tortilla pancake stuffed with your choice of filling and seared on the grill, the meat was well flavored without overpowering the tortilla (which is more than just a delivery device, here). It was served with a cup of curtido and an orange-colored sweet tomato sauce, both tasty.

The Guts of a Chicken Burrito at Chris' Restaurant

The Chicken Burrito ($7.99) was enormous, packed with lots of shredded chicken along with rice and beans. The chicken was moist, rice soft, beans mellow. You’ll definitely need a fork and knife to handle this, especially considering that the whole thing was covered in a light flavorful mole and shredded cheese. Lettuce, tomato, guacamole, and sour cream were served on the side.

Interior of Chris' Restaurant

The exterior of Chris’ isn’t much to look at, nor does the front signage give much away. Set in a small block of businesses along the side of Ritchie Highway (adjacent to the Donut Shack), there’s a walk-up counter with a view into the kitchen. A small sign advises customers that they can bring in their own beer/wine, so long as the 2/person limit is observed. A dozen or so two- and four-tops are nestled back along the depth of the building. Cultural artifacts and flags adorn the walls and a small television is broadcasting news in Spanish.

As usual, delicious meals are freely found right around the corner without frills or fanfare.

Chris' Restaurant on Urbanspoon

In the past I’ve avoided location-aware services, opting instead to conceal my location to all but my ISP, cellular provider, and whoever else might be capable and willing to find out.

2012 marks a departure from that stance.

Armed with a Nexus One, I’ve started using a few new services.

I’ve started to use foursquare to track my outings. The service automatically characterizes both the nature and locale of the places I visit, which is interesting to me even before adding the social aspects and friendly competition. I spent a lot of time last semester on my living room couch, allowing my brain to recover from the mental anguish of Modern Cryptography; I’m hopeful that foursquare might motivate me to try some new places, maybe just around the corner from my usual haunts.

Google Latitude allows you to see where your friends are, overlaid on top of the familiar Google Maps interface. When they move, their position is updated in near-real-time. It also keeps a visual historical record of where you’ve been and when, which is more informational and appealing to the statistician in me. Latitude is handy when you’re trying to meet up and someone hasn’t arrived yet; one peek and you can see that they’re a few minutes out without having to bug them while they’re driving. But mostly, it’s a neat little toy. I’ve gotten a kick out of seeing my buddies jet set around the country (or county, depending).

Admittedly the privacy aspect is still a little chilling, but I’m warming up little by little. I’m trying to live more openly, but I definitely wasn’t ready to go public with everything. For now my location-specific data should — in theory — only be visible to friends, family, and people with whom I don’t mind sharing my whereabouts.

Here we go.

This past weekend I tagged along with the crew of Sterling Volunteer Fire Company’s Engine 611 on a thirteen hour shift. I was free to observe, with no responsibilities other than to stay out of the way. I learned quite a bit. I’m still processing a few things, and no doubt I’ve forgotten some of it already. But overall it was a great experience, one that I’d recommend to anyone who has the opportunity.

IMG_3546

Lesson #1 - Fire trucks are cool.

No matter how old you are, there’s something amazing about fire trucks. Those in the business refer to them as apparatus, but I can’t bring myself to do that. I’m an amateur fan. But seriously, why shouldn’t we continue to be amazed? These things are large diesel-powered monsters, decked out in a lot of chrome and stainless steel, with lots of buttons and knobs and switches, flashing lights, sirens, lights bright enough to turn night into day, and electronics. And that doesn’t even begin to talk about the water features…

IMG_5511

Lesson #2 - Arriving early is important.

Time is critical to first responders. Minutes can — in many cases — equate to lives saved or lost. Firefighter are no exception, and this notion was stressed both verbally and in the crew’s actions throughout the shift. If a crew’s shift is from 6pm until 7am, that means that they need to be ready to go at 6pm. Not getting dressed. Not checking our their safety gear. Ready to go.

We arrived at Station 11 plenty early. After dropping personal gear at our bunks, I was given a quick tour of the fire station. Bunk rooms, with lights that come on automatically when there’s a call. Radio room, where all the dispatcher’s calls are received and the valid ones are rebroadcast around the station. Lounge, complete with sofas and big screen. Kitchen, with gas range and two refrigerators. Very humble and functional surroundings, nothing too out of the ordinary. Bathrooms, too. Firefighters tend to relieve themselves whenever they have the opportunity, not necessarily when they have to.

At 5:42 PM we headed down to the garage. Normally home to an engine, a ladder tower, a quint (which can serve the role of both engine and ladder truck, plus other functions), and few specialty vehicles (brush unit, canteen), the space appeared pretty packed to me; the 611 ladder tower was out of service due to a mechanical issue and so a quint from another station (Quint 618) was standing in that night. The inbound crew was busy checking out the equipment, getting notes from the outbound crew (e.g. the left rear spotlight is still not working, it’s going to have to be replaced). I was given the quick overview of where I’d be seated if we got a call (back seat, center, facing forward), what to do in that case (get in quickly, buckle up), how to use the headphones, and what to do once we were on scene (generally, stay in the truck unless told otherwise).

Engine 611 is considered “in service” when the equipment is functional and it’s ready to be manned by an officer, a driver, and at least one firefighter. I think the last part depends on the county/state, but in general there’s a set number of individuals filling specific roles that need to be present. If you’ve got a flat tire, no go. If you’re missing any of the key personnel, no go. Once in service, the county dispatcher knows that the unit is available to be dispatched to a scene if necessary.

Lesson #3 - Like most industries, there’s a specific dialect.

Firefighters tend to talk in numbers and geography. They’ll say that they were headed over to 11 or 18, when they’re talking about specific fire stations. There’s a lot of radio jargon that differs from the 10-codes used by law enforcement, but it sounds similar to my untrained ear. They know which hydrant out of a thousand is a pain in the ass to open. They appear to have an encyclopedic knowledge of street addresses and direction; punching in an address to a GPS-assisted navigation system seems abysmally slow by comparison to a seasoned firefighter.

There are speakers installed throughout the fire station, many of which broadcast continual updates from the dispatcher, all in the background. Status of current calls, call-backs from dispatched units, etc. There are also display monitors posted throughout, which list the last couple calls and the status of all the equipment. Both audio and visual methods are somewhat cryptic to me, but after a while you can start to understand some of it. Not all the updates are applicable to our specific crew, as the station house hosts both the fire company and the rescue squad, but everyone there appears to be accustomed to listening to that stream of audio and carrying on conversation simultaneously. Mid-conversation some tones were dropped, some updates relayed by the dispatcher, and I’m told we’ve got a call.

Lesson #4 - Riding on a truck fire is more cool.

At 6:15 PM, Engine 611 and Engine 618 were dispatched to the scene of a car accident. I wasn’t sure what to expect, but everyone quickly and calmly boarded the truck, got strapped in, and donned their headset. The garage door rolled up and we were out the door, siren blazing and lights flashing.

As the firefighters in the compartment were busy changing out of their shoes and getting into their protective gear, the driver was busy weaving through traffic, running red lights, and sharing my sheer amazement at other drivers who just do not seem to understand that they’re in the way and that a truck that size won’t stop on a dime.

Public Service Announcement: when you see or hear an engine, move out of the way. Aside from the fact that you’re impeding a crew from reaching their destination in a timely matter, you do not want to be hit by one of these things, even at slow speed. They’re big, they don’t corner well, and they weigh a lot; from the seat of a fire truck, every other vehicle looks miniscule. Put it this way, the 750+ gallons of water onboard Engine 611 alone weighs more than most vehicles on the road today. Newton’s laws of motion should be suitable reading, here.

I never felt like the rig was out of control or that we were going excessively fast, that being said I have no idea how fast we were going. I do know that it’s pretty amazing to see such a large vehicle navigate through traffic. I’m told that the trucks are geared for acceleration, not top speed; I believe it, these things can pick up and move when they have to, which is incredible given their weight. On the headset I can hear the others in the truck over the intercom, speaking normally. In the same headset but overlaid louder are updates to/from the dispatcher, units en route, and our officer asking for updated location information.

As it turns out, the car accident was on a ramp to the highway. Direction wasn’t provided as to whether it was an on-ramp or an off-ramp, so there was a lot of looking out the window to locate it. Emergency responders can only respond if they can find you. Mile markers are good I guess, but I’d think that basic directions would be better. If the caller had reported that they were on the on-ramp to highway 123 northbound, we wouldn’t have had to go looking around for two stopped cars. Granted, some folks don’t know where they’re going in general and it’s not uncommon to be disoriented after a collision. Eventually the accident scene was located, requiring our driver to reverse up the on-ramp (with assistance from the firefighters-turned-backers).

From my seat in the cab, it looked like a standard rear-end collision. The rear end of the lead car was in decent condition. The front end of the following car, very much accordion-like. The humans involved appeared to be undamaged, if not a bit shaken. Police and EMS were on the scene too, taking statements and writing reports. The crew deployed cat litter to soak up leaked fluids, the Engine stood in place blocking traffic and keeping passing cars away from all those involved.

Lesson #5 - When you eat, it’s always to-go.

At 7:00 PM we backed into the refuse/loading area at Dulles Town Center to grab dinner. Food courts provide a lot of options, so everyone can get what they want. There are fire exits and passages everywhere, and the crew uses them expertly to navigate quickly and efficiently through the back corridors of the mall. I also learned that it’s difficult to try to buy a firefighter dinner, but I’d encourage you to try. After finishing up, it was decided to go top off the tank.

Lesson #6 - You can never had enough fuel in the tank.

At 7:38 PM we arrived at Station 18, the northern fire station of Sterling. Engine 611 took on 8 gallons of diesel. According to the odometer Engine 611 might only get a mile to the gallon, which sounds pretty awful. But the engine isn’t just responsible for propulsion, so that measure is prone to inaccuracy. At the scene of a fire the transmission is placed in neutral, but the engine runs continuously and spools up to pump water as necessary. An engine might only power the transmission for 10 minutes to get to the scene, but then run for 3-4 hours. Similar to nature’s calling, you fill up when you can.

Lesson #7 - There’s a lot of water feeding the hydrant.

At 8:21 PM we arrived at Park View High School for training, play time, drills, or whatever else you want to call it. The other three trucks from the station were already present. The chief assembled the crews and explained the various drills that he wanted to see, after which each truck deployed to a space in the back parking lot. Our truck would not be involved in any drill and was moved into position for quick departure. It’s standard procedure to keep engine running (in pump gear) when the temperature is below freezing, to keep the water circulating (and as a bonus the cab is kept nice and warm).

Engine 611

One team was hooked up to a hydrant and was practicing dousing a trailer from a handheld hose. One team set forth with a pair of roof ladders (ladders with a pair of hooks on the end), working their way onto the various roof structures of the high school, taking the ladders with them as they moved.

One team deployed a 105-foot ladder into the sky, the instructions being that everyone had to climb up and down once.

Quint 618

The last team practiced what I’d call a pit-stop maneuver. The truck would drive up to a hydrant and stop. A firefighter would hop out and lash a four-inch line to the hydrant, then motion the driver to advance, thus deploying the hose out from the back of the truck. Let the truck do the heavy lifting: smart.

IMG_5513

Once stopped, the firefighter would work to attach the hose to the hydrant, the hose to the truck, pressurize the system by opening the valve on the hydrant. Once pressurized, those hoses are hard as concrete, yet I was told that the slightest kink in the hose could drastically reduce pressure.

IMG_5518

Then the driver (who also operates the engine-mounted pumps) would open one of the valves on the engine to flow some water (video). A firefighter’s notion of some water is vastly different than mine; the amount of water flowed in each one of these 30-60 second tests far exceeded what I use at home in a month.

IMG_5519

After everyone is satisfied, the whole operation has to be undone in the reverse order.

IMG_5515

This was done three or four times that I saw, then each hose had to be purged of water, rolled up (you can see some of the rolled up coils laying on the sidewalk in the photos above), then stowed in the back of the truck properly. This particular truck has a retractable housing to store hoses.

IMG_5524

All of this in 20° weather, not counting the wind chill.

At 9:04 PM Engine 611 was dispatched to assist with an EMS call. We climbed aboard and left the other crews behind. I’ll exclude the details due to potential HIPAA issues, but suffice to say it would have been a call where the crew would be there to provide manpower, perhaps a little extra muscle with the stretcher on the staircase, etc. An individual was loaded into the ambulance at less-than-emergency speed (read: cause for EMS was non-life-threatening, not that the crews were acting slowly). Once the ambulance departed, we headed back to the high school.

Most of the crews had finished their drills, but one was still working with a monitor. It it usually attached to the truck, but can be removed and placed anywhere. It can be fixed to direct water at particular area to keep an area wet, so that firefighters can focus their attention elsewhere (instead of having to man a hose).

IMG_5523

Lesson #8 - Everyone needs rest.

Upon our return to the station, we set up our bunks and headed back downstairs. I picked up my stocking cap and gloves and put them into the cab with my jacket so that I’d have them for the next call. Some of the crew started watching a movie, others went to sleep, others stuck around and talked. I hung around to listen. Company politics. War stories. Eventually I started to tire, having been up for 20 hours or so. I found myself dozing off in my chair.

At 1:15 AM, we called it a night and headed upstairs to our bunks, flipped off the lights and tucked into our sleeping bags.

At some point, probably around 2:00 AM, I was awaken by tones and the voice of the dispatcher. The lights snapped on. I rolled out of bed and started getting my boots on, when I was informed that the call didn’t include us. Okay, maybe EMS only. The lights snapped out on their own in a minute or two and I went back to sleep.

Lesson #9 - Being woken up at 3:00 AM is disorienting.

At 3:03 AM Engine 611 was dispatched for reasons unknown. The tones dropped. The lights flicked on. I heard 611-something spoken. I rolled out of bed, put my boots on, tied ‘em up, put my wallet and phone in my pockets and shuffled down the stairs to Engine 611. I found the garage door open and everyone else already inside the cab. As I got in and sat down my host informed me, “you were about 3 seconds from being left behind.” Shoelaces. Now I know why his boots have zippers instead of laces.

As we bolted through now-empty streets to the destination, the officer on-board requested an update from the dispatcher. It was a self-reported 911 call from an injured person. The call had been lost. Attempts to re-dial the cell phone had gone unanswered, so GPS was being used to attempt to locate the caller. We arrived shortly after the police, so we parked a block or two away and waited for further information. Over the intercom more war stories were swapped, along with shop talk, and speculation about the accuracy of GPS devices.

At 3:50 AM we headed back to the station, the sheriff apparently having settled the matter, whatever it happened to be. Never found out. Sometimes that’s how it happens.

At 6:50 AM I got up, packed up my bunk and headed downstairs. I picked up my jacket and personal effects from the cab. Just in case the next crew were to be called at 7:01 AM, no telling when they’d be back. I fixed a cup of hot chocolate and listened to the exchange of information from the evening crew to the morning crew. Shortly thereafter, I walked out to my car and headed for home.

It was a quick 13 hours, but I don’t know how those crews do it. Two or three hours sleep in 26 hours time simply isn’t enough for me; the following day I found myself napping sporadically and uncontrollably. Riding along was a rush, no doubt about it, but also very humbling. These volunteers are from all walks of life: engineers, HVAC repair, computer geeks, community college, white collar, blue collar, you name it. Once they commit to the service of their community, they put on the uniform and work together as a single professional unit, calm and collected. It was a privilege to witness it, even without seeing a single flame. Tired but feeling good, even though I was just along for the ride.

Health insurance is convoluted. It’s hard to understand when you don’t utilize it; it’s easier to understand when you do utilize it, but there are still plenty of weird things about it. One example from the past year.

I saw a physician in April. The bill was submitted to my insurance company a week later. I didn’t receive a bill from the physician for several months, but once I did I sent payment off promptly. A few months after that, I got another bill for the same visit for a much smaller amount, the result of the insurance company quietly renegotiating the rate they were willing to pay for my visit, changing what I owed after the fact.

Using very rounded numbers…

  • 04/01/11 - Physician date of service
  • 04/08/11 - Bill submitted to insurer for $500
    • Negotiated down to $200
  • 04/21/11 - EOB shows my responsibility as $200
  • 09/17/11 - Physician’s bill received for $200
  • 09/22/11 - Physician’s bill paid
  • 12/19/11 - Insurer quietly renegotiates allowable rate as $250
  • 01/07/12 - Physician’s bill received for $50

There are two few odd things going on here.

The physician’s office waited five months before sending me a bill. That simply can’t be good for cash flow. As much as I appreciated having the dough in the bank, in the grand scheme this makes things harder on the medical profession and contributes to higher costs.

The insurance company opted to renegotiated a higher rate for the billed services eight months after they had been paid for at a lower rate (and three months after I had paid my end). This seems dishonest, particularly to the patient. Depending on the reason for medical care, billing can be an emotional matter. We need closure. We just want to pay the bills and move on; receiving yet another bill in the mail for something that we would love to have forgotten about seems cruel.

Once a service has been bought and paid for, that’s should be it. The kid mowing your lawn doesn’t pop over and say “hey, everyone’s giving me $30 a lawn this year instead of $20, so you owe me $10 for last year.” He could, but you’d probably scoff at the idea and tell him to take a hike.

Maybe the physician’s office was arguing with the insurance company about the rate, contributing to the super-late bill. If so, that’s a lot time to be negotiating. Time is money. Maybe they got sick of arguing with the insurance company and figured they could get something in the meantime, then work out the details later. Nobody knows.

This is not the way to run a business.

Violation of Expectation

As I tweeted, change may violate design of a program, but changes to implementation that violate our expectations are worse.

In software development, the design becomes useless if the user elects not to use the application. You might have the most amazing and thorough design, but if it doesn’t attract and entice users to use the thing, what’s the point?

In configuration management, process can help cover all the documentation needs, but if it’s so much that a developer strays from the process entirely, what’s the point?

But these are often just academic exercises…

Suppose a meteor landed on your house. Assurance from your neighbor that everything will be alright — while correct in emotional terms — isn’t as good as their offer to pitch in and help clear the wreckage and salvage whatever precious goods may have survived.

But that’s just a hypothetical…

In employee relations, consistency is key when working with employees. People in general, really. If you tell someone that they matter, actions that suggest that they don’t will breed skepticism and distrust. An employee may be fine in the knowledge that they’re an entry in a profit/loss ledger so long as their financial needs are being met, but once expectations are raised and the employee feels valued, actions that make them feel undervalued are a violation of expectation.

In a labor-based economy, employee knowledge and expertise are considered precious goods, but more important is what the employee is going to be capable of in the future. When policies that affect employees change in ways that could be construed as inequitable, pleasantries won’t be enough of a consolation to mend that tear in trust.

That isn’t to say that design isn’t important, but design for the sake of design is foolish.

Older Posts »