Hey, I’m
Matthew Bischoff

I write and speak about technology and culture. I’ve designed and built apps at The New York Times, Tumblr, and now run my own studio, Lickability.

Close button
Home About Now Contact RSS

Software Criticism

Critica

Criticism may not be agreeable, but it is necessary. It fulfills the same function as pain in the human body. It calls attention to an unhealthy state of things. — Winston Churchill

Last week, I wrote a short blog post on my Tumblr commenting on the news that my former employer had released a new web application and critiquing the product strategy, calling it “pointless”. Apparently this struck a chord because minutes after I had shared my brief thoughts about the new Today’s Paper web app, I started receiving tweets, direct messages, and emails from former colleagues, friends, and followers. From what I’ve heard, it’s also generated several internal emails and conversations. Many of the messages I received raised the same question: why would I write this post?

The answer is simple: I care a lot. Software needs to be criticized to get better. 90% of it is crap, and very few people are willing to explain why. My blog is a place where I can express my opinion, and I have a strong opinion about this “new” product. I share my thoughts with the hope that they’ll make people think and encourage discussion, which is exactly what happened.

There are several arguments that people made about why I shouldn’t have written the post. These deserve to be addressed one by one:

Didn’t You Work For Them?

Yes, I did. I don’t any more and lack of a sane product strategy is one of the reasons why. A lot of the most amazing things we learn about how companies work are from people that used to work at them. Books like Hatching Twitter, articles from former Apple employees, and a lot of the best answers on Quora wouldn’t be possible without ex-employees speaking up. Learning requires opening up.

The people that worked inside an organization are the ones that can explain and critique it with the most insight. They also tend to be more emotionally invested in the company’s success. I plan to continue criticizing (and praising) the organizations I’ve worked for, and I hope others do the same.

Why You Gotta be So Mean?

Whenever someone accuses me of being mean, I stop to consider to whom I’m being mean. In this case, there are two groups of people I mentioned in the post.

The creators of the web app (designers, developers, editors, and product managers) The (potential) users of the web app

The only thing I say about the creators of the web app is that they are “truly great” at what they do and that their time should not have been wasted on something so silly. Doesn’t sound mean to me.

Can people’s feelings get hurt when something they work on is criticized? Absolutely, but that’s no fault of the critic. We don’t worry about Guy Fieri’s feelings before giving his restaurant a scathing review in The Times, and we shouldn’t be afraid to criticize software for this reason either.

Was I mean to the users? Well, I did say that many of them will likely die soon, but only as a way to cheekily explain the demographics demanding this product. Not mean, exactly, but a little heavy handed and likely unnecessary.

I’ve been criticized for lacking empathy towards members of this generation of people that are uncomfortable with The Times’s current offerings and prefer the simplicity of print. To the contrary, I think that generation is right. Many of the Times’s current products, especially the website, are confusing, outdated, and just plain hard to use. However, the solution is not to make yet another product. It’s to make the existing products great for everyone, just like Google and the iPhone are great for everyone. Good design is universal. No dumbing down necessary.

What’s Wrong With Skeuomorphism?

Nothing, except that’s not what this product is. It’s not just using skeuomorphic techniques to improve NYTimes.com, it’s literally another way to view the exact same content on the exact same platform. By my count there are at least 13 ways to read the Times: Paper, iOS, Android, Kindle Fire, Kindle, BlackBerry, Windows Phone, Web, Mobile Web, Replica, Times Skimmer, Time Wire, and now Today’s Paper. We don’t need more ways to read the same content that better imitate the past. We need the existing applications and websites to be much much better and focused on the future of news consumption.

The Team Had Fun

It’s fine for a couple of people to make a terrible product for fun or to learn, especially because it’s difficult to know if something will be good before it exists. But for a company that’s as large and well respected as the Times, it’s embarrassing to use the team’s enjoyment as a reason to release a product to the public. Plenty of products have been killed before release at The New York Times and this should have been one of them.

People Asked for It

Of course they did, but just because people ask for something doesn’t mean we should build it. Often, the way users phrase questions and requests is very direct: “You should do this”, but they really want us to do the thinking for them. No one asked for an iPhone before the iPhone was released, and yet hundreds of millions of people of all skill levels use and love these devices every single day.

It’s our skill and responsibility as creators and experts to understand and synthesize user feedback into great products, and not slavishly do what our users say, producing one more pointless product after another.

It’ll Make Readers Happy

Today’s Paper may very well make readers happy just like plenty of people are still happy with their dumbphones. That doesn’t make those phones good products. If the Times believes that Today’s Paper is really the right way to look at Times content, it should be the way the website and the native applications work, not a side effort that’s only available to subscribers and doesn’t even work on smartphones. This is simply a product that placates a vocal minority. These are the people that would still be asking for a faster horse years after the Model T was released. They will only drag the company and its products down.

John Gruber at Daring Fireball called Today’s Paper “utterly uncluttered”. He’s right but misses the larger economic point. This isn’t a sustainable way for the Times to publish content, even for only subscribers. It has no ads which means that if the website operated this way, the entire thing would be a money-losing operation. Gruber is presumably comparing it to the clutter of the NYTimes.com website, but guess what most of that clutter is: ads.

It’s Just an Experiment

This product is not an experiment. Experimentation is something you can do internally, via user testing, in private betas, or on whiteboards. Experiments don’t have revenue goals, and usually don’t require full-time engineers working for months. Experiments don’t have splashy launches and email campaigns to hundreds of thousands of users. Would I have criticized this publicly if it was just an experiment? Absolutely not.

“That sucks” is negativity. “That sucks, here’s why, and here’s how to fix it” is criticism, and it comes from a place of love. That’s the difference. — Alex Payne

In media like film, theater, television, and music, quality criticism is something that’s expected and encouraged. People looks to critics to tell them what’s good, what’s terrible, and why. In software, this same culture has failed to develop. Sure, there are review websites, but the main question they ask of software is: “does it work?” and not “should it exist?”.

We live in an environment where companies and individuals are constantly releasing new products, and the signal to noise ratio is incredibly low. We need to collectively grow a pair and become comfortable criticizing each other’s work. We need fewer products that are higher quality.

In order to produce better products, we must be willing to critique openly and honestly. We must accept that we will all fail. It’s not personal.

Filed to: Culture, Longer, TechTags: ,

The Best of Times

The New York Times Building

A month ago, on September 4th, I finished my last day as a senior iOS engineer at The New York Times. Two years there taught me a lot about building software that is used by millions of people and about myself.

Why did I work at The New York Times in the first place. Isn’t that just a newspaper company?

Those of you who’ve been paying attention know that the Times is one of the leading forces in online journalism. Respected designers, technologists, and digital journalists work together to produce one of the world’s best news reports and they do it every single day. It’s truly an amazing place to be. If you’re interested in that, I’m sure they have an opening for you.

I found out about the job while I was still studying Human-Computer Interaction at NJIT. I saw the posting on Twitter because I was following Ben Jackson, who worked on the team, and decided to apply even though I thought I’d never get the job.

In the interview, I remember two of the senior engineers on the team asking me why I wanted to work at The New York Times.

I told them that my eventual goal was to run my own software company full-time, but that I wanted to learn how large organizations like the Times produce software so that I wasn’t just guessing. They asked me if I’d leave, and I told the truth: “eventually”.

I got the job. I dropped out of school. I started working on NYTimes for iPhone.

Being at The New York Times was one of the happiest periods in my life. I worked on tons of projects and features that millions of people use every day. I helped run an event, recruited interns, watched an election from the newsroom, won two innovation challenges, and helped make the apps something I’m proud of. Most importantly, I made so many incredible friends.

Here are some fun numbers from my time at the Times:

  • 56 two-week sprints
  • 227,202 Lines of Code Added
  • 163,119 Lines of Code Deleted
  • 2,414 Commits
  • 758 Days (Aug 8, 2011)
  • 554 Closed Issues

Finally, I sent out a farewell email on my last day to the company. One of the responses really got me:

Congratulations, Matthew. I never met you in person, but I remember when you started because I overheard someone in the elevator talking about you. It was something like: Wow. I just met this new hire, a whiz kid, who’s going to do incredible things here. And then some back and forth about who is it? What’s he working on, etc.

That’s been a while, but it’s not very often that you overhear something like that, and it stuck in my mind. Glad you were able to make your mark here at the Times. All the best in your new adventures!

I hope I made that mark after all.

Now it’s time to learn something new. It’s time to see how a smaller company makes great software. I couldn’t be more happy to be joining the 3 person iOS team at Tumblr. It’s going to be amazing.

Filed to: LongerTags: ,

You’re Up

Whenever I go to tech conferences or meetups, I almost always end up traveling with either Brian or Andrew from Lickability.

Let’s face it, I’m a nerd, and it can be a little awkward for me to walk up to a brand new group of people at a conference or a party and introduce myself. Will they like me? Am I smart enough? Are they going to eat me?

Brian and I ended up using a really simple system at WWDC 2011 that we’ve continued using to this day which makes this process fun instead of anxiety-inducing. It’s a game called “You’re Up”.

The Rules

  • Join a team of 2-3 people.
  • Pick one of you to be “up”.
  • If you’re up, you must introduce yourself to someone new and bring your teammates along.
  • Have a conversation with your new acquaintances.
  • Alternate who’s up.

Instead of milling around and staring at the furniture or talking to the people that you already know, it’s good to push yourself outside your comfort zone. This simple game has led to dozens of interactions and friendships with people that I still talk to regularly, and I’ve enjoyed going to industry events much more with this in my back pocket.

There are no points in this game for a reason. You don’t play it to win. The reward is in having engaging conversations with interesting people. This is just a little hack to make the hard part of socializing easier and more fun.

Just remember: most people want to meet you as much as you want to meet them, especially in social situations like this. No one would prefer to stand there and stare at their phone when there are tons of fascinating people around.

So go have fun and meet some people. You’re up.

This post was inspired by Lee Edwards, who recently wrote about his Meetup Golf system which works very similarly.

Filed to: Longer, TechTags: , ,

Don’t Go to College

NJIT College Flag

The following is the text of a speech I gave two years ago at New Jersey Institute of Technology’s Honors College Orientation. The audience was primarily students who were trying to determine whether NJIT was the right school for them.


Don’t go to college. At least don’t go unless you understand exactly why you’re going and exactly what you will gain from it. It’s expensive, it’s frustrating, and it’s not really as necessary as it once was for many professions, especially computer science.

I dropped out of college last year, and I’ve never been happier. I’m a full time Mobile Software Engineer at The New York Times, co-founder of a small successful iOS development company called Lickability, and I have an amazing group of friends. Most people would say that I’m very lucky. I don’t think it’s luck. I work insanely hard, all the time.

I have no idea why I was invited here today, but I figure with the 5 minutes I’ve been given, I’ll give you as much value as I can. If you don’t agree with what I say, that’s perfectly okay. It’s just a different perspective.

A few years ago, when I was looking to attend a college, I knew exactly what I wanted to study: Human-Computer Interaction. NJIT was one of the 10 schools in the country that had an undergraduate program in HCI. I lived in South Jersey, NJIT gave me enough money that I could come here for free, and it meant I could be close to New York.

I attended NJIT for 2 years. I can honestly say that classes here taught me almost nothing of value, but that’s not because NJIT is a bad school. It’s due to a fundamental problem in the way the world works: no one cares about you except you. The curriculums will always be outdated, there will always be terrible professors, and your fellow students won’t be much better. Sure, college is a great way to make friends, but it’s not a great way to learn. College can’t teach you because in reality all learning is self teaching.

I have made many great friends here. One of my business partners and my best friend is someone I met in my freshman dorm at NJIT. The Honors College is great for meeting smart people and that’s about it. It’s not that I regret going here, it’s that I left at exactly the right time.

College is not important. What’s important is spending your very limited life doing things you love. For some of you, that might be helping the sick, for some it might be architecting buildings, and for others it might be pure mathematics. For me, I found my passion in building great software, and college only slowed down my ability to do that. That’s not to say money is not important: it is. But it’s only important so that you can support yourself and the people and things you love.

If you don’t yet know what you’re passionate about, that’s okay, but college won’t help you figure it out, it will probably just confuse you more. You need to sit down, examine yourself, examine your life, and really think. Don’t study something because it has high starting salaries, or because there’s a major for it, or because you were good at it in grade school. Do it because you love it and because it will make the world better. Pick a direction that sounds amazing and head in it, even if it seems too difficult. Everyone who started doing what you want to do at some point felt like they were the worst in the world at it. We all feel like amateurs and frauds, all the time. That’s being human.

Many of my friends who went to NJIT and other schools around the country are nearing graduation and desperately searching for jobs in areas they were never even passionate about.

Last week, I interviewed an MIT computer science graduate that couldn’t program his way out of a box. He walked out of the interview early and apologized for wasting our time. He said “I never should have come here, I’m sorry.” Never let that happen to you. Don’t ever think that going to college will get you a great job. It will get you an interview and the rest is up to you.

Carefully consider what everyone from university admissions says. To them you’re not a person, you’re a product. Everyone of you that they sell to the university means that it makes more money, and they get to keep their job.

I know most of you won’t listen to me. The people sitting next to you, your parents and your friends will urge you to take the safe route, getting yourself into thousands of dollars of debt or spending their money to sit in a prison-like dorm room for four years instead of facing the real world, but it’s not their life. You are or almost are an adult. Make your own decisions, make your own money, and live your own life. Sure, your parents love you or whatever, but they’re naturally cautious. You need to take risks.

You don’t have to do anything. You don’t have to be here. You don’t have to come here. Everything you do is a choice, so own every one of them.

If you do go to college, don’t waste your time doing “homework” that you know won’t help you. Make friends, make love, make lots of things. Make something great. Because that is what will make you happy for the rest of your life.

Thank you.

Photo courtesy of Willam Hartz.

Filed to:

App Definition

App Store Banner

The app definition statement is a concept that I’ve been obsessed with since I first read about it in the original iOS Human Interface Guidelines back in 2008.

An app definition statement is a concise, concrete declaration of an app’s main purpose and its intended audience.

It’s not exactly an elevator pitch, or a mission or vision statement, and it’s definitely not a spec. It’s just a definition. It’s what you would see if you looked your app up in the dictionary. It answers the questions “What?” and “For whom?”.

The process to create an app definition statement is pretty simple:

  1. List all the features you think users might like
  2. Determine who your users are
  3. Filter the feature list through the audience definition

You end up with a single sentence which you can use as a litmus test for everything you do. Whenever someone on your team proposes a feature or a design, you should be able to run that through your ADS to see if what you’re doing makes sense. Will my audience want or need this? Does it belong?

Right now it seems like our industry is worried primarily about growth hacking, affiliate marketing, and App Store SEO.** None of those things matter unless you make great software**. Doing this simple exercise is the best way I’ve found to make sure that you make something people want without cluttering your idea or adding features for the sake of a checklist.

A few months ago, I asked some iOS developers on Branch for their app definition statements and got some great responses. Here are my favorites (coincidentally, some of my favorite apps):

  • Grades: an app that shows students what they need to score on their next exam.
  • Languages: lightning fast translation without an Internet connection.
  • Paper: where ideas begin.
  • Basil: a single place for your favorite recipes and makes it easier to cook them.
  • Drafts: where text starts.
  • QueueUp: Fast searching and adding for your Netflix Queue.

These don’t all follow the exact same template, but they do give you a quick one sentence way to understand the app. They let you see why the developers may have cut certain features and included others.

Writing an ADS is the first step in any new software project I’m thinking about. As soon as I have one I’m happy with, I put it in the project README and start designing.

Do you write App Definition Statements, or have you found an even better way to define your work?

Photo courtesy of Cristiano Betta.

Filed to: