Data scientists mostly just do arithmetic and that’s a good thing

Hi, I’m Noah. I work at Basecamp. Sometimes I’m called a “data scientist.” Mostly, I just do arithmetic, and I’m ok with that.

Here’s a few of the things I worked on in the last couple of weeks, each of them in response to a real problem facing the business:

  • I analyzed conversion, trial completion, and average invoice amounts for users in different countries.
  • I identified the rate at which people accidentally sign up for Basecamp when they mean to sign in to an existing account and how that’s changed over time.
  • I analyzed and reported on financial performance of a few of our products.
  • I ran and analyzed a survey of account owners.
  • I analyzed an A/B test we ran that affected the behavior of a feature within Basecamp.

In the last two weeks, the most “sophisticated” math I’ve done has been a few power analyses and significance tests. Mostly what I’ve done is write SQL queries to get data, performed basic arithmetic on that data (computing differences, percentiles, etc.), graphed the results, and wrote paragraphs of explanation or recommendation.

I haven’t coded up any algorithms, built any recommendation engines, deployed a deep learning system, or built a neural net.

Why not? Because Basecamp doesn’t need those things right now.

The dirty little secret of the ongoing “data science” boom is that most of what people talk about as being data science isn’t what businesses actually need. Businesses need accurate and actionable information to help them make decisions about how they spend their time and resources. There is a very small subset of business problems that are best solved by machine learning; most of them just need good data and an understanding of what it means that is best gained using simple methods.

Some people will argue that what I’ve described as being valuable isn’t “data science”, but is instead just “business intelligence” or “data analytics”. I can’t argue with that arbitrary definition of data science, but it doesn’t matter what you call it — it’s still the most valuable way for most people who work with data to spend their time.

I get a fair number of emails from people who want to get into “data science” asking for advice. Should they get a masters degree? Should they do a bunch of Kaggle competitions?

My advice is simple: no. What you should probably do is make sure you understand how to do basic math, know how to write a basic SQL query, and understand how a business works and what it needs to succeed. If you want to be a valuable contributor to a business, instead of spending your weekend working on a data mining competition, go work in a small business. Talk to customers. Watch what products sell and which ones don’t. Think about the economics that drive the business and how you can help it succeed more.

Knowing what matters is the real key to being an effective data scientist.

Bootstrapped and Proud

Illustration by Nate Otto

I first learned about boot jacks a couple weeks ago, when I reported this story about Alcala’s Western Wear, a 41-year-old retailer in Chicago. Illinois is not a place where you see a lot of cowboy boots — not like, say, Texas or Montana, where airport security checkpoints come with boot jacks to help flyers take off their boots.

Yet even in this urban metropolis, Alcala’s Western Wear has flourished, offering a massive selection of cowboy hats, boots, shirts, belt buckles and more. Western wear has been far more than a fashion fad for the Alcala family, now in its second generation of ownership. The Alcalas know what it’s like to bootstrap a business in every sense of the word.


Transcript

WAILIN: Richard Alcala has been selling clothing for a long time, long enough that you can track his career by the width of men’s pants. When Richard was starting out, bell bottoms were all the rage, thanks to Saturday Night Fever.

RICHARD: They were really tight in the thigh and they were really wide as soon as it got to the knee. From the knee down, they were like a big, big V. And they covered — they were so wide that they covered your shoes. Everybody wanted to be like that guy in the movie.

WAILIN: That guy, of course, being John Travolta. Saturday Night Fever came out in 1977. And men’s pants have gotten a lot slimmer since then, surprising even Richard, who’s been in the retail business for more than four decades.

RICHARD: Guys’ skinny jeans. I never saw that coming. And it’s still coming strong, my gosh. I don’t think those tapered jeans are going anywhere. I think people really really love them and they love the way they fit.

WAILIN: Richard’s business isn’t going anywhere either. He’s the president of Alcala’s Western Wear, a Chicago store that sells cowboy hats, boots, shirts, belt buckles, and more. Here, east of the Mississippi River, you’ll find more apartment dwellers with cats and dogs than grizzled ranchers with cows and horses. And yet Alcala’s Western Wear has endured, outlasting disco and many other fashion fads. You’ll hear the story of this urban cowboy outfitter on The Distance, a podcast about long-running businesses. I’m Wailin Wong. The Distance is a production of Basecamp. Introducing the new Basecamp Three. Basecamp is everything any team needs to stay on the same page about whatever they’re working on. Tasks, spur of the moment conversations with coworkers, status updates, reports, documents and files all share one home. And now your first basecamp is completely free forever. Sign up at basecamp.com/thedistance.

RICHARD: I’m wearing some brown alligator boots by Old Gringo and I’m wearing a Stetson hat and it’s a white color because good guys wear white, supposedly, from the movies, okay, and I’m wearing a bolo tie. It’s made out of stone. And this is how I dress every day. You know, it’s who I am.

WAILIN: Richard Alcala is the fifth of ten children who were born into a family of salesmen. His great-grandfather sold cars at one of Ford’s first dealerships in Mexico, and he was also the first taxi cab driver in the city of Durango.

RICHARD: He had the first license for a taxi and he would go up and down the boulevard giving people rides. And my father said there were so many people they would stand on the outside of the car on the running boards and just hold on because they couldn’t fit into this car because they could only fit so many people in this car, right? And he loved selling cars. My great-grandfather loved selling cars, and so I think it’s just in our blood.

WAILIN: Richard’s father, Luis, came to the US and landed in Chicago, where among other jobs, he had a table at the Maxwell Street market. This was an open-air bazaar on the city’s near west side that was known as a bargain hunters’ paradise for over a hundred years, until the mid nineties. It was where Richard learned how to make a sale from watching his father.

RICHARD: He would go to Maxwell Street every Sunday and set up his own little booth there on the street and he would sell things. He would sell clothing. He did brooms. He sold lawn mowers. Basically whatever he could get, he would sell. And since we had a large family, you know, the sons would go with him and help.

We weren’t allowed to keep our hands in our pockets. That was a big no-no. Never put your hands in your pocket because you’re telling the customer that you really don’t care. So you could never put—even if it was below zero, you could not put your hands in your pocket.

It was neat to sell something. That was like the pat on the back. When you sold something, you felt like, “Wow, I did this. I did this and I did this on my own.”

WAILIN: Luis Alcala eventually opened a brick and mortar store on the south side of Chicago, selling men’s clothing. Many of his customers worked at a nearby US Steel plant, and business declined when that factory closed. So he opened a second menswear store in 1975, this time further north, in a neighborhood populated with Polish, Mexican and Puerto Rican residents. Five years later, another John Travolta movie — Urban Cowboy — sparked interest in western wear.

RICHARD: They wanted to wear his hat. They wanted the same shirt that he wore in the movie. All of a sudden, every guy in Chicago wanted a big pickup truck. Now, was it practical to have a pickup truck in Chicago? Probably not. Did anybody care? No. Nobody cared that they didn’t need a pickup truck, but they wanted a pickup truck because that’s what he drove in this movie and they wanted the hat that he wore and it really really brought western wear, like—it made the whole industry, like, really really popular.

WAILIN: At Alcala’s, customers were coming in asking for shirts with snaps, and boots, and hats. Richard, who had worked at the store since the eighth grade, thought the family business could distinguish itself from other menswear stores in the neighborhood by focusing on western wear. But his father took some convincing.

RICHARD: He wasn’t very fond of the idea because we had been carrying menswear for a long time, and to all of a sudden stop carrying it and switching over to something new was like a real big change. It was a real big change but I told him, I says, “Dad, we have to do this. We can’t be — we can’t be both. You know, we can’t be western wear and we can’t be menswear. We have to be one or the other because we don’t want to confuse customers.”

WAILIN: Not only did Alcala’s make the switch, but it grew into an enormous one-stop shop for everything western, and expanded to women and children’s apparel. The store is 10,000 square feet and carries 8,000 pairs of boots, 3,000 pairs of jeans, three thousand shirts and 4,000 hats. There’s also belt buckles, bootstraps, leather duster jackets, bolo ties, blankets and jewelry.

RICHARD: We’ve always believed that the customers should get a good selection. Customers don’t want to come in and look at a shirt and have ten shirts to decide from. I think it’s better if they can look at 200 shirts and decide from 200 which ones they like.

WAILIN: Alcala’s prides itself on its large inventory and customer service. There’s a tailor on staff who will alter jeans and shirts for free, usually while you wait. There’s also a specialist in the hat department.

ENRIQUE,: Hi, my name is Enrique Mendoza and I’m working at Alcala’s, shaping and cleaning hats for a very very long time.

WAILIN: How long? Since 1988, when Enrique came to the US from Mexico. His brother-in-law worked at Alcala’s as a tailor and got him a job in the hat department, where he’s been ever since. If you want the brim on your Stetson to frame your face just so, Enrique’s your man. He uses a foot-operated steamer and his hand to mold hats into the right shape. Enrique estimates he works on 200 hats a week. Sometimes it’s a quick spot clean, other times it’s trimming a brim and shaping the crown. You can get the cattleman crease, which has three creases, or the pinch front crease, which creates a triangular shape, or the telescope, which is a circular crown with a crease that goes all the way around. There are a lot of choices — straw, felt, leather, different colors and band styles and brim sizes — and Enrique has 27 years of experience helping customers make sense of it all.

ENRIQUE: I’m asking, “Okay, where are you going?” If you going to a wedding, you need a nice and elegant hat, right? If you go to a rodeo on an open field, you need a different hat, so it depends on where you going, is the hat you have to buy.

WAILIN: Enrique’s secret weapon is a spray bottle of Windex. He discovered by accident many years ago that it’s a good cleaner for hats and dries faster than water.

ENRIQUE: You gotta do the brush, you see? The clock go this way; you have to do the other way. That’s the way that finish the hat, look.

(Sound of brushing)

And the Windex, it helps you clean it, look. See?

(Sound of brushing)

WAILIN: The kind of personal attention that Enrique and other staff members provide is more important than ever, now that Alcala’s is facing so much competition — both from online-only retailers and its own suppliers like Levi’s, who have started selling directly to consumers. The store sells merchandise online, but Richard thinks of the website as more of a big, Google-friendly business card than a source of revenue.

RICHARD: I don’t understand how people can buy boots and shirts and jeans online without trying them on. I guess you gotta order them and return them if they don’t fit, and do it all over again, you know, I think it’s easier if you just come to a store and try them on.

WAILIN: And if you come to Alcala’s in person, you can try on merchandise while your kids ride one of the store’s two mechanical ponies. You can feel the difference between rattlesnake and eel skin and stingray boots, or ask Enrique Mendoza how your hat should look.

RICHARD: If we close our store tomorrow and we depended online business, we would be closed in 30 days. There’s so much competition out there. There’s so many non stores. There’s so many people out there selling the same product that we do who don’t have a store. They have a garage. They’re working out of their basement. They don’t have 30 employees. We have 30 employees here.

WAILIN: A lot of those employees are family members. Remember when I told you Richard is the fifth of ten kids? Five of his siblings work at the store too, along with other relatives.

RICHARD: My brother Robert, he’s the accounting. I have a sister, Lupi, she’s accounts payable. I have a brother John who is in charge of shipping and receiving. And I have another brother Louie, who’s a cashier. My wife Elia, she’s a cashier. And then we have nieces and nephews working here and I’ve got a brother-in-law working here, so there’s a lot of family members working here.

Everybody has their own responsibility. You don’t have two or three people doing the same job, so I think it’s important that everybody kind of like has their own position. They have their own responsibilities, and I think that really helps when you’re in a family business. So this way, not everybody’s meddling into everybody else’s job.

WAILIN: Richard’s job is president, a position he’s had since 1982, when his father picked him as his successor after a year of observing him and his siblings.

RICHARD: Since I was number five out of ten, I thought I would never be able to run this company because I have four brothers who are older than me. And so one day, my dad had a family meeting and he called us over and he says, “I want someone to run this company. One of you’s are going to run this company and I’m not gonna base it on age.” And I was like, “Yes, that’s great, I’m so happy, wow. So now I have a chance.” And so I really really worked hard and I proved to my father that I wanna be the one who runs this company. He picked me and he told my brothers — he told my older brothers, he said, “Look, even though he’s younger than you, you have to respect his decisions. You can’t look at him like he’s your little brother and now your little brother is bossing you around.” He said, “Everybody had the same opportunity that he did, but none of you’s showed the same interest that he did. So now this is how it’s gonna be. Your brother’s going to be in charge and if he says go right, we’re gonna have to go right.”

WAILIN: Richard’s father, Luis, passed away in 2014 at the age of 92. Portraits of Luis Alcala and his wife of more than 60 years, Carmen, hang side by side at the front of the store. Hand-lettered signs above each painting say “El Rey” — the king — and “La Reina” — the queen. In Luis’ portrait, he’s wearing tinted aviator glasses and looks every bit the patriarch, watching over the business he founded. Richard is 57 and starting to think about stepping back in a few years. He plans to search for a successor the same way his father did, by finding someone who really loves the business and will take care of it, someone who’s a natural salesperson.

RICHARD: I’m a real firm believer that you have to wear what you sell. I would feel ridiculous if I’m helping a customer, showing him cowboy boots, and I’m wearing gym shoes. It’s important that you wear what you sell and that you love what you sell. You have to believe in it.

WAILIN: Over four decades in the business, Richard’s tastes have evolved a bit. But he’s still very much a believer in the appeal of a sharp-looking pair of boots and a hat — in white, of course, because he’s one of the good guys.

RICHARD: I used to wear, like, real loud fancy shirts with a lot of embroidery in them, and I’ve noticed that I really don’t anymore. So yeah, you know, your tastebuds kind of change. Your tastebuds kind of change over the years, but you know, I still love what I’m doing and it’s been 43 years and I’m still here.

WAILIN: The Distance is produced by Shaun Hildner and me, Wailin Wong. Our illustrations are done by Nate Otto. We’ll be back next week with a mini episode where Shaun shops for a pair of cowboy boots at Alcala’s, so stay tuned for that. In the meantime, if you could leave us a review on iTunes, we would be so grateful. It helps our show gets discovered by new listeners. The Distance is a production of Basecamp, the leading app for keeping teams on the same page about whatever they’re working on. Your first Basecamp is completely free forever. Try the brand new Basecamp Three for yourself at basecamp.com/thedistance.

Make losses affordable

People do crazy things when they can’t afford to lose. Being dealt a bad hand, which invariably happens at some point, becomes an existential threat, the brain shuts off rational analysis, the primal mode of survival kicks in. It’s when morals and spines are broken.

Let’s say your business is reliant on just a few big customers. Now any one of them has the power to make you sweat, or worse, by threatening to pull the plug. If you absolutely need their business, you will absolutely do what they say — even when it’s the wrong answer or direction to the overall mission. When your business has been over-tuned for these few edge cases, your dependency deepens, leaving you less open to new customers (and profits).

This is why acting on customers’ requests, rather than on their behalf, is generally a bad idea. Customers know what’s right for them, in singular. It’s your job to listen but then act on the aggregate sense of what most customers would want most of the time. That’s very hard to do if you can’t afford to say no to a single customer.

The same is true with vendors. If you’re relying on a service so much that they can dictate your existence, well, then they can dictate your existence! That’s the recurrent threat and theme of building on other people’s platforms. Or relying on a particular algorithm for search results in, say, Google. Companies make choices based on what’s right for them, not what’s right for you.

Finally, the hardest part is when this is true of employees. If your magic wizard of server mountain is a complete asshole, but only they hold the knowledge of how to keep your business in the air, whatcha gonna do? You’re going to eat their bullshit, that’s what. And that bullshit is going to seep through the whole organization until it has stained it completely.

The easiest way to get yourself out of a bad situation is to avoid it in the first place. Harder said than done, but not impossible if you maintain a healthy dose of skepticism when Golden Opportunities present themselves.

Like when that big prospective client is dangling a huge check that could grow your business by 20%, but the alarm bells are already ringing red on their list of “requests” to make that happen. Is growing by 20% in one jump worth it if it’s off the ledge?

When the vendor offers you a too-good-to-be-true deal if you’d just climb inside their fortress with towering barriers of exit, well, then maybe the power of that social graph should get another thought.

Or when that impressive candidate who’s willing to take a below-market salary radiates contempt for anyone beneath their ninja chops. Is having one superhero on the team worth a toxic environment for everyone else?

Don’t make any of your dependencies too big to fail. Whatever advantage you gain in the short term by saying yes is dread and misery later when you can’t say no.


We designed Basecamp from the beginning to capable of taking individual losses. Most customers only pay us around $50/month. We built an audience and technology base that wasn’t beholden to any existing corporate platform or vendor. Those choices are part of the reason we’re still around after 12 years.

To the Android open source community: Thank you!


While developing the Basecamp 3 Android app over the past year, we’ve leaned quite a bit on some really useful open source libraries.

These libraries did a bunch of heavy lifting for us. They helped shorten our development time, increase programmer happiness (since we didn’t have to write them from scratch!) and ultimately ship a better product.

Open source is such a deep-rooted part of Basecamp’s culture that I think it’s important to give credit where credit is due. I want to, in some small way, show our gratitude to a group of people who probably aren’t thanked all that often.

So, to all of you — the women and men who author and maintain Android open source projects everywhere — thank you very, very much for all your hard work!


The All-Stars

There are lots and lots of libraries out there, so I’d be remiss if I didn’t call out some all-stars that really helped us out.

Big thanks to the teams that build and maintain these libraries — you’ve made our work and lives better! (If you’re an Android programmer, it’d be a good idea to bookmark these if you’re not already using them.)

  • Facebook’s Stetho: A debug bridge that lets you use Chrome Developer Tools to inspect native UI, resources, and data. We use this quite a bit to debug layout issues and stored preference data.
  • Flipboard’s BottomSheet: An easy way to mimic Android’s bottom sheet interaction without writing it from scratch. We use this to power our share sheet, and have some ideas about future uses too.
  • Google’s GSON: Easily serializes JSON into Java objects. We use GSON a lot to serialize JSON data, which makes it a breeze to work with in Java.
  • greenrobot’s EventBus: An event bus that makes it super easy to implement a pub-sub model. We use events for all sorts of stuff, like updating the UI when a background data call finishes.
  • Path’s Android Priority Job Queue: A job manager that has simple defaults, but offers a lot of power too. It’s fantastic for running asynchronous jobs and a wonderful replacement for the dreaded Asynctask.
  • Square’s Retrofit and OkHttp: If you’re doing any kind of API or HTTP work, you need to use these, period. We use Retrofit exclusively for all of our API interfaces.

Giving Back — Turbolinks Android

Like any good citizen of an active developer community, we’re not just going to leech — we’re ready to give back!

In short order we’ll be releasing our first open source Android library — Turbolinks Android. It’s the same adapter framework that’s powered our Basecamp 3 Android app since November 2015, and it’s a crucial component in our native-web hybrid approach. It’s made specifically for Android, and will get your hybrid app hooked up to a Turbolinks 5 web app in a jiffy.

We’ve done our very best to make sure Turbolinks Android possesses all the qualities that we love about the all-stars libraries above: easy to get started, easy to use, fast, and reliable.

We’re thankful that we’ve been able to stand on the shoulders of awesome libraries ourselves, and can’t wait to get Turbolinks Android out to the open source community!


If you’re an Android open source developer and ever want to chat, feel free to contact myself or Jay. We’d love to talk and share ideas!

We’re hard at work making the Basecamp 3 and its companion Android app the best it can be. Check ’em out!

Helping clients and firms get to Yes.

One of the hardest answers in the client business.

When we launched Basecamp 3 a few months back, we launched a flavor called “Basecamp With Clients.” This version of Basecamp 3 has one big thing that’s different from the standard version of Basecamp 3 — it has something called “The Clientside”.

The Clientside is an exclusive feature in Basecamp 3 built to specifically separate the back of the house (unfinished work in progress that’s only visible to your team) from the front of the house (finished work, client presentations, and communications that the client can see and participate in).

The Clientside allows firms to be 100% sure the client can’t see anything they shouldn’t see, or hear anything they shouldn’t hear. It eliminates all the fear and anxiety that’s often tied up in “Oh shit, that wasn’t for them” moments. I’ll be writing more about the backstory, research, and ideas behind the Clientside in a future post.

For now, I want to share a big improvement we just launched: Approvals.


A ton of client services firms (design firms, consultants, development shops, accountants, lawyers, etc) use Basecamp to run their projects, present work to their clients, and keep their client’s feedback on the record.

Having talked to hundreds — maybe thousands — of client services firms over the years, and having been in the client business for many years, one thing is clear: Getting to “yes” can be difficult. Not a sorta yes, but a real yes. And firms need definitive yesses in order to make sure something was approved. Since future work is based on the approval of earlier work, clear approvals are fundamental to a healthy client relationship.

Yes is the only thing that means yes.

Sometimes people show work to a client using Basecamp and they get a “Looks great!” or a “Wow, nice!” or a “Sweet! Love it”. Sound great, doesn’t it? Problem is it’s not a yes or a no, it’s still a maybe. It’s unclear if “wow, nice” means “yes we approve” or just “wow, nice… looking forward to seeing more.” When money and relationships are at stake, clarity around yes or no is essential. The last thing you want to do is assume someone approved something, then build other work on top of that approval, and then find out that the foundational approval wasn’t actually an approval, it was just a reaction. “That’s great” does not equal yes.

So, we set off to help firms and client alike bring clarity to their working relationships.

Now in Basecamp 3 you’ll see a new button on the Clientside called “Get their approval on the record”. When it’s time to get a definitive yes or no, this is the button to click.

The button is on the right.

Next you’ll see a screen like this that asks you which person on the client side needs to approve this work, what you want to ask them to approve (you can attach files, images, etc), when you need the approval by (whenever, or an exact date), and anyone on your team you want to cc.

The who, the what, and then when.

The request for approval is then emailed to the client and marked waiting on your end.

Waiting for approval.

The client then gets an email that looks like this:

No log-in required — they just click the button to go through the simple approval process.

When the client clicks the button they’ll see a web page — no login required — which shows the work you want them to see along with any additional description you’ve added. Below that, they’ll see two simple buttons: “Yes, I approve” and “No, not yet”.

“Do we have your approval?”

The client can click either Yes or No. They’ll then have a spot to leave additional feedback or commentary to support their choice or ask a follow up question. Whatever they say will be record back in Basecamp:

Beth on the client side said yes, and added something about how delicious those pancakes actually look.

The team on the firm side will also get a notification and a receipt confirming the approval (or non-approval) which they can then comment on and carry on the discussion. Every single step of the way is stored on the record so there’s never any confusion about who said what when. It’s clear for both sides to see, which is key for accountability and part of the fundamental value of Basecamp.


Getting to a definitive yes or no is one of the hardest things in the client business. You don’t want to pester, you don’t want to hassle, you don’t want to have to have an awkward conversation about what “Looks great!” means — especially when thousands of dollars and important deadlines are on the line.

But when you use a system like Basecamp to help you get a clear yes (or no), you eliminate the moments for miscommunication that can unfortunately happen when people use different language to mean different things. Assumptions around approval can really hurt a project. We’re aiming to help you replace assumptions with definitive answers and clarity.

We hope you find this useful!


And it’s just the start of where we’ll be taking Basecamp With Clients in 2016. Lots of very cool stuff coming your way.

Now that I’ve created something, how do I spread it?


Vaguely remember something about the “discovery of electricity”?

A guy flew a kite in a storm, lightning struck, traveled down the string of the kite to a key…When the key was touched, out came a jolt of electricity giving a non-lethal shock to its famous victim. Who was that famous scientist?

Jacques de Romas.

Wait, that’s not right. Wasn’t it Benjamin Franklin?

Well, not according to more than a few historians. And the Bordeaux Academy and The French Academy credit de Romas for successfully being the first to complete The Kite Experiment.

Even Mythbusters believe they’ve busted Franklin’s claim — the shock from the reported key would have easily killed him.

Still, if you were to believe Franklin performed the experiment, it was meant to prove lightning did indeed behave the same as electricity. (It wasn’t really about the discovery of electricity. People had already discovered that.) And a guy named Thomas-François Dalibard had proven a month prior to Franklin that lightning was electricity through an experiment similar to The Kite Experiment but using a lightning rod.

So why aren’t grade school kids taught about Thomas-François Dalibard’s discovery. Why isn’t de Romas flying the kite in that painting? Why is Franklin so famous for something he probably didn’t even do?


I enjoy helping entrepreneurs figure out how to start and grow businesses. At a recent talk I gave, one question stuck in my mind. The young entrepreneur asked, “Now that I’ve built a product, how do I get it to spread?”

This entrepreneur recognizes that having a good idea and building a great product isn’t enough.

In a paper studying how we can predict success, researchers found that given a market where people are trying to pick things that are of good quality (e.g. movies, music), as soon as you give consumers extra social information (e.g. number of downloads, likes, stars, votes), the success of good products becomes unpredictable.

We can’t predict successful things just based on how good they are. Our social influence over each other messes up our ability to choose.

So how do we get our products to spread if it’s not enough to rely on making something great.

I believe we can find some answers if we explore why Benjamin Franklin is so famous for his mythical kite.


Benjamin Franklin was born on January 17, 1706, and already at 12 years old he was learning how to build an audience.

He became an apprentice to his brother, James, who taught him the printing business. And when Franklin was 15, James founded a newspaper, The New-England Courant. Franklin wanted to write for the newspaper, but James wouldn’t allow it. So the rebellious teenager just wrote under a pseudonym, Mrs. Silence Dogood.

He was hooked. He kept on writing, and working in the printing and newspaper businesses.

Let’s look at this quote from Mythbusters about how The Kite Experiment myth began:

The American legend likely sprang from an article Franklin wrote for the Pennsylvania Gazette in 1752 describing a theoretical kite-lightning experiment.

There’s Franklin writing an article for the Pennsylvania Gazette.

But Franklin wasn’t just an occasional writer there. He owned the Pennsylvania Gazette! And the Pennsylvania Gazette was the most read newspaper of the American colonies.

Franklin knew the power of writing and owning ways to distribute his messages. So he spent significant time writing for newspapers, publishing books, even running a newspaper — in other words, building an audience before he even had much to spread.

So when Franklin was writing about theoretical experiments, it was his name that travelled far and wide because of the audience he had spent years cultivating.


You’ve likely heard of a recent startup called Product Hunt — a popular site listing new product launches. Its founder, Ryan Hoover, is frequently appearing in technology news and popular blogs, and getting some nice TV coverage.

Most people see the “overnight success”. But if you peek just a little bit further back, you’ll see Ryan doing something similar to Benjamin Franklin.

He was writing.

Ryan was a product manager at a company called PlayHaven. And during his time there, he knew he wanted to create a business, he just didn’t know what it would be. But instead of squandering his time dreaming about starting a business, he built an audience.

He put a ton of effort into his blog, Twitter, and getting articles in popular online magazines like PandoDaily and Fast Company, writing about other people’s products and what made them successful.

And his audience grew.

When the time finally came to tell people about a product he built, he didn’t have to go looking for a way to spread it, he already had it.

Look at one of the first articles talking about Product Hunt on Fast Company. Who wrote it? Ryan Hoover. And editors at other magazines were happy to spread Ryan’s news… because he had already been helping them.

Benjamin Franklin also had another genius idea to help spread his work — he created a hub of smart people interested in helping each other out, the Junto.

Look at some of the questions Franklin created to guide a Junto meeting:

  • In what manner can the Junto, or any of them, assist you in any of your honourable designs?
  • Hath any body attacked your reputation lately? and what can the Junto do towards securing it?
  • Is there any man whose friendship you want, and which the Junto, or any of them, can procure for you?

The Junto was created to help spread the ideas of Franklin and his fellow members.

Before Product Hunt was created, Ryan was creating his own group, Startup Edition. He asked a group of like-minded bloggers, including myself, to blog about the same topic each week. We joined because of our interests, but also because of a slightly selfish reason — the extra value the group brought to each other: shared traffic. If someone like Adii Pienaar wrote a great post, then the rest of us enjoyed benefiting from his blog traffic as he linked back to the group.

And when Ryan had built a product of his own, the folks in Startup Edition were some of the first people to spread the word.


If you’re dreaming about your own business, but reading this while working for someone else, or maybe you’ve already started something, but it’s far from being ready or good, don’t squander this time. Don’t wait. Start writing, teaching, and publishing today. Form groups of like-minded people and friends. So when you do have something of your own to spread, you’ll already have an audience happy to help.

Either write something worth reading or do something worth writing.

Benjamin Franklin

And Franklin did both.


P.S. It would be awesome to meet you on Twitter, or check out what my own writing and publishing led to what I’m now doing at Highrise.

Latest batch of Basecamp 3 updates (January and early February)

Hey all! 2016 is in full swing, and so are our designers and developers. We’re hard at work making Basecamp 3 better for you and you and you! You too!

Here’ a roll-up of some of the latest improvements and updates over the last few weeks.

Thanks again and here’s the latest…

  • Major new addition to Basecamp With Clients: Approvals! Read more about this new feature here.
  • You can now complete to-dos directly on reports. Before you had to click through to a to-do from a report to complete it. Much faster now and less back and forth too.
  • We’ve revamped the way you address emails to your client on the Clientside. The new design better reflects a traditional from/to design ala most email clients rather than the previous checkbox-style list we had.

A proper to: field with pills just like most email apps.
  • We’ve introduced support for the Microsoft Edge browser. This will allow people to start accessing Basecamp 3 using MS Edge 13+, which is the default browser in Windows 10. There may still be a few nits here and there, but at least people on Edge aren’t blocked anymore.
  • You can now see which platform someone is responding from when they post a comment. At the bottom of every comment you’ll see a “via…” line. Desktop, iPhone, Android, iPad, etc.

“via desktop”… “via iPhone”… etc.
  • Automatic Check-ins and Schedules now show you who will receive a notification when you submit an answer or post a comment. Before it was anyone’s guess — now it’s clear! Sorry about that.
  • We noticed that people were mistakenly publishing drafts instead of saving a new version. Problem was that the publish button was the default button when you were editing a draft, so people were clicking that button when they really meant to hit save instead. So we changed the UI around and made “Save” the primary green button and then added a blue “Post” button separately. This should cut down on inadvertent publishing significantly.

Yay for fewer mistakes!
  • A top request has been answered! Now you can view your assignments sorted by date. You can also view any one else’s assignments on the “What’s on someone’s plate?” report by date as well. This way you can see what’s coming up soon for you (or someone else) rather than just seeing everything they have assigned to them.

NEW: “Just the ones with due dates” tab.
  • Major aut0-save improvements across the board. If you’re in the middle of writing (or editing) a message, a document, a to-do, or a comment, and for whatever reason you are pulled away or your browser quits, what you’ve written won’t be lost. When you return back to it you’ll see the text right there in its place so you can pick up where you left off.
  • …plus a whole bunch of under-the-hood updates to improve reliability, stability, and speed. There always a lot of stuff that people don’t see, but they feel.

More improvements on the way. The iOS and Android apps will be updated shortly with their own batches of improvements. Android has some great improvements around notifications that should hit any day now.

Stay tuned and thanks again for using Basecamp 3! And if you’re not using it, let’s change that! Sign up for Basecamp 3 — it’s completely free to try.

Control Your Type: Google Fonts + Chrome = trouble?

tl;dr: If you let Google Fonts host your type for you, it might look terrible for some users on Chrome, especially Open Sans. Solution is below — you’ll probably need to host it yourself.


It’s not supposed to look like that

A user recently reported having trouble with the typography at Highrise:

This is happening to everyone here at our company. 100+ people here in the building. We took a vote and they had me contact you.

-Alex

Hmm, that can’t be good.

Let me back up…

A couple of months ago we changed the typography of Highrise. It’s part of a much longer and larger project to refresh the entire app. Over months, we went though dozens of different choices. Eventually we landed on Open Sans. Open Sans is a beautiful typeface Google commissioned and open sourced. And for that reason it’s used in a bunch of places not the least of which are many Google sites.

Font Reach shows over 190K sites using it. It’s the #6 most popular font in their catalogue. The biggest sites on the internet are using it: Google, WordPress, Mozilla. Even Chase, the bank, uses it.

And we started using it. People dug it.

https://twitter.com/gregormckelvie/status/665085345613160448

Some it took a moment:

Right away though we had someone complain:

Is there a way to change the font?

Uggh. They don’t like it?

They sent in a screenshot.


Yeah, that doesn’t look right. But then looking at the screenshot deeper:


It looks like their whole system might be pixelated/non-aliased looking. Turns out having “Cleartype” on can make a big difference. So the solution was just to recommend turning on Cleartype. That should improve Highrise as well as their entire system.

Still, I wondered how many people were having this problem. We didn’t hear too much about it, until the above email from Alex that it was affecting 100+ users in their company.

Ok, so let’s tell him to make sure Cleartype is turned on. Hmm, get some push back. It’s just affecting Chrome, not Firefox. Can’t be Cleartype then as that would be a system wide problem.

Looking more for Google Chrome font rendering problems you’ll quickly find: How to Fix Google Chrome Font Rendering Issues.

Ah, I guess Chrome tries to use some fancy 2D GPU accelerated graphics… But that doesn’t always work on your machine, especially if your video card doesn’t support it. A person in that article: “In my case, “GPU Accelerated Canvas 2D” was enabled in Chrome. I disabled it, pressed the button on the bottom of the page to restart Chrome, and the problem went away.”

But Alex tried disabling this, and it still didn’t work. Besides 100+ people at his company couldn’t possibly have outdated video cards?

So what the hell? Kept looking.

Maybe there’s something specific about Chrome and Open Sans? Bingo.

A bug?!

1. Go to any site that uses Open Sans Normal 400 in Chrome Windows

2. It appears condensed

3. Even on the google font site

uninstalling a local version of the ‘Open Sans Light’ font from my Windows machine fixed the issue.

Dammit.

So Chrome is using the Light/condensed version of the font when it shouldn’t be. When it sees “Open Sans” at weight 400, it picks Open Sans Light locally from your computer. But 400 should just be the “normal” font.

Let’s look at how Google hosts this font using WordPress.com for example.


Which links: //fonts.googleapis.com/css?family=Open+Sans:400,300

Looking at that:

/* latin */
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3ZBw1xU1rKptJj_0jans920.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}

And what does src: local() do?

src

URL for the remote font file location, or the name of a font on the user’s computer in the form local(“Font Name”). You can specify a font on the user’s local computer by name using the local() syntax. If that font isn’t found, other sources will be tried until one is found.

Aha, so it’s using the local version of Open Sans first, and somehow Chrome thinks Open Sans Light is the same as Open Sans at 400.

How can we fix this? We can stop using local()…

And host them ourselves. Here’s more detail.

1) First, get the fonts themselves from Google.



How about the “you don’t need to download” bit? 🙂 Don’t believe them.

Get the Zip file.

2) Once you have the fonts in the Zip file, you can use Font Squirrel to convert them to the appropriate web format:

http://www.fontsquirrel.com/tools/webfont-generator

We used the Basic conversion.

3) Next we chose Amazon’s S3 with Cloudfront in front to host the files ourselves. You’ll need to configure CORS on the S3 bucket.

4) Instead of using the @font-face declarations of Google’s, create your own.

You can take a peek at ours here: https://gist.github.com/n8/64748ac46ee67051dc45

For example:

@font-face {
font-family: 'Highrise Open Sans';
font-style: normal;
font-weight: 400;
src: url("//static.highrisehq.com/web/fonts/opensans-regular.eot?#iefix") format("embedded-opentype"), url("//static.highrisehq.com/web/fonts/opensans-regular.woff2") format("woff2"), url("//static.highrisehq.com/web/fonts/opensans-regular.woff") format("woff"), url("//static.highrisehq.com/web/fonts/opensans-regular.ttf") format("truetype"); }

You’ll notice that there are no more src: local references. We don’t want anymore collisions. So we use the src of the font on our server. Never on the local machine. We’ve also called it “Highrise Open Sans” in order to avoid any more collisions.

5) Now, when we want to use Open Sans in our CSS, we call for “Highrise Open Sans” as our font-family:

input, textarea, select, button, input[type=submit] {
font-family: "Highrise Open Sans", "Helvetica Neue", helvetica, sans-serif; }

And done!

That looks a lot better.

-Alex

That was a pretty easy change as changes go, and worth it for those folks going through this. I suspect there’s also trouble with other fonts and odd local versions.

One trade-off is that our users will always have to download the font from our servers rather than use their local version. So there’s a performance hit. But since our users are mostly return visitors, they’ll have the font downloaded and cached on subsequent page visits.

Huge thanks to the whole Highrise team for figuring this out, and Grant Blakeman, a designer and developer who has been giving us a ton of help over here, for the solution!

Since Google Fonts, Open Sans, and Chrome are definitely popular, if you’re running into the same problem, hopefully we can save you some pain in getting this fixed!


P.S. It would be awesome to meet you on Twitter, or see the awesome new stuff we’re doing at Highrise.

What are you drawing, Lily?


I have more than a few friends who keep talking about the businesses they want to start. But every week there’s a new excuse.

They can’t make up their minds about the best credit card processing company, or the best blogging platform, website CMS, or shopping cart, or the best book that will guide them to success.

Of course, most people invent all these obstacles so they never actually have to start and risk failing. Their ideas can remain flawless dreams.

But others see the Ubers, Dropboxes, and Airbnbs, or whatever else is worth a billion dollars this week, and they think they need to create something as big, and as perfect.

Airbnb has raised $2.39 billion at a valuation of $25.5 billion. That’s an awfully big company to look up to.

But Airbnb was a mess when they started.

Paul Graham told them their idea was crazy.

And he was right. Airbnb’s idea wasn’t just crazy, it wasn’t good — they wanted people to rent out real airbeds, and hosts were required to make breakfast for their guests. After 8 months in business, they were stuck making $200 a week in revenue.

Most of us would have been “smart” enough to give up. But instead they kept on sucking.

At one point they flew to New York with a nice camera to help users update their listings with some high resolution photographs. That helped them book $400 a week in revenue.

Still a laughable amount of money for three guys trying to make a living, but it was enough of a bump to keep them excited.

So they kept on sucking… until they didn’t suck anymore.

Of course, most of us still aren’t going to create something anywhere near as big as Airbnb, but imagine how much we’ll learn if we just start.


The Airbnb guys remind me of a band:

When I think about kids watching a TV show like American Idol or The Voice, then they think, ‘Oh, OK, that’s how you become a musician, you stand in line for eight fucking hours with 800 people at a convention center and… then you sing your heart out for someone and then they tell you it’s not fuckin’ good enough.’ Can you imagine?

It’s destroying the next generation of musicians! Musicians should go to a yard sale and buy an old fucking drum set and get in their garage and just suck. And get their friends to come in and they’ll suck, too. And then they’ll fucking start playing and they’ll have the best time they’ve ever had in their lives and then all of a sudden they’ll become Nirvana. Because that’s exactly what happened with Nirvana. Just a bunch of guys that had some shitty old instruments and they got together and started playing some noisy-ass shit, and they became the biggest band in the world. That can happen again! You don’t need a fucking computer or the internet or The Voice or American Idol.

Dave Grohl, drummer for Nirvana


I was watching my nieces, Madeline and Lily, when Madeline was 3, and Lily was 4. They both sat there eagerly making things. They didn’t have excuses that they didn’t have the right markers or the right paper or the right idea.

I had run out of blank printer paper, so they started making paper airplanes out of magazine inserts. Madeline was thrilled to draw with whatever utensil she could get her hands on. Lily had found a pink ribbon someone had dropped on the street. She picked up the forgotten trash and later turned it into a kite.

Of course, their airplanes didn’t work. I have no idea on earth what Madeline had drawn. And the kite didn’t have a chance of actually flying. But it didn’t matter. They didn’t care. It was a start and you can see them just get better and better at making these things as they practice and practice and practice.

Later I heard of a conversation Lily had with her mom that sums up how little these kids care of what others might deem as “perfection”, and how much they just care about putting their best something — anything — they’ve created into the world.

Lily’s mom: Lily, what are you drawing?

Lily: I don’t know, Mom. I haven’t drawn it yet.


P.S. It would be awesome to meet you on Twitter, or see what all my own sucking eventually led to with what I’m now doing at Highrise.

Knowing the words is half the battle


One of my favorite career stories is this one from Michael Beirut:

I designed little magazines when I was in the third and fourth grades, and I made logos for my friends’ bands when I was in the seventh grade. I could do hand lettering, and if someone wanted an animal in the logo, I could do that; if someone needed a poster for the school play, I could do that, too.

All along, I had no idea that what I was doing was called graphic design. I lived in the middle of nowhere at a time when no one knew anything about something like graphic design.

By accident, I happened to find a book in my high school library…it was called Aim for a Job in Graphic Design/Art. I opened the book up, and it was like receiving an instruction manual for my future career: it was all right there. I was about 15 at the time, and I thought, “This is what I want to do.”

This bears repeating: one of the world’s preeminent graphic designers didn’t know graphic design was a thing — let alone a job you could get paid for — until high school.

He knew what the idea of graphic design was, and he even knew how to do it. But he didn’t know what to call it.


Perhaps the biggest obstacle to gaining skills in a given domain is knowing the right words. Being a beginner is intimidating because you don’t speak the same language as experts, who have often forgotten what it’s like to be a beginner.

If you’ve ever had to talk to a car mechanic, you know how it feels. In the immortal words of George Costanza:

Of course [car mechanics] are trying to screw you! They can make up anything, and nobody knows! “Why, you need a new Johnson Rod in here.” Ohh…a Johnson Rod…Yeah, well, better put one of those on!


Here’s another example. Millions of people use iPhones, but they don’t know the official names for all the interface widgets and the underlying stuff that makes them work. It doesn’t affect their ability to use an iPhone, because the iPhone is well-designed.

Customer:

I went to Twitter, then hit the thing that said “Notifications”, and a new screen came in, then I saw some messages, and it stopped working.

By contrast, an iOS developer knows the domain words, so they can be more precise:

Developer:

The customer opened the Twitter app, then selected the Notifications Tab in the Tab Bar. The Notifications Table View rendered for a moment but then the app crashed. The issue might be the Notifications View Controller or some malformed data in one of the notifications.

In product design, this is related to User Experience (UX). Part of a UX designer’s job is making sure a product’s internal language is either hidden away, or translated into common words that users can understand and interact with. If you don’t do this, you might end up with this kind of thing.

A customer support rep’s job is the opposite: they translate customer-speak into domain words so a specific problem can be resolved — especially in the case of a bug report that gets passed along to developers.


Here’s one last example. I’ve been an obsessive music fan for most of my life, but I’ve never formally studied it, so I don’t know the terminology. Check out this video of Jeremy Leaird-Koch building an electronic song from scratch on an OP-1. (Jump to 1:25 or so.) Be sure to watch the subtitles.

If you make it through the whole video, you’ll see a ton of expert language:

  • Sequencing
  • Swing
  • Delay
  • Kit
  • Wubbing
  • Phasing
  • Filters
  • Ambient poly lead
  • Modulation
  • Envelope sharpening
  • Arp (arpeggio)

I’ve put in 30+ years of music listening, and these phrases might as well be in a foreign tongue.

So it’s not enough to have exposure to the outer surface of a domain. If you want to level up your understanding, you have to be willing to feel ignorant for a while and study it in depth, until you find your sea legs and pick up a handful of those all-important words. There’s no magic to it. This willingness, and a lot of practice, is all that separates the experts from the beginners.

Once you’ve learned a bit of lingo, you’ll find that the words help you ask questions. The questions help you learn how things interact. When you know how things interact, you can start understanding the system as a whole. And pretty soon, you’re an expert too.


As experts who’ve put in the time, then, how can we make things more approachable for beginners? Wouldn’t it be nice if we could simply eliminate all jargon and special words? Then we’d have no problem, right?

Well, then we’d have a new problem: we’d have no way to talk to each other! Any sufficiently complex system needs names for its component parts— otherwise there’s no way to talk in detail about the system. So eliminating internal complexity isn’t always possible or even desirable. Still, there are a few things we can do to help.

Use plain words instead of fancy words.

For example, if you’re a programmer modeling a message sent by a client, call it ClientMessage instead of ExternalActorSubmissionContent.

Give abstractions familiar names, so they seem less foreign.

In Basecamp 3, we called group chats Campfires and direct messages Pings. They’re still abstractions that users have to learn, but at least they’re helpful names—a little descriptive and a little less intimidating.

Listen to how beginners talk about the problem, and inherit their language.

We did this recently by noticing our customers called Basecamp projects “Basecamps.” They’d say, “Oh, I made a Basecamp for that.” So we ran with it and called Basecamps Basecamps instead of Projects.

Don’t assume simple words are adequately clear.

Trying to be too simple or succinct is usually worse than being clear and verbose. This is why people are confused about what food is “healthy.” Even though healthy is a simple word, it’s an unclear way to define food.


If you’re in the privileged position of being an expert at something, don’t forget what it felt like to be a beginner. Let those battle scars inform how you communicate, and choose your words with intention. If you need a reminder of how it feels to be a newbie, just pick yourself up an OP-1 and let me know how that ambient poly lead turns out!


We worked hard to make Basecamp 3 the clearest and friendliest version we’ve ever written. Check it out and see more examples over at basecamp.com.