The new episode of Two Dads Talking is out! We talk about bedtime breakthroughs for the kids, grilling, home automation, my serverless IndieWeb woes, and we finish up with HBO's Westworld and a cliffhanger...
All booked for IndieWeb Summit in Portland, June 29th and 30th!

It’s Homebrew Website Club Brighton in just a few hours: 6pm-7:30pm at the @Clearleft studio.

https://indieweb.org/HomebrewWebsiteClub#Brighton

HWC NYC Wrap-Up 2019-04-17

New York City's second Homebrew Website Club of April met at The Bean at Cooper Union on April 17th, with me playing host.

We didn't really have a "broadcast" portion of the meetup, but we discussed some things and worked on personal projects!

mfgriffin.com (new!) — Has been to IndieWeb events in the past, but is looking to get re-started. Went over his past notes about some of his hopes and plans for his site, and how he wants to use it for personal notes, writing, drawing, and blogging projects, and more. Got started on a stripped-down system of using Hugo to track plaintext notes, with tags, so he can worry about how to organize it more later.

dmitri.shuralyov.com — Interested in being "done" with his notification system updates. In general, wants to be able to iterate faster on his site updates, and finds that a lot of his time is absorbed in HTML/CSS design processes. Started working on some text-only designs, which get a minimal amount of styling by being converted from Markdown to HTML. By using text and emojis, he was able to prototype a couple of quick things during the meetup.

martymcgui.re — Recently decided that he disagrees with how Granary processes his site's feed (which is HTML+Microformats2) into JSON Feed and Atom. The result is that his feeds often have missing info and show up as weirdly empty posts on micro.blog or in Atom feed readers. At the meetup, finished writing and adapter that will take his main feed and spit out a JSON Feed. Managed to break his site's build process trying to integrate it, but will get it working soon enough.

Other discussion:

  • A couple Dmitri's cool game projects
  • The recent release of the original source for Zork and other Infocom games, as they would have been worked on originally, for a compiler that no longer exists. Really neat to see how that info is organized.
  • We want to start later! Folks often need until 6 or 6:30pm to arrive.
  • We're also open to venue options!
Dmitri, Marty, and Matt smile for the camera in front of a background of a busy coffee shop.Left-to-right: dmitri.shuryalov.com, martymcgui.re, mfgriffin.com

Thanks to everyone who came out! We look forward to seeing you at our next meetup on Wednesday, May 1st from 6:30pm - 8:30pm!

#HWC #NYC #IndieWeb #wrap-up

I’m also going to this Caveat show tonight: Flying University: Is AI Racist?

Looking forward to it because Anil Dash will be speaking! Also because AI can totally be racist. And I love Caveat shows.

I’d love to talk Glitch and IndieWeb with Anil but I will probably just play the part of polite audience member. 😅

A Webring Kit | Max Böck - Frontend Web Developer

Inspired by Charlie, here’s a straightforward bit of code for starting or joining your own webring.

#webrings #indieweb #independent #personal #publishing #culture #society #blogging #sharing #community #code #webcomponents

Instead of rubber ducking, I’m writing it out here…

I’m trying to modify @benbalter’s WordPress Jekyll Export plugin to extract serialzed data from post_meta values. It seems most (all?) of the IndieWeb WordPress plugins use serialized values so it’s necessary to migrate. Otherwise I wind up with YAML that looks like this

mf2_syndication:
  - 'a:1:{i:0;s:52:"https://twitter.com/miklb/status/1116855596970651650";}'
geo_weather:
  - 'a:2:{s:4:"icon";s:4:"none";s:10:"visibility";s:6:"public";}

The chunk of code that handles that

// Convert traditional post_meta values, hide hidden values.
        foreach ( get_post_custom( $post->ID ) as $key => $value ) {

            if ( substr( $key, 0, 1 ) === '_' ) {
                continue;
            }

            $output[ $key ] = $value;

        }

What I need to do is unserialize $value and if it’s an array, loop through them and nest the values for each $key.

to get something like

mf2_syndication: https://twitter.com/miklb/status/1116855596970651650

geo_weather:
    - icon: none
       visibility: public

But my first step is to unravel the serialized $value. I’ve tried just adding $output[ $key ] = maybe_unserialied ($value ); and that didn’t work like the magic bullet I’d hoped.

🤔

Fixing the financial dilemma at the heart of our broken tech industry

I was recently forwarded Jeffrey Zeldman's piece on A List Apart, Nothing Fails Like Success, on the impact of venture capital on startup business models. At the end, he questions whether the indieweb is a possible answer to the predicament we find ourselves in.

I feel uniquely positioned to answer, because I've been a venture capitalist (at mission-driven accelerator Matter Ventures) and have literally started an indieweb startup, Known. I've also bootstrapped a startup and worked at one that raised hundreds of millions of venture capital dollars.

He's correctly identified a major problem inherent to startup funding in the modern age. It's certainly true that venture capital depends on moonshots - and they have to. To break this down, we need to briefly explain how a VC fund works.

Why VCs need moonshots

You can think of venture capital funds as purely financial instruments: investors (limited partners, or LPs) put money into them, and expect to get more money back. Because the risk inherent in these funds is high (most startups fail), LPs expect more of a return than they would from a more traditional investment fund. In fact, venture capital funds often aim to triple an LP's investment. The venture capitalists managing the fund usually make money by taking 2% of total LP investments as a management fee, and then 20% of any profits. To ensure there is alignment, LPs often require that the managing partner of a venture capital fund puts in 1-4% of the fund total from their own money.

Investments made by VC funds come in two forms. The first is as an equity purchase: they are buying shares in a startup at a defined price. This makes the most sense when a company obviously has some potential and has grown beyond its embryonic stage. It's important to consider valuation here: when investors buy a type of share in a company at a particular price, the company takes on a valuation that assumes every share of that type in that company is worth that price.

The only way equity investors make money is if their shares are sold.

The second is as debt: if a startup is too young, it's hard to know what its potential is. In particular, there's a strong chance that it will pivot to find a different customer base or to provide a different product. Two examples are Slack, which was originally a game, and Instagram, which originally was a Foursquare competitor. While both became enormous companies in their own right (Slack is about to IPO and Instagram was bought by Facebook for $715 million), buying shares in those companies in those early days would have given them a valuation based on those early versions of those products. Slack would have been valued as if it was a game, and Instagram as if it was a Foursquare competitors. So instead, early stage investors use debt that turns into equity at a certain value when the startup is ready to sell shares.

The only way these early stage convertible debt investors make money is if more investors come along later to buy shares in the company, which automatically turns their convertible debt into shares. Then they need to be able to sell their shares.

To compound matters, you can't just sell shares in a private company. To make a return on their shares, investors need the company to either be sold at a good price to another company, or to IPO and turn into a public company, at which point their shares can be publicly tradeable on the stock market. Both of these are referred to as an exit event.

90% of startups fail. The entire profit model of a venture capital fund therefore depends on the outliers: those 10% of startups that buck the trend and manage to not just survive, but grow very quickly and reach an exit event. To make their economics work, venture capitalists are hoping for each individual investment to make them a 30-40X return on their investment. Most will disappear without a trace; the ones that don't need to make up the difference.

Finally, funds have a fixed time period; usually, they last 10 years. The first 3-5 years might be spent making initial investments, with the remainder of time devoted to making follow-on investments in companies that look like they're winning. It would be ideal if the successful startups found their way to a high-worth exit event in a timely manner, so that VCs can return funds to their LPs, make their profits, and show good results so they can raise new funds.

All of this means that VCs are very careful. The stereotype of them being bold risk-takers is almost entirely untrue: they're very risk averse, and often look to replicate patterns that have worked for them in the past. Unfortunately, this is why there is a bias towards white, male founders who look a little bit like Mark Zuckerberg. (More on this later.)

Why startups need VCs

The short version is that everyone needs to eat and put a roof over their heads, and the money has to come from somewhere.

Let's discuss startups that intentionally want to play the high-growth VC game, and then startups that don't.

If you intentionally want to take the high-growth route, you need to make your startup grow in value as quickly as possible. Value is not directly correlated with revenue: for example, a web service with hundreds of millions of users who compulsively check it every day can be said to be valuable even if it isn't making a dime. A direct business model can be added later: maybe you want to serve advertising to them, or perhaps they're inadvertently creating a database of insights that can be sold to third parties. That rapidly-growing database could make the service a valuable purchase by another company later on. Or maybe the business model can be applied when the service hits critical mass, and the business has the potential to reach IPO.

Revenue has a cooling effect on growth. If you ask your users to pay, it's a simple fact that most won't. So if your service comes with a price - unless it's a high-ticket enterprise service where a single customer could represent a six or seven figure monthly sum - it's less likely that you'll hit the growth milestones that will entire more investors to come in at a higher valuation, or that you'll hit an exit event.

So if you're hoping to entice venture capital investors, it's probably not a good idea to take revenue at first; instead, you'll want to concentrate on growth. And if you're growing fast, you may need to operate for years with a larger and larger userbase, and therefore with a larger and larger team. Which means you need to raise more and more money from venture capital investors. It's self-fulfilling.

If you don't want to take the high-growth route, you need to be thinking about revenue from day one. It's highly unlikely that you'll build a startup that covers your costs in the first month - or even in the first year. In fact, most startups don't begin to cover their costs until over three years after they start.

This effect is compounded in areas like the San Francisco Bay Area, which used to be the place where innovation could happen. It's still a special place, and there's certainly still a critical mass of people who have built innovative technology, and scaled innovative technology. (The two are different, by the way: research into new technology doesn't typically happen inside a startup. Instead, startups bring new technology to market. This should probably be the subject of another post.)

But the San Francisco Bay Area is now too expensive to live in if you're not either independently wealthy or drawing a six figure salary. There are so many wonderful stories about ventures being created in Palo Alto garages - but to buy a home with a large garage in Palo Alto would now cost you between three and four million dollars. In San Francisco itself, a family earning $118,000 a year is considered to be low income. The rule of thumb for an early-stage startup is that you should budget for $10,000 per team member per month - and that still puts you into the low income bracket.

Given these costs, who could possibly live there and forgoe a real salary for three years?

For most startup founders in Silicon Valley, investment is necessary. Without investment, there would be very few Silicon Valley startups (and the ones that did still exist would be run by the very wealthy).

Because startup founders need investment to create their companies, and because venture capital is the prevailing form of startup investment, most startups are created to be high-growth venture capital investments.

Because these startups are typically Delaware C Corporations, whose company documents do not make mission or ethics a core part of their founding bylaws, their founders have a primary, fiduciary duty to their shareholders: the investors that put money into them. Although it can be argued that being an unethical company can have detrimental effects in the marketplace and degrade a company's valuation (I've certainly made this argument many times), founders are obligated to do what they can to be good stewards of investor value. They have to continue to grow, and they have to continue to build value - often, as Zeldman noted in his piece, at any cost.

Is the indieweb the answer?

It depends.

For consumers - those of us who use web services - picking indieweb solutions, and independent solutions more generally, may free us from some of the worst effects of the growth-at-any-cost model. Certainly, every business, and I would argue every adult, should own their own website. Having a web presence that you control has profoundly positive effects in business, work, and life. For example, artists and musicians who own their own website rather than primarily operate a Facebook page have a far greater ability to build deeper relationships with their fans. In my case, almost every job I've ever had can be traced directly back to my blog.

Furthermore, the technologies being developed by the indieweb community - decentralized website-to-website social networking - show that we don't need large centralized growth machines to communicate with each other. Over time, if these technologies become more popular and widely-supported, the effect may be to lessen the importance of those platforms.

Nonetheless, for the startup ecosystem, I don't think the indieweb is a direct solution. At least, not yet. Most people will not run their own website for all kinds of reasons, but at its core, this is a social problem, and indieweb is a technical solution. Ownership over our digital identities is vitally important, but it is not the key to unlocking a new tech industry. In particular, indieweb doesn't solve the financial dilemma at the core of the problem.

Zeldman looks to Micro.blog as a potential answer. It's a great company that could point to what a more general solution could look like, but not specifically because it works with the indieweb. Instead, it's worth examining how it's financially structured. Rather than a unicorn, it's a zebra.

Indeed, for a widely-applicable solution, I believe we have to look to the zebras - and we have to be ready to open the door to some new voices.

A zebra?

It's highly likely that Silicon Valley will stop being the go-to location for early-stage startups. The exodus is already in progress, with more and more founders and investors looking outside the Bay Area to places with a significantly lower cost of living. Ironically, even though the cost of living in the Bay Area is tightly interrelated with the wealth generated by venture capital funded companies, VC investors are also looking outside the area - the high cost of living makes their investment dollars less effective, and their investments riskier. Firms like Andreessen Horowitz have transformed their structures in order to move away from pure VC and invest in other kinds of assets. The crypto boom was related to this shift: investors needed somewhere else to put their money. Determining whether that was the right thing or not can be left as an exercise for the reader.

But there's no need to move into radically different markets, or to shift funds away from supporting entrepreneurs who have the potential to improve the human experience. Other types of startup investment are possible, including revenue-based financing, where founders repay investors as a percentage of income. Other types of legal company structure are also possible, including the Public Benefit Corporation, where ethics and mission are encoded into the company's bylaws. And as I mentioned in Why open?, there is also space for other kinds of organizations to build software and create innovative products.

The solution isn't going to come from tech insiders, who are somewhat locked into this ecosystem, and don't feel the full weight of its detrimental effects. But recall that venture capitalists largely pattern match their investments: they look to invest in people who have similar characteristics to founders who have made them money in the past. This compounds existing biases that have developed over generations. As a result, people who aren't straight, white men are much less likely to have received investment.

Entire demographics of people have effectively been locked out of venture capital. They are no less skilled, no less visionary, and their startups have no less potential to grow, except that they may have a harder time raising money, due to this same bias - a vicious circle. In many ways they have more grit and determination, because they face far greater odds. And I strongly believe that these people hold the keys to the future of the technology industry, from ideas through execution through funding. The next generation of technology companies will not be founded by the same old faces.

I've written before about Zebras Unite, which calls for a more ethical and inclusive movement to counter existing startup and venture capital culture. It's founded by women, who have built a movement of thousands of founders across six continents. The idea is that rather than building unicorns - venture capital companies that rapidly grow to be worth over a billion dollars - startups should be building zebras instead: inclusive, revenue-based companies that grow carefully and make a positive impact on the society around them. The result is more stable, world-positive companies. They're better startups. And of course, unlike unicorns, zebras are actually real.

It's not enough to wish it into existence. Zebras Unite doesn't just imagine new kinds of funding; it brings investors and founders together to make concrete steps towards bringing them into existence. There are existing threads - including the funding models pioneered by Indie.VC, Tiny Seed Fund, and Earnest Capital - that can and must be brought together into an ecosystem. They need to be joined by many more, including angel and institutional investors. Arguably, indieweb should be among the ideas being pulled together here: for many use cases it will be a useful philosophy.

If we are to fix the tech industry, we need to acknowledge the financial realities. I've heard arguments like "all software should be free and open source" that don't address the fact that software is expensive to make and everyone involved needs to be paid well. (It's fine for software to be free and open source, but this is irrelevant to the issue!) I've also heard arguments like "startups shouldn't take investment", which similarly don't reflect the costs or the value of the skills involved. Imagine what kinds of platforms we'd see if only independently wealthy people could make software. It would probably be worse than the situation we find ourselves in now.

So instead, we need new kinds of investment that are lucrative for investors but bring everyone involved in the startup stack - founders, users, customers, investors - into alignment. As software becomes more and more ingrained in society, this becomes more and more of a moral imperative - and an imperative for the technology industry if it's going to survive. That's not a technical problem, and it's not something that's going to come from Silicon Valley, which has made venture capital integral to its foundations. It's going to take new ideas, new geographic centers for innovation, and new voices. And as the Bay Area becomes more and more expensive, I believe it's going to happen in the next few years.

So yes: the zebras. My money's on them. And if you're an investor of any kind, I think yours should be, too.

 

Photo by Sharon McCutcheon on Unsplash

Webrings | sonniesedge

Charlie muses on ol’ fashioned web rings …and the cultural they fulfilled.

We suffer from homogenous dirge in most of our contemporary web presences. Having a personal website has become a rarer and rarer thing in this time of social media profile pages.

However, recent months have seen a surge in personal websites and blogging amongst some members of the web tech community. This is something that we urgently need to encourage!

#webrings #indieweb #independent #personal #publishing #culture #society #blogging #sharing #community

Goodbye Google Analytics, Hello Fathom - daverupert.com

Dave stops feeding his site’s visitors data to Google. I wish more people (and companies) would join him.

There’s also an empowering #indieweb feeling about owning your analytics too. I pay for the server my analytics collector runs on. It’s on my own subdomain. It’s mine.

#google #analytics #fathom #data #collection #indieweb #surveillance #privacy #independent #ownership #control #empowerment

Zeldman on the IndieWeb

There’s a fantastic article by Jeffrey Zeldman in A List Apart this week, starting with the problems of venture capital-backed social networks and ending with the question of whether we can help fix the web:

On an individual and small collective basis, the IndieWeb already works. But does an IndieWeb approach scale to the general public? If it doesn’t scale yet, can we, who envision and design and build, create a new generation of tools that will help give birth to a flourishing, independent web? One that is as accessible to ordinary internet users as Twitter and Facebook and Instagram?

I believe strongly that the answer is “yes”. Brent Simmons also responds, using the example of how even focused apps like RSS readers can move things forward without needing to solve all the problems at once:

Do I claim it’s as accessible to ordinary internet users as Twitter (for instance)? I do not. But it’s the step forward that I know how to take.

This is a great attitude. There are steps forward that we can all take individually, from leading the way by blogging more ourselves, to building tools for others to use. Together these steps add up to something significant that really matters.

It has been very encouraging to watch the Micro.blog community grow and new people regularly post to their own blog first instead of the big ad-based social networks. Seeing so much progress — but also knowing how much more work there is still to do — gives me a lot of hope for the future of the web.

Looking forward to fiddling with my website at Homebrew Website Club this evening in the @Clearleft studio from 6pm-7:30pm. Come along and fiddle with your website.

https://indieweb.org/HomebrewWebsiteClub#Brighton

Nothing Fails Like Success – A List Apart

On an individual and small collective basis, the IndieWeb already works. But does an IndieWeb approach scale to the general public? If it doesn’t scale yet, can we, who envision and design and build, create a new generation of tools that will help give birth to a flourishing, independent web? One that is as accessible to ordinary internet users as Twitter and Facebook and Instagram?

#indieweb #business #internet #culture #startups #venture #capitalism #ala #alistapart

Some Unsolicited Blogging Advice - daverupert.com

When you greet a stranger, look at his shoes.

Keep your money in your shoes.

Put your trouble behind.

When you greet a stranger, look at her hands.

Keep your money in your hands.

Put your travel behind.

#blogging #advice #writing #publishing #sharing #indieweb

There are microformats parser libraries in a variety of languages, so adding parsing is the relatively easy step: http://microformats.org/wiki/microformats2#Parsers

Mastodon and micro.blog publish microformats. Most WordPress themes publish legacy microformats1.

Most of the "big" readers don't support microformats yet, but the #indieweb community is making some progress. Check out @aaronpk's post https://aaronparecki.com/2018/04/20/46/indieweb-reader-my-new-home-on-the-internet.

I use https://granary.io to convert my h-feed to Atom. It's more DRY than maintaining a separate XML file.

Textpattern and Webmention

Good to see support for Webmentions and other IndieWeb technologies are being adopted into other web publishing tools.

HWC NYC Wrap-Up 2019-04-03

New York City's second Homebrew Website Club of March met at The Bean at Cooper Union on March 20th, with me playing host.

Here are some notes from the "broadcast" portion of the meetup!

zazzyzeph.biz (new!) — Learning about Progressive Web Apps and their features, like web app manifests. Started out wanting to learn ES6 and decided to roll back to some basics. Doesn't have a specific project in mind, yet, so doing lots of reading.

dmitri.shuralyov.com — Continuing work on "v2" of his website, specifically notifications API. "v2" is more package-based than repository-based, as a single repo can hold multiple packages, and it's very helpful to reason about the projects individually. Demonstrated showing unread notifications from Gerrit and GitHub, new presentation to show

martymcgui.re — Re-organized his homepage to be much simpler, moving incrementally towards having easier ways for people to discover the newer parts of his site, like where he displays photos, listens, and more interesting ways than his main "river of posts" timeline view. Also added book cover photos to his reading posts (example) using the Open Library Covers API with lookup by ISBN.

Other discussion:

  • Building your own organizational and self-management tools. Balancing time spent on that tooling versus actually getting things done.
  • Updating, migrating, and archiving old behaviors and versions in APIs. "Gradual code repair". Making "v2" versions of pieces of an API while allowing "v1" apps to work, hybrid apps to work. Semantic versioning when "v2" could change wildly - is it "really v2-pre-0.0.1", for example? A name like that should warn away folks starting new projects that expect a stable API.

Thanks to everyone who came out! We look forward to seeing you at our next meetup on Wednesday, April 17th at 6:30pm!

#HWC #NYC #IndieWeb #wrap-up

Indie web question: Any recommendations for a better WordPress plugin for sending webmentions? I’m using the Webmention plugin but it doesn’t seem to send a comprehensive webmention. See this. Or, am I doing something incorrectly?

#indieweb #webmention
Google+ shuts down in 2 days (2019-04-02) #notajoke

Export your @GooglePlus NOW. #ownyourdata
May take “hours or possibly days” to create.

As a light user (last post 6+ years ago), mine took minutes. 4.8MB zip file.

More: https://indieweb.org/Google_Plus
#notajoke #ownyourdata