Category Archives: heart

Luck Is Not A Factor

Once Upon A Time, A Nonsequitur

“You can observe a lot just by watching.” — Yogi Berra

Late in 2006 I was sitting in Rodney Bliss’ office for our weekly investor debriefing. Rodney was the President of the company; as the Director of Technology I reported to him. In theory, Rodney ran the company and I ran the development team. In practice, the investor would change our priorities and expand the scope of the project every week and it was all we could do to keep up. Rodney had just returned from meeting with the investor, and we were going over the new list of features so that we could prioritize dependencies. And then he casually told me of another request that our investor had made.

“He wants me to put together a list of all our expenditures, from payroll to soda pop–”

“Aw, CRAP!” I interrupted.

“What?”

“You’re going to get fired!”

“What…? No I’m not!” Rodney actually laughed. I just stared at him in horror. I couldn’t believe he couldn’t see it. It was so clear.

“Rodney, I’m not joking. You’ve got 2 months at best; less if he’s smart. Based on the way things have gone this year, I’m guessing right at about six weeks.”

“Dave, calm down. I am not going to get fired.”

Six weeks later, almost to the day, Rodney got called in for his exit interview.

Rippling Grass Is Always Caused By Wind Except When It’s Tigers

The thing was, I knew Rodney was going to get fired, but I didn’t know how I knew. It was a very chaotic time for all of us, and there was no one significant indicator that I could point out, but sitting in that office, I could see all these tiny little details suddenly adding up to a starkly clear pattern. I’d worked for half a dozen clients in as many years, and based on all of my experiences joining and leaving companies, this request from our investor was… odd. Not just odd, but totally out of keeping with his character and with the way he had behaved towards us all that year. All of these things added up instantly in my gut, if not my head, and what was odd suddenly became ominous. Our investor had always respected Rodney’s autonomy, and aside from some ineffable “leadershippy things” that Rodney did, budgetary discretion was the only thing Rodney actually did… at least on paper. And now the investor was taking that function over. I knew–knew–Rodney was going to get fired, just as soon as our investor put all the pieces together.

It took me seven years to figure out how I figured all that out. It was just last weekend, in fact. Rodney and I were arguing good-naturedly–we’ve stayed friends over the years–about a blog post he’d just written, titled And Sometimes You Just Get Lucky. Go read that post; I’ll wait. It’s a lot of fun to read and most importantly, Rodney is wrong and I can’t resist the temptation to point that out. Especially because it’s the kind of wrong where I get to point out how awesome Rodney really is.

Luck Is Not A Factor

For those of you who didn’t go read his post–for shame!–the TL;DR is that Rodney got lucky debugging a computer problem. He sat down and typed a few commands, and noticed something out of the ordinary. To everyone else in the room, it was ordinary–just a very large amount of free disk space. But Rodney was one of the first SWAT engineers at WordPerfect, and had been steeping himself in the engineering lore of the company for years. He just happened to know that Shell.exe counted up free disk space when it started up. He just happened to know that computers at that time were occasionally experiencing growing pains, where the size of the place in memory for storing numbers was turning out to be too small–like the number of free bytes on disk, in an era where people still carried floppy disks that held less than 2 megabytes, but now you actually could have entire gigabytes(!!!) of disk space lying around–even, in this case, the 2.147 gigabytes needed to overflow a signed 32-bit integer. And lastly, but most definitely not least, he just happened to know the name and phone number of the guy at WordPerfect who wrote Shell.exe in the first place.

Rodney says he got lucky. Rodney is wrong. He was no more lucky that day than I was at guessing he was about to get fired. A hundred tiny factors, measured in our brains against a hundred past experiences, and suddenly we knew that particular ripple in the grass was a tiger.

Cool Story Bro, But So What?

Well, for starters, Bro, start looking at the grass. Unless you’re down with getting eaten by a tiger. That’s very eco of you, man. I mean, hardcore. I can, like, totally respect that.

No, the thing is, if this isn’t luck, then maybe this is a force we can harness for good. Or at least maybe luck is something we can measure. You know, with science and stuff. Or something. Richard Wiseman set out to do just that, measuring the skills and abilities of people who considered themselves lucky against people who considered themselves unlucky. One of the tests he gave was to ask participants to count the number of images in a newspaper:

"I gave both lucky and unlucky people a newspaper, and asked them to look through it and tell me how many photographs were inside. On average, the unlucky people took about two minutes to count the photographs, whereas the lucky people took just seconds. Why? Because the second page of the newspaper contained the message: "Stop counting. There are 43 photographs in this newspaper." This message took up half of the page and was written in type that was more than 2in high. It was staring everyone straight in the face, but the unlucky people tended to miss it and the lucky people tended to spot it."

You can read Wiseman’s entire article here. It’s fascinating. He even changed the message to say “Stop counting and tell the experimenter you have seen this and win £250.” There was no change in the survey results–except that now the lucky people were going home £250 richer.

I don’t want to steal Wiseman’s thunder, but his bottom line is that lucky people relax more, and tend to be more open to noticing things even while they are focusing on accomplishing a task.

No Seriously, So What?

Dude, seriously. You need to relax. No, I mean literally. That’s the whole point of Wiseman’s article.

I read his article a long time ago–It’s ten years old now–and I’ve been fascinated with the kinds of pattern recognition our brains are constantly doing. I began to notice more and more that I was spotting tigers in the grass in the weirdest of places. I began to notice much more subtle tigers. I began to spot tigers from much further away with less and less data. When I called Rodney’s termination, I knew the investor personally and had a lot of information about him personally. Turns out that was mostly noise; the “tell” is an executive with insufficient personnel knowledge asking for a budget spreadsheet. Earlier this year, a manager at one of my clients commented offhand that he had to prepare a budget breakdown for an executive that nobody on the team had ever heard of. I sighed, and smiled wistfully, and told him that it had been nice working with him. When he asked me what I meant, I shrugged and said “that executive is going to have all of the contractors fired. In my experience, it takes”–waaaiit for iiiit–“about six weeks.” This time I was watching the calendar carefully, and I called it exactly to the day.

Okay, So Spidey Senses Are Neat, But Can You Use Them In Anger?

Yes.

Specifically, the question I am putting in your mouth here is whether or not you can use this pattern recognition skill actively and aggressively, not just defensively. The answer is most definitely yes.

You can use it to hunt tigers.

A couple years ago I was working at a company that handled some sensitive data. I’m used to playing things fast and loose, by which I mean empowering team members and requiring them to be responsible. Unfortunately, we had a sysadmin who didn’t want anybody touching anything for fear of accidentally exposing our production data. He knew his stuff and I respected him, but our approaches to development were worlds apart when I first came on board, and part of us working out our kinks was having some splendid arguments about silly little things like “being able to do my job” and such. You know, trivia.

I remember we had a problem on our production database server that was just beyond bizarre. We had a fairly intensive query that we had been optimizing. A typical query returning a few hundred records would take 10 seconds, which we optimized and got down to half a second. The worst-case queries would return 10 or 20,000 records and would take 90 seconds or more. We optimized those and got them down to 2 seconds. Things looked really good. Except… well, every thirty minutes or so, the queries would take 30 seconds to run. It didn’t matter if they were worst-case queries, or typical ones, or a mixture; the database would just go away for 30 seconds and all the queries would wait before suddenly coming back all at once.

What I desperately wanted to do was log into the production server and watch it run. I knew our sysadmin was absolutely freaked out by the very thought of this because, well, I asked him, and he absolutely freaked out. So I checked everything I could in the code again. Then double-checked. Then triple-checked. The code was fine. There HAD to be something weird going on on the server.

Our sysadmin wasn’t totally unreasonable, he just absolutely refused to compromise the safety of our data. This is a good trait to have in a sysadmin! But it was early days for us working together, and we hadn’t quite learned how to do it. Work together, I mean. He kept asking me, “Tell me what you want to know about the server, and I’ll tell you.” And I kept responding by holding up my hands and saying “I don’t know. I’ll know it when I see it, but I won’t know it until I see it.”

Months later we would work out how to work together effectively, but at that point in time it literally took the intervention of a Vice President to work things out. The proposed solution was laughably simple. To the sysadmin, he said “do you see any reason Dave can’t watch over your shoulder and tell you what to type? He never touches the keyboard, and you have veto power over him looking into sensitive data.”

The sysadmin grumbled that this would be okay, but that he was sure it would be a total waste of time.

We sat down–well, he sat down. I was literally forbidden to be within arm’s length of the desk. I asked him to start looking around the server. Logfiles, running processes, network I/O, database load. As we were looking at running processes, I noticed that the database was running a reverse DNS lookup on an inbound query. I also knew that, for security purposes, none of our webservers had reverse DNS lookups enabled.

“Hey, how long is the timeout if reverse DNS fails?”

The sysadmin stared at the screen for a long moment. I couldn’t tell if he was embarrassed, or angry, but I could see that we had just seen what we’d come to see, and he was piecing together all of the implications in his head.

Finally, all the implications came together and he said, all at once: “Thirty seconds, there’s the query delay. And when it fails, it caches for 30 minutes, so there’s the problem frequency. And reverse DNS shouldn’t even be enabled on the database. Hang on, let me turn it off.”

Total elapsed time, from the time I walked out of the VP’s office with the sysadmin, to the time I returned to tell him we had found and fixed the bug?

Four minutes.

Wow. Can You Ever Use It Defensively And Offensively At The Same Time?

In theory, yes. In practice I’ve only ever seen it done once.

Here’s the theory: if you see that ripple in the grass a long, long way off, but you can’t change your course, you know a tiger attack is coming. Tigers rely on the element of surprise, but you have time to prepare. How much time depends on how far away you saw the ripple. So you try to pick where you’ll make your stand, and you try to bolster your defenses, and when it becomes clear that you can’t avoid the tiger, you… relax and let it happen. As the blur of black and orange streaks up at you from the grass, you can learn a lot about a tiger in a few milliseconds if your life depends on it, and in those milliseconds, you can discover that tigers are often quite surprised by having their ambush turned into a deft counterattack.

That’s the theory, anyway. In practice… well, remember the first story I told, about Rodney? I called the ripple six weeks before the tiger attack. Rodney didn’t believe me at first, but as the weeks went by, other signs began to become clear. I don’t remember what finally convinced him–I think there was a planning meeting on the calendar, and I told Rodney that if I was right, the investor would cancel it, because it made no sense to waste time making plans with somebody you’re going to fire. Sure enough, the investor canceled the meeting at the last minute for “personal reasons”. More importantly, after a year of working with the investor, we knew he was very organized, and always moved appointments instead of canceling them. This time, the investor didn’t set a date to reschedule. When Rodney asked when would be a good time to reschedule, the investor said “let’s talk about that after next week.”

“Next week” was six weeks after I’d said he had about six weeks left.

Rodney went to his weekly meeting with the investor, calm and ready for another normal day of meetings, but also on the lookout for anything out of the ordinary. And there it was: this time there was an extra person in the room–the CFO. Rodney knew from corporate experience that he was there to be a witness… and that meant that this was going to be his exit interview. He sat down, and they sprang what they thought was going to be an ambush.

As the blur of black and orange streaks up at you from the grass, you can learn a lot about a tiger in a few milliseconds if your life depends on it…

I don’t know what happened in that room that day, but Rodney walked out of there smiling, and still very much the President of the company. Oh, they still wanted him gone, but instead of kicking him to the curb as planned, they ended up timidly asking him what terms he would like for them to come to some sort of arrangement regarding that…?

Rodney met the tiger… and then the tiger met Rodney.

But… that part of the story isn’t my story to tell. Which is why I sat him down and made him promise to tell the story on his blog someday soon.

“Dave, calm down. I am not going to get fired.”

Huh. I guess he was right.

Loyalty and Your Professional Network

I still want to talk about what “good” loyalty looks like, but we need to get the medicine part out of the way first. This post is the first in a three-part series about that medicine.

Emergency Action To Take Immediately If You Are Comfortable At Your Job

Perhaps complacent might be a better word here. I’m not going to talk about jobhunting or boundaries or even loyalty today–well, that’s not true. I’m going to touch on all of them a bit. And all of this will be advice to invest loyalty in your own self first, and to be honest, I think this will make you more valuable to your employer.

So let’s start by talking about you quitting your job.

Know Where The Emergency Exits Are

How on earth does talking about quitting make you more valuable to your employer?

There are two kinds of people who don’t worry about burning to death inside a movie theater: People who don’t believe theaters can burn, and people who know where the emergency exits are.

If you know where the emergency exit is for your current employment, you no longer have to worry about losing your job. You can focus on the task at hand and be productive, even if the company is facing tough times. Managers don’t like me much when they try to “sell the dream” because I don’t buy it. But on the day when the main investor pulls out or the biggest customer switches to a competitor and all the employees are milling about in a blind panic, managers love me. Why? Because I don’t buy the nightmare, either. I can smell smoke in a theater and remain calm, because I know where the exits are.

Important loyalty note: This is not the same thing as watching the exits. I’m not saying you should try to always have an alternate job offer waiting. I’m just saying you should know what you’re going to do if you lose your job.

And let me be a bit more specific: the thing you are going to do if you lose your job is this: draw on your professional network.

And yeah, that means you’re going to need to have one first.

Build Your Professional Network

I think this might be the single most important piece of career advice I can ever give anyone: Have a professional network. When Evans & Sutherland laid me off, I didn’t even know what a professional network was. But once I started building mine, my fear of ever being unemployed vanished. Why? Well, because being unemployed vanished. I think I spent about six weeks jobhunting once in 2005, but not counting that fluke, the longest I’ve ever been unemployed since 2001 is ten days. The shortest? Four hours. And that’s only counting the gigs I’ve left cold, without anything else already lined up. I mean I walked into work, found out I was unemployed, and by lunchtime I had a job offer to start the next day.

As a result, one of the weird things that loyalty means to me is that I never jobhunt when I’m working for a client, even when I know my contract is almost up. It’s just not worth the headache to me, and I have absolutely no fear of walking out of work with no idea where my next paycheck will come from. Because I know it is coming.

I credit this attitude entirely to my professional network.

What Exactly IS A Professional Network?

A professional network is simply this: a list of people who know you that you can call when your chips are down. To build it, you make friends with people outside your company. You help people. You tweet funny things. You join organizations. You take old coworkers to lunch. You contribute time and effort to your professional community. Then, when you need a safety net, you let those people know you’re available. Since they know who you are, and what jobs you’d be a good fit for, you suddenly have 50 or 100 or 1000 pairs of eyes looking for your next job for you. All you have to do is get the word out.

A professional network is NOT a linkedin profile. That can certainly be part of it, mind you; linkedin is pretty popular right now and I recommend keeping your profile current. Just make sure that whenever you’re using the site, that you’re not thinking about “your profile”, but instead about the people in it. They are your safety net. LinkedIn is just a tool to reach them.

Build It BEFORE You Need It (This Means RIGHT NOW)

You cannot tie a net and fish with it at the same time. Your network is a group of people who know you well enough that you can ask small favors of them. You earn the right to those favors by investing time in those people–by sharing time with them as mentioned above. If you meet a stranger and ask them if they know who’s hiring, you’re just a stranger who needs something. But if you’ve met them before or had lunch or contributed code to their project, you’re not a stranger anymore. You’re a member of their “loose acquantances” tribe. And people love helping each other out in that tribe.

I cannot stress this enough: If you are employed, you need to be investing time outside of work in other people.

The time to build your professional network is before you need it. There is only “right now” and “too late”.

But What If I Need It Now? (I’m Asking For A Friend…)

Okay, so… let’s say you didn’t take this advice or, like me in 2002, didn’t hear the advice until it was too late. First, you need to embrace the bad news: You cannot tie a net and fish with it at the same time. This will not stop being a thing that is true, no matter how bad you want it to. You have to embrace it. You’re going to have to fish without a net, which means jobhunting the old ways you’ve used before, without a professional network. But more importantly, it also means you have to spend time tying your nets while you’re starving.

Do lunches with people. Contribute to projects. Attend professional meetups. Make friends. Here are three rules of thumb I use, but they all boil down to the same thing: when you’re meeting people, decide whether you are fishing or tying nets, and do only that and not the other.

  • In a professional social setting, I tie nets. I focus on contributing rather than jobhunting. It’s actually relaxing and more fun to stop worrying about the jobhunt for a little while, which in turn makes me more fun to be around. So if I’m in a user group, I’ll speak up if I can help someone. Sometimes I know a clever answer, but people appreciate it even more when I offer to pitch in on their project and help. In a 1-on-1 lunch, I ask about the other person and what they’re working on. Even if I don’t have great insights into their situation, just listening to another human being is a great way to connect with them–and letting them talk it out often provides them with their own answer. If someone has come to lunch with me, and they’re worried about a tricky problem at work, and I blather on about myself and how I need a job for an hour, at best I may give them a distraction but at worst I will annoy them with my problems when they have their own. If I want to tie nets, I have to tie nets. I cannot try to fish.
  • The exception: when you’re tying nets with someone, you should mention that you know how to fish! I DO tell people whenever I’m looking for work, but I try to be casual about it. In a big meetup I’ll introduce myself to the group and mention that I’m available, and that’s it. In a first-time 1-on-1 lunch, I don’t worry about it, because one of the first questions we’re going to ask each other is “So, where do you work?” No need to bring it up special. When I tell them I’m between clients, they’ll often ask followup questions about what I’m good at, and I’m happy to talk about that, but I try not to let it turn into an interview. Even if they say “Oh? We’re hiring, you should apply!” I will respond with “Really? Cool! What’s your company like? What are you working on? What do you like about it?” and turn the conversation back to finding ways to be helpful to them. I have to remind myself: “I am not fishing, I am tying nets”. Oh, don’t worry–I won’t let them leave without asking them who I should talk to at their company for more information! But I always try to remember that my goal for the lunch is not to get a job. My goal is to have this person want to have lunch with me again sometime. I am not fishing. I am tying nets.
  • Lastly, if you are fishing, fish! Don’t do this instead of jobhunting. Building your network will pay off huge in the long run, but there’s no guarantee of any payoff in the short term. When you’re unemployed, your full-time job is to get a job. And just like you should continue to build your network by doing things outside of work when you’re working, you should build your network by doing things outside of jobhunting when you’re unemployed. Time spent building your professional network doesn’t count towards the time you need to spend jobhunting.

I have spent a decade building and maintaining a professional network that I feel very comfortable with, so now my jobhunting looks a LOT like networking. But it’s fishing, not tying nets. I call people and say “Hey, my contract just ran out, wanna grab lunch?” They know I’m gonna chat and be friendly and ask about their kids, but they also know I’m gonna hit them with fishing questions, asking them about who’s managing who and what teams are working on what. But they’re okay with that, because we’re friends, and they want to see me get back on my feet.

How To Use Your Network

A lot of people talk about building a professional network, but I very rarely hear people talk about how to USE that network when you need it. Probably because it’s rare to find a jobhunter that HAS a network to begin with, but I think it’s also true that once you know a bunch of people, you stop thinking of them as “your network” like it’s some foreign thing. Once you figure that out, you realize that you don’t “use” them. You don’t need an instruction manual to know how to talk to your acquaintances.

Actually, wait. There is a mistake I made early on that made it harder on myself than it needed to be. I would call or email people and ask them if their company was hiring. The tech recession was hitting Utah in the early 00’s, so the answer was always no, and that was the end of the conversation. I had to learn the hard way to stop asking yes-or-no questions. But then I made another mistake: I would ask them who was hiring, and they would always say they didn’t know anyone.

I had to learn to ask questions that would get people talking.

Here’s my secret weapon: I just ask people who they know that’s working with a technology that interests me. “Who do you know that’s working with HIPPA?” “Who do you know that’s doing credit card payments?” “Who do you know that programs in ruby?”

That may seem silly and a bit stupid, but I kid you not: I literally turned an exit interview into a job referral with that last question. I was subcontracting for a software-for-hire shop, and the client I was assigned to pulled the plug unexpectedly. It was a tight economy, and the shop didn’t have anything else for me to work on, so they had to cut me loose. My manager was a good man, and he felt bad that he had to let me go with no advance warning. At the end of the conversation, he glumly said, “I know there’s probably nothing I can do to make this easier, but I have to ask, is there anything I can do to help?”

“Actually, yes,” I said immediately. “Who do you know in town that’s programming in ruby?”

He thought for a moment, and then started listing names of companies. I already had a pen in hand, and I started writing. After each one I’d ask “what do they do?” and “who do you know there?” I never asked if they were hiring. I would occasionally ask “do you think I could talk with that person about who else in town is working in ruby?” He listed maybe a dozen companies. But even better, halfway through the list he said “You know, I’m friends with the CTO at that company. I’ll introduce you.”

The introduction included a heartfelt recommendation, which got me a lunch meeting with the CTO, which got me an interview with the team, which got me a place to report for work the following Monday. Even though they weren’t hiring.

The trick to drawing on your network is don’t haul on it. You’ve made friends with these people. Just be human, and get them talking. (And it doesn’t hurt to work for good managers who try to look out for their people.)

That’s It, Really

No, seriously. I’ve got two more posts to talk about “the medicine”, but if you only read one, this is it.

Go tie some nets. 🙂

Loyalty and the Headsman

When I wrote Loyalty and Layoffs, I knew it was mostly a post about what loyalty shouldn’t be, and I wanted to follow it with a post about what loyalty should be at a company. But then Lucy over at silverlining13.com wrote this reply:

“I know certain management that had to tell me were quite sorry it had come to this, but I was one of over 120 others that had to be told that day. I actually felt for the managers who had the unpleasant task of telling everyone and I even said ‘I don’t envy you right now, it must be the worst part of your job’.”

— Lucy at silverlining13.com

And I realized that loyalty, and boundaries, and jobhunting, and all the other things I wanted to follow up with needed to take a back seat for a couple of posts. I ended my last post with the words “Get medicine. Start saving yourself.” My next post is about the medicine; right now I want to talk about the Headsman.

First I want to say that I’ve been in Lucy’s shoes. (They pinch; I’m not cut out for heels.) I have actually told two managers that I felt worse for them than I felt for myself.

I can’t advise Lucy on whether or not saying that was good or bad. I know the first time I said it, I was so invested in the company and the team that I really did feel like I was apologizing to the headsman for making him swing the axe on my own neck. It didn’t occur to me for years that this was not a healthy approach to my own self-interest.

The second time, though, was just a few years ago. I’d been freelancing for years by that time, and I’d accepted a full-time job working with an old friend. While I was there, I worked hard and became good friends with our manager, but I never stopped working on my safety net. I didn’t know where I would go if I got laid off, but I knew I had a hundred doors to knock on, so I was utterly unafraid of that prospect. When the day came that half our team got laid off, and I got included in the list, I gave my manager a sincere hug and said “It’s been a great run. I’m not happy to be going, but don’t worry about me. Today’s going to suck a lot more for you than for me. I’ll have another job before quitting time today. And tomorrow you have to start fishing everybody’s morale out of the gutter.”

So, Lucy, I don’t know if your loyalty was healthy or unhealthy, but the affection you had for your coworkers and managers is beautiful. That’s the right kind of loyalty. We love the people we work with, and losing them triggers real grief. I think that’s healthy and wonderful and utterly human.

I can’t bring myself to call that wrong.

Next week I’ll talk about the medicine.

Loyalty and Layoffs

I wanna talk to the fulltimers in the audience today. Huddle up close, gang. This is going to be a tough one. To paraphrase my close personal friend Blaise Pascal, “I write you a long letter because I’m too damn angry to write you a short one.”

But first, let’s start with a happy memory.

DATELINE: Summer 2002

I was happy on the DigiStar team at Evans & Sutherland. I was working at one of the premier graphics companies in the world. Does your team have its own movie theater? We had our own frickin’ planetarium. My teammates were brilliant and great to work with. I’d been promised a fat bonus–about a month’s pay–if I could finish the core of the control system UI in under 12 months, and I was a couple months ahead of schedule–in fact I pretty much already had it in the bag if you didn’t count UI polish and the odd bug or two turned up by QA. Plus did I mention we had our own frickin’ planetarium?

I logged into my computer that morning and there was a message from Jim Oyler, President and CEO, telling all of us that though we were losing still more “team members” today, that he knew he could count on “the rest of the family” to be brave and take up the slack. I was bummed to find out that the company had let more people go, but I was really happy at my job and sure, I’d be glad to help Jim Oyler, President and CEO, take up the slack.

“Hey Dave,” came the voice of Neil, my boss’ boss, from the entrance to my cubicle. “Can I talk to you in the conference room?”

“Sure–” I said, as I turned around and spied the huge stack of papers in Neil’s hand, the topmost sheet of which was boldly titled Exit Checklist.

“Aw, crap, Neil! I’m getting laid off?!?” I blurted out.

We were in a cube farm. Neil had the good grace to look around sheepishly, and in a low voice said, “Yeah. I’m sorry, man. Can we go talk in the conference room?”

“Dang it…” I said, more quietly. “This was the best job I’ve ever had. Yeah, let’s go.”

So just like that, out of the blue, the best job I’d ever had was over with no warning. Neil started the exit interview with “This came down from over my head. I can’t tell you how upset I am about this. Terence (Neil’s boss, our VP) specifically named you because your piece is finished.”

I joked about failing “to commit job security in the code”. Neil laughed, and as we went through the checklist it started to hit me how much I was going to miss everyone on the team. I started on the DigiStar team on Monday, September 10th, 2001–and we had all bonded the next morning as we watched the 9/11 attacks play out on the news. I don’t know if these people were “family” but they were close to me.

The blow was softened by my getting a ridiculous severance package–all my vacation days paid out in cash before I walked out the door that day, plus six weeks of severance pay–all after just 18 months at the company! We’d had 2 rounds of layoffs before in my stint there, and I knew the policy was 1 week of severance per year of employment, so I wasn’t about to argue. As I walked back to my desk to clean it out, my team lead stopped by to tell me that I had her to thank for the severance package.

“I told them they had to pay you your bonus or I’d quit. Legal said that we can’t give a performance bonus and lay someone off at the same time. I told them that you getting laid off was bullshit in the first place, and they agreed to round up your second year and convert your bonus into a month’s extra severance.”

Janet was an amazing team lead. She was a wicked smart programmer but also had a killer instinct for office politics. (In fact, she told me on my first day to do my best to “stay off Terence’s radar”, because he had a nasty habit of laying off contractors and new people.) She also had my psyche dialed in perfectly, and broke me out of my impostor syndrome in my first (and, it would turn out, only) performance review by saying: “The thing that makes you unique on this team is that more than anybody else here you really love this shit. I mean, I go home and read a book, and I can tell you go home and write more code. You are the only employee I have ever managed that I think could get away with giving me a snow job. You could straight up tell me you spent the last two weeks dewarbling the frobblebats in the compiler and I would believe you.”

“Seriously?” I asked.

“Seriously. But don’t ever try it or I will fire your ass.”

I loved Janet, but I also feared her. I also respected her and would go to the mat for her in a heartbeat. I didn’t understand for years later that this was because she regularly went to the mat for her teammates, and when she did, she almost always won. I was too young to really understand how much political capital Janet had just laid on the line for me–a soon-to-be ex-employee that she would probably never see again–but even still I was deeply moved by the gesture.

They could have frogmarched me out of the building, given me squat, and told me I had to like it. Instead, they gave me generous severance, outplacement counseling, free admission to a really good jobhunting seminar, and best of all they let me take all day to clean out my desk and say my goodbyes. I took them up on the offer. It was 4:45pm when I finally walked out the door to go pick up my last check from HR. They had to fish it out of the mail drop because everyone else in the layoff had cleared out before noon, so HR had assumed I must not have come in to work that day and probably didn’t know I’d been laid off.

It didn’t really hit me for about a week that I’d just been screwed out of the best job I’d ever had by an accountant who couldn’t keep the company books straight and an executive team who couldn’t steer the company in any straight direction, let alone a viable one. And that I’d sat at my desk and silently eaten up every word of propaganda spewed out of the mouth of Jim Oyler, President and CEO, about being brave, taking up the slack, and most sickening of all, of “being a family”.

Meanwhile, Back in the Present…

Fast forward to today. A former client of mine held an all-hands meeting today to announce that they had lost their primary revenue stream and that the business was no longer a going concern. As a result, for all 400+ employees of the company, today would be their last day. There would be no severance package. They would not be receiving their last paycheck today, but at the regular payroll time when the accounting department–which was also now unemployed–could be bothered to get around to it. The company had a “Paid Time Off” policy instead of a vacation policy, which is legalese for “we don’t have to pay out any vacation time when we let you go.” In short, 400 people got told they were out in the cold with nothing more than a creepy speech about being proud of what they’d accomplished. He even asked them to not say bad things about the company in the days ahead because it would cheapen and demean them all.

I really, really want to go off on a tangent about all the bad things I have to say about that company and its top management in particular. It wouldn’t cheapen the fine folks that worked there and believed in the company one whit. But I’m not going to, because believe it or not, I have something much more important to talk about right now.

Most of the (now ex-)employees of my (now very ex-)client are in a blind, terrified scramble right now because they made a critical career mistake: They put their loyalty in the company. They put so much loyalty into the company, in fact, that they stopped nurturing themselves and growing and building their careers as a separate entity apart from the company. This was not entirely their fault; the company aggressively encouraged this. But let me be perfectly clear: that was straight-up pure evil.

Loyalty to a Corporation is SICK.

Being struck from the rolls at Evans & Sutherland out of the blue permanently broke me of any notion of job security, but more importantly it broke me of the concept of loyalty to a corporation. I’d been freelancing on and off for a decade, but after that day I went hardcore.

As a freelancer I occasionally experience friction with the full-time employees over tribal identity issues. I get called a mercenary. I’m told I’m not loyal. They say I’m not a company man, a patriot, a true believer. My point is that it gets made known to me, in many ways and forms, that I may work there, but I am NOT “part of the family”. Well, let’s get two things straight right now:

  1. You’re goddamn right I’m not
  2. And neither are you, you dumb shit

A corporation is not a living creature. It has no soul. It has no heart. It has no feelings. It can neither experience towards you nor enjoy from you even the concept of loyalty. It is a legal fiction, and it exists for one purpose only: to make profit. If you assist in this goal in the long term, your ongoing association with the organization is facilitated. If you detract from it consistently, you will be cut. Family is “where they have to take you in no matter what you’ve done.” A corporation is… well, it’s sort of the exact opposite of this.

Being loyal to a corporation is sick. It is genuine madness.

But Isn’t Loyalty a Good Thing?

Sure it is! Just be careful where you place it.

We Have an Awesome CEO…

No! Bad peon! No career enlightenment for you! The CEO of your company is a paid sociopath. I mean that in the nicest way possible, of course, but it is literally their actual job description to place the interests of a soulless legal fiction over the needs and desires of living, breathing, human beings with actual feelings. He or she probably isn’t inherently evil. But if they can find a way to make the company 100% more profitable by firing you, they have to do it. That is exactly what their job is. They are the chief stewards of an intangible set of legal rules comprising an attempt to get money.

I’ve worked with some genuinely charismatic CEO’s, and it’s hard to not feel loyal to them. And that’s okay! I am totally fine with you being loyal to another person! But seriously, out of everybody at your company, the CEO is your worst possible choice. If they don’t fire you when they should, they can be held liable for incompetence by the board of directors. And well they should! Because the board of directors are the circle of acolytes gathered around the altar of the soulless legal fiction, and if the soulless legal fiction needs your blood to survive, the circle makes sure the CEO doesn’t flinch from the knife.

So before you give your loyalty to a CEO, ask yourself this one critical question: would this person still have my respect and admiration if they fired me?

I’ve only been in that situation once, and I thought about it beforehand, and the answer was yes, and the answer is still yes. I would go back to work for him a heartbeat. Though I’m not sure he’d have me back, come to think of it, because I engineered my own termination at that company… and that wasn’t even in like the top five weirdest things that happened between us.

So, yes. You can be loyal to a CEO. But be loyal to them as a person, not as a position, because the day will come when you have to part ways, and it will break your heart how easy it is for your CEO.

tehviking_theyre_not_gonna_be_at_your_funeral

What About Being Loyal to The Team?

I’m just gonna say it: Nope.

Surprised? Haven’t you been listening?

Your team is just another organization, a concept, an ideogram on an org chart. The Team is just a story you tell yourself about the collection of people that work in the same room as you. It’s just another fiction. Ask yourself this question: if the CEO replaced everyone on The Team with incompetent nephews (important: their incompetent nephews, not yours; I can see how that would complicate the issue), would your loyalty to The Team remain undimmed when the servers go down at 11pm on a Friday night?

The people that work in the same room as you are real. It is totally okay to love them. In fact, I encourage it! Be loyal to them! Go to the mat for them. But for heaven’s sake, don’t be loyal to “The Team”.

For the buzzword bingo players out there: you are “a team player” if you love your teammates and show them love and loyalty. But anybody claiming to have loyalty to “The Team” is engaging in office politics.

What About Loyalty to the Project?

Um. Let me get back to you on this one. I’m on a good rant here and I want to say no but my pants will just outright burst into flames if I do.

I fall in love with projects. My wife says I get married to them. For hundreds upon hundreds of nights she has known the loneliness of an empty bed as I toil the night away on the latest hot young project to catch my eye, so I guess she’s qualified to make that judgment.

You know, I was about to take this all the way to an adultery metaphor but I’m going to stop here instead and just say it’s probably bad for your relationship. I would tell you not to fall in love with a project but I’ve tried six times and I just can’t do it without making dreamy eyes.

But again, that’s love. Not loyalty. I might discount my rates to work on a really amazing project, but would I charge less because I felt I owed it to the project? Not a cent.

Be Loyal to One Person: You.

I guess I should say “be loyal to one person at your work” because it’s totally fine to be loyal to your family, your friends, your neighbors, your favorite sportsball team, your fellow citizens, and a whole host of other people that for one reason or another, you love.

Be loyal to yourself. Or, if you prefer, be loyal to yourself first. Show your strongest allegiance there. I don’t mean conceit, and I don’t mean selfishness, and I don’t mean be a jerk to other people. You cannot know or show true love until you truly love–and by this I mean proactively care for–yourself.

So if the company wants you to work nights and weekends, you need to ask yourself right now if your job is worth it. If the answer is yes, great! Choose to work late. If it’s not, choose to stand up, grab your coat, and clock out. You’ll either still have a job in the morning, or you’ll have stopped putting off that hunt for a better job that you’ve been cheating yourself out of.

And if you’re not sure? If you’re sitting on the bubble, trying to decide? That little L-word is going to pop up. And when it does? You squash it. Loyalty to a corporation is madness, and any CEO worth their salt will try to get you to buy into it for exactly as long as it suits their needs to keep you around.

Own Your Career. Because This WILL Happen To You.

Your career is yours and yours alone, whether you want it to be or not. The sooner you own it, and take responsibility for all of the consequences of said ownership, the sooner you will find yourself creating your own safety from the corporate predators who pillage and destroy in service to the soulless legal fiction they call your master. Not their master, by the way. Yours.

Anybody who wants to relieve you of the hassles and responsibilities of owning your own career wants to shackle you to an oar. They want the exact opposite of what’s good for you. They want you to toil away blissfully for years–which you will do!–until one day the drumbeat stops. You’ll step out into the sun, blinking tears away in the brightness, and realize that the deck crew is gone, they’ve taken all the rations, pirates are attacking, the boat is sinking, and all you have to show for the last three years of rowing is a pair of sackcloth britches and a piece of rope to hold them up. They didn’t even let you take the time off to get your MCOR (Microciscoware Certified Oar Rower) so you don’t even have that to put on your resume. And also the piece of rope is technically company property so you need to leave that on the boat before you throw yourself to the sharks.

In Summary: PLEASE WAKE UP.

I’d like to think that if the soulless legal fiction at the heart of your company suddenly became sentient, it would also immediately grow a conscience and feel terrible about all the things it’s done and not just automatically be utterly evil.

But it’s not sentient, and it’s not even necessarily evil–as long as its business model isn’t predatory, immoral or illegal. It’s just a collection of rules put down on paper. It is a thing. And not even a physical thing. A real thing, yes, but not a tangible one. Just a logical construct, fit only for one purpose: acquiring profit.

Being loyal to that is mere insanity. But being loyal to that over yourself is sickness.

Please, choose right now: Get medicine. Own your self, and your career.

Start saving yourself.

Remember What’s Important

One day, in 1999, I was furious at my computer. On that day I received some of the best programming advice I’ve ever gotten, courtesy of my good friend SamWibatt: “Dude. If you’re not having fun, you’re doing it wrong.” This advice has stuck with me through the years, tried and true. This week, however, I found a law that trumps it:

Remember What’s Important.

Last Tuesday I kissed my wife blearily awake at 6am as I prepared to start my day programming with my remote team, two time zones ahead and already starting their day at 8am. I asked her if she felt like getting me breakfast and she said sure. She pulled on a sweat top, left on her pajama bottoms, and headed into town to buy breakfast from a drive-through.

An hour later my phone rang. “Mister Brady? This is Officer Powell with the Lehi City Police Department. Your wife’s been in a serious accident. She’s okay but she may have hurt her arm. Her car is totaled and we’re going to have to tow it.”

I reacted about how you might think. “Is she okay?” “She’s conscious and alert, and seems okay except for her arm. Paramedics are looking at her right now. But we’re going to have to tow your car.”

“Oh, okay, so I need to come get her?”

“No, the paramedics are going to take her to the hospital, so–”

“Wait, so is she okay?”

Officer Powell had the wisdom to realize that I was going into shock and had started looping. He also knew just how to calm me down. “Here, let me put her on the phone.”

“Hi sweetie,” she said. “I think I broke my arm.”

I guess I *was* still in shock. “But… you’re okay?”

“Yeah. My arm hurts.”

I got back on with Officer Powell. “Do I need to come down there?” “Yes, I think we have your dog*.”

And that began the worst day I’ve had in 16 years of marriage to the finest woman I have ever met.

I’ll spare you the minute-by-minute details, but the short answer is that Liz was driving very sleepy. She was traveling on a highway at 50MPH, saw the light turn red, did not react in time, and barrelled into cross traffic at very nearly full speed. She was traveling westbound, and hit the engine compartment of a northbound vehicle. The airbag went off and saved her life. She knocked that car 45 degrees to the left and sent them sailing through oncoming traffic, miraculously reaching the far corner unscathed and coming to a stop at the street pole. The impact had spun her 90 degrees to the right, straight into oncoming traffic, and she collided head-on with a southbound vehicle entering the intersection. The now deflated airbag was of little use and she shattered her forearm against the steering wheel.

Liz Nightstick Fracture of Left Ulna Against Steering Wheel

All four other victims were uninjured. Our car was totaled and uninsured for collision damage (it was a 2002 Toyota Corolla, not worth covering) but we had full comprehensive insurance which meant Liz’s medical care would be covered. Our State Farm (they are awesome) insurance agent, Sarah Williams (who is even more awesome), notified the other parties that there would be no disputation of fault, that their medical and auto repair bills would be covered, and that they would help the other drivers with anything should their insurance not be cooperative. Because there was no disputation of fault, the case officer, Officer Bateman, did not write Liz a ticket since in his judgment everything was settled fault-wise and given his assessment of injuries, karma had done the justice system’s job. I had a chance to talk with him at length later in the process, and I have to say that he’s the kind of policeman that gives cops everywhere a good name.

The End of Liz's Silver Corolla

50MPH collision followed by a head-on? One broken arm and nobody else hurt? One lost junker car? We are nothing but grateful.

Crushed Frontend - Note headlight (and rest of engine block) Pushed Back a foot from the bumper it should have been aligned with

I took most of last week off work to be a full-time stay-at-home husband and nursemaid. Church members organized a relief party to bring us dinner each night to take at least that piece of stress off of us. Liz had surgery on Friday and now has a 6″ or 7″ titanium plate bolted to her ulna to hold it together while it heals. It’s a permanent plate; they won’t take it back out unless Liz has trouble with it causing pain years down the line.

It’s been a week. Anxiety is now my constant companion. But I can live with that Liz is fine and recovering quickly. I am nothing but grateful.

Sorry if this seems like a no-code kind of post, but it IS related. Remember what’s important. All this programming crap is just numbers and logic and blinky lights on a computer. Narrowly avoiding the loss of your soulmate sort of puts all those project deadlines and looming schedules and tricky technical debt problems so far onto the back burner that I actually heard them fall down behind the stove.

Which is where they belong.

* P.S. For you animal lovers, yes this is important too: Bella is fine. 🙂 She was super freaked-out and excited for a few days but she was laying on the back seat, so all she did was hit the backs of the front seats and then the floor. She was shaken up, but not even tender when examined.

Stop SOPA: An Open Letter

Copy of a letter I have sent to my representative. Similar letters have also been sent to both of my senators.

Dear Representative Chaffetz,

When you campaigned in 2008, you promised to go to Congress and fight for me. As your constituent, I am writing you to ask you to PLEASE do everything in your power to fight SOPA and PIPA.

I create content for the web, and I go out of my way to ensure that everything I create is legitimate, original and worthwhile. I have had that content pirated, and I feel firsthand the frustration of seeing others use and profit from my stolen efforts and being unable to find effective recourse against these people.

I want good anti-piracy legislation. We NEED good anti-piracy legislation. But SOPA and PIPA are NOT good legislation. While I appreciate the effort put into helping web-based businesspeople like myself gain speedy recourse against pirates–and this should be a part of good anti-piracy legislation–I am unsure if the laws will help a small business like myself, and I am genuinely terrified of the breadth and ease with which this recourse may be misapplied to legitimate content created under fair use.

I know this is a tricky issue. Balancing speedy recourse against infringement versus appropriate defense against censorship of free speech will require some clear thinking, tough negotiating, and hard fighting. But that’s what we elected you for.

Please give us good anti-piracy legislation. And please, do it by first stopping SOPA and PIPA.

Thank you,

David Brady
President, Shiny Systems LLC, and active Utah District 3 voter

Two Questions

Recently I was talking with a friend about coaching and specifically the act of helping younger developers improve themselves. I had a sort of microepiphany when I realized that I’ve been improving myself for over two decades with the same pair of questions, originally unconsciously and only recently in my active consciousness. The next time you do something you want to get better at, ask yourself these two questions:

What about this makes me feel good? This is a VERY specific question, and it is NOT “what do I like about this?”. It’s often hard to answer. You are not allowed to say “I don’t know”, and you are not allowed to settle for answering the much easier question “what about this do I like?”—although that can be a great guide into discovering what it is that makes you feel good. If you wrote an elegant passage of code, or did something clever, or shipped a really nasty hack but saved the company (thus buying them time to refactor your nasty hack) by shipping on time, that’s what you like. But go beyond this. What about that makes you feel good? Did it make you feel smart? Did it make you feel artistic? Did it make you feel like a hero? Did it make you feel like somehow, against all the odds, you might just be starting to “get it” as a programmer?

Take a moment and really just let yourself feel good about what you did. If you can find that and tap into it, you have just found a well inside yourself that you will return to again and again in the future. Congratulations, you’ve just found the reason you’re going to spend the rest of your life getting better at this.

If you can’t answer this question, don’t sweat it. But don’t be surprised if your life ends up going a different direction. Find something else that makes you feel good, and do that instead.

What about this could I do better? Most days, you’ll think of something right off. There was some duplication, or a lack of symmetry in the code, or your variable names were kind of awkward.

Other days it’s a bit harder. “Writing this bit felt a bit grindy, like I was pushing out lots of boilerplate. I don’t see how to fix it, but does it really have to hurt this much?”

The best days are the days when you try and try and just can’t answer it. Important: this doesn’t mean you did something perfect. Far from it, and far better: it means you’ve actually managed to see your blind spot. “This”, your brain is telling you, “this empty space, here… is where more knowledge will fit.” Those are the days that herald “getting it” on a whole new level.

So, them’s my questions for you. What made you feel good? What could do better?

Felt any good or done any better recently?