Skip to main content

Humanist technologist. Equality and adventures.

I co-founded Elgg and Known, worked on Medium, and now invest in innovative media startups to support a stronger democracy at Matter.


You are not too smart to listen

3 min read

A couple of years ago, Brendan Eich was ousted as CEO of Mozilla. It was a tough issue: he had contributed to the Proposition 8 campaign against marriage equality, but had done so as an individual. Mozilla contributors argued in both directions, but many felt that they couldn't feel safe working on a project or at a company where the person steering the ship didn't care about their rights.

Where I believe the debate came off the rails was his refusal to engage with the debate. Sure, his donation had been as a private individual, but as the CEO of a company with shareholders he had a responsibility to make a statement, and to reassure everyone that Mozilla had a culture that welcomed everybody. It's hard to know exactly what happened behind closed doors, but from the outside, it looked like he was choosing the "higher ground". This higher ground was actually the lowground: by staying quiet, he gave the impression of not caring about these contributors, whereas he needed to engage on an emotional level. He gave the impression of not listening.

A lot of startups operate this way: they'll hire high achievers, people who on paper are the brightest in the world, and then trust them to make the right decisions. That's fine, to some extent - but even the most empathic person in the world isn't prepared to understand the nuances of every situation.

At best, you have a hypothesis about how to react to a situation - but all hypotheses must be tested. And in every situation, there is someone more insightful than you. Any startup founder worth their salt will tell you that validating your assumptions is key. Any engineer will tell you that user testing is brutal for the exact same reason. These are things you have to do, because it's impossible to understand everybody.

But this isn't just about business. It happens all over geek culture:

Being smart means acknowledging that you might be wrong. For kids that grew up getting As throughout their academic career and being told they were gifted, that might be hard to take. It doesn't make it less true.

In a world where more and more people are connected, empathy is the most important life skill. It's not something you can intellectualize; no elaborate mind palace will help you understand other peoples' experiences and feelings. A white, male, upper middle class Stanford graduate can't automatically understand the experiences of people different to himself. You've got to ask people, and then change your stance accordingly.

The technology industry has been less about actual technology and more about networks for some time. Guess what: networks are made of people. The internet is people. We've already shown ourselves to be adept at building amazing devices and incredible software. Now we have to learn to be great listeners.


We all work in massively megalithic open plan offices now

3 min read

Samuel Hulick writes that he's breaking up with Slack:

Which is to say, I thought you were providing some relief from the torrential influx of messages, alerts, and notifications I was receiving on a daily basis. “Me + Slack = Fewer distractions and more productivity,” I thought at the time. I have to say, though, that I’ve since found it to be the opposite.

Like, WAY the opposite.

I love Slack. It's a handy, lightweight way to reach people you work with, wherever you are. But I also find myself closing it from time to time, and turning off my notifications throughout my workday. I'm not sure this kind of notification management is something everybody does, and people have, on occasion, been mad at me for not seeing a notification in real time.

Simultaneously, some companies are rethinking open plan offices. As Stowe Boyd wrote last year:

Recent research in Denmark shows a correlation with sickness: the larger the open space is in an office, the more people will take sick leave. Compared to traditional single occupant offices, those in open offices with more than 6 occupants had more than double — 62% — the normal days of sick leave.

That's partially because open plan offices are germ vectors, but this isn't the only reason:

A growing body of research is gradually cementing the idea that open offices can also make it harder to get work done. By overstimulating us, they can make us more stressed and more distracted -- and therefore less productive.

By hyper-connecting everyone via platforms like Slack, we're constructing a giant open-plan office that is almost impossible to escape.

Not only do constant notifications decrease productivity and stress us out, but if you have ownership over your problem or product, you're more creative when you work alone.

That's not to say that we shouldn't be connected. But the onus is on us to manage our connections - and it has to be acceptable to switch them off on our own terms. A number of countries have examined banning after-work emails, but this doesn't cover the interruptions while you're at work.

The excitement of ubiquitous connectivity - we all have smartphones now! and they're amazing! - is wearing off. With it, we need to examine design trends like calm technology, and learn to be proactive about controlling our information environment, rather than reactive to ever beep and information blast that comes in. (No matter how addictive they might be.)

We all want to be more effective, creative and efficient at work. It's time we took another look at designing the best environment to do it in.


Stop writing specs, start finding needs - what I've learned working on Known

4 min read

Working with Erin Jo Richey changed the way I think about building software.

There's a kind of software development I like to call checklist development. That's where you just draw up a long list of features you want your software to have. This could be based on your own intuition, or it could be because you have a collection of stakeholders who have all told you that they want certain things.

The end result is a kind of shopping list of software features. You might take that list and have someone else develop it, or you might develop it yourself. Either way, it's the single worst way to build a software product.

Throw out the shopping list.

I already knew that checklist development was a harmful antipattern. You need to have the right features, built in the right way, to solve real needs.

What Erin has brought to Known is an intellectual rigor in finding those needs. It doesn't matter if you've been working in software development for thirty years. Building based on your assumptions is not the same as determining unmet needs through a scientific, data-driven process.

The first week Known existed as a company, we had countless phone calls and conversations with the kinds of people we thought we might want to build it for. We just shut up and let them talk, and Erin created a framework for distilling that information into actionable insights. (She also open sourced the scripts she used.)

From there, we created simple prototypes of product iterations that built on those insights, and tested them again. Those prototypes didn't need to be software, and in fact they were worse if they were; the lower the fidelity, the more people projected their own assumptions onto them, and the more we learned.

We've run design thinking workshops at universities to glean real insights from students, faculty and staff; we've spoken to a huge number of people about specific markets like podcasting and chatbots; we've covertly created lots of different kinds of prototypes in order to learn and iterate.

My instinct is often to intuit and try to be a kind of software artist; all the while, Erin has rigorously questioned our assumptions and found ways to test them. Of course, being a startup cofounder, she does a lot more, too. But I think this approach to design is unique in open source projects, and still fairly rare in software overall.

Design is a science.

In the two years we've worked together, I've often thought that "user experience design" is the wrong term. For the layperson, it implies visual design, and the craft of building a beautiful user interface (even if design is, in truth, a much larger and richer field). In fact, user experience design is about applying scientific user research to the product idea itself, and then continuing to use research to iterate that product in order to make sure it's meeting their needs in a satisfying way.

A lot of developers think of design as a superficial layer that you add at the end. Instead, if you're serious about making something that people can actually use, it should be the thing that comes first. And second. And third. Scientific design should be part of every stage of development. Development becomes one part actual engineering, one part investigative journalism, and one part data science.

My first question used to be: "what can we build?" Now it's: "who can we talk to?"

I came from the huddle-down-and-just-build-something school of development. It took me a little while to come around. But these days, I wouldn't do it any other way, and that's all down to Erin.

We approach projects differently.

This different approach means that, when we work with external clients, we like to make sure we understand the core needs first. A checklist of feature specifications can be a negative signal (unless you've already done your own empathy-based needs-finding). We like to hear about goals and real people.

The good news is that Erin can help you find those needs, and tease out those user stories, through the techniques she's developed. Then, she can create a low-fidelity paper prototype - usually wireframes - to get feedback. From there, higher-fidelity prototypes can be created and tested, bringing you closer to a final product that actually meets a need - and therefore is more likely to succeed.

That's how we do our projects at Known, both for ourselves and other people. We find it allows us to build better online communities. I'm never going back to building in a vacuum - and neither should you.

(What if you don't need Known? That's okay too. Legend has it, she also does her own freelance user experience consulting.)


Matter is building a more informed and connected society. Here's why I think you should join them.

3 min read

Real talk: Known should list Matter as a cofounder.

Erin and I brought Known, Inc to Matter's third class in May, 2014. Over the next 19 weeks, we honed the fundamental story of our business, learning new techniques to validate assumptions and determine concrete needs along the way. They gave us $50,000 and a new way of thinking about startups.

Matter is a values-based accelerator that funds "ventures that have the potential to make society more informed, connected, and empowered". It's the only accelerator that I would have considered bringing Known to, and I think its mission makes it unique in Silicon Valley.

It funds ventures, not projects. That means you have to be driven - as I am - to create businesses based on these values. It's not good enough to build an interesting software platform; it has to be something that will attract investment or be able to grow through real revenue.

If that's what you have, Matter doesn't end at Demo Day. This last Friday, Corey Ford and I took a walking meeting around South Park. This isn't something that happens every few months: he and the Matter team have been there for us when we've needed help and advice every single time. When we began, I couldn't imagine the support we'd still be receiving almost two years later. (When we joined, Matter was a two-person startup in itself; Corey and Lara Ortiz-Luis have now grown into a much larger team.)

What's not immediately obvious when you read about Matter is the community. I've picked up the phone and called founders who went through the program years ago, and they've been happy to share their time and expertise with me, no questions asked. I could ask a question right now and four founders would give me advice before I've finished my coffee. More importantly: I consider them all friends, and the community persists even for the founders who have exited or closed their companies.

Here's another reflection on why Matter is different: half of Matter Three and Matter Five's CEOs were women. Two thirds of Matter Four's CEOs were women. Two thirds of the Matter team itself are women. I haven't seen that mentioned anywhere, but given the current Silicon Valley climate, that is certainly worth highlighting.

The partners are also awesome. We've enjoyed a close relationship with PRX and KQED in particular. Since we joined the community, Google News Lab, the Associated Press, Belo, Tribune Publishing, CNHI and McClatchy have all joined - and the Knight Foundation, one of the most important forces in American journalism, is a founding partner. They've joined because they see media changing, and they want to be a part of the future. These aren't small opportunities.

I wasn't asked to write this post. If I'm effusive, it's because I'm grateful. As a values-based entrepreneur - I've dedicated most of my career to building open platforms for media and education - I appreciate that Matter even exists. This is a firm that counts Wael Ghonim among its portfolio founders. It's not just an accelerator, and while that $50K seed might be a carrot, it's the least of its value.

So I'm writing this post because of that. I know lots of people who follow me are working on mission-driven ventures. You might be looking for partners, but need to find the right kind of community to protect the value of what you're building. All I'm saying is: Matter Six is open for applications, and it's worth your time.


I'm a startup founder. Here's why I support Bernie Sanders.

19 min read

It's fair to say that American politics is having a meltdown.

The poster child is Donald Trump, the heir to a multi-million dollar empire who would have made more money if he'd spent his life finger-painting, but nonetheless portrays himself as a shrewd deal-maker. In one sense, he is a businessman: he's found a gap in the voting market - a poorly-educated, disenfranchised group of voters hungry for scapegoats - and is milking it for all it's worth. Anyone with barely a passing knowledge of 20th century history should be terrified of the rhetoric he's cynically used to build himself a following, and the repercussions of his campaign will be felt for a generation.

A lot of people see Bernie Sanders as being on the same spectrum: an appeal to disenfranchised voters who need something new and don't know any better. I disagree: I think there are very rational reasons to support Bernie over other candidates. (This does not mean that I wouldn't support a Hillary Clinton nomination. I would absolutely vote for her if she was the Democratic candidate.)

There's been a lot of shouting from supporters on both sides, from Trump fans to Bernie Bros. I don't think it's productive or interesting. So let's just say this up-front: I don't need you to agree with me, but I would genuinely love to hear what you think. I think sharing arguments - not shouty arguments, but the logical kind - makes us all smarter. Freedom of speech is a gift.

Where I come from

I think this is worth saying, as it undoubtedly colors my opinion: I'm an American citizen, but I grew up in England. That means I grew up using the socialized National Health Service. I was also in the last ever university class to not have to pay any tuition fees: I attended the University of Edinburgh tuition-free, and so did every single one of my domestic classmates. (Foreign students had to pay.) So I grew up with a lot of Bernie Sanders campaign promises; they were my reality.

I attended state schools for my entire childhood. Some of these were co-run by the Church of England, but I was taught that evolution is a fact, that homosexuality is not a sin, and so on. Evangelical religion and religious restrictions on education were not a part of my reality. (For what it's worth, I'm a lifelong atheist, despite this educational background.)

Terrorism was a part of life: the IRA conducted a bombing campaign for most of my childhood.

Who am I now? I'm the founder of Known, a startup based in San Francisco. As a startup founder, I am not anti-capitalism. I want to make money solving problems for people (in an ethical way).


One of the core promises in the Sanders manifesto is free healthcare for all:

Bernie’s plan would create a federally administered single-payer health care program. Universal single-payer health care means comprehensive coverage for all Americans. Bernie’s plan will cover the entire continuum of health care, from inpatient to outpatient care; preventive to emergency care; primary care to specialty care, including long-term and palliative care; vision, hearing and oral health care; mental health and substance abuse services; as well as prescription medications, medical equipment, supplies, diagnostics and treatments. Patients will be able to choose a health care provider without worrying about whether that provider is in-network and will be able to get the care they need without having to read any fine print or trying to figure out how they can afford the out-of-pocket costs.

It sounds great, but understandably, there have been a lot of worries about how this will be paid for. There is a justifiable argument that this will increase government spending; meanwhile, the Sanders campaign argues that it will save $6 trillion over the next ten years when you consider government subsidies of the existing system.

The economic arguments against universal healthcare seem to assume that growth in medical costs will not increase, but fail to take into account the drop in medical costs once you remove the insurance-based system. Today, a simple blood test can easily cost over a thousand dollars; removing the existing closed marketplace system will reduce these. As Vox noted:

Sanders's plan is very optimistic, assuming huge reductions in per-person health care spending that bring the US much closer to existing countries with single-payer like Canada (which spends nearly 48 percent less per person) or Australia (more than 56 percent less). "If you look at every other country that has adopted a universal single-payer health care system, their costs per capita are far lower than they are in the United States," Gunnels told me.

If the government manages to reduce these costs, the Sanders plan makes economic sense. If you don't believe that the costs of procedures and materials will shrink under a single-payer system, there are more questions.

However, containing costs is vital for the future of American healthcare. As Dr Ed Weisbart noted in the American Medical Association's Journal of Ethics back in 2012:

A single-payer model would eliminate the inefficiencies of fragmentation by converting public programs such as Medicare, Medicaid, and CHIP into a single administratively efficient financing system. Streamlined billing under single payer would save physicians vast amounts in overhead. In addition to reduced billing expenses, physicians would also enjoy a meaningful drop in their malpractice premiums.

[...] We spend more but use less of most services than other member nations of the Organization for Economic Cooperation and Development. In other words, our prices are much higher. [...] Only a single-payer system enables the kind of bulk purchasing of drugs and medical devices that would give the buyer power. A model for this structure exists today in the United States: the Department of Veterans Affairs. Due to governmental authority to negotiate drug prices for the VA, it pays roughly half of the retail price of drugs.

There is precedent, in other words, for government healthcare programs to reduce healthcare costs.

Access to healthcare isn’t just an important social issue: I believe large out-of-pocket medical costs have a chilling effect on innovation.

I pay for my own healthcare insurance, which comes to around $290 a month. This plan comes with a $6,000 deductible, which means I pay the first six grand of any costs I have. In other words, while this will prevent me from going bankrupt if I'm hit by a bus or get cancer, it won't save me anything when it comes to regular doctor's appointments over the year.

$290 isn't a completely unreasonable amount if I'm making an above-average middle class salary. As a startup founder, however, I don't. I know health insurance is important (and that I'm legally required to have it) so I pay for it every month, but as a chunk of my monthly outgoings, it's second only to my rent.

For many would-be entrepreneurs, these out-of-pocket costs have a real effect on their ability to take risks and start a business. Most people get health coversage through their employer - something that goes away when you start your own business. As the Philadelphia Inquirer reported in 2009, this is a problem:

"We think it's a major impediment to growth," said Robert E. Litan, vice president for research and policy at the Ewing Marion Kauffman Foundation, which promotes entrepreneurship. "There's so much logic that supports it, it's almost impossible to deny.

Decoupling healthcare from employment would remove barriers for a class of people to start businesses. It would certainly have made a real difference in my life as an entrepreneur. In addition to the social reasons for having a healthy, working populace, this is why I support the Sanders universal healthcare plan.



The Sanders manifesto promises to work towards eliminating tuition fees at public colleges and universities, reducing student loan interest rates, and providing better grant support for low-income students:

In a highly competitive global economy, we need the best-educated workforce in the world. It is insane and counter-productive to the best interests of our country and our future, that hundreds of thousands of bright young people cannot afford to go to college, and that millions of others leave school with a mountain of debt that burdens them for decades. That shortsighted path to the future must end.

Two reasonable questions might be: what kind of impact will free college tuition really have, and how will we pay for it?

As Bob Samuels, President of the University Council - American Federation of Teachers, wrote in 2011:

Currently, only 30% of Americans who start college or university end up graduating, and this represents a huge waste of time and money. If students did not have to work while in school, the graduation rate would improve drastically, and students at universities could graduate in four years instead of six or more years. In fact, the biggest reason why students drop out of higher education is that they cannot afford the high cost of tuition.

We've known for a while that college graduates earn more - about $1 million more - over their lifetimes. It turns out they benefit their local communities, too. In 2015, the Brookings Institution released a study noting that college graduates yield an enormous benefit for their local economies:

Using data from the 2013 American Community Survey (ACS), Rothwell calculated that the average college graduate spends $278,000 more on local goods and services—in addition to $44,000 more on state and local taxes—than the average high school graduate. Even someone with an associate’s degree spends around $81,000 more.

This effect strongly depends on an area's ability to keep graduates once they enter the workforce, and some cities are better at this than others. Nonetheless, ensuring that more people graduate from college will have secondary and tertiary benefits in communities across the United States - and if low-income students get better support, those benefits will be seen in more disadvantaged communities, too.

Peter R. Orszag, vice chairman of corporate and investment banking and chairman of the financial strategy and solutions group at Citigroup, agrees on the positive economic effect of more college graduates:

More graduates would mean lower inequality, because the wage premium for a college degree would be reduced by the additional supply. And it would mean higher national income, because better-educated workers are, on average, more productive.

While researching this post, I wondered whether the employment market could actually absorb more graduates. The data on this turns out to be contentious, but the Georgetown Center on Education and the Workforce suggests it can:

[Our predictions] suggest that the economy will create 55 million new job openings over the next decade, and 65 percent, or 37 million, of these new job vacancies will require some postsecondary education and training.

Great. So how are we paying for this again?

Sanders wants to impose a tax of "a fraction of a percent" on "Wall Street speculation" in order to raise the $75 billion a year needed to pay for it. This translates to "50 cents on every $100 of stock trades on stock sales, and lesser amounts on transactions involving bonds, derivatives, and other financial instruments".

Would this minor restriction on trading really raise enough money? Absolutely (PDF link):

It is argued that trading volume will be sharply reduced in response to the tax; therefore the government will collect little revenue. In fact, the calculations of the revenue raised through a tax assume sharp reductions in trading volume. Current levels of trading are so large that even a 50 percent reduction in volume would still lead to a very substantial amount of revenue being collected. A calculation based on 2008 trading volumes showed a broadly based tax collecting more than $170 billion a year, assuming that trading volume falls by 50 percent.

In 2010, the Institute of Development Studies in Britain investigated this form of taxation and concluded that the UK should implement it, ideally in conjunction with other governments worldwide. Other supporters include David Stockman, who was the Budget Director for Ronald Reagan's government, Warren Buffett, and Lawrence Summers. (Oh, and the potential reduction in trading volume? That would bring us down to 1980s levels.)

The policy, then, benefits lower-income students, creates prosperity in communities all across America, and pays for it by imposing a minor tax that most taxpayers will never see.


Foreign Policy

There's been a lot of talk about Sanders being a single-issue candidate. Nowhere has this been more pointed than his perceived lack of foreign policy expertise:

Sanders has yet to give a speech exclusively on foreign policy, and on Friday his campaign backed away from an earlier commitment to deliver one before the Iowa vote. Numerous Democratic foreign policy insiders contacted by POLITICO could not name anyone who regularly advises the Vermont Senator on world affairs — a stark contrast to a Clinton campaign teeming with several hundred foreign policy advisers. It is also a contrast to Barack Obama's 2008 campaign, which by this point in that campaign featured a cadre of prominent foreign policy hands, including former national security advisers Anthony Lake and Zbigniew Brzezinski.

Foreign policy is vital. America's actions overseas affect its actions domestically, and vice versa; it isn't possible to cleanly separate one from the other. As such, this decision by the Sanders campaign is questionable.

Understanding a candidate's stance on American policy is important to me. We have by far the largest military in the world (spending four times as much as China, which comes in at number two), and almost 20% of the federal budget is spent maintaining it. We enact and enforce ubiquitous surveillance worldwide and domestically, despite zero evidence that it helps keep anyone safer. Hawkish US foreign policy helped create ISIS - and before it, Osama bin Laden and al-Qaeda. It used torture. And all of this is just in the 21st Century. America's post-World War Two history of warfare and foreign operations is shameful, from the horrors of the war in Vietnam, through the  assassination of Salvador Allende, to the Iran-Contra affair. Beyond warfare, the US has furthered a conservative agenda overseas, including tethering US assistance fighting AIDS to abstinence-based programs.

No wonder most of the world sees the United States as a negative, destabilizing force.

In turn, the perception that the United States is a combative, rather than collaborative, force makes us less safe. As Newsweek reported:

The most likely—though not most lethal—terror threats to Americans come from individuals living within the United States who are partially motivated to undertake self-directed attacks based upon their perception that the United States and the West are at war with the Muslim world.

In this global landscape, it's unforgivable to gloss over foreign policy.

Luckily, Sanders actually does have extensive experience. Lawrence Korb, senior adviser to the Center for Defense Information and a senior fellow at the Center for American Progress, wrote recently:

In my dealings with him, and in analyzing his record in Congress over the past 25 years, I have found that Sanders has taken balanced, realistic positions on many of the most critical foreign policy issues facing the country. In the mold of realists like Brent Scowcroft, national security adviser to Presidents Richard Nixon and George H.W. Bush, Sanders voted against the invasion of Iraq in 2002, while wisely supporting the war against in Afghanistan in 2001 and the intervention in the Balkans in 1990s. And Sanders certainly isn’t a foreign policy lightweight: In fact, given his long tenure in the House and Senate, he has more foreign policy experience than Ronald Reagan or Barack Obama did when they were running for office the first time.

Korb goes on to detail how Bernie Sanders repeatedly votes for a restrained, but realistic, military strategy (for example, while he was against the invasion of Iraq, he supported action in Afghanistan). He has an "admirable commitment to diplomacy".

Sanders has put climate change front and center as the greatest threat to national security, and I believe this is correct. For example, a peer-reviewed study last year showed that drought was a major contributing factor to the conflict in Syria:

There is evidence that the 2007−2010 drought contributed to the conflict in Syria. It was the worst drought in the instrumental record, causing widespread crop failure and a mass migration of farming families to urban centers. Century-long observed trends in precipitation, temperature, and sea-level pressure, supported by climate model results, strongly suggest that anthropogenic forcing has increased the probability of severe and persistent droughts in this region, and made the occurrence of a 3-year drought as severe as that of 2007−2010 2 to 3 times more likely than by natural variability alone. We conclude that human influences on the climate system are implicated in the current Syrian conflict.

Sanders has also argued against ubiquitous surveillance, which has been a significant infringement of our domestic rights and has had a chilling effect on journalism and freedom of speech.

A more peaceful, diplomacy-led foreign policy that also protects our rights at home will make us safer and allow the United States to be proud of its role in the world. I support this approach.



This is the elephant in the room, and it's where I part from Bernie Sanders. His positions on gun control and the causes of mass shootings have been outright wrong. (Gregory Meeks called Sanders' record "troubling" recently, but I don't think that word is strong enough. "Troubling" is what you call an off-color joke; guns are responsible for thousands of deaths every year.)

In an interview with NPR last year, Sanders said he didn't think gun control would solve America's violence problem:

"So obviously, we need strong sensible gun control, and I will support it," Sanders told Greene. "But some people think it's going to solve all of our problems, and it's not. You know what, we have a crisis in the capability of addressing mental health illness in this country. When people are hurting and are prepared to do something terrible, we need to do something immediately. We don't have that and we should have that."

It's true that America needs better healthcare, including mental healthcare, and this is addressed in his policies. However, I think it's disingenuous, counterproductive and deeply harmful to blame gun violence on mental health issues. The New York Times Editorial Board called this out last year:

But mass shootings represent a small percentage of all gun violence, and mental illness is not a factor in most violent acts. According to one epidemiological estimate, entirely eliminating the effects of mental illness would reduce all violence by only 4 percent. Over all, less than 5 percent of gun homicides between 2001 and 2010 were committed by people with diagnoses of mental illness, according to a public health study published this year.

Indeed, the single biggest predictor of gun violence is gun ownership. Or to put it another way, to curtail gun violence, we need fewer guns. States with stronger gun laws have fewer gun deaths.

For a candidate who puts such an emphasis on social justice issues, Sanders' stance here seems incongruous. He's at once ignoring an issue that disproportionately affects low-income African Americans, while also stigmatizing mental illness.

There's an argument that Vermont's status as a rural state makes it harder for him to support gun control, which he made on Meet the Press last year:

I come from a state that has virtually no gun control. And yet, at political peril, I voted for an instant background check, which I want to see strengthened and expanded. I voted to ban certain types of assault weapons, which are designed only to kill people. I voted to end the so-called gun show loophole. What I think there needs to be is a dialogue. And here's what I do believe: I believe [in] what I call common sense gun reform.

This isn't as far-reaching as I'd like to see, but it's better than nothing.

Plus, a revolution in mental health, making sure that if people are having a nervous breakdown, or are suicidal, or homicidal, they get the care they need when they need it. I think the vast majority of the American people can support and agenda composed of those features.

Damnit, Bernie. Again: while America absolutely needs stronger mental health support, linking this issue to gun crime is irresponsible.

On this issue, Hillary Clinton has a much more solid platform, including the removal of the immunity protections that gun manufacturers currently enjoy.



He's not a perfect fit for my beliefs, but he's far from the single-issue, light-on-substance candidate he's often painted to be. As Hillary Clinton has repeatedly stated, the larger danger is from the socially conservative, fiscally irresponsible policies being peddled by the front-running Republican candidates, and I would rather see either Democratic candidate become President.

I support him on healthcare, education and foreign policy, as I've shown. I also applaud his stances on womens' rights, marriage equality, veterans' rights, and reforming the financial sector.

It's probably clear that I'm concerned about social justice issues. But I'm also in business, and I believe these policies directly benefit me in ways that include:

  • Creating a stronger safety net, removing some of the potential downside from starting and running a small business.
  • Building more prosperous communities across America, strengthening middle class Americans (or as I call them: "customers").
  • Creating a more peaceful, more collaborative world, which will open global markets and new business opportunities.
  • Strengthening opportunities for diverse voices in business, making America more innovative.

Much of this is inherent to the Democratic platform as a whole. However, one some key issues - like banking regulation and foreign policy - I believe he is the strongest candidate.

I believe a more inclusive, safer society is better for business. I'm saddened by Sanders' stance on gun control, but on every other issue, I am convinced by the picture he paints of a fairer, more prosperous America. Whether he eventually becomes the Democratic candidate or not, I think that picture will be enduring, and I'm excited about the future.


Bernie Sanders photo by Michael Vadon.


How we built Known

11 min read

We've got some exciting new things in store for 2016 that solve real problems for both higher and corporate education. We'll discuss this in a future post on the Known blog. First, though, I wanted to take a step back and explain the technical decisions we made for Known.

What is Known?

Known is an open source web platform that allows groups and individuals to publish in a group with a variety of media. You can choose who can see the content you publish, as well as where you reach your audience: you can syndicate your content to services like Twitter, Facebook, SoundCloud, Flickr, LinkedIn and more.

It's also an open platform designed to be extended:

  • Every content type is provided by a plugin, so any organization can add new kinds of content. (For example, we don't provide video out of the box - but you could.)
  • Every syndication service can also be extended, so while we provide plugins for social media, a university could extend Known to allow students to submit their work to their Learning Management System. Internally in the company, we'll often create Known sites for particular projects and then syndicate our posts to Slack.
  • Known supports themes.
  • Plugins can also provide Single Sign On (we provide LTI and LDAP to our enterprise customers, but for example, KQED uses SSO to link Known to WordPress accounts).

Known works for a single user - my website runs on it - or five thousand. It's up to you.

Did I mention it's fully responsive, meaning it works just as well on your smartphone as it does on your laptop? Or that every page is an API endpoint?

Install anywhere, extend easily

A key goal for Known is the ability to install it virtually anywhere.

Installing self-hosted web software is, unfortunately, not as easy as installing an app on your iPhone or your laptop. However, it doesn't need to be a developer-centric process.

Shared web hosts are immensely popular, and abstract away a lot of the really technical work involved in maintaining a server. You can often select an application to install from a directory of available projects, answer a few questions, and be ready to go in a couple of minutes. At its hardest, you can upload some files via FTP. You never have to drop to a command line and run Linux commands - and indeed, often you can't.

We wanted to be compatible with these hosts (our web hosting sponsor is DreamHost), as well as power users who have deeper technical control over their servers. That implied a number of requirements:

  • The software language needs to be compatible with a large number of servers
  • Users need to be able to install the software without command line tools
  • Knowledge of version control systems like git, or managers like GitHub, shouldn't be required
  • Use of a package manager like npm or composer shouldn't be required

It turns out that the most widely-supported language on shared hosts is PHP.

PHP has received not a small amount of scorn in developer circles over the last decade, and a lot of it is fairly earned. But the truth is that modern versions - particularly 5.4 and above - have consistent interfaces, and modern language features like namespaces and closures that bring it closer in line with more cutting-edge languages. The PHP style recommendations produced by the Framework Interop Group and popularized by PHP The Right Way have done a lot to standardize PHP code.

In fact, PSR-4, which defines a template for class namespaces and a way for objects to be autoloaded on demand, turns out to be useful. Every plugin in Known uses this standard for autoloading.

The only question is PHP version: not every host supports these features. In fact, while it turns out that 98.8% of PHP hosts support version 5 or above34.3% of these are on version 5.3. We expect this number to shrink over time, and consider it acceptable to be supported by the remaining 65% of web hosts. The syntactic features you gain, like closures, are worth it.

To support virtual URLs, we initially required the Apache web server (which is still the leader overall on the web). However, a number of community members have created open source configurations for nginx.

The data model

I don't think it's acceptable for plugins to create and maintain their own database tables. For one thing, you may wish to prevent Known from having database modification access permissions. For another, this means that every plugin is a potential database security risk or performance drain.

Instead, from the beginning I wanted plugins to access the database via an abstracted interface, and never have to worry about the schema. At the same time, I wanted plugins to be able to store any data they needed to function, in a way that made sense in the context of that plugin.

The first versions of Known used a NoSQL database, MongoDB, as its sole data store. This worked well for development, but it quickly became apparent that shared hosting would not support this as a data layer. In interview after interview, users said they wanted to run Known on hosts like Reclaim Hosting and Nearly Free Speech. In fact, many shared hosts support MySQL - and that's it. This left us with a challenge: could we provide a schemaless database layer while providing full support for MySQL?

Kevin Marks provided the answer: a balanced schema developed by FriendFeed back in the days before NoSQL databases became commonplace. We created a highly-indexed metadata table, which is purely used for searching for objects, and then stored the complete objects in JSON in an object database. All of this is provided by a seamless database layer called the Data Concierge, that abstracted many of the functions provided by the MongoDB PHP extension.

A side effect of this abstraction is that more databases could be added easily. Today, as well as MongoDB and MySQL, Known supports SQLite and Postgres.

Distributed social networking and uncool URIs

One of the core original visions for Known was that data could be distributed. A user on site A could participate in a community on site B. Imagine creating a group for a project across two companies, and then allowing users from a second company to join and collaborate without re-registering! There are lots of real-world possibilities for distributed social networking.

To prepare for this, we decided that every object would have a URI as its definitive UUID. The idea was that you could access any resource by its UUID anywhere on the web, and as long as the request was properly signed, you'd be able to access it as if it was locally stored. In the end, I consider this a core mistake, but one that is hard to move away from.

Tim Berners-Lee famously said that "cool URIs don't change". Unfortunately, in the real world, URIs change all the time - and there's no way to require that they don't.

  • Domain names expire
  • People lose control over their domain names (eg a subdomain at a university)
  • People choose to move sites into subdirectories

Imploring people to strongly consider their website layouts, as the W3C does, is not helpful for individuals who just want to run a site. The web is not set in stone; websites change, and URIs should be treated as volatile in any internal data model. 

As it stands, Known contains a number of protections that allow it to be moved to different domains or directory locations, so users don't notice a difference. It's not a technical decision I'm proud of - but it may yet come into its own. We already use the indie web technologies for some distributed social networking, and it's an idea that I'm convinced will transform the web.

The front end

Creating a native mobile app for a platform that can be infinitely extended is difficult. Instead, we created a fully responsive, touch-friendly interface.

Known separates model, view and controller, and any page can be viewed with a different template. For example, here's my website using a JSON template, and here's a Star Wars crawl. Any plugin or theme can override any template element, so I could write a plugin that changes out the WYSIWYG editor (we use TinyMCE), or that displays avatar images as 3D spheres (if I really wanted to). I could write a template to display Known sites using a virtual reality browser - and someone really should!

For the default template, we chose Bootstrap and jQuery. The former provides a solid, responsive UI that can be extended easily (and which removed the need to develop it from scratch). The latter provides a powerful, performant way to query elements on the page. Not only did this combination let us get up and running quickly, but plugin authors could use them to create simple, grid-based user interfaces that would be in line with the platform as a whole.

For glyphs like social media logos, we use FontAwesome. The latest version contains 605 different user interface icons, is well tested, has a good community, and a compatible open source license. All of these things made it perfect for our use - and, again, making features available to plugin authors.

Every page is HTML5, CSS3. Content is encoded using microformats, allowing software to read and extract meaning from our human interfaces. This forms the basis of important decentralized social web protocols like those used by the indie web community.

Over time, we've learned that we do need to support a mobile app. The mobile web has evolved to be decent for consumption, but there are obvious missing pieces for producing content on a mobile over the web.

For example: it's difficult to upload media. Resizing camera JPEGs in front-end Javascript on a mobile device is not a reliable process. The web audio API produces WAV files, rather than MP3s, which are uncompressed and potentially large. We could resample these on the server side using something like ffmpeg, but it's not reasonable to expect a shared host to support media encoding - and nor is it reasonable to expect users to link up to a third-party media encoder like Zencoder. Worse: we found that the web audio API actually crashed many mobile browsers!

This problem is compounded by video uploads. Video files are huge, and there's no way to compress them in a browser. Backround uploads are hugely tricky, and resuming failed uploads is also hard. That's even before they've reached the server - and when files can be as large as 1GB per minute of footage, both storage and encoding is hard.

For the mobile web to effectively compete with apps, it needs to support the content composition experiences that native apps have been using for years. If we want people to build websites, the web needs to support building, across devices. It's a frustration, and an ongoing problem.

Moving on

Our PHP-based infrastructure and need to support shared hosts means that some features are much harder to produce. The truth is that technologies like websockets (useful for performant real-time user interfaces) are hard for non-developers to self-host. New web platform features like web workers show enormous promise, but require secure connections - and even with empowering projects like Let's Encrypt, setting up secure sites is still too complicated for most people.

The good news is that some progressive enhancement is possible: companion services that provide extra capabilities to hosted software. It's also true that hosts are evolving, and our friends at DreamHost and Reclaim Hosting are thinking hard about the future of the space. 

I'm proud of the platform we've created - it's one we use every day, and I'm delighted to see people posting on their own servers all over the world. We've got big plans for the Known open source project this year, and we're looking forward to sharing them with you, in conjunction with something new that we'll tell you about soon.

It's going to be a great year.


San Francisco, enough is enough. It's time to look further afield.

5 min read

This afternoon, Greg Wester tweeted this screen grab:

Your eyes are not deceiving you. That's a 420 square foot studio apartment - not even a one bedroom - for $3,050 a month. That's a base cost: your bills, and most likely parking, are extra.

There are only two kinds of people who can afford this:

  • Workers on a substantial salary (realistically $100K+, which would still leave you with a bi-weekly check of a little under $2500 after taxes, meaning rent would be well over 50% of your monthly cost)
  • The independently wealthy

Let's leave aside the obvious social inclusion issues at play here, and the effect this has on diversity in the city. Let's ignore that this is killing the artistic temperament of the city and turning it into a primarily financial center like any other. Let's pass over the inevitable effect this will have on the city when these high-value residents start to ebb away. Let's pretend not to see the rising homelessness problem. Not because those are unimportant issues - they're vital to the future of San Francisco - but because it's harmful to the ecosystem that helped create this situation to begin with.

If only rich people can afford to live in San Francisco, it is impossible to really innovate. All the creative energy is being driven out. There's no way for ordinary people - people who haven't made it yet - to experiment. Everyone is either on salary or has raised money from institutional investors with a proven business model.

So the gentrification cycle turns:

Deindustrialization creates low-rent vacancies in industrial districts; artists are drawn to these districts by the depressed rents and spacious "lofts"; the district becomes a hub of avant garde creativity, generating media attention and foot traffic, both of which create a "buzz" around the neighborhood; shops and restaurants are drawn to the area to cater to the increased foot traffic and capitalize on the "buzz;" the introduction of these shops and restaurants in turn induces more foot traffic, more media attention, and more "buzz;" eventually national chain stores see the area as ripe for investment and begin to move in; finally, of course, each of these trends causes rents to escalate until, with the arrival of deep-pocketed chain stores, the very artists who made the district trendy are priced out.  The district ends up as nothing more than a high-end outdoor shopping mall with little street "cred," and the artists relocate to a new low-rent industrial area, triggering the process all over again.

We've seen this process start to rapidly transform Oakland:

Oakland neighborhoods that are experiencing "advanced gentrification," according to the study, include Lower Bottoms, Old Oakland, and Northgate/Koreatown. The researchers define "advanced gentrification" as areas that have experienced significant demographic changes and high levels of real estate investment. Those areas are also very vulnerable to gentrification due to their locations near transit, historic housing stocks, rising house prices, and high rates of market-rate developments. [...] The researchers also said “the crisis is not yet half over” and that the city can expect the displacement of lower-income households to accelerate in coming years.

The interactive map is worth exploring for yourself.

All of which means that the rents in Oakland are already rapidly increasing (partially because it's within commuting distance of San Francisco). So where's next? If I'm running a small startup that needs to lengthen its runway while I figure out my product / market fit - or better yet, if I'm an artist that wants to live somewhere nurturing, affordable and creative - where can I go?

My money's on one of two places:


As Thrillist noticed this summer, California's capital has a plethora of food and culture, for a much lower living cost:

We have a hard time even talking about San Francisco rent anymore. We start sweating, breaking out in hives... yeah. Especially when we think about rent in Sacramento. I mean, look at this -- $1,650 for a four-bedroom HOUSE!? That’ll get you, what... a patch of ground under the freeway in San Francisco?

Pretty much. In fact, Sacramento is 36.5% cheaper to live in than San Francisco overall (and rent is 65% less). And, yeah, it's the seat of state government, which gives enterprise startups access to a different kind of infrastructure. The only real bummer is that if you do need to get back to the Bay Area for meetings, the drive will take you two hours in good traffic.

Santa Rosa.

Situated in the middle of wine country, Santa Rosa is also adjacent to a lot of the trappings of fine living, although it's a little less hot on live music and theater. (Those needs are met by Sebastopol, just a few minutes down the road, which is also a base for O'Reilly Publishing.) Overall, it's a little more industrial than Sacramento in itself, but is set in outstandingly beautiful countryside and high-class local amenities.

But here's the big plus: as well as being super-close to Petaluma (home of TWiT), Sebastopol, Sonoma, Healdsburg and Napa, Santa Rosa is only an hour's drive from San Francisco. The Smart Train will provide effective public transport for the north bay - something it's sorely lacking right now - and further reduce the commuting pain. The first stretch, between Santa Rosa and San Rafael, opens in 2016. It'll use the same Clipper card system used by BART and Muni, effectively linking the north bay to the greater San Francisco Bay Area transit system. And expansions will link the train to the existing ferry infrastructure.

My bet is that the Santa Rosa corridor will be the next place to look. Its top-tier office space is a third of San Francisco's cost, it's surrounded by beautiful countryside and some of the country's best food, and is still within a hop, skip and a jump of Silicon Valley.


My 2016 year in review

4 min read

Rather than taking a retrospective look back at 2015, I think it's interesting to look ahead think about what I want my themes for the next year to be, both personally and professional. Here's mine; I'd love to see yours.

Be more social.

I want to spend more time around more people. Humans are social animals; spending more time around people has an important effect on my mood (as well as opening new horizons and opportunities).

I love people, but I spend a lot of my time behind a screen. When I'm on my deathbed, I don't think I'll look back and think, "gosh, I wish I'd spent more time on the Internet". I want to spend more time away from a screen, not thinking about work or computers, hanging out with people I care about.

And guess what: I bet it'll improve my work, too.

Be healthier.

I’ll turn 37 in the first week of 2016. As much as I hate to admit it, I have to acknowledge that I’m approaching middle age. I intend to live past 90, but that doesn’t happen by chance.

I'm also worried about what happens if I encounter a major health issue later in life. If you have to have a major operation - something many people I love have had to do - your chances of survival and recovery are much better if you're fit. It still feels a bit weird to be accepting my own mortality, but that's just stage one; stage two is embracing it.

Accept the superficial.

I was brought up to believe that appearance doesn't matter; that it's what's inside that counts. This should be true, but it isn't at all.

I know that my personal appearance affects how I feel, even aside from first impressions, but even today, I feel actively guilty for thinking about it. This is a very silly thing to be worried - particularly given what I do for a living. I could write a whole essay about all the issues at play here. It's a weird hang-up.

Be more organized.

Specifically, I'm going to start scheduling more of my off-time in the same way that I schedule meetings.

Not only will this allow me to schedule in gym time and other exercise, but keeping a tighter schedule will give me more free time for chilling out, hanging out, personal creativity, and trying new things: all vital parts of being an actual human being.

Separate creativity and work.

I've repeated this quote before: "the business of business is business". Work can be creative, which is awesome, but very few of us are lucky enough to have a job that is our creative outlet. I think if you try and shoehorn that creative need in, you run the risk of being unsatisfied both with your creativity and with your job.

I want to write more; draw more; publish short stories and write more personal pieces. And in turn, I want to be more focused in my work. What I build does not need to be a reflection of me, and in turn, who I am is not a reflection of what I build. This perhaps sounds trite and reductive, but it's important.

Be more "me".

In 2016, I want to be more political. I'm less interested in tweeting links than actually marching on the streets, phoning representatives and doing real work to support the causes and politicians I believe in. I believe in a fairer society, globally, and I'm not ashamed to want to advocate and fight for that. I want to live in a progressive society.

So politics is one thing. But I value art, and creativity, and outsider culture. I want to spend more of my time in the kinds of anarchic artistic communities I was a part of in Edinburgh. Mainstream culture is deeply conservative, and deeply boring. I think the voices pushing at the edges are usually the most interesting, and I think it's a real shame that there aren't more safe spaces for them.

I want to be more experimental in my personal expression. I want to be more supportive of the voices I value. I want to be clearer in my non-support for the status quo.

I don't think this hurts what I do (although I'd do it even if it did). In a world that's becoming increasingly algorithmic and computational, our humanity is our sustainable competitive advantage.

It's good to be a person. I want to nurture more of myself, and more of the people around me, in the year ahead.


How to shorten a tweet

4 min read

It can be hard to keep status messages to 140 characters or less (or a 116 character message if you've included a link). I realized recently that I follow the same algorithm to bring it down to size every time, so I thought I'd write down my steps. Maybe the process can even be automated?

These steps are in order. If the tweet is under the character limit after a step is completed, there's obviously no need to continue to the next one.

1. Eliminate Oxford commas.
I'm in favor of the Oxford comma as a way to bring clarity to sentences with multiple clauses, but they take up valuable space. Every comma counts, and there are other ways to clarify your sentence construction.

2. Remove non-essential adverbs.
Adverbs can be essential modifiers that allow you to fine-tune the message you're conveying (usually, locally, here, there). They can also be used to convey the writer's emotional tone (really, extremely, very). While removing the second set will change the tone, it won't materially change the underlying meaning of the sentence. In fact, many writers would probably argue that it will result in a clearer sentence.

3. Replace "and" with an ampersand.
The ampersand - & - is only meant to be used in informal situations. What could be more informal than a tweet?

4. Change written numbers to Arabic numerals.
Written numbers and numerals aren't interchangeable: consider the sentence "4 score and 7 years ago", which carries less gravity, despite being functionally identical. Commonly, numbers under 10 are spelled out. This rule isn't hard and fast, however, and can be suspended in the context of a tweet. Again, the meaning of your message won't be lost. Note that this doesn't mean you should replace numerical homophones with numbers, which is an easy way 2 lose respect from your readers.

5. Use common abbreviations.
Just as you lose some gravity by replacing written-out numbers with their symbolic equivalents, replacing "with" with "w/" gives your tweet the quality of a hastily-written note. Nonetheless, "w/" (with), "w/o" (without), "wrt" (with respect to) and "b/c" (because) will save you a handful of characters. You can save more by using "eg" (exemplī grātiā, which means "for example") and "ie" (id est, or "in other words"). I lightly bend grammatical rules by omitting the punctuation marks that should normally be present in e.g., i.e., a.m. and p.m.

6. Rewrite your tweet to use shorter sentences.
Consider the sentence "I was going to go see Star Wars, but it was sold out, so I ended up seeing The Big Short instead" (96 characters). You could rewrite this as "Star Wars was sold out. I saw The Big Short instead." (52 characters). By doing so, you've saved 44 characters that you could use for a short review or a link. There's nothing wrong with using several shorter sentences in place of a longer one. If you wanted to be fancy, you could use a semicolon instead of a period. Just remember Kurt Vonnegut's take on them: "They are transvestite hermaphrodites representing absolutely nothing. All they do is show you've been to college."

7. Screw the rules.
The final option is to proudly reject the 140 character limit. Writers like Marc Andreessen do this with a construction called a tweetstorm: a series of tweets, where each post is written by hitting reply on the previous one. Twitter threads them together into something like a blog post. There's another option: because I tweet using Known, I can keep writing, and the end of my tweet will turn into a link to the full text. However, both of these options are an inconvenience to the reader, and should only be used if there's no way you can limit your message to a single post.