How To Think Like A Computer Scientist

“Thanks for coming by, but we’re going to have to get another estimate before we book with you”

It was a frosty evening in January and I was walking back from my fourth failed sales call that day; broken, defeated and feeling miserable. I thought, “Why was it that I couldn’t book the sale on the spot? Was I lacking some sort of natural ability, or was this something I could learn?”

This was 2013 and I had just started a painting business, despite a fear of heights and zero experience with a paintbrush. These concerns of course didn’t matter, as with any service business, the only thing that mattered was booking the sale. It didn’t matter if you were the best house painter in the whole country, if you couldn’t book the sale, you (or your employees) couldn’t eat.

Yet for one reason or another, I wasn’t getting the results I wanted. Luckily for me, this was also around the time I was learning about black box functions in an online computer science course I was taking.

Improving Your Functionality with the Magic of a Black Box

A black box in computer science is an unknown entity through which things pass with causal changes. The idea is that you have a certain input - say, the number five - that goes into a black box which performs some unknown action on the number five, and out comes the number seven or another output. We have no clue what happened to the five to make it a seven - all we can do is create assumptions and test them.

While learning this concept, I thought to myself, “Why can’t I treat sales just like a black box function in computer science? I know the output I want – booking a sale. So what steps can I take to ensure that the inputs of the sales interaction, resulted in this desired output?”

With this line of questioning, I realized quickly that there were certain inputs that I could modify.

I could dress differently. I could ask different questions. I could modify my body languages. 

All these inputs would go inside a black box function. Why a black box? Because I never knew 100% what the outcome would be, since every sales interaction would be different. In a black box, you could never truly know the result of all the combined inner workings. Once this black box receives and processes these inputs, it would hopefully produce my desired output: a booked sale.

This concept can apply to just about every area of life. In fact, many startups and successful business entrepreneurs were already putting this model into practice – whether they knew it or not.

How To Get Into Any Accelerator

Jack Smith was the co-founder of Vungle when it was just a fledgling startup and looking to get off the ground. He and his co-founder were based in the UK and had heard about this accelerator called “Angelpad” in the US. Taking a look at the formal application process, the two co-founders realized that if they wanted to succeed, they were going to have to take a different approach. In other words, they were going to have to change their inputs to achieve their desired output.

The duo decided that using LinkedIn as an advertising platform would be the perfect input to achieve their desired output. The team at Vungle set out to create a specific LinkedIn advertising campaign targeted at the founder of Angelpad and all the people in his network.

The ad was the face of the founder of Angelpad, with the text “If you know this person, please ask him to visit this link and to give us a call at xxx-xxx-xxxx”.

Underlying the unpredictable nature of the black box function, neither of the co-founders could have predicted what happened next. As the founder of Angelpad was coming out of a flight, he was flooded with texts, emails and voice mails of people telling him to check the ad out, and call the two founders. Within a few minutes, Jack and his co-founder were on a phone call with the founder of Angelpad, which led to an interview, which led to Vungle securing the last spot at Angelpad. A couple of months later, Vungle graduated from Angelpad, and has raised 25M.

AirBnB On Surviving The Startup Cash Crunch

Before AirBnB was AirBnB, they were Air Bed and Breakfast. Back then; they weren’t the media and tech darling they are today. Instead, there was a high likelihood that debt would soon force the founders to close up shop.

Those were some tough days. It seemed no matter what they did, nobody in Silicon Valley would take them seriously due to their designer backgrounds.

It became clear to them that to achieve the desired output of keeping the dream alive, they would have to take an alternative approach in their input. Noticing the buzz around the 2008 political campaign, the duo at AirBnB came up with the idea for politically-themed cereal, assuming the hype around the election could translate to our favorite breakfast staple. That’s right. The same cereal you eat every morning, only branded with presidential candidates. This came in the form of “Cap’n McCain’s” and “Obama-o’s,” selling for $40 per box.

The cereal gambit ended up becoming extremely profitable as they managed to sell more than $30,000 worth of cereal! With the desired output achieved, they were able to continue operations, eventually being accepted into Y Combinator and reaching the 25B valuation they have today.

The Glue That Keeps Facebook Sticky

Facebook is an interesting company because more than any others, they have mastered the art of the black box function thinking. For Facebook to have gotten to its current valuation, they needed to maximize their users’ time spent on the platform, and they had a variety of inputs at their disposal to make this possible.

One strategy, which generated heated controversy, was Facebook's decision to surface mainly positive content. The reason being that individuals who are exposed to positive content such as graduations, weddings, smiling faces, etc., will be more likely to experience a happier mood. This meant you as a user was more likely to interact with Facebook in the form of likes, comments, and messages, fulfilling Facebook’s desired output of you spending more time on the platform.

Another input Facebook has tweaked is displaying certain notifications for your viewing depending on who you are and how many interactions you have on Facebook. As a Facebook user, there's a certain amount of notifications that Facebook wants you to receive, in order to keep you coming back to the platform.

Imagine logging in, day in and day out, and seeing zero notifications. It wouldn’t be much of a platform to come back to. So what Facebook decided to do was to take a multi-bucket approach with notifications. If they noticed you weren’t getting a lot of likes/comments friend notifications, they would start sending notifications about friends posting in groups, pages sharing posts, and anything else that would cause you to stay on Facebook for as long as possible.

Despite the critics saying that Facebook's dominancy is over, it's undeniable that they’ve been able to create an engine of retention that keeps users coming back. It’s no wonder Facebook was able to cross 1B active users in a single day during the month of August 2015. A number that doesn’t look like it will stop growing anytime soon. All this thanks to changing their inputs to best align with their outputs.

Applying The Black Box Function

“Let me check my calendar. Looks like May 28th is a great date to start the painting, let me get you the cheque for the deposit.”

The sale was for a $4500 full-house painting job with a 25% profit margin. Not bad considering weeks before I was struggling to close a $500 painting job on a simple staircase.

So, what changed? Well for one, I realized my initial approach had a lot of areas to improve on. So just like the examples I covered in this article, I realized that I needed to adjust my inputs, to achieve my desired output.

I adjusted my inputs by taking more time to get to know the customer, what they were interested in and what their needs were. While also taking advantage of well-known sales tactics such as building commitment (gradual “Yes’s”), using social proof (presenting customers with a book that had all my customer testimonials and information on my business) and leveraging the principle of reciprocity (“Free” estimate and bringing free coffee for the customer during sales calls).

With this newfound model, I ended the summer with $86,000 in sales revenue. More importantly, I’ve learned to incorporate black box function thinking to problems in my life which has yielded some incredible results. To break down the model even further, here’s a four step approach that I take when I'm looking to achieve a desired output.


1) Figure out your desired output

In my own example, I wanted to hit $100,000 in booked sales, so for that to happen I needed to book at least 30% of my sales calls, or I would need to do a high number of estimates. Since there were only so many people that I could do estimates for, I decided to focus on improving my conversion rates for booked sales


2) Map out your assumptions about the black box

In my case, I assumed that people prefer to hire someone who they can relate to, they trust, seems competent, and makes them feel at ease. Ultimately though all you can do is make assumptions about the nature of the black box and execute to see if those assumptions prove true.


3) Write down a set of inputs given your assumptions about the black box, that can help you achieve your desired output.

In my case this was making sure that I was organized, came prepared with all the essential materials, seemed knowledgable about what I was talking about, and had an amicable personality.


4) Test these inputs quickly and listen to the feedback loop

If you realize that a certain input failed to deliver because one of your assumptions about the black box proved wrong, go to the next potential input. This meant getting feedback from customers as to why they chose not to book with me, and doing my own personal self reflection after every sales call.


Take a look at your desired output in 2016 and apply this type of thinking to it. Follow these steps and you will be surprised at how quickly you are able to achieve your desired output!