Even data warehousing software has a personality – even if you might not want to spend your leisure time with it. Whether you are aware of it or not, everything you ship will reflect the values and culture of your business. Organisations spend a lot of time reflecting on and thinking about their internal values but these are not necessarily embedded in the software you ship. All software has a personality – it can be passive-aggressive, boring, dominating, supportive, helpful, even fun.
What does your software say to your customers? Can you build software people love, even if it’s doing the kind of things people hate to do? Sarah draws on her experience delivering projects at every scale to show how you can build software that delights customers, no matter what it’s doing.
Don't Miss a Thing - Get BoS Updates
Sarah Allen, Ultrasaurus: Good morning! I’ve spent probably a little bit more than half of my career as a fulltime software developer. You may not have heard my name, Sarah Allen. I go by Ultrasaurus on all things because engineers are typically not well known for their work. However, I would guess statistically there might be 2 or 3 people in this room who has never installed my software on your machine. Now I don’t do install software anymore so it might not be on your machine right now, but I was on the teams that created flash video with Peldi so most of you have seen some video on the internet over the last 15 years. I was on the first team that developed Shockwave. Maybe you play Shockwave movies with your kids, if that’s still a thing, maybe you were kids in 1995 when we developed that. I’m probably most proud of the first really big commercial software that I developed which is After Effects which is nestled on Adobe and it’s for special effects, motion graphics and you’ve probably seen movies that have that in it, but like lines of code, the software that creates the special effects is also invisible.
Now we’re all entrepreneurs here, we’re in the business of creating software. You’ve heard a bit about the stuff that goes around software and how important that is. It’s important to communicate your identity as a software company and to position your software and create materials that explain it. And all of this is a way to communicate on behalf of your software. So your users know what’s going on but the truth is in the privacy of their living rooms and offices, you are not there to explain your software. Your software is talking directly to your customers. And sometimes it says something like – so you probably didn’t intend for your software to say %@, image doesn’t appear to have a parent. But from the laughter you’ve either seen an error message like this or a maybe your software has generated one. Nobody plans for that. So I’m not gonna dive deep into the things we don’t plan for, but some things we do intentionally that have unintended consequences.
So when I think about the creation of software, sometimes I like to think back about how in the olden times people used to make products. You’d know your customers, the cobbler would know the person for whom they made a personal shoe and then they would present that shoe to somebody and they would fit it and if it didn’t fit, they could adjust it. And I think about wouldn’t it be great to have that kind of personal relationship when you have hundreds of millions of customers that’s tough. And then even when we had mass manufacturing, we had individuals who sold the products to other individuals. So you still had a personal relationship with the customer, even if you weren’t hand crafting the products. And then we moved to the web and the web allowed us to do transactions at an enormous scale, but a lot of the first web applications had this type of relationship with the customer.
But of course, you all know, like I’m sure you’re all doing like fancy single page apps and if you look for shoes on the Internet, you can actually design your own shoe now. Not just these shoes, I can design these fancy shoes in different shapes and colours and this type of interface is telling me something different. This interface is telling me this app thinks I’m creative. This app thinks that I can pick colours and patterns and that I am powerful to create my own shoe! And then I go and use this app and I poke around a little bit at the interface and I make a god awful shoe and I think to myself, I could design a really great shoe if I had the time! But you know, I’m busy so I’m gonna pick one of these shoes down here and I can continue to feel awesome.
So you put great decisions in the hands of your customers and they will feel wonderful and powerful and awesome and you want them to feel that way. You want them to feel like they have the power to make any decision, but the best decision is easy at hand.
So I looked around for some of the – I wanted to have some examples of the not so hot decisions that sometimes we make and I’ve definitely designed and implemented things that were compromises in my life and maybe this was one of them. This one I found a couple of weeks ago. I don’t know if you can read the text, but you can go to Nike’s site and create a free account. And every single one of these text boxes has a little red asterisk which means that it’s required. I’m not sure Nike needs all of that to create my account. So let’s take a look at them. First of all, it requires a First and Last name. Not all cultures in the world actually have first and last names. It’s a very kind of European construct. But hey, we’re in America or this web page was created in America so fill in one first and last name. So next an email address. That’s ok, we need those and name and password. And then there’s a screenname. Wait a second! I’m creating an account to like for at Nike to give me some free stuff. Why do I need a screen name? Well next thing it asks me for a date of birth and my gender. So Nike is – I’m getting a profile on the internet that’s gonna have my birthdate and gender on it. What’s up with that? What am I creating? A free Nike account. Maybe it’s not so much free to me as all my data is now free to Nike. So we’re full of this.
We’ve watched Facebook’s business model evolve and I think that people on the internet know that you get a trade off when you get free stuff. We offer us our data to Facebook and they give us some nifty publishing tools. Some marginally interesting advertising and that’s a trade-off that a lot of people kind of accept now, but they haven’t always got that right. Sometimes they’ve made some kind of faux pas that make it feel terribly wrong. Sometimes you feel like you’ve become the battery, that fuels Facebook’s Matrix. Who’s seen this movie? Most of you? Ok, so this is a movie in which the people are like these human batteries for this machine planet which is our future Earth. And it doesn’t feel very good when people realise that they’re being taken advantage in this way. And you would never intentionally – I mean I hope you don’t feel this way about your customers. And you probably wouldn’t try to make them feel this way.
We have a challenge going on in the world today. Trust is declining. This is a graph. The dark green line is how people feel about the American Government, surprisingly it went up and now it’s trailing down. So not only in American do we not trust our government, we don’t trust our own people. So across every party, Americans say we don’t trust the American people to make good decisions about what’s right. We don’t trust the media. This is actually an international problem in China, they don’t trust Chinese companies or multinational companies and the same is true in the UK and US brands. UK brands are doing marginally better, but everything in on the decline.
I really appreciate this perspective from Onara O’Neill who is a philosopher, who says that the issue is not trust, but trustworthiness. It’s only the simple minded who think we should increase trust, where it’s not merited. We should be seeking to trust the trustworthy and place our mistrust also where it’s deserved. She defines trustworthiness is people who are reliable, competent and honest. And she points out that when we trust, we trust with context.
There’s a software engineer I work with who I completely trust to make really brilliant code that’s very robust. I don’t particularly trust him to show up on time for a meeting. You all know this. There are places we put our trust and that’s fine, they are trustworthy for some purpose or some relationship and not for another. If we work hard and execute well on our software, we hire great engineers and we direct them well, we can create reliable and competent software. And I can give a whole other talk about that.
And I’m focusing today on how to be honest. How do we portray our intentions? And it’s particularly hard with software because software itself is a lie. So this is back from the Matrix continuing my analogy. So if you remember there’s a kid who’s managing to bend a spoon with his or her mind and says well the trick is that there is no spoon and of course like later we learn about the batteries and so forth and the spoon is just projected on our brains if we’re in the matrix. When you think about that, I think it’s a good analogy to software cause we talk about clicking a button, but what do we do? We like wave our mouse or drag our finger along a trackpad and some electrical impulses go to the machine, some pixels change colour and we think something real happens. Now that could trigger something very real happening on the other end of the planet, some money can move around. We talk about things that aren’t real. But things can translate into real things. They can translate in to food on our table, they can translate in to things that affect our real lives, but in that moment, when your customer is interacting with your software, it is completely a figment of a shared imagination. And its kind of tricky to make it so, it’s kind of miraculous that it works at all.
Don't Miss a Thing - Get BoS Updates
So I’ve a heritage in my software development career and film so I think a lot about film when thinking about software design. So if you take this film – out of context you might feel like why does Mel Gibson have blue paint on his face? But in the film, you’re reminded of – anybody has seen Braveheart? Not as many as the Matrix but maybe half the audience. So this film, Mel Gibson is leading a bunch of Scottish revolutionaries. I’m sorry, William Wallace. And these people are charging across this field and you feel for them because they are heading into this big of men on horseback. And you think about what these people, what’s gonna happen with these people when these people on horseback mow over them and then you spot that there’s a white van in the corner. Most of us would never see that, because we’re caught up in the action and we’re there to watch a movie, right? Like these film nerds they look out for these things, called continuity in film. Like typically, filmmakers will hire somebody to look for these things in the shots and make sure that somebody is wearing the right hat and things are supposed to be continuous. But when we look at film, we’re just seeing the horses and what’s going on in the action. We’re in the theatre or at home on our couch, eating popcorn, and we’re not paying attention to the edges of the TV set. We’re there for the action. So that’s what you want to create for your software. You want to create this feeling that somebody is there for the thing that you’re putting in front of them, for – and they want you to win. They don’t want to be wasting their time. They’ve bought their software or they decided to click through your signup screen, and to spend their valuable time in front of something you’ve concocted and they have suspended disbelief and they’re buying into your story. So that is what you are seeking to create.
So the key principles that I think about in human interface design is:
- intention and
So we need to create a shared understanding with our customers. We need to intentionally create the experience that’s going to support that and communicate where we’re going with this whole thing and we need to communicate clearly that we understand that they have freedom in this interaction. Not only can they walk away and try to find some other software, but they have agency in how they use your software. And I believe that that is fundamental to making successful software experiences.
So first off, I wanna dive into how we create a shared understanding.
So going back to on-boarding. So I found this example of fitbit, so here they have a sequence. So this is a sequence of screens in the mobile app and in the first screen, they present something. So they’re saying we’re gonna ask you some questions so that we understand your activity levels. So that’s a fair way to start to establish context. You’re telling them what you’re gonna do. But then they ask you for your height and your gender. So I can think about this and I can think well I know a lot about fitness and I know that my activity level has to do with my body mass and my gender because we use calories differently. Oh my god! I’m doing this whole narrative in my head on behalf of fitbit. Like I don’t know how they’re gonna use this information about me. I’m just – they’re asking me to trust a lot here. Maybe not as much as that previous screen but – the other thing is not everybody buys into this binary male/female thing. And it’s not just a mentality. There’s actually some physiology behind it. There’s a number of countries that have recognised that this is a human physiology thing and not everyone is male or female. It’s like 0.5% of the population is actually at least one gender or the other and we don’t keep stats like these because we had these biases that there are only two genders. And so you’ve basically alienated 0.5% of the population is you provide a male/female choice with no context. Some of you who have a lot of customers might appreciate having 0.5% more customers and revenue. These are good numbers. But you probably are also alienating all of their close family and friends. So the numbers stack up there. And – as software grows and you have more competition, there will be people out there who don’t have the biases you do. This is just one bias. You want to try out your software with a variety of users. So that you can see – you don’t intend to put things in your software that alienate people, but it can happen by accident. You try to have diverse teams, and be opened to lots of different perspectives. The only way you can really know is being more aware but also by validating that.
So I wanna take a look at what I think is a good example. This must have been a different team at Nike This is based of Nike Fuel band, which is another little exercise thing and here they’ve got a whole screen to what is basically a single choice. When you’re setting your goal, is this gonna be a normal, active or high energy day? They’ve got 3 different visual representations here, like you got words and numbers. If you look closer, like Nike Points, whatever that means. And then you’ve got visualisations of what that is. Nike is not telling you have to be these people. These are just descriptions. They are not making you buy into this, but these pictures tell a story. Do you wanna be the normal day dude? I’m just like walking along. Like he’s kind of dorky and he’s not doing much. You don’t want that to be your goal. No, you wanna be like the running chick. She’s going somewhere, the guy playing basketball. You really want to be these cool people, you wanna be the skateboarder, maybe you’re gonna take up kickboxing. These images are aspirational. They’re not telling you you are these people, they’re just giving examples of people you might long to be, people you might wanna hang out with if you’re having that kind of a day.
The other thing that this does is it portrays an emotion and it creates context. You’re not just exercising cause. And you may have a goal of losing weight or running a race, but there’s a feeling you get when you exercise a lot. And that’s what they’re trying to convey and that’s a very powerful thing. If you use our product, if you sign up and you pick the higher level, we’re gonna make you feel like this.
So that’s part of the next principle, which is about intention. And I think the way that we can figure out how to broadcast the intention of our software is to discover the story of the people who use our software. We’re not creating that story, although we can influence it. I think about Arab Spring, where some people say that Twitter created Arab Spring, which I think is not quite accurate. There was a movement already happening and this movement was catalysed by technology. Technology helped fuel something that was happening anyhow and helped it happen on a bigger scale.
So when you discover the stories of the people who use your software whether it’s at these quiet moments at work or those times in between, like what are they doing and thinking about? Is it used in a crisis? This was during the Haiti earthquake when mobile technology and transformed how they were able to really increase the survival rate and who they discovered there. And even if you’re doing something incredibly mundane, something that appears to be just a blank slate of software, there is a story behind that.
I read recently that Google Docs is transforming secondary education. Because suddenly, every kid in America can go to the library at school and their neighbourhood library and they’ve got the same app and cloud storage. It costs them nothing and they are empowered to write their term paper wherever they are. I hope that is part of the narrative and engineers who worked on Google Docs. That’s an incredible story! When you’re designing your software and building it, I hope you imagine the hero who is your customer where your software is one of the tools that they take along that helps them through their journey. Where your software is beloved, not like a teddy bear but like Excalibur. You wanna create something that’s a mythical power in the world and then people will love it!
You can empower people with software.
So for the last year or so, I’ve been working for the US government. And I have to take a moment and say I’m here speaking in my personal capacity. I work for the US governent in my day job but I don’t represent the US government, in case you were confused.
So most software that our government creates looks like this. This is the antithesis of empowerment. This typically makes people very scared that they’re gonna fill it out wrong. They have to go and read other web pages that explain what subcommand 1, 2 and 3 are and at best you have to be incredibly disciplined to get through a boring series of steps. The software is limited and it shuttles you down on inhuman paths which arguably people say well the software needs some inputs so use the human half to generate them and I think about the kind of constraints that we need to build into our software. And I think about other things that this country has done. Our constitution and our Bill of Rights has a set of rules, constraints, boundaries and limits of our behaviour. And what we encoded in that document is freedoms. Are there ways that we could create software and through its limitations and boundaries actually encode freedoms?
So I’m gonna tell you 2 stories from government. One of them was just released a little over a week ago that I worked on this summer. So the Department of Education spent over a year pulling together some new data about colleges. So we’ve a problem in this country where college education is getting more and more expensive and college educations do actually makes a difference in many people’s lives and I know some people think they’re not necessary. Those are mostly like young people who are very, very rich don’t need college educations. There’s actual evidence that shows that liberal arts education has a higher and significantly higher earnings 10 years out. And most colleges in the US, if you go to college, you actually make more money than somebody who doesn’t go to college, which you would hope would be every college.
But so the Department of Education set out to collect this data and because people have been applying for financial aid over the last – since 1996 online, people like sign these forms and we can actually aggregate data about income that students make after they graduate and the Department of Education figured out how to collect this data per school so we could see when the students were paying their loans and what their average income was after graduation, sliced by gender and race and if they had a grant and all these things.
So there was a lot of pressure to stack rank all the colleges, because we want to see whether they were falls. It turns out that when you do that, there are certain colleges that end up at the bottom if you stack up things by earnings like seminary schools, which maybe somebody didn’t go to get a big income. There’s other things that people go to college for and there are other measures of success. And far be it for our government to tell us what they are. So they decided to make this app where students can put in what they were interested in and see the results and you can dig in and you can actually see like lots of data per institution. And I hope and think that that communicates to prospective college students that our government thinks they’re smart and can make their own decisions.
It also shows some user research that was done which was that most prospective college students actually understand numbers. That they’re pretty smart and can evaluate data but this is not like your average 4th grade reader statistic newspaper reader type of audience. This is a very smart and motivated audience which enabled us to create this interface that has a lot of numbers and charts and bars on it. You probably can’t read it from the back, but it shows the average annual cost of colleges, where these colleges are all below average, higher graduation rate and the salary after attending.
So in designing this app, we needed to make some decisions about what we were gonna surface and the decisions were based on a combination of things. They are based on actually talking to prospective college students, finding out what are the things that are influencing their decision and it’s also we want collectively to reduce the default rate, we want people to be going to colleges they can afford and where they are likely to be successful. Turns out that most high school students don’t think that the graduation rate that a college has, has anything to do with their individual graduation rate. Just because other kids aren’t graduating – I’m smart. And it takes a certain understanding of the system to realise – no high school kid thinks that there are colleges out there who you pay like $40-50,000 and it would take the majority of that money and put into advertise and not your education. People don’t even realise that that’s a thing. But if you look at the outcome, the federal government is not gonna legislate how people spend their budgets, but if we look at the outcomes and data, then change happens.
So the other tactic for getting your message out and letting your application speak is for it to have an API. So this app it exposes the data which meant that at launch, we had ProPublica who did this great in depth article about specifically looking at how colleges served low income students, probably not targeted at college students. New York Times mapped out how the wage gap across genders is playing out across all of these colleges. Really interesting stuff because we had an API it meant that the app could very, in a focused way, speak to one audience but we could have the bigger goal and have partners or members of the public speak to other audiences.
I think a lot about theories of change. So this is kind of a word that mostly comes from non-profit land. But I think every one of our software applications – we had this opportunity to make change in the world, right? You’re making software but you’re making software to make things happen. At minimum, you’re hoping someone would get out their credit card and type it into your form and get enough value that they don’t turn it off later, but we – certainly in the Federal Government I’m happy that they’re thinking about how we can stimulate the economy, how we can change American Society for the better based on shipping software.
So I wanna give another example that’s more of a classic theory of change because that changes through a web development software. There’s a piece of software that I’ve worked on for the past year called open opportunities. So this starts with a hypothesis that increased collaboration will lead to a more effective Federal Government. Now you might not be aware that the Federal Government is the largest civilian employer in the world and there are 2.7 million employees across hundreds of agencies. Each of these agencies, some of them are hundreds of thousands of people in themselves, they have multiple institutes. People end up being siloes in these little groups where they have not technical or legal limits, but they’re constrained to really interoperate with other people who might be in other organisations who were doing similar work.
So like many employers, the Federal Government surveys its staff and what it does is called an employee viewpoint survey for like the last 10 years or something and they found that 35% of federal employees feel that innovation and creativity are rewarded. So most people look at that number and they go 35%. Oh my god! It really must be bleak to be a federal worker. Sometimes it is – but I look at that number as a software entrepreneur and I think 2.7 million civilian employees divided by 35%, that’s almost 1 million people in my target market. And I’m unlike you all, I have their names and email addresses. At least in theory, in reality it’s a little complicated.
So this program that I work on, the Open Opportunities program started as a WordPress blog. They validated that people would actually do this and would actually collaborate with each other using a lean start-up approach where people would say hey I’ve got a project I’m willing to collaborate on, somebody would post that as a blog post. When somebody else clicked I’m in, the program co-ordinator would send an email to the two people and it would introduce them to one another and they would do the project and then they would post. That validated that people are willing to work in this way because sceptics were like yeah, federal workers, who’s gonna do that stuff? Turns out that a lot of people will. So they had this WordPress blog going on for a while.
Meanwhile, the State Department had done a very similar program and created some open source software that we leveraged to implement this program and in doing so, we wanted to figure out how to really position this more broadly. So we talked to a bunch of people who’d done these little projects through the WordPress blog and it was really interesting to see how they positioned it. They’re very aware that the government is like a huge place and how could it possibly be? People say all the time, we don’t have the resources, we don’t have the skills and 2.7 million people they were probably, right. But you just can’t find them.
And people reported that this was the place that there were cool people doing cool things. That this is where they found resources and those resources were like a toolbox of people and programs, it opened up their world to just do these simple tasks with each other, they connected to whole other parts of Government. So I’ve designed this homepage which is actually done collaboratively with an open source contributor which was so much fun and we distilled it down to making connections, building skills and making a difference and these were their words. And that resonated with them, because up until I did that user research, this program was really resonating with the deputy secretary and the White House folks and the people who think of these programmes on efficiency scale of the government. But when you talk to a new person, they’ll be like wait, why would I want to do that? And then by taking people’s own words who did the work, then we could see how to inspire people.
And the big insight that came for me is when I was working on this, I was always thinking of skilled development as someone is becoming a better writer or coder or designer or they’re doing some sort of solo skill development. And what I discovered is that the relationship building was itself professional development. All of you who are in sales and marketing and that side of the fence, you know this. But when we think about skill development, you think about sending somebody to a training class. You don’t think about the activities that are gonna develop in their network. So this is something that costs 0 money, actually helps somebody else get their work done and is more valuable professional development than spending money sending somebody to training. It’s pretty exciting.
So how it works is people just post tasks and sign up for them. You go and you see these opportunities which are a bunch of these little projects, you pick something and you read about it and then you click I’m in. And this thing pops up. And it says, do you want to participate? And it lays out the guidelines for participation. Now this is only open to federal employees and we have a little pushback sometimes when people are like yeah, but we should have like a thing and it goes to the supervisor and he should log in and say I approve! But we’ve effectively made the argument and this wasn’t my idea, but I’ve completely bought into it, which is that these are all federal employees. They all signed an employment contract and they are all trusted to obey the law and it’s complicated for a federal worker. You have to take all of these trainings on how to retain records and do all these sorts of things. So all you have to do is remind people that this is the deal. If we treat people like grownups, our theory is they will act like grownups. So far, this thing has been doubling quarter over quarter and people love the work and they bring skills back to their team and now the supervisors who used to be afraid of the people like maybe instead of going AWOL are now super excited to have their people participate.
So to sum this up, when you’re thinking about design, set intelligent defaults. Because defaults are a recommendation. Be explicit! Don’t be afraid to just like write some words down. It’s nice to have pictures and to convey the feeling of those words but sometimes words are just useful. And when you’re writing the words down, use their words. One of my favourite things to do in user research is to ask people who have been users of my product, can you tell me, in your own words, what do you think this product does? And sometimes what they pick out surprises me.
So I’m gonna wrap up before giving time for questions by just highlighting what’s now become my side project, which is my start-up which is here. So mightyverse is a – I’ll just talk. So mightyverse is a collection of little videos where people say a phrase in their native language and then they are cross translated to other languages.
And our theory is that people will learn from each other and we’ve seen this come about and when we – turn that off! Sorry for the blinking lights. Anyhow, through the strobe effects you can see that people contribute these little phrases and when we first started development of this platform we thought of it really as a communication utility and then – does that help? And then we wanted to make it fun so we came up with the paper prototype for our new mobile app and we turned it into this card game that we play tested probably like 50 times and we ended up making like an actual, real world card game that you can just like buy on Amazon. It’s awesome cause it encodes our theory of learning language and so what we did was we found out that by doing this activity with real people, that we were able to witness the experience that we wanted to create with our app and then that fed into our app experience. So now we have an app in development and we’re play testing that mobile app and we’re taking everything we learned from doing this paper prototype and physical game into building our mobile app. The key thing that we’re doing, the big thing we’re doing, is not about building a mobile app, it’s about building a community. So in the process of making this software, our focus is on the relationships that we’re building outside of the software because that’s really the change that we’re trying to make in the world.
So to sum up, you have the opportunity to envision an alternate reality. There is some reality where the majority of your target audience uses your software and what is happening in their lives because of that, how is this changing their world? Have developed a crisp picture of that and then create the suspension of disbelief that will allow people to imagine how they are empowered using your software to create for themselves that alternate reality. And then be empowered in the world. Thank you!
Audience Question: So I had a bit of a deja-vu this morning because I read an article and the name was Obama won’t rate colleges so we did. And it’s basically referring to that application you built. So I was just wondering if you had a comment on you guys intentionally taking the ratings out of that application and then people taking that and directly going against what you intentionally omitted in creating ranking for people to see. I don’t know if you have a response to that or not.
Sarah Allen, Ultrasaurus: It’s kind of what I said that there is a great pressure to stack rank all the 7,000 colleges in the US and there are people who feel that we should, but also there are people who – it’s their business to stack rank colleges and so it’s convenient I think. Off the record! For them to get a big headline by saying Obama didn’t do that thing. Look! We did it! Check out our thing! And the truth is it’s good if there are multiple rankings and they have different perspectives and I hope they used our data to make their rankings.