Asana's shocking pricing practices, and how you can get away with it too
If one apple costs $1, how much would five apples cost? How about 500?
In everyday life, when you buy more of something, you get more bananas for your buck. The fixed costs decrease. If you sell a lot of apples to one person, you don't have to wrap each one, you don't have to pay fixed transaction fees on each sale, and you don't have to worry about finding someone to buy the other 499 apples. The savings are passed on to the consumer. Often, software is priced this way too. That's why I love Asana's pricing page. It breaks the rules.
Asana prices their product based on its value. It lets teams coordinate about projects and tasks they are working on. Asana is very clear about the value they give. In fact, the pricing page tells you that the only difference between the paid and free versions is that "premium plans allow you to coordinate with more team members, as well as the features listed in the table above. All other user features are exactly the same."
It's a mathematical law that as the number of people in a team grows, the number of communication paths grows quadratically. A company with 100 people using it is therefore getting much more value out of it than a company of 15 people, so they pay higher per-seat costs.
HomeworkWhat is the one thing that gives your software value? Are you directly charging for that thing, or something else? How can you take advantage of team effects to provide more value when more people use it?
Get tips on improving your software business, right in your inboxEnter your email and I will send you tips on selling software right in your inbox. I have been selling software since 1998, and whether it's consulting products, adsense, or software as a service, I have done it all, and I want to tell you what I wish I knew when I started.
Email EtiquetteIf you begin your emails with "Hi, <name>!" then they will seem less rude.
Compress your JSON with automatic type extractionJSON is horribly inefficient data format for data exchange between a web server and a browser. Here's how you can fix it.
VP trees: A data structure for finding stuff fastLet's say you have millions of pictures of faces tagged with names. Given a new photo, how do you find the name of person that the photo most resembles?
In the cases I mentioned, each record has hundreds or thousands of elements: the pixels in a photo, or patterns in a sound snippet, or web usage data. These records can be regarded as points in high dimensional space. When you look at a points in space, they tend to form clusters, and you can infer a lot by looking at ones nearby.
Minimal usable Ubuntu with one commandIf you install the default "ubuntu-desktop" you also get with it a gigabyte of crap that you will never use. But if you don't install the ubuntu desktop, you get a system with a text-only login: prompt, and it's not clear what to install to get it to a usable state.
I have an irrational need to optimize my Ubuntu installation. I did some investigating and came up with this method, which gives a minimal graphical 1.2 GB install, with gnome, networking, and no applications.