Tales from the jar side: A Big Sale and The Real Win, GIDS 2021, and the Basecamp fiasco

I've never been happier to be a one-person company.

Greetings jarheads*! Welcome to Tales from the jar side, the Kousen IT newsletter, for the week of April 25 - May 2, 2021. This week I taught O’Reilly classes in Mockito and the Hamcrest Matchers and Kotlin Fundamentals, and NFJS Virtual Workshops on JUnit 5 and Latest Features in Java. I also gave several presentations at the GIDS Live 2021 conference. All in all, a very busy week.

*Linked is to last week’s newsletter, where we adopted the term jarhead for readers of this newsletter.

Here’s a subscribe button in case you’d like to become one of the brilliant, good-looking, sophisticated jarheads like the rest of us.

Big Sale, And An Excerpt

My new book, Help Your Boss Help You, is on sale starting Tuesday, May 4th and ending Friday, May 14th. From 10:30 am EDT, if you use the coupon code Pack2021 you get 50% (!) off the list price, which is already pretty low to begin with.

That’s HALF OFF. I have a degree in Mathematics from MIT, so you can trust me. Just ignore the fact that on an exam I multiplied 100 times 100 and got 1000. Twice.

(The writer in me winces when I end a sentence in a preposition like that. To balance that feeling, I’m always reminded of the Winston Churchill quote, who, when criticized for ending a sentence in a preposition, supposedly said, “That is the sort of arrant pedantry up with which I will not put.” So I’m going with it.

And yeah, he may or may not have said it, but I’m going with that, too.

Also, my rule about ending sentences with prepositions is, if you can drop the preposition and the sentence still works, do it. That means I prefer “where are you?” to “where are you at?” but ending with “to begin with” like I did above doesn’t bother me.)

The book is still in beta, but all the chapters are there. I’m doing some revising and editing this week, and I still need to add the Acknowledgements section, but pretty much everything you need is there. Of course, whenever you buy a beta book from the Pragmatic Bookshelf, you will receive an email whenever any updates happen as well.

Let me give you a brief excerpt from the last chapter, about The Real Win:

There's an old saying that goes, "even if you win the rat race, you're still a rat."

One of the main theses of this book is that conflict with your manager is inevitable, because you want different things. The good news, however, is that because you are not directly competing, it is possible to find resolutions to those conflicts that satisfy both sides in the long run.

That doesn't work if every conflict between you and your manager has to have a winner and a loser. It is all too easy in the business world to think of conflicts that way. Since a good relationship with your direct manager impacts your success in the organization in many ways, if you get into a battle like that with your manager, even when you win, you lose.

Many people prefer to avoid conflict, and conflict with someone who has power over your career is scary. That's why when most professionals get into a conflict with their manager, they prefer to avoid it as long as possible, and eventually decide to leave when the disconnect becomes too large. The strategy described in [an earlier chapter] is an attempt to give you an approach that avoids going to either extreme, that preserves your own self-respect, while building a constructive loyalty relationship that will benefit you in the long run.

The question is, if you're not trying to "win" a particular conflict, what are you trying to achieve? What's the real goal?

Put simply, what you really want is to be heard.

Everyone has a strong desire to be listened to and understood, and when people feel they are not being heard, they get frustrated and angry. This is one of the biggest contributors to conflict in any relationship, and arguably in society as a whole.

Everything in this book about building a professional relationship with your boss is about accomplishing that goal. Throughout your career, you will be continually evaluating any manager you have, and the central mission in each case is the same: you need them to take your goals and priorities into account when they make decisions that affect your career.

Once you know that your manager hears you and understands you, it's a lot easier to forgive decisions that fit their agenda and not yours. Likewise, when they know you hear them as well, they will place more value on the relationship, and will want to keep you around and keep you happy.

That's the real win: being heard and understood. Everything in this book is about achieving that goal on both sides of the employee/managerial relationship. Hopefully, the advice given here will help you reach that goal.

If you read the book and have any feedback to give, please let me know. I’m still editing, so anything you say still has a chance to affect the final version of the book.

GIDS Live 2021

I really enjoy the GIDS conference. It’s well-run by friendly people and well-attended by eager developers. The conference is held each year in Bangalore, though of course the last two have been virtual. It’s the reason, however, that I traveled to India in 2018 and 2019.

As you can see, I’ve been giving the talk that HYBHY is based on for a while now.

I enjoyed giving my talks, and it was very kind of the organizers to schedule me for 10:30 pm and 11:30 pm times, which corresponded to 8 am and 9 am in India. Still, the fact that I had early morning classes all week made for a challenging schedule. I don’t mind turning my sleep schedule around either way, but burning the candle at both ends was tough.

My talks went reasonably well. My plan to organize my Kotlin talk around “levels of surprise” to Java developers didn’t really work. My code examples were fine, and the attendees seemed engaged, but in order to present it in the intended order I needed more time and probably a more Kotlin-experienced audience. I’ll have to think more about that one for the future.

The Modern Android Development talk went better, but (probably by coincidence) I hit a rather quiet group who didn’t give me much feedback, so it was hard to judge how it went over. I gave them lots of resources for learning Android development, architecture, and so on, and warned them that big changes were coming (again) with Jetpack Compose, probably at Google I/O in May, but it’s hard to know how well the talk worked.

The other talks went much better. My favorites were my Functional Programming in Java, Groovy, and Kotlin, which I updated for the latest versions. That found a very receptive audience.

The best talk, in keeping with the theme of this newsletter, was called Help Your Boss Help You. I think I had over 300 attendees at one point, and they were engaged and interested. That was fun.

Meme Watch: Prohibiting Non-Work Discussions

This week Basecamp, the company founded by David Heinemeier Hansson (generally known as DHH and creator of the Ruby on Rails framework) wound up in the news far more than they would have liked.

Jason Fried, his co-founder and the chief executive, made an announcement on Wednesday banning all political discussions at work (also banning committees (?) and removing certain benefits, but that’s not the real issue). Since DHH is well-known for taking political stands in public, and has co-authored multiple books holding up Basecamp as an exemplar of how businesses should be run, that decision rubbed more than a few people the wrong way.

The cover of one of their books

Casey Newton wrote an excellent article explaining what prompted this decision, and some of the immediate outcry that followed. What seemed to be at issue was that early in the company a group of employees compiled a somewhat derogatory list of client names as a way of expressing their frustration. That list is no longer used, of course, but members of the Diversity and Inclusion committee felt more should be done to respond to its very existence. DHH and Fried felt it was old news, they’d done enough, and they frankly didn’t want to hear about it any more. Thus the ban on political discussions, though you could easily argue the whole issue was work related anyway. The real issue seems to be that DHH and Fried got tired of being criticized and wanted the whole issue to go away.

As Charlie Warzel said in his newsletter, “There’s nothing wrong with doling out advice or being proud of what you’ve built, but holding yourself up as an exemplar creates an expectation that, well, your company culture is exemplary.”

Since DHH is controversial to say the least, and frequently demonstrates at least a touch of the arrogance tech leaders are notorious for, the outcry was substantial. In fact, after receiving massive criticism online, they held a company-wide meeting and offered a buyout package to those employees who wanted to leave, nearly a third of them did just that.

Oof. Not a good look. I’m oversimplifying here (see the linked sources for more details), but it all blew up in the worst possible way for Basecamp.

My own reaction?

  1. Why in the world did they do all that publicly? I could understand a “leaked memo,” but no, they posted the new policies on an outward facing blog which you can check out if you want.

  2. They only had 60 employees? Wow, for such a small company they sure get more than their fair share of tech news attention. Of course, when DHH testifies at House committee hearings on unfair practices by Apple’s app store, I guess that will happen.

  3. If they can’t handle discussions involving only 60 employees, they’ve got serious managerial issues. Of course, now they have fewer than 40, so maybe they’ll learn something.

  4. I thank my lucky stars yet again that I’m a one-person company.

I may take positions that are borderline controversial in this newsletter, but in general I prefer to stay out of trouble as much as possible. The closest I’ve come to crossing a line like that was in my last year at United Technologies Research Center (UTRC).

UTRC was a small division of UTC, United Technologies Corporation*. UTC was a holding company, that at the time included Pratt & Whitney (aircraft engines), Sikorsky (helicopters), Otis (elevators), Carrier (air conditioners), Hamilton Standard (aerospace components), and a few other smaller companies.

*Now part of Raytheon. You know you’re getting old when all the companies you used to work for no longer exist.

The last few years I worked there, the whole company pushed very hard for “engagement” in the “China market”. As with many companies during the mid- to late-90s, China, with its 2 billion potential customers and low manufacturing costs, made sales people salivate.

I personally found the whole notion at best unseemly, but actually distasteful. In response I created a parody issue of our internal newsletter with the headline: UTC Celebrates Multi-Billion Dollar China Sale. The article described how UTC executives signed massive contracts with the Chinese government to install Otis people movers and Carrier air conditioners in every political detention center in China, so the interrogators could torture their prisoners quickly, easily, and in air conditioned comfort.

Did I publish it? I was tempted, but I’m not insane. UTC, even just the research center, was not Basecamp. This was a Fortune 50 company and a conservative organization with basically no detectable sense of humor. I had no illusions about how my issue would have been received. The closest I came to publishing it was to show it to my poor boss at the time and watch him go pale at the thought of me spreading it around. That was enough.

Amusing Tweets

Just a few tweets to hopefully lighten the mood.

That would do it.

Apropos of nothing, but I liked it:

This explanation of NFTs has been making the rounds, and it’s great:

My wife laughed about this one for days. The cure for Correctile Dysfunction:

Mildly sweary, but really well done.

Share Tales from the jar side

As a reminder, you can see all my upcoming training courses on the O’Reilly Learning Platform here and all the upcoming NFJS Virtual Workshops here.

Last week:

  • Mockito and the Hamcrest Matchers, on the O’Reilly Learning Platform

  • Kotlin Fundamentals, ditto

  • JUnit 5 Testing, an NFJS Virtual Workshop

  • Latest Features in Java, ditto

This week:

  • Reactive Spring, on the O’Reilly Learning Platform (Asia/Pacific time)

  • Java Testing with JUnit 5, ditto