Category Archives: Software

Business of Software 2010 Retrospective










Do you read the fine print?

7 Ways That Writing Software Is Like Performing Music

For those of you who don’t know, my background delves into the musical realm. I played piano for six years and trumpet for twelve. One of my first musical memories was the Pac-Man notebook in which my piano teacher wrote my very first week’s assignment. After a childhood mixed with software development (the first PC my father purchased for personal use was an Epson QX-10) and music, I’m presenting for you today 10 ways that writing software is like performing music.

1. The difference between good and great is subtle

In music, a small intonation or tuning issue can make or break a complex passage. If musicians don’t adjust for the condition of their instrument while playing the instrument, such as adjusting the pitch as the metal of the trumpet warms, the instrument can become out of tune. With software, detail matters, from the design to the number of clicks it takes to perform a task. Good software lets people do everything great software does; great software does it more elegantly. Customers love good software until great software comes along.

2. Without a solid foundation, the best performers and coders cannot reach full potential

When performing music, if the score is bad, even the best performers won’t sound great. They can add their special touch to the music, but the performance won’t be as great as when the score is superb.   In software, if the application has improper architecture, the wrong programming language is used, or a variety of other maladies, the best developers have less of a chance of producing the best software (though some still can).

3. If anyone in the team fails, the result will not be great

If the 2nd chair tuba is having a bad day and misses a key section of music, the whole orchestra is affected. If QA fails to find critical bugs or the deployment team misses an important file, the experience to the users will be broken.  Everyone’s efforts are important to the team as a whole.

4. Without overall coordination, efforts are wasted

The conductor is responsible for result of the orchestra and guides everyone to improvement by providing feedback that performers otherwise would not be able to self-ascertain. The musician can listen, but cannot always accurately determine the effects of their work to the orchestra as a whole.  If none of the performers have sheet music, random notes from everyone in the orchestra will result in noise.  Efforts must be aligned.  In software, a product manager drives the vision and guides the developers to create software that amplifies the effort that was expended.  In both cases, alignment is necessary to push everyone in the same direction.  If developers are moving in different directions, the product will be disjointed and misaligned and the company’s goals will likely not be reached.

5. When you’re done, there is always room for improvement

Think your code is done once it’s live? Think again.  There are always ways to improve.  The end user experience could be improved, code could be refactored, or the database could be used less. After listening to a recording of a concert, the orchestra might find they could crescendo more quickly, the dolche passage could be more performed even more sweetly and softly, and so on.

6. Finishing with a remarkable ending leaves the audience or users feeling happy

A hat tip to Kathy Sierra and her talk at the Business of Software 2009 conference for this idea. Think AC/DC and their classic concert encore performance, “For Those About To Rock“. Done properly, it gives the audience a very memorable finish.  In software, it’s slightly different, but the concept is the same; there are many end points, but all of them should leave users happy.  Think of what your users are trying to accomplish, and make the results awesome, whether it be a polished music player, a report that looks highly professional but was created with three easy clicks, or whatever it is that your software does. There can be many of these “results” in your product, but they all should leave users feeling like they did something incredible.

7. Listen to what your audience or users have to say, but don’t do exactly what they say (most of the time)

Using a band that takes requests from the audience as an example, the band members can take suggestions from the audience, but they’re just suggestions.  Five requests for a song of a specific genre or artist might be a hint to the musicians to play one of those songs or at least one that is similar, but the musicians can decide.  Similarly, if your band’s audience loves a particular ad-lib solo or memorable on-stage antics, perhaps it should be done again at another performance.  In software, directly implementing customers’ ideas might not have your product’s best interests in mind. Often, it’s better to absorb many suggestions, then create features that address many customers’ needs at once to get more value from fewer changes. After all, developer resources aren’t unlimited.  Related to this, it may be useful to monitor when and how much your customers use each feature in your software, and if they don’t use it as much relative to other features, maybe it needs improvement.  Listening to users doesn’t always mean answering the phone or email.

Business of Software 2009 Wrap-Up

The Business of Software 2009 conference in San Francisco was another powerful experience, much like last year’s in Boston. This conference is simply the best way to spend your training dollar if you are in the business of software. After last year, I didn’t think such a powerful lineup of speakers could be repeated, but Neil Davidson (the man behind the conference) did it again this year.

If you do decide to attend next year’s conference (October 4-6, 2010 in Boston! Write it down on your calendar! After all, Dharmesh Shah is coming back), using Twitter during the conference is a great way to meet other BoS’ers and hear what everyone else is thinking. This year’s hash tag was #BoS2009, but Twitter’s search engine only searches back so far and so these tweets will eventually be lost.  Fortunately, we’ll be able to refer to these tweets indefinitely thanks to TweetVue, currently a bookmarklet that let me hand-select relevant tweets from the #BoS2009 tweet stream.

Some people have already created reviews (such as Jurgen Appelo and Kyle Cordes) that were fairly high level, so I wanted to publish something a bit more in-depth.  Below is a fairly detailed set of notes from each speaker’s talk that hopefully will help you. I hope that I captured each speaker’s meaning accurately (the notes are quite likely tainted from my particular viewpoint) and must apologize for the notes that I took for some speakers that were rather lacking in content.

I must warn you though, this is incredibly long!

Geoffrey Moore

“Distinguishing core from context”

Moore’s talk was one of my favorites due to its relevance to me. It’s easy to lose focus on the core and fail to align innovation initiatives, so this was very inspiring.

Moore began his talk with, in a tough economy, run to value. This statement is true certainly during the current economic times, but certainly applies in any economy. How does one run to value? Innovation. To achieve innovation is to achieve competitive separation. Innovation must come from the bottom of an organization (not from the top down), and must be aligned. Unaligned innovation leads to waste.

There are three types of innovation and different returns on each.

  1. Differentiation. This is how an organization makes money. Investing in differentiation allows you to amplify your chosen area and separate from your competitors. Every company must have differentiation.

    1. Core. Core innovation amplifies your competitive innovation. This is very important. Investing in core allows you to differentiate and therefore achieve further separation from your competitors.

    2. Context. Context innovation is everything else in your business that is non-core. Investing in context innovation distracts from the core. As a business grows, increasing amounts of context innovation are necessary, but care must be taken to ensure the core receives the correct amount of attention and investment.

  2. Neutralization. Neutralization innovation is necessary when the market moved, but you didn’t, so there is an investment to regain market viability to stay competitive. This type of innovation is how a company stays in the game, but it does not necessarily produce competitive differentiation.

  3. Optimization. Optimization innovation results in productivity gains. As a free market economy drives prices down and the market matures, these productivity gains help keep costs under control.

In the overall effort produced by a company, here is a breakdown of how that effort is often split:

  • Differentiation (core) – 15%

  • Neutralization (context) – 15%

  • Optimization (context) – 15%

  • Failed attempts – 15%

  • Waste – 40%

Sources of waste include:

  • Differentiation projects that didn’t go far enough. If not enough investment is made in core projects, a company doesn’t establish enough competitive separation and therefore the investment in differentiation is diminished.

  • Neutralization projects that went too far. Best-in-class products are still often non-differentiated from competitors.

  • Unaligned innovation efforts that cancel each other out. Focus is important. If the organization is not aligning innovation efforts, the result can be a waste.

The life cycle of the product helps determine where to focus innovation efforts, aligning buyer types to products. The three buyer types are:

  1. Performance buyers. These buyers purchase based on product leadership.

  2. Relationship buyers. Customer intimacy and potentially service level appeal to these buyers.

  3. Value buyers. Buyers are drawn to low prices and operational excellence is key to success with these buyers.

Life cycles and buyers for each stage are:

  1. Early life. The early life of a product is volatile, but can have a fast growth rate. Sometime between early life and the Growth stage is the subject of the famous chasm about which Geoffrey Moore wrote a book. Some businesses never grow out of a niche business and end up in what he called a “bowling alley” business, where it’s small, profitable, and secure but will never be huge.

    1. The majority (approximately 75%) of buyers are performance buyers.

    2. Relationship buyers are perhaps 20%.

    3. A small (~5%) portion of buyers are value buyers.

  2. Growth. The growth stage comes once a “tornado” hits and growth begins to surge. Someone asked Moore to put a growth rate number to this phase, which was about 15% or higher annual growth rate in terms of revenue.

    1. Performance buyers represent about half of buyers.

    2. Relationship appeals to about 25% of buyers

    3. Value appeals to about 25% of buyers.

  3. Mature. The maturation phase comes when growth dips below 10%.

    1. Performance buyers represent about 15% of buyers

    2. About 20% are relationship buyers

    3. Around 65% are value buyers

  4. Decline. The revenue begins to shrink in this phase and lasts until the product reaches its end-of-life.

    1. Performance represents less than 10%

    2. Relationship buyers are less than 10%

    3. Value buyers are 80% or more

Within differentiation innovation, there are many different types of innovation. The one Moore said applied to most small businesses is called “solution innovation”, with the goal of being a big fish in a small pond.

With solution innovation, the target customer is a pragmatist manager in a target niche. These managers follow others and often compare with other pragmatists before making a purchasing decision. Pragmatists are compelled to buy to fix a problem in their business. If your company offers a whole product, an end-to-end solution in the niche , that is very appealing. Use of some parters and allies or “solution complementors” is often necessary, but use as few as possible. If distribution of your product is necessary, do direct sales; don’t use a middleman. Sell by starting with a problem, not your product (i.e. I help you solve your problem X, not my widget has features A, B, and C). If you innovate into a new market, make it an adjacent niche market.

Paul Graham


Graham described innovation as a way to turn an inefficient market into an efficient market. Invent new ways to measure, since you make what you measure. He also described quite a few trends, of which I noted the following (and since Paul works with small startup companies, these tend to describe trends in these companies):

  1. Programmers write for what they use. If all programmers have an iPhone, they will write apps for an iPhone.

  2. Design is more important than manufacturing. Anyone can manufacture a product cheaply and efficiently, but it takes real design to differentiate a product.

  3. Real time is important. There’s been a trend lately towards a “real time” web with services like Twitter delivering real time updates.

  4. Founders matter, especially technical founders. Those VCs that think they can oust a founding CEO are losing a valuable resource.

Heidi Roizen

“Ten lessons learned about venture capital that I wish I’d known as an entrepreneur”

Roizen was a co-founder of T/Maker, creator of Click Art back in the 80’s and has been an entrepreneur as well as a venture capitalist. Of special note to me since Microsoft has a fairly substantial campus in the city in which I live (Fargo, North Dakota), she was on the Board of Directors at Great Plains Software before they were purchased by Microsoft in 2001 for $1.1 billion.

  1. VC is a “hits” business. 3% of deals create over 50% of returns. 60% of deals don’t even return the VC’s investment. VC’s are looking for the hits.

  2. VCs are portfolio managers. They have to manage quite a few different companies, and so won’t be able to pay 100% attention to yours.

  3. VCs often turn down good companies, because they are looking for a 10x or more return on their investment. If your company doesn’t have at least a 10x growth potential, will take a long time to achieve a liquidity event, or don’t have any exit strategy at all (don’t tell the VC you’re running a lifestyle business!) then the VCs may not be interested.

  4. Due diligence by the VCs is a combination of gut plus homework plus time. If the VC seems to be stalling, they could just be waiting to see if you will follow through with what you said you would do over a period of several months.

  5. VCs may not invest if they don’t trust the entrepreneurs or if the entrepreneurs have a different set of ethics.

  6. The best entrepreneurs don’t hide the ball. If something isn’t rosy, tell the VCs. It was their money; don’t hide what’s happening with it.

  7. Startup entrepreneurs are not always great CEOs. It takes a different skill set to run an established company compared to running a startup.

  8. Virtually all startups change course.

  9. VCs need to be prepared to invest more money…. or not. Normally all VCs will realize that a business will need multiple rounds of funding. The question is whether they are willing to do so after seeing the company’s performance after the initial investment.

  10. VCs need to find exits. They will do what they need to do to achieve this: run the board, fire the startup CEO, and find a buyer.

Dharmesh Shah

Inbound marketing and sales: “Smarketing”

Shah is cofounder of, which makes and, and runs a blog called

Shah pointed out four types of software risk for startups:

  1. Development risk. This is the risk of whether the startup founders will actually be able to build the product. This is a very low risk as actual code development is not all that difficult for most companies.

  2. Market risk. Will anyone buy your product?

  3. Financial risk. Do you have enough capital to fund your company?

  4. Execution risk. Will you be able to pull it off?

Shah used the term “Smarketing” to refer to “sales and marketing”. He was discussing inbound marketing. Startups are too small to use traditional expensive forms of marketing, so they must use creativity, not cash. If you can get potential customers contacting you first, those are warm leads and therefore much easier to convert to a sale. That being said, how do you get found?

  1. Google. Organic, free search results are the best. Shah is not a fan of Google AdWords. SEO is highly important. The page title sends a very strong signal to Google, so it should contain important key words. It should not just be your company name (that’s reserved for companies who have a well-known brand that people search for); it should not be just “Home”. Ideally, put the important keywords first and the company name last (i.e. XYZ Optimization Software | Itsosoft)

  2. Blogs. Write articles to share. Don’t write articles directly about your product, since people don’t share those. The more traffic and conversation you can start on your blog, the better. Don’t be afraid to polarize. Look at some of the more popular bloggers, like Joel Spolsky; he creates very polarizing positions. Shah’s example was saying that outbound marketing is evil (a polarizing position), but then said that of course HubSpot uses outbound marketing. However, the polarizing position attracts more readership and lively debate.

  3. Social Media. StumbleUpon is better than Digg. Facebook ads are a free way to estimate the reach of your particular campaign; they will tell you an estimate of the market size based on the demographic information you enter.

Cost of Customer Acquisition (COCA), which is the cost of sales (sales people plus sales costs) divided by the number of customers per month (or billing cycle), is an important metric in conjunction with the Lifetime Value of a Customer (LTC). LTC is a function of revenue and retention. For example, if each customer is worth $100 per month and the overall average tenure of all customers is 15 months, the LTC is $1500. In order to be successful, the LTV must be greater than COCA by a factor of 2x (1.5x is ok, but 2x is better).

Related to these two metrics is the CHI, or Customer Happiness Index. This is a number between 0 and 100 that represents the probability that a customer will be with the company next month (or next billing cycle). This metric is calculated differently for every business and does not necessarily need to be 100% accurate, but the idea is to start with some basic judgment calls to establish a formula, tuning it over time. For example, HubSpot noticed that customers who signed up in the last five days of the month were significantly more likely to cancel their service (approximately a 50% retention rate for those signed up at the end of a month) than those who signed up at the beginning of a month (nearly a 100% retention rate), so they altered salespeople’s commission structures to be more aligned with selling in a manner that retains customers and doesn’t incentivize a hard sell at the end of a month.

Some other examples of components of CHI include:

  • Does a customer sign on to the system frequently? Those who sign on frequently will be more likely to stay on as a customer.

  • How many features do they use? Customers who only use one feature might be more likely to leave than those who use more features. Examine those who have left and who have stayed to find usage patterns and build statistics based on this evidential modeling.

CHI may be used to predict who will cancel, what the LTV is at any given moment, may be used to calculate the sales reps commissions, and determine product roadmap.

Product Management Breakout Session

I attended a product management breakout session with 9 others. There were other breakout sessions going on at the same time, including other product management sessions, so each attendee’s experience varied quite a bit.

Some individuals in the group asked what the difference was between a product manager and a project manager. One individual who had done both said he thought that product management is more strategic and business-oriented whereas project management is more tactical. A product manager knows customer needs and communicates with both the business and development teams.  [Edit: please see Daniel Kuperman’s comment below for more on the product vs. project manager role.]

In a discussion about how to be more successful with a development project, someone suggested that the high-risk steps be completed first. This allows stakeholders to know whether the project will succeed or fail sooner, reducing waste if it fails.

Mat Clayton

Clayton noted that social networking is a “personal CRM”. Facebook offers the ability to search wall posts as a way of doing research about your company. Mixcloud (Clayton’s company) exploited many of the retweet bots in Twitter to make Mixcloud into four simultaneous trending topics upon launch. They did this with a significant effort to build followers and follow others on Twitter prior to launch. I would have loved to hear more details about that, but it wasn’t explained thoroughly (but I’m guessing if everyone did this, Twitter would somehow close this loophole).

Pecha Kucha part one

I don’t have many notes on the first Pecha Kucha sessions, but the winner received a Kindle. The idea was to present a timed set of 20 slides, 20 seconds each. The audience then voted for a winner. These words are pronounced differently than they look.

Don Norman

“10 rules for successful products”

Norman is co-founder of the Nielsen-Norman Group.

Overarching principle: design for who your users are, not who you want them to be. Look at the real world.

  1. It’s all about the experience. Go the extra mile.

  2. Design systems.

  3. Everything is a service. For example, a cell phone provides the service of talking to people, sending e-mails, etc.

  4. Everything is a product. For example, a cell phone is a product that is purchased.

  5. Don’t be too logical. Users aren’t always logical.

  6. Memory is more important than the actuality of the experience, so make sure it ends great. Norman gave an example where two groups of people underwent an experiment where they had to hold their hands in ice-filled water for 20 minutes. One group held their hands in ice-filled water for 20 minutes, ending the experiment. The other group did the same thing, but subsequently were told to hold their hands under less cold water for 5 minutes, or 25 minutes in total. The group who ended better (but had to do it for 5 more minutes) had a better overall opinion of the experiment at the end (neither group really loved it, but that group was more positive overall).

  7. Design for good complexity. Don’t oversimplify; don’t make too complex. Handle complexity with structure. For example, in an airplane, the pilots know that controls and gauges are grouped into related functions.

  8. Design for the real world.

  9. Design for real people.

  10. Repeating #1, it’s all about the experience.

Ryan Carson

“how to give your company soul and make your company remarkable”.

Carson runs Carsonified, a company that helps organize conferences. Carson opened by asking us what we would do if we would do if we knew we only had 10 more years to live. He then played a two-minute recording of piano music and asked us to think about that question while the music played. After it was done, he said that the general theme everyone probably thought of was to do something valuable.

First, why do you want a remarkable company?

  1. It’s valuable to you

  2. It’s valuable to your team

  3. It’s valuable to your customers

There are eight things to do to make your company amazing:

  1. Be a passionate leader. This is different than charismatic.

    1. Remind your team of the passion — “this is what we do and why we care”

    2. Be opinionated

    3. Blog about it

  2. Love your customers

    1. Meet your customers in person

    2. Don’t allow back talk of customers within your company. Customers pay your bills, after all.

    3. Use your product every day. If you don’t, you lose touch with the customer experience.

  3. Treat your team well

    1. Treat them like smart adults

    2. Give them power

    3. Lavish them with praise

    4. Give them nice gear and tools

    5. Be generous

  4. Give back to your community

    1. Doesn’t have to be expensive (Carson noted his Summer Boot Camp that cost only $300)

    2. Do something at least twice a year

    3. Blog it, film it, tweet it; use it for PR

  5. Have a remarkable product

  6. Invest in good design

    1. Good design adds credibility

    2. Good design increases company pride

    3. Good design requires hiring a designer

  7. Be more creative than you need to be. Work on extra projects.

  8. Get good at publicity.

    1. Launch new products and generate buzz with an invite-only beta

    2. Talk to the junior bloggers. The big time bloggers (Michael Arrington) are busy; go for the others at GigaOm, TechCrunch, etc.

    3. Attend parties for events you can’t afford; network!

    4. Do short, quick projects

If you miss one of these, you miss all of them. Why bother with them though?

  1. Following these steps leads to easier recruitment. A simple tweet can turn up resumes.

  2. Following these steps leads to lower marketing costs.

  3. Following these steps leads to more pride in your company.

  4. Following these steps leads to more value for the company.

What does following these steps cost?

  • A designer’s salary

  • Gear and tools (monitors, software, etc.)

  • Extra time for creativity – take this extra time

Paul Kenny

“Using stories to sell software”

To sell effectively, Kenny stated one must use stories to sell, so developing a story is key. Integrate sales into everything that you do – even if your company is too small to have a sales department, you still have a sales function.

The sales entrepreneur has the following strengths which enable him or her to sell effectively:

  1. Unparalleled knowledge of the product and technology

  2. Market and customer insight

  3. Sensitive to feedback

What are the sales entrepreneur’s greatest selling weaknesses? The same three!

  1. Unparalleled knowledge of the product and technology

  2. Market and customer insight

  3. Sensitive to feedback

There needs to be a shift in the thinking about sales

  1. From being a job to being a role

  2. From show and tell to engage and share

  3. From sales focus to customer focus

  4. From final act to continuous performance

Why do stories work to sell? People tell stories, not data, in normal conversation, so it’s more effective.

  1. A great deal of information is conveyed in a short period of time

  2. Stories are visceral and visual

  3. Data explains, but stories inspire

What characteristics make for a compelling sales story?

  1. Easy to tell

  2. Provides structure (beginning, middle, end)

  3. Makes complex stuff accessible

  4. Visceral/visual

  5. Engaging through tension (a problem) and release (solving the problem with your product)

Don’t hire a sales person until your sales story is in place and is clear.

Start with the customer’s story:

  1. Find the customer segment

  2. Find, understand, and answer the need behind the need

  3. Consider the decision tree (see below)

  4. Focus on the customer: development stories based on customer segment – quick fix, pragmatist, etc.

Understand the motivations behind a purchase: Ego, gain, belonging, security, and ease are the main categories. Each motivation can have its own story.

Decision tree – what a customer considers when making a decision. For example, an interested potential client might need to ask herself the following questions before purchasing your product:

  1. Can I justify this to my team and/or boss?

  2. Does it work?

  3. Does it have support?

  4. Is it easy to use?

  5. Can I mitigate the risks?

  6. What is the integration and training time?

  7. How does this compare to other products?

  8. Can I work with it well?

Clients like stories about:

  1. Product/company origins. If customers relate, they will connect.

  2. Extremes (fantastic stories)

  3. Journeys

  4. Relationships (coworkers, etc.)

  5. Redemption – how a company failed and recovered

  6. Future – vision for the future in terms of what problems the company’s products will solve and visions of the industry

The more people share the stories, the more people share the passion of the leader.

Chris Capossela

Caposssela is SVP, Microsoft Business Division and gave a talk entitled, “From marketing flops to blockbusters”

Xbox started as a conversation between Bill Gates and an employee who wanted to go start his own company. The employee was afraid that Microsoft would be in control of every aspect of the Xbox, naming it the “Microsoft Gaming Platform” and restricting design choices. From the beginning, Xbox had total freedom of marketing and design. Xbox live is what really made it take off as a platform though.

MS Office Accounting – turned out to be a flop. They thought they would sell their new 1.0 product via Dell to compete with Intuit’s QuickBooks since QuickBooks was not sold through Dell. However, Intuit had a contingency plan in place if Microsoft entered the market and immediately entered an agreement with Dell to sell QuickBooks through them. This pretty much put an end to this product’s success because it was a non-competitive offering (i.e Office Accounting was a neutralization play, not a differentiation play).

MS Office Home and Student 2007 was the first product to be marketed at a 40% lower cost in developing countries due to a feature called “GeoLock”. When a user registers the software, the Microsoft servers check to make sure that the request is coming from a developing country and only unlock the product if they are. This allows a product to be sold in, for example, India and not be shipped to Europe to save costs, because the version from India will not unlock in Europe.

Questions to ask when creating a product:

  1. Are you in it for the long term? If not, don’t bother.

  2. Is the product game changing or category defining? (This is the differentiation strategy that Geoffrey Moore discussed.)

  3. Are you delighting both end users and IT?

  4. What is your geographical strategy? MS used GeoLock.

  5. Can you reach your key influencer community? For Microsoft, that is developers and system administrators.

  6. What channels matter? Can you afford them? Marketing a consumer product is far more expensive; Bing is an example, with a $100 million marketing campaign.

Neil Davidson

“How many kittens is your iPod worth?” (product pricing)

What is the value of your product? What people think is more important than what is. For example, people often shop comparatively. They will find other similar products and see what value those products offer.

There is a different strategy depending on your product:

  1. If your product has other competitors, try to avoid bad comparisons. For example, if your product is a conference, don’t compare it against the cost of an online training video.

  2. If your product is in a new category with no other competitors, that creates a vacuum where the seller sets the price. Buyers are clueless in a vacuum. Davidson surveyed the attendees on what they thought a hand-signed first edition copy of the Grapes of Wrath cost, and roughly 1/3 of the audience thought it was worth less than $1000, about 1/3 thought it was worth between $1000 and $10,000, and about 1/3 thought it was worth more than $10,000. The actual sales price was $25,000. The takeaway is that if you can create a product that has no comparison, take advantage of this to set your own price. If I traded you two kittens for an iPod and found out that the next guy traded only one kitten for an iPod, I’d be upset. The customer must feel like it was a fair deal and that the next guy is being treated the same.

Pecha Kucha part 2

  • Adam Ruth said that “asset addiction” is a condition where a developer will obsess over some small part of the design (i.e. an icon) and spend way too much time doing that instead of making progress toward the main project goals. The same can happen when something is abstracted too much; avoid becoming an “architecture astronaut”.

  • Dave O’Flynn, a product manager from Atlassian, discussed what he’s learned about teams by jumping out of planes. Some takeaways here:

    • Skydiving is like software development, except in skydiving, the deadline doesn’t move.

    • Set common goals amongst the team

    • Have respect for colleagues

    • Success is collective

    • Find ways to give constructive criticism; don’t make anyone defensive

    • Keep learning

    • Enjoy yourself

    • Keep making mistakes; that’s the only way you’ll learn

  • Alex Papadimoulis from the Daily WTF (that’s “Worse Than Failure”) gave a humorous presentation showing a variety of bungled error message dialog boxes.

  • Rob Walling discussed three words that boosted his beach towel business by 1000%: “low price guarantee”. The idea is to keep experimenting and do A/B testing; the best answer might still be out there.

Kathy Sierra

“How to make your users feel awesome”

Sierra’s talk was very inspiring and I’m planning to make it the theme for my development team for the next year.

Customers like to talk about themselves. Developing software should be all about making the user kick ass. It’s not about the tools we build; it’s about what it lets users do. Teach users what they need to know and they will sell themselves. For example, a website for Nikon that teaches users all about photography not only serves as marketing material for their line of digital SLR cameras, but teaches the user what they need to know about cameras, which could lead to the sale of a higher-end camera.

Teaching users leads to a “high resolution” user experience. Inexperienced people don’t know what they don’t know; they are missing so much about a particular topic. By teaching them, they become more knowledgeable. Don’t make a better widget; make a better user of the widget. It’s the difference between WOM (Word Of Mouth) and WOO (Word Of Obvious); the latter means that others will notice the difference in the customer, as they will spread the knowledge to others.

In the customer service realm, flip yourself from having exceptional customer service to having an exceptional customer. Don’t make a killer app, make a killer user.

Brains care about stories. Sierra said that even a “tiny nanoturn of the stomach” as a result of a sales pitch could lose a sale. Brains prefer conversational language, not formal language, so write and speak accordingly. BMW has an ad where they showcase their cars, but are actually selling joy, not cars. In other words, for the software business, you’re not trying to create a product that has X number of features; you’re creating a product that lets users experience an endorphin rush.

Sierra mentioned Joel Spolsky’s recent article stating that “we help (type of person) be awesome at (thing)”. One company established a goal that their users must be able to do something awesome within 30 minutes of using their product for the first time.

How do you make people feel awesome? Reducing the learning curve is a good step. Shrink the 10,000 hour mastery curve so users step above the “suck threshold” and past the “kicking ass threshold”: use patterns, create a UI design that makes doing the right thing easy.

“Awesome” has evolved over time:

  1. This product has X features

  2. This product has these benefits

  3. Users say how awesome of a thing they did

  4. User says “I’m awesome!” This becomes the WOO (word of obvious to others).

Jennifer Aaker

Aaker is at Stanford University, giving a talk entitled, “Beyond Happiness”

In a person’s life, the 20s are a time of being ambitious. The 30s are a time of balance. The 40s are a time of contentment. The 50s are a time of peacefulness.

Photographs color how you remember something. For example, when you go to Disney, the lines are long and the waits in the heat are miserable. However, if you’ve taken photographs showing your children smiling, long after the vacation, you’ll forget about the waits and lines and just remember the good times.

It takes 24 minutes to get into “flow”, but the average person is interrupted every 3 minutes at work. Even when eliminating self-interruptions, the average person is interrupted every 12 minutes. Find out what time you are most productive (morning, afternoon, evening) and do everything in your power to protect those that “temporal sweet spot” — close e-mail, shut the door, etc. The more time spent being productive in a day, the happier you are. A survey of the BoS attendees showed that the average person expected to engage in far less deep thinking per day than they anticipated, every day, just like Groundhog Day.

Once you’ve identified the times you’re best at something, match it to what role is best for those times. For example, if you’re a great parent at 7 pm, be a parent at 7 pm. If you’re best at work from 12 pm – 4 pm, work during those times. If you’re a great friend on Saturday evenings, do that. The various roles include: work, spirituality, health, parent, friend, and partner.

When you work on projects you love, that releases endorphins, which in turn make you happier and more effective. It’s a virtuous cycle.

Anticipating pleasure is almost the same as experiencing pleasure. Aaker described taking a vacation to Hawaii; people were happy prior to going and while they were there, but the reality of coming back to a pile of work took away all of that relaxation upon return. I’m not sure if she was joking (and I’m guessing she wasn’t), but she suggested that her data indicates to schedule a vacation to Hawaii but cancel at the last minute, which will make you happier than actually going since there will be work to do after the trip.

The frequent use of the word “I” instead of “we” has been correlated to people who are fearful and uncertain. Complaining can be useful, up to a certain extent. If complaining starts, it’s helpful for its diagnostic value. It can also help people bond faster if they have a common complaint. It also may reveal the solution. However, too much of it and it can become toxic and infectious. If the negativity exceeds the positivity, this results in a culture of complaints and the complaining loses its diagnostic value. To maintain a healthy culture, there should be a ratio of at least 5 positive emotions to 1 negative emotion in an organization. 3:1 is fine, but 5:1 is better. In a marriage, a primary indicator of impending divorce is a 1:1 ratio of positive to negative emotions.

Some things that drive happiness quite a bit are self-esteem, social skills, free time, volunteering, dancing, and humor. Those that dance more frequently are typically happier people. Some things that people think matters quite a bit for happiness but actually matters more are money (beyond ~$40k), youth (older people are typically happier than young people), beauty, intelligence, education and religion. For example, many people thing religion makes them happy, but it’s really the volunteering aspect of joining a religious organization that has the benefits. Just attending services doesn’t do much for happiness, but volunteering as a part of that organization helps happiness quite a bit.

Michael Lopp

“Talk shit, delegate, and know what you want.”

Michael writes the Rands in Repose blog and is a software veteran.

Software development is a series of decisions. There are 2 classes of decisions: big and little. More than half of decisions are little (i.e. variable names, etc.) Big decisions made earlier cost less. Leaving big decisions until later result in higher cost.

Talk shit Making good, quick decisions is important. The decision guideline should be, “am I full of shit”.  A technical person’s internal “relevancy engine” helps make this decision by quickly processing everything you know and turning up not the obvious answer, but the best one.

Delegate – the art of doing more. The “Geek Credo”: seek definition to understand the system to find rules to know what to do to next so that we win. Translation: we are control freaks. But, if we’re bad at something, we have two choices: 1) improve; or 2) delegate. Delegate what you are bad at, do what you love. This statement ties in with Jennifer Aaker’s research that doing what you love releases endorphins and makes you happy. Delegation makes it possible for you to retain the vision and control, but not have to do all the work. To be an effective delegator, you should trust that others can help. This pushes the decision to the person closest to the problem, and they often make the best decision. Making better decisions results in a better product.

Know what you want – it’s a lot of work. Don’t confuse opinion with knowing what you want. Define exactly what you want. Knowing what you want moves decisions earlier and lowers overall cost of the project. Making decisions earlier avoids having to make decisions in a crisis, which leads to better decisions. Knowing what you want is the best spec.

Luke Hohmann

Enthiosys — “Big Decisions”

Conveniently following Lopp’s talk about small decisions, Hohmann discussed making big decisions.

Innovation Games® are used to make big decisions. Innovation lies in the “unknown unknown”. Relating this to what Chris Capossela from Microsoft said, the Wii was an unknown unknown, a product that didn’t yet exist but was to become #1 in gaming consoles. Surveys indicate that top innovative new ideas come from external sources such as customers; a small percent of ideas come from employees.

The backlog of ideas is infinite and releases are finite. Innovation games are “serious games” that help make these decisions. For example, draw a tree to represent the product. Add ideas as apples and leaves. Use several stakeholders to shape the growth and position of the apples and leaves on the tree. Then, once the tree is full of apples and leaves, begin to prune the product tree. Some features are dependent on or are alternatives to others.

Joel Spolsky

“resolving conflict between power and simplicity” (Spolsky’s Twitter)

Simple applications do one thing well and require a lot of simplification. They follow the 80/20 rule, in that by implementing 20% of the features, that will satisfy 80% of the users. However, simple applications just often don’t go deep enough to satisfy everyone.

Powerful applications have lots of features, deep capabilities, and thus a significant number of options. Many powerful applications have an interface that is difficult to use.

Features lead to choices. Choices lead to a decision. Too many decisions lead to users feeling frustrated. So, design is the art of making decisions. Giving users choices is a failure to design. Design should have the modesty to not draw attention to the effort required. Making elegant software requires a balance between simplicity and power.


I hope you find this write-up useful.  Don’t forget to come to the 2010 Business of Software conference in Boston, October 4-6!