Josh Haas's Web Log

Archive for March, 2013

idea of the day: personal app hosting

without comments

Right now, here is how it works.  Developer has an idea for an app.  App requires a server.  Developer rents a server, hosts that app.  Developer builds company around app.  Builds company because hosting is expensive and time consuming.  You have to worry about the app going down.   Sometimes the company takes off.  Sometimes the company fails.  Okay usually the company fails.  App dies.  Code is usually never heard from again.

Read the tweets of @Pinboard for deep insight into this life cycle.

Anyway, this is much sadness.  Because app equals company, app requires business model.  Business model is a damper on creativity.  It also generally mandates closed source, because hard to compete as a company without something proprietary.

Exception to this rule is desktop apps.  There are good open source desktop apps that evolve without a company.  Why?  Because you don’t need a server.  Developer can release code into wild, support for as long as she wants.  If code is loved, others will improve it.  Makes it easy to be a developer, you can do it in your free time.  So, linux exists, and all the apps that live on the linux desktop.

But no one wants desktop apps.  Desktop apps are terrible.  Apps should live on the internet, and be free.  Apps should be built in html5+css+javascript, which is the best toolkit for building GUIs ever invented (if you don’t believe me, build stuff in objective-c, .NET, and swing for a bit, and see how much you miss html — infinite nested boxes FTW!!!)  (if you still don’t believe me, make sure you’re using coffeescript and jquery to build your javascript).

So how about this.  Everyone has their own app server.  App server is super-easy to set up, don’t have to know anything about technology.  Tech people can host their own server, non-techy people can pay a techy company to host one for them.  Server lives at  Server has a one-click-install page where you can download + upgrade apps.  Server offers simple API for apps to use to store data on the server, talk to other apps on the same server, talk to other apps on different servers, share system resources, etc.

Developers no longer responsible for hosting their own apps.  Developers can make apps open source, can fork each other’s apps at will.  One-click-install page could talk straight to GitHub.

Result: renaissance in high-quality open source web apps.  Easy to build and release and modify and improve, all open.

Result: more control for individuals.  You have your personal server with your favorite email app, your favorite blog app, your favorite status-update app, link-sharing app, file-sharing app, etc.  All your data is on your own server, you own it.  You can be as a paranoid or as permissive about privacy and security as you want.  Highly technical users can customize their individual app environments, and run personal code easily.  You don’t need ifttt if all your stuff is on the same box and the box is totally under your control.

Anyway, this is obviously an awesome future.  I will probably have to build it as a spin-off to Bubble once Bubble is more self-sufficient.  Unless someone wants to take it on right now!




Written by jphaas

March 28th, 2013 at 1:14 am

Posted in Uncategorized

Is capitalism compatible with technology?

without comments

A couple observations:

  • The 1990s were a largely optimistic decade in terms of the economy and the sense that the world was going in a good direction. That optimism is largely replaced by pessimism. Everyone generally agrees that things are a mess, although a precise definition of what the mess is is controversial.
  • The economy is undergoing a transition away from physical labor towards jobs that involve working with ideas. This is a disruptive transition, likely on par with the industrial revolution in terms of changing the life of the average worker, and at this point there is no general agreement on what society will look like coming out the other side.

Most people I think would more or less agree with this. What gets controversial is what to do about it.

There are two major schools of thought as regards to the right policy course to deal with these issues. The first major school is to get out of the way of the free markets and let the “invisible hand” of capitalism do its work. The second major school of thought is to temper the free markets via some combination of wealth redistribution and regulation.

(There are of course other ideas out there. One I think is important is a focus on creating educational systems that will help workers through the transition, which I think is possible common ground for the above two positions. Then there’s also more extreme forms of redistribution such as Marxist ideas that reject the free market altogether, but I think that’s largely been discredited since there are no real examples of successful Marxist economies).

I’m not a fan of either major school of thought. I see them as more closely related to each other than is generally perceived. Extremists on both sides call each other a lot of names and believe that if only the other side didn’t exist, everything would be okay. Howver, both the regulate-and-redistribute partisans and the free-market advocates have something important in common: they both see capitalism as the primary engine of wealth creation. Their difference is that some of them want to let that engine rev at max RPMs while the other side believes we’ll get better mileage if we take it back a few notches.

I think what we really need to help us through the transition to an information economy is a second engine. To use a dumb analogy, I feel like we’re flying in a 747 where only the left wing engine is turned on. What I want to talk about here is what the second engine might be, and how to press the ignition switch.

Before going there, though, let’s talk about what capitalism gets right. Capitalism has been wildly successful in terms of creating wealth. I think the majority of its success can be attributed to two of its attributes:

  • Freedom and decentralization of control
  • Following the grain of human nature

First, capitalist systems are decentralized; each individual is free to choose how they want to contribute to society. This is very efficient, since each individual is better informed about their own circumstances than, say, a central government. But more importantly, it means people are free to try out crazy ideas. No one tells you, “nope, you aren’t allowed to do that, you’re supposed to be laboring on the farm this month.” Since most really really good ideas start out sounding a little crazy, this is a radically important advantage.

Second, capitalism follows the grain of human nature instead of cutting against it. Capitalism doesn’t try to get people to do things they don’t want to do. Instead, it creates incentives so that people do want to do things beneficial to society (in theory, anyway). One of the deep conenctions to human psychology that capitalism takes advantage of is that people like scoring points and winning. By given people counters in the form of money, they get concrete, visceral feedback on whether they are “winning” or “losing” the capitalism game. As anyone who designs games knows, this kind of feedback is very important, and people voluntarily seek it out, especially when there’s an understanding that getting a high score is rewarded.

Because of these properties, capitalism is a very stable system; people voluntarily participate in it without having to be coerced or motivated. This is important, because it is easy to say “if everyone did X or Y, we’d all be better off”, but if not everyone in the world agrees with you (and they never do!), what you get is political gridlock, people shouting at each other, or violence, instead of results. Capitalism has managed to survive for hundreds of years of history precisely because it is not arrogant. It doesn’t tell anyone what to do, it just offers them incentives.

My belief is that capitalism is probably one of the best possible systems for a low-technology, resource-limited society to adopt to transform itself into a high technology, abundant society. I am coming to believe, however, that it is a terrible system for a high-technology, abundant society to continue transforming into a just, stable, and creatively-free society.

The basic problem is that in a low-technology world, value creation is closely tied to physical goods and hands-on services. In a high-technology world, value creation is the generation of ideas and information: a hit song, a software algorithm, a fertilizer formula.

Physical goods have the following properties that work well with capitalism:


  • The cost to produce them approximates their value. Physical goods that are easier to produce are more plentiful and therefore less valuable; goods that are harder to produce are less plentiful are therefore more valuable. Cost and value can diverge, but they’re in the same general ballpark.
  • Putting more effort into producing physical goods pays off fairly linearly in terms of additional value created. If you double the amount of time you spend making pots, the number of pots you have is more-or-less doubled. Likewise, as you do a better job at making them, the value of each pot increases, but while a good pot might sell for two times or even a hundred times more than a bad pot, it generally won’t be worth a million times more (Qing dynasty vases notwithstanding).
  • If you give up a physical good, you don’t have it any more. This means that trading physical goods is generally a fair exchange, in that both parties lose something and both parties gain something.

These properties result in the traditional analogy of “free market competition”. This phrase gets used a lot, but let’s actually think about the visual metaphor. A “free market” connotes an open space where people can walk around as equals, buying and selling from each other. “Competition” connotes a sporting event, friendly rivalry where people try to best each other according to a given set of ground rules. In a low-tech world, this analogy is fairly on the mark. While there’s never truly been a “level playing field” in human society (i.e., it matters what family you get born into, what gender you are, etc.), in a low-tech world, capitalism does more or less tend to create an environment where the harder you work, the better you do.

This is not true in a high tech world. Technology changes the basic way value works:


  • The cost to produce ideas / information does not approximate its value. Rather, a single person working by herself for a few weeks can write a song that gets broadcast to a billion people overnight. A small tweak in an agricultural system can produce millions more heads of corn.
  • Therefore, spending additional effort producing ideas does not have a linear scaling effect on the value you create. Rather, value tends to fluctuate wildly depending on market circumstances. For instance, if you had the second-best social network idea, it’s worth a million times less than Facebook. A great dress design in the hands of an independent clothing designer might lead to $10,000 in revenue; that same design produced by H&M might be worth a few million.
  • If you give up a piece of information, you still have it. If I copy my music collection and give it to you, I can still listen to all my music just as easily.

This creates an entirely different “market” dynamic. Unlike low-tech capitalism, high-tech capitalism is not a competition in the way the Olympics is. It is a competition the way that World War II was.

The winners in a high-tech economy are the people with the right vision at the right place at the right time. As technology advances, the value of labor decreases, because jobs that can be filled with interchangeable people are also the jobs most likely to be automated away. Outside of the service industry, there is ruthless pressure to move towards higher-and-higher skilled roles, as the lower skill-rungs keep on getting replaced by computers. Increasingly, the only successful people are going to be those who are un-interchangeable; the entrepreneurs, the artists, the idea-generators. In a country with 300 million people, it’s hard to imagine everyone succeeding on such a path.

Competition in a world like this is brutal and all-or-nothing. Slight differences in starting position can have exponential impacts. Hard work and effort can still pay off, but not equally for everyone.

There is an increasing sense that we live in an unfair society. The wealth gap between the richest and poorest has diverged from historical norms. People realize at an intuitive level that when a CEO of a successful company plays “capitalism”, they are playing a totally different game than when a sales clerk plays “capitalism”. A CEO is not a sales clerk who worked harder. The old “worked his way up from the mailroom” story is just not realistic in a high tech economy.

My concern is for what happens to people when they move from a world of polite, fair competition to total economic war. I don’t want to live in a world where the choice is either to just get by, and hope I can afford healthcare and rent, or play to win big. I want there to be a middle path, but it’s getting increasingly narrow. I’m playing the game myself — I started a technology company and I’m trying to make it successful — but I’m worried about what kind of a world technology and capitalism will create together., a company that I admire in a lot of respects, is a classic example of this. This is what it’s like to live in the world they are building if you aren’t a technologist: I Was a Warehouse Wage Slave.

I think that these concerns can be blunted, but not eliminated, in a capitalist system. We can smooth out the wealth disparity by increasing the amount of redistribution we do. We can regulate to make sure that people on the bottom of the system have at least a basically humane life. And we can increase the fairness via better systems of education, to lessen the impact of your starting point in life on your eventual outcome. However, as technology advances, I think the trend of big winners and big losers will only accelerate. Even if the winners give more and more of their earnings away, it still leads to a weird two-caste society where a small set of people drive the engine, and everyone else is along for the ride. That’s not a society I want to be a part of.

What I imagine instead is a society where we turn on a second engine of economic growth, one that more people can participate in. This second engine is economic collaboration, as differentiated from economic competition.

Collaboration, unlike competition, can work in an imbalanced setting. Even if you’re in a much stronger position than me, we might still both be better off working together than going on our own. In a competitive economy, the weak are irrelevant, whereas in a collaborative economy, “weakness” does not preclude participation. Relative power dynamics (e.g. ownership of capital) are not as important if the question is how can people best help each other.

Collaboration is inherently suited for an economy of ideas. Ideas tend to build off each other. The very properties that make them difficult to fit into capitalism are the same properties that make them work in a collaborative setting. The fact that you can give an idea away and still have it yourself is a disadvantage if you’re trying to sell it, but it’s an advantage if your goal is to share it. (The experience of the music industry watching their “analog dollars” turn into “digital pennies” is a good example of the clash between capitalism and technology).

So it is not a coincidence that one of the most successful examples of a collaboration economy is happening on the technological frontier. In the software industry, traditional capitalist organizations play a big role in driving forward growth, but increasingly, advances have come from the open source community, which operates based on collaboration. People help each other write code and give it away their code for free, and are compensated by the respect and esteem of their peers.

It is important to understand that this compensation is not a fuzzy, abstract thing. Rather, someone’s standing in the community can be evaluated very concretely, by looking at a couple of well-known websites. For instance, most people evaluating a software developer for a job will look at what projects they have contributed to on GitHub, and check what their reputation score is on the knowledge-exchange website Stack Overflow. These metrics translate into high-paying job offers (or in the case of this this recent Kickstarter project, directly into cash).

Although this collaboration economy is promising, right now it’s limited. It’s missing a key piece for it to fully come to life and play an equal role with capitalism in creating growth.

Let’s recall the two big things capitalism gets right: freedom / decentralization, and going with the grain of human nature. Collaboration economies are already nailing the first element. The open-source ecosystem is as free as a market can be; people have total discretion in their choice of with whom and on what to work. The best efforts tend to attract talent, since there’s no reputation to be gained working on something valueless. The invisible hand is effective and hard at work.

The second element, inherent motivation, is more of a problem. For a professional software developer, contributing to open source is a smart career move. But the reputational benefits of working on open source are limited to within the technology community. In contrast, doing work for pay helps you in society at large. The grocer down the street recognizes dollars; she doesn’t recognize github commits. So the selfish benefit of playing the collaboration game is limited. Most open-source developers still need a day job to pay the bills.

Another way of putting the problem is that today’s collaboration-based economies are domain-specific. You have to be a member of a specific community to transact on your reputation. This is analogous to the problem at the dawn of capitalism: if you had wood and wanted food, and your neighbor had food but wanted pottery, you needed to find someone who had pottery but wanted wood or you were out of luck.

The solution to this dilemma is currency, a common medium of exchange that, by mutual agreement, represents economic value. Getting to this mutual agreement was a gradual process; early currencies were things deemed valuable in their own right, like abalone shells or gold; later currencies were backed by an official promise to convert them into gold. Now, currencies are backed by the reputation of the issuer; people’s belief, for instance, in the ability of the US government to follow through on its obligations.

Currency is more than just a way of facilitating interactions, however. It’s also a scoreboard. I believe that capitalism goes beyond taking advantage of self-interest to actually defining self-interest; it changes the way people understand what “success” is. For good or ill, people seek external cues to measure their worth; currency, as measured by a number on a bank statement, or in a paycheck, or a position on a Forbes list, becomes the standard that people judge themselves by.

Unfortunately, in a technological world, the scoreboard is optimizing for the wrong thing. It’s optimizing for facility at acquiring property in often-zero-sum competition, which, while beneficial in terms of unlocking innovation, is also destructive to the people caught up in it, and unsustainable in a world where the difference between first place and second place can be billions of dollars.

I’m a pragmatist. Although I think people often act for values-driven, moral reasons, I don’t think a system is long-term sustainable unless people organically want to cooperate with it, both at their worst and at their best. Inorganic, top-down solutions don’t work and don’t last. So to me, the big question is, can we do for collaboration what currency did for competition?

The starting point is asking what the fundamental unit of value is in a collaboration economy. In a competitive economy, the answer is property ownership: currency evolved out of physical property. In contrast, in a collaborative economy, the fundamental unit of value is your relationships, or social capital. It’s not what you have, it’s who you have.

The archetype of property as stored value is cave-people preparing for the winter by stockpiling food and furs. The archetype of relationships as stored value is preparing by building strong friendships with people who will help you hunt and maintain a fire. Obviously, both are important; it’s dangerous to go into the winter either friendless or food-less.

A relationship’s value, in blunt, economic terms, is the willingness of the person to help you in a time in need. At the heart of good will for a friend is the idea “if you ever need me, I will be there for you.”

Following this train of thought leads to this idea:

What if there were a system of currency that represented goodwill? Where the basic unit was backed by the promise “if you need my help, I will help you?”

I imagine, to start with, just as dollars were backed with gold, that this new currency would be backed with the promise of monetary aid. If we call the currency “goodwill”, then we could say that 1 goodwill = an obligation to help out to the amount of 1 dollar. Unlike a loan, however, the expectation is that goodwill is generally not paid back (except under situations of need), but paid forward. Thus, I can give goodwill to you, and you can give it to me, without it canceling out. In cooperative relationships, unlike competitive ones, we’re both better off by being mutually indebted.

I see goodwill as being non-transferable (except maybe in special cases such as the death of the issuer); I give out my goodwill to you; you give your own goodwill to others. Unlike money, giving goodwill away does not make you have less of it; you can issue as much as you want. There is a cost, though, in that it creates an obligation on you to the other person, so there’s incentive not to give it away insincerely.

I see goodwill being electronic and public. Physical currency doesn’t work because when you give something physical away you don’t have it any more. As the economy turns digital, so should the currency. I see it as public, because a lot of the value in being given goodwill is that others can see that you have it. So I can imagine goodwill being represented on a website or app where you can see entries like “Hannah gave 10 goodwill to Emmanuel on Thurs at 1pm; Aaron gave 15 goodwill to Emmanuel on Thurs at 2pm…” and so on.

The goal of the new game, then, is to convince people to give you goodwill by bettering their lives. The more goodwill you get, the more convincing your goodwill is to others. This is just a basic human reality; being owed a favor by someone who a lot of people owe favors to means more than being owed a favor by someone who no one is indebted to. I can imagine an algorithm like Google’s PageRank showing a summary of your overall social capital. People who have a high score benefit, because others will be eager to earn their highly valuable goodwill (just as website owners want to be linked to by popular websites more than unpopular ones). Importantly, though, even if someone isn’t particularly rich in social capital, it is still better to have their goodwill than not to have it. Unlike in a competitive economy, where winning is closer to zero-sum, there’s room for people at the margins to meaningfully participate and work their way back into the game.

This dynamic is no different than already exists in society. People help each other out in order to build networks, and influential people benefit from the freely given help of the people around them. The difference is that with a goodwill currency, the information becomes public and transparent. For instance, helping out someone in San Francisco who works as a school teacher would count favorably towards your interactions with a bunch of firemen in New York, because it would show up on your public record. (Whereas today, if the firemen don’t know the teachers, your good deed goes unrewarded).

To put it another way, people today put in effort to accumulate property (financial capital) and relationships (social capital). Financial capital, however, has an important advantage, because financial capital is measurable and liquid, whereas social capital has no commonly agreed-on medium of communication. The idea is that by making social capital more measurable and liquid, we can shift the relative value of financial to social capital. And since social capital is inherently cooperative, whereas financial capital is inherently competitive, by making social capital more prominent, we can move the economy more towards cooperation.

I don’t see money going away, at least any time soon. But I do see ideas and information, relationships and connections, becoming increasingly valuable relative to goods and services. Our current economic model is straining under this reality. The technology world is plagued by contention over “intellectual property”, which is a legal abstraction that castrates ideas to make them behave more like traditional physical property. These limitations, although understandable in a world where money is the only thing you can trade ideas for, are toxic to economic development. And as competition in the idea-space increasingly becomes winner-take-all, more and more people are becoming economically disenfranchised altogether.

Mitigating these societal strains will undoubtedly take a variety of forms. I’m worried, however, that the existing set of solutions doesn’t contain any measures that address the heart of the problem, which is that competitive capitalism isn’t the right engine of economic growth to handle technology. My hope and hypothesis is that by creating a medium for social capital, we can create a society-wide cooperative economy, leading towards a more just and more prosperous world.

Written by jphaas

March 23rd, 2013 at 7:21 pm

Posted in Uncategorized