Book review: Ruined by Design

We’re fucked. That’s not a phrase you’d expect to see in a book on tech ethics. But it’s a major theme of Mike Monteiro’s Ruined by Design (affiliate link). You might think an ethics book would take a detached, academic approach. Monteiro has no time for that. He is passionate and opinionated throughout a practitioner disturbed by the state and trajectory of his trade.

Many people have found themselves being more political in the last few years. I should say being intentionally political, because the act of design as Monteiro reminds us is inherently political. For too long, he argues, designers have served the needs of their managers instead of advocating for the needs and interests of their users. That is how we’ve ended up with the garbage fire that is the modern tech industry.

Monteiro argues that designers have a moral obligation to do more than “push pixels”. Designers must design, and do so in such a way that treats the users ethically. This means being an active part of the decision-making process from the beginning, not just implementing someone else’s decision.

Ethical design faces some structural headwinds. Most significant of these is a capital environment that values rapid growth above all else. This both encourages decisions that grow engagement but not healthy interaction and also leads companies to grow so fast that design expertise is passed over or diluted. And there’s no such thing as an ethical offset, Monteiro says. Palantir is his go-to example of a company whose very essence is so unethical that nothing an employee does in their off hours can make up for what they do at the office.

So is it hopeless? Monteiro doesn’t think so. Designers, he hopes, mostly want to act ethically. They’ve just never had any training or mentorship that brings ethics to the fore. Designers must first be aware of the bigger ethical picture before they can start acting with intent. The rising public awareness of how tech companies abuse their users will help.

Monteiro views regulation of design as an inevitable consequence of the industry’s inability to self-regulate. But he also doesn’t view regulation as inherently bad. The public benefits greatly from regulation of food and transportation, for example. He also sees unionization as a key part of improving. A union would give designers cover and protection when bosses push them to implement unethical behavior. It also provides opportunity for training and professional development.

Ruined by Design paints a bleak view of the present while still providing hope for the future. Monteiro’s writing style is engaging and irreverent. The lessons he presents are valuable to anyone who makes product decisions. I strongly recommend this book to everyone.

Other writing: August 2019

What have I been writing when I’m not writing here?

Stuff I wrote

Fedora/Red Hat

Lafayette Eats

Stuff I curated

Fedora/Red Hat

Using the wrong tool for the job

My first professional job was as a systems administrator in a small academic department on a large university campus. One of the worst parts of this job was dealing with the poster printer the department made available to students and faculty. It was self-service the whole way — users were expected to design and print their own poster. They could come to us for help when the printer malfunctioned (as it often did), but that was about it.

One of the results of this was that people, particularly the graduate students, did their poster design in PowerPoint. It was ubiquitous, it was familiar, and it produced something that looked poster-like. It also didn’t play nicely with the printer. PowerPoint was designed to make slide presentations, not 42″ wide posters. It’s not that PowerPoint posters didn’t work, it’s that they didn’t work quite right. The margins were a little off. Sometimes elements wouldn’t be quite where you expected them. It annoyed the hell out of me.

The wrong tool is easier

But as I’ve gained some experience, I’ve come to understand why people use the wrong tool for the job. It’s because the tool isn’t as wrong as it seems. Why should a graduate student spend time learning a design tool that they’ll use once per year when they can get a good enough result from what they already know?

Spreadsheets are the most widely-used database in the world (I’m guessing) because they’re ubiquitous and easy to start with. By the time you’ve outgrown what’s reasonable in a spreadsheet, you’re already committed. It’s why my post on date-based conditional formatting in Google Sheets is one of this blog’s most-read posts, even though it’s a poor fit for a spreadsheet.

People’s jobs are bigger than a particular task that they try to accomplish with a piece of software. Tools that require an up-front investment — even if that pays of over a short amount of time — are going to be a non-starter. This short-term thinking is natural. It’s not a user problem, it’s a management problem.

The wrong tool isn’t wrong

There’s also the case where what seems like the wrong tool is a failure to properly identify the problem. Take this tweet:

Using an excavator to row a raft down a river seems wrong. But what’s the goal? And what are the constraints?

Does it make sense to have an additional piece of equipment? How much more does that cost in time and labor? Is it even possible to get a powered barge to the location?

It’s an off-label usage of the tool, but doctors write off-label prescriptions all the time. Just because a tool isn’t right in a standalone context, when you look at the bigger picture it can be.

Hurricane Dorian forecast contest

Due to a technical error with the forecast submission script. the contest is cancled. I’m not sure I want to invest any more time in fixing this old and busted script, and I have yet to make good on my ten years of “I will rewrite it this winter”, so this may be the end of tropical forecast contests on Funnel Fiasco.

It’s that time of year again! Submit your forecast for mainland landfall by 0000 UTC on 29 August (8pm ET on Wednesday).

Is venture capital hurting the tech industry?

Maybe.

So many of the ethical lapses in the tech industry (think Facebook or Uber) seem to be driven, in part, by the need to grow as rapidly as possible. From where does that need come? At least part of it comes from the venture capitalists (VCs) who provide the early funding for those companies.

VC firms work by throwing a little money at a lot of companies, and throwing more money at the companies that are doing well, in the hopes that they go public or get acquired. Then the VC firms get big ol’ paydays. The nature of business is that most companies fail, so in order to keep going, the VC firms need the successes to be really big successes. Grow as fast as you can, profit and ethics be damned, until someone buys you for oodles of money.

To make themselves attractive to venture capital firms, fledgling companies will sometimes go for the flashy new technology. They’ll think about how they can disrupt industries with blockchain-based crypto-cloud-crowd-AI-machine-learning whatever-whatever-whatever. Everything has to scale exponentially. Throw in all sorts of sensors and have the device do local inference. Even if all they need is to put a stick-shaker on a steering wheel.

But this growth comes at a cost. Scaling a company culture is hard. Scaling it as fast as you can spin up a new AWS region is impossible. Free-flowing capital allows companies to build out quickly, but quickly isn’t always the same as well. Having restricted capital available is a constraint that can help a company make focused and deliberate decisions.

I’ve been thinking about this a lot recently. Not just because of my experience at a local pitch night, but because it’s just past the two year anniversary of Microsoft acquiring Cycle Computing. Jason and Rachel Stowe founded Cycle Computing in 2005 on their credit card. Apart from a debt round in 2016 (if I remember correctly), the company existed for 12 years on revenue.

It wasn’t always easy. There were times when I took a far-too-early flight because it would save the company fifty dollars. We had to be careful with our expenses and we couldn’t hire as fast as we wanted. But when we did spend money, it was because we thought it was the best thing for the company’s success, not just because it was there to spend. But that also meant that when the big payday came, the employees got a nice windfall — there were no VCs to pay off first.

Companies, particularly software and consulting companies that don’t need much equipment, can succeed in low-capital mode unlike anything we’ve known in the past. You don’t need office space because your employees can work remotely. You don’t need data centers because you can run on cloud services. Pay your employees and give them laptops, and then you’re off to the races. Capital infusion can help, but often it can make it worse. If you’re in business to run a successful business (as opposed to making big money), then maybe venture capital is not the answer for you.

As an industry — and a species — we’ve grown to love big, flashy numbers. But it’s important not to mistake valuation for value.

Business cards at conferences

Paper is dead; everything is digital.

Are you done laughing? Good! Stephanie Hurlburt posted a lengthy set of thoughts on using business cards at conferences, and it inspired me to think about how I use business cards.

I happen to be at a conference right now, and I brought my box of business cards with me. I’m sure I’ll only hand out a few, if any, but I prefer having them to not having them. If someone wants my card, I should have one available for them.

When I worked in marketing, I really liked getting business cards from prospective customers and partners. It made following up after the conference much easier. Sure, we had those nifty badge scanners, but some people covered their codes to protect from sneaky scans or they used a throwaway email address to avoid spam. But even if the scan worked, typing useful notes into the scanner is a tedious process. It’s much easier to pull out my pen and jot a few notes on the back of their card.

Now that I don’t work in marketing, the above scenario isn’t as important. But it’s easy to be insulated against the scenario arising.

What about digital methods? Sending someone an email or LinkedIn connection as you stand there works: unless it doesn’t. Conference WiFi can be unreliable, and mobile networks aren’t always great inside a large metal and concrete building. Taking pictures of business cards works, but it’s still harder to take quick notes, even with the stylus on my phone. I have a QR code that is a link to my LinkedIn profile saved on my phone. I have literally never used it.

Conferences are hard places to make connections. You’re busy and you meet so many other people that by the time you get home your brain is mush. For me, business cards are an easy way to preserve data. And sometimes they’re useful for winning a free lunch at a local restaurant.

Is it really open source if…?

I see this question asked (or stated as an accusation) with some regularity: “is it really open source if ___?” Fill in the blank with whatever. For example:

This conversation started with a criticism of GitHub restricting Iranian users in order to comply with US law. Like true Scotsmen, we all have a notion in our heads of what open source means, and the picture doesn’t always align from person to person.

Part of the problem is that there are two separate parts: the output and the input. The output is the legal part. The part that deals with licensing. That’s easy to deal with. Software is open source if it is presented under a license that meets the Open Source Initiative’s definition. Easy.

The hard part is that open source also has a cultural component to it. This is the input. There’s a community involved in the project. That’s often what people think of when they consider “open source”, but it also has no real definition. So we argue about it. A lot.

Is it really open source if you don’t allow it to be used by Iranians? No. That violates number 5 in the Open Source Definition. Is it really open source if you don’t allow Iranians to be in your community? Yes. Does that make it right? Well, that’s the real question we should be asking.

Other writing: July 2019

Stuff I wrote

Red Hat/Fedora

Lafayette Eats

  • El Maguey — A delicious Mexican restaurant in no hurry to get you to leave.

Stuff I curated

Red Hat/Fedora

Does open source benefit independent developers?

Patrick’s heresy is not an unreasonable statement. My current employer grew to a $34 billion market value using, creating, and supporting open source software. But there are plenty of stories of open source developers working on key projects that are barely able to sustain themselves.

Benefits of use

It’s clear that independent software developers benefit from using open source software. If nothing else, the programming languages themselves are immensely beneficial. Much of the tooling, frameworks, and libraries used for developing applications these days are available for free under open source licenses. The economic barrier to entry would be much higher if everything had to be paid for.

Benefits of development

This is where the answer becomes more qualified. Contributing to open source projects can open the door to being hired at one of the businesses that make good money. But that’s not attractive to everyone. And an “everything should be free” mindset can make it hard to earn money.

It comes down to what you want to get out of it. If you’re doing it to make money, then it might not be beneficial, unless it’s a boost to your resume. But for some people, contributing to open source projects is a hobby they enjoy. I got started out of a sense of giving back to the community that provided me with a free operating system. The fact that it eventually became a paying job is a nice benefit.

Harm of not contributing

The flip side of the question is “does not contributing to open source harm indie developers?” The answer is “yes” far too often. A lot of development positions explicitly or implicitly expect your GitHub profile to be a key part of your resume. But not everyone has the privilege to be able to contribute to open source projects in their spare time. Hopefully that understanding spreads more broadly through the industry.

Switching from consumer Gmail to G Suite

Last spring, I was having some trouble with my email. I had my @funnelfiasco.com email forwarding to the Gmail account I’d been using since 2005 or so. But for some reason, every so often email would silently just not make it through. This nearly cost me the opportunity to be the technical reviewer for The Linux Philosophy for SysAdmins (affiliate link). There was no real indication of what was going on, and since my friend graciously hosts my site for free, I didn’t want to push too hard. So I decided I’d just be Google’s customer instead of their product.

Here’s the kicker: Google doesn’t let you just become a paying user. So I created a G Suite account for FunnelFiasco, a “company” of one person. But this also meant that I couldn’t just magically promote my existing account. Instead, I had to migrate all of the data. This turned out to be mostly easy, but a bit of a pain in some regards.

Migrating

Chrome

Moving Chrome data to a G Suite account is very easy: you log out and log in with the new account. The main thing to remember is to not deleting the existing data when you log in with the new account. It’s that simple. If you have any payment methods stored, those are in Google Play, not in Chrome.

Voice

Moving Google Voice is less easy. You can’t import your history into the new account, which killed a lot of the value for me (that was part of the reason I decided to port my Google Voice number to my mobile carrier). You can export it and keep it locally, but that’s not entirely helpful. But once I made peace with that, I was able to transfer it to my G Suite account. However, the Google Voice support site says that’s not an option these days.

Contacts

It’s as simple as exporting from the old account and importing to the new. It took a little while for my imported contacts to show up, which led me to think the import failed. So I tried again. And then I had all of my contacts twice. So I deleted them all and imported again. This time I was patient, and it was fine. But if you switch the main Google account on your Android phone, you may be surprised when an edit to a contact doesn’t appear to be reflected on your phone (it’s still showing the old account’s version, too).

Mail

G Suite provides a data migration service for importing email. This worked very well, but very slowly. One of the benefits of Gmail, especially in the early days, was the bountiful storage space. Combined with usable search, it meant not having to delete email. So I had something like 383,000 emails in my account. This took about 10 weeks for the data migration service to import. There are probably faster ways to do this, but I didn’t really care. If I needed an old message, I could log in to the old account.

The data migration service does not move mail filters. Those can be exported as an XML document and reimported to the new account.

Calendar

I apparently didn’t take notes on this at the time, but I think what I did here was to add my G Suite account as a fully-privileged user for my consumer calendar. I had them both displayed and as I saw things that were owned by the old account, I moved them to the new calendar. Most of my calendar events are on the shared family calendar anyway, so making my new account an owner there was essentially no different.

Docs/Drive

As with the calendar, I had to add my new account as owner to the documents I still cared about. It’s an annoyingly manual process.

Other services

I didn’t have much data — if any — in other services (YouTube, etc), so I didn’t worry about that.

Life with two Google Accounts

In the end, I’m sort of stuck with having two Google Accounts. Most people don’t email me directly at my @gmail account because I’ve been using @funnelfiasco.com for so long. But the account still exists and I go check it every so often to make sure I’m not missing anything. The few people who use Hangouts Chat still mostly IM me at the funnelfiasco account, but occasionally they’ll slip up and use the gmail account.

G Suite is overkill for my needs, but it’s the only way Google will take my money. At some point, I’d like to extricate myself from Google to some degree. I know it’s possible, and I know many of the people who might read this post would strongly advocate it. But it’s also very convenient to use Google, and I’m aware of the trade-offs I’m making. I’m not interested in having that conversation.