New year, new job 2018 edition

I have some exciting – if somewhat belated – news to share. As you could probably tell from the title of this post, I have a new job. In November I accepted an offer to join the Aragon team as their new Community Lead!


Aragon is a project that I have been following since I first met the co-founder Luis Cuende at a Blockstack meetup in San Francisco. I was excited when they released the alpha version of their testnet client in early 2017 and blown away when they went on to raise $25 million later that year in the fourth-largest crowdfund and the second-largest token sale at the time.

After leaving Abra in July 2017, I took a few months off to explore the cryptocurrency space and see what other opportunities were out there. I considered several offers but kept my options open. The market had changed significantly since my last job search less than a year earlier. One significant change was that there were many projects outside of the Bay Area hiring for remote positions. Aragon was one of those projects.

I reconnected with the Aragon team while I was attending the Crypto-Economic Security Conference in Berkeley, CA. Zooko Wilcox, CEO of Zcash, knew I was looking for a job and had generously offered me one of the tickets his company was given for sponsoring the sold-out event. I accepted the ticket and went to the event, looking forward to meeting new crypto people in the Bay Area and watching interesting talks by the presenters.

I was surprised and delighted to meet María Gómez, Strategy and Operations Lead at Aragon, in person at the event (we’d previously met online while I was working at Abra). María asked what I was doing at the time. I told her I was looking for a new full-time gig, something in a marketing or community role. She told me that Aragon was hiring a Community Lead to replace their then-Community Lead Tatu Kärki, who was transitioning into a Communications Lead role. The rest, as they say, is history.

Within a few weeks, I had gone through several rounds of interviews and flew to Finland to do a trial week with Luis and Tatu. We worked on several community projects throughout the week, and on what would have been Thanksgiving day in the US, they offered me something to be extra thankful for: an opportunity to join the Aragon team as their new Community Lead. I gladly accepted, and have been dutifully serving the Aragon community ever since. Join us!

P.S. Aragon is hiring!

New job FAQ

Congrats on the new job! What does Aragon do?

Thanks! Aragon is building a platform that makes it easy to create and participate in Decentralized Autonomous Organizations, or “DAOs” for short. In the future, the Aragon project itself will be run as a DAO on the Ethereum blockchain. The Aragon DAO will be governed by holders of Aragon Network Tokens (ANT), an ERC-20 token that was sold in mid-2017 to raise the funds needed to develop the Aragon software.

Is $ANT a good buy?

Maybe! DYOR.

What’s it like being part of an Ethereum project?

Although I’ve been following the Ethereum project since its inception in 2013, I haven’t been closely involved since the very early days. After leaving Abra I took some time to explore all the projects that have formed in the ecosystem in the intervening time. Many of the smart contract applications that first got me excited about Ethereum have begun to come to fruition, including p2p prediction markets, asset exchanges, gambling platforms, and, my personal favorite, DAOs. This, along with the amazing team that Luis and Jorge have assembled, is what led me to join Aragon.

Now is a very exciting time to be involved in the open-source cryptocurrency community. There’s no shortage of funding for extremely ambitious projects, including important blockchain research and development work. It seems like the only limitation right now is the supply of engineering talent and the imagination necessary to build the p2p future so many of us envision. I’m excited to help Aragon overcome these limitations in our own community and share what we create with the broader p2p ecosystem.

Are you still working with Bitseed?

Yes! I think 2018 will be a big year for Bitseed. We have started shipping orders for Bitseed 3, the next-generation version of our plug-and-play bitcoin full nodes. And we’ll also soon be relaunching our developer community so that devs who are interested in helping us improve Bitseed have an easy way to get involved and work together.

The kind of projects I’m really excited to work on with the Bitseed community include adding support for Layer 2 protocols such as Blockstack and the Lightning Network. Then Bitseed owners could have a node that not only secures their bitcoin transactions, but can also resolve decentralized domain names for them or even earn bitcoin by providing liquidity to the Lightning Network. Future work could even include using the node as a decentralized storage device or a crypto-incentivized mesh router. The possibilities are endless.

If you’re interested in helping us with any of these projects, please get in touch.

So what’s next for John Light?

Bitseed 3 ships this month, the Bitseed developer community relaunches shortly after, and Aragon goes live on Ethereum mainnet sometime in Q1/Q2 2018. I’ll probably be traveling a lot for Aragon community events this year, so if there are any cool crypto events you think I should be at let me know in the comments below or ping me on Twitter or @light in the Aragon Chat.

Email is probably the most popular decentralized messaging protocol. Add yourself to my email contacts if you would like to stay in touch!

A critical look at appcoins

There has recently been a resurgence of interest in the phenomena known as “tokens”, digital assets that are issued and traded using a blockchain. What makes tokens interesting is the fact that they can be issued and traded digitally and globally without permission from a third party.

Tokens can represent many things: currency, property titles, collectibles, coupons, even corporate equity. There’s one type of token in particular that I will focus on in this post, and that is the “appcoin”.

An appcoin is a type of token that is required to use a specific app. Appcoins are like arcade tokens that are traded on the open market and fluctuate in price based on supply and demand for the token. You buy the token to play the game, and with appcoins, each game needs its own unique token.

A real-world example of an appcoin is GEMS, a token that was issued on the blockchain and was used to pay for advertising slots in the Gems social networking app. Another example is SJCX, an appcoin that is used to pay for hard drive space in the StorJ network. With both of these apps, you need to buy the appcoin to use the app.

Appcoins came about as a way for developers to fund the development of their applications without having to go the traditional finance routes of raising money by selling corporate equity or asking users for donations.

The idea is that once the app is completed, it will gain a critical mass of users who will have to buy the appcoin if they want to get value from the app. This drives demand for the appcoin, supporting its price and potentially delivering a financial return to the people who bought the appcoin early on during the app’s development phase.

As an investor, there are several problems that I see with this model:

1. The model is very developer-centric, solving a problem for app developers (raising money) but not for the app end-users. In fact, appcoins create new problems for end-users, since they now have to go out of their way to buy an appcoin to use an app instead of paying with the money they already have (or not paying any money at all).

2. Appcoins are a redundant form of digital money. Apps that require the use of appcoins can always be cloned and modified to remove the appcoin. Since appcoins add friction to what should be a frictionless interaction, users will prefer the apps that accept the money they already have in their wallets (or no money at all, the way free software has been used for decades).

3. Appcoins centralize development of an application. When one person or company issues the appcoin, this puts them in a privileged position over everyone else who could contribute to app development. This central issuer gets to decide who is granted shares of the initial stock of appcoins, and also who gets paid out from the proceeds of any sale of the appcoins to fund development and marketing efforts. This could lead to cronyism and inefficiencies typical of centralized resource allocation efforts.

In short, I believe that appcoins do not solve any problems for end-users, are easily replaced with more widely accepted forms of digital money, and present incentive problems that threaten the health of the app development ecosystem. Appcoins therefore do not offer investors a stable or sustainable long-term store of value – great for sellers, bad for buyers.

The only argument in favor of appcoins that I see as having any merit is the argument that applications that would otherwise be un- or under-funded now have a new way to raise funds for development. If users like the apps they use, they will buy the appcoin to support development.

My counterargument is that yes, so far appcoins have been a great way for some developers to fund their software projects. However this argument does not address the fact that, more often than not, appcoins are not a technical requirement for an application to work and could therefore be replaced by apps that do not require the use of an appcoin. If app users want to support developers, they can just pay developers with the money they already have.

My prediction is that this is exactly what we will see happen: as soon as an appcoin reaches any significant level of early traction, some enterprising developers will copy the app, remove the appcoin, and monetize the app by other means. This will flatten the market for the appcoin, leaving investors and users holding the bags.

I love the financial innovation that’s been enabled by the invention of cryptocurrency and the blockchain. I think that many financial assets will be tokenized, and valuable new assets we haven’t even thought of yet will be created and traded on these platforms. I just don’t believe that appcoins will be one of them (for long).

“Should I create a new token?”

This is a decision tree that I came up with for developers who are considering the idea of creating a new token for their app:

Untitled drawing (8).png

If you can’t articulate a compelling reason for why your app needs a token and why that token can’t be bitcoin, then you shouldn’t create a new token (and people definitely shouldn’t buy it if you decide to create one anyways).

Relevant links

What are Appcoins? [link]

Appcoins are Snake Oil [link]

Thoughts on Tokens [link]

Email is probably the most popular decentralized messaging protocol. Add yourself to my email contacts if you would like to stay in touch!

Join the herd on Mastodon

May 2017 update: I haven’t yet found a good workflow for cross-posting from birdsite to Mastodon, and I still don’t have a large network on Mastodon, so I have mostly stopped using it. I’ll keep checking in and posting now and then, but I do not see it becoming my new mainstay any time soon. Regardless, I will continue giving feedback in hopes that it will evolve into something that is “sticky” for me because birdsite is birdshit.

A few months ago I saw Aral Balkan tweet about a new social media app called Mastodon. With a Tweetdeck-like interface and compatibility with the GNU Social federation, I found the app easy enough to use, with a large network of interesting people to follow. I followed some people, sent my first “toot” (I am not sure if messages were called a “toot” yet) and… did not ever use the app again. This is not unusual: I’ve signed up and played around with many decentralized social apps before and most often I won’t use them more than once.


Today, something unusual did happen: I logged back in. I am officially a repeat user of Mastodon. Today, a bunch of people joined the network and it even got some press. So I dusted off my login credentials and went to check in on how things are going. Mastodon hasn’t changed much in the intervening time period but there are some subtle yet important improvements (such as 2FA support – gg).

I haven’t had a chance to look through every issue on GitHub or review every companion app so these might have been suggested or done already but here are the features that would make the app stickier for me:

  • A mobile client
  • Post scheduling
  • Post to/from other networks (including the big centralized ones)
  • Add search columns (and other types of columns that Tweet deck offers)
  • Mute whitelist (so you will see toots from people on your whitelist who would otherwise be muted)
  • Easy self-host options for muggles (e.g. Sandstorm is great)
  • Blockstack support (decentralized DNS, PKI, storage)
  • Search-by-word (this was intentionally not done for
  • Data analytics and visualization tools (I ❤ dataviz)
  • And of course, a bigger network.

I’m probably missing a bunch of other things that I won’t notice until I use Mastodon more. There is a tool you can use to find the people you follow and who follow you on Twitter that helps with bootstrapping your network. I will see if I can add Mastodon to my Blockstack ID so people who use that can find me on Mastodon. And I might even continue using the app to find and share content. Toot me.

Email is probably the most popular decentralized messaging protocol. Add yourself to my email contacts if you would like to stay in touch!

How I used Sandstorm to find a new job

Last month (before I was hired for my new job) I was hanging out with a friend when they asked about a kanban board that I had open on my desktop. I told them that it was a board made with WeKan, a self-hosted alternative to the popular project management tool Trello. I was using a program called Sandstorm to host my own WeKan instance and created the kanban board to stay organized during my job hunt. I then showed them how I was using Etherpad, another Sandstorm app, to draft cover letters with help from friends who either worked at the companies I was applying to or were connecting me with someone on the inside.

My friend told me that they thought the way I was using Sandstorm was pretty unique and that I had given them some ideas about how to use it for their own projects. That got me thinking, maybe other people would benefit from seeing how I use Sandstorm, too. So without further adieu, this is how I used Sandstorm to find a job.


Sandstorm is a cool project that was co-founded by Kenton Varda and Jade Wang and crowdfunded into existence with the support of rad people and companies from all over the world. In the Sandstorm team’s own words:

“Sandstorm enables non-technical end users to install and run arbitrary software on servers they control. Apps may be downloaded from an app store and installed with one click, like installing apps on your phone. Each app runs in a secure sandbox, where it cannot interfere with other apps without permission.”

I’ve been self-hosting with Sandstorm for over a year now, and I really like it. I’m actually using it right now to write this draft in the WordPress app. Sandstorm is slowly replacing all of the hosted services I use. Some of the apps don’t have 100% of the same functionality as their proprietary counterparts yet, but they’re always improving and sometimes even include useful features that I wanted but never got from other apps. Kudos to the Sandstorm app devs for building great apps and kudos to the Sandstorm team for making them easy to self-host.

Here’s what my Sandstorm apps administration page looks like:



As mentioned above, WeKan is a self-hosted alternative to project management tools like Trello. The app has basic kanban board functionality, allowing users to create boards, lists, and cards that can be moved between lists. The cards themselves can contain more details, including a description, attachments, labels, comments, and links to other cards. Here’s a made-up example of what a job search board would look like:


Job listings start in the Candidates column on the far left. After I submit an application for a job, its respective card will be moved to the Applied column. After a day or two, I will send a follow up email to the person inside the company who I think will be able to schedule the first interview, or connect me to the person who can, and the card is moved again into the Follow-up column. If the hiring manager wants to schedule an interview, then the card will get moved into the Interview column. If I receive (or give) a direct rejection, or don’t hear back at all (an indirect rejection, afaict), then the card will be moved to its final place in the Rejected column. If I am made an offer and accept the offer, then the card will be moved into the Accepted column and the board will be retired.

As the card moves from left to right, it will begin to accumulate metadata. Links to the job listing and information about the company, notes from my research about the company and the people who work there, final drafts of my cover letter and resume for the company, and notes about actions I’ve taken in pursuit of the job are all added to the card as it moves across the board. You can see what this looks like in the Candidate #3 example below:



Etherpad is a self-hosted alternative to writer collaboration tools like Google Docs. Users can create a pad and send the link to collaborators, who can then jump in and start editing the document. Contributions by different authors can be attributed based on the color they’re highlighted with, and revisions can be tracked and reversed using the “timeslider” tool.

I used Etherpad to draft cover letters with friends who I asked for help either because they worked at the company I was interested in and knew what the hiring managers were looking for or they knew the hiring manager some other way and just wanted to help based on what they knew about that person. (My sincerest thanks to those friends who helped!)

Here’s an example of a draft cover letter with multiple authors working on it:


Once the cover letter looks good, I would save the final draft in WeKan until I was ready to send it in with my application. Sometimes I would write a shorter version that was emailed straight to the person that I knew was hiring for the role. This shorter version could be read in less than 30 seconds but still gets the main point across: you’re hiring for this role, I have complimentary experience and can do x, y, z for you, let’s meet and discuss. If the recipient wanted to dig deeper, they would have my full cover letter and resume with the application I submitted through the company’s online form.

And that’s it!

That’s how I used Sandstorm to find a job. Simple, straightforward, and very useful for keeping myself organized while I was on the hunt. During the process of writing this blog post I also found out that there’s a resume-builder app for Sandstorm called Hacker Resume that might be useful for any job seekers out there. That’s one of the many things I love about Sandstorm: every time I look there’s something new!

If you’ve made it this far, thanks for sticking around! Keep on reading for more links to other resources I found helpful while looking for a job. If you found this post helpful, give it a like or a recommend or whatever they call it on the platform you found it on, and if you know someone who’s looking for a job who might benefit from this then pass it along. You may also be interested in checking out my company, Abra – we’re hiring.

Bonus: hand-picked job hunting arrows for your quiver

After doing independent consulting and personal projects for several years, this was actually the first time I had actively looked for a job since leaving college. It took about three months from the time I buckled down and started using this Sandstorm system to look for a job and the time that I signed an offer. There was a bit of a process of learning through trial and error what works and what doesn’t when looking for a grown up adult job. In addition to all the one-on-one help I got from my amazing friends, I also gleaned some inspiration from the resources below (ymmv).

General help

Cover letters

View at


View at


Email is probably the most popular decentralized messaging protocol. Add yourself to my email contacts if you would like to stay in touch!

The Key Decision-Makers in Bitcoin

Over the past year, there have been intense debates about the future of the Bitcoin network. These discussions have mostly revolved around the topic of scaling Bitcoin, and several proposals have been put forward to address the question of how the Bitcoin network will scale to be used by the billions of people and machines we have on this planet. These scaling proposals are not all mutually exclusive, but nearly all of them involve a fundamental change to the Bitcoin protocol that would require what is called a “hard fork.” A hard fork is a change that would cause there to be multiple competing Bitcoin networks, all but one of which would die off as a majority of users decide to use the strongest network.i

Because of the potential to split the network, such fundamental hard fork changes are not deployed often. Planned hard forks require an orchestrated software upgrade by multiple stakeholders in the Bitcoin network. Since Bitcoin is a decentralized system that is not controlled by any central authority, whether or not such an upgrade is deployed and adopted by the network is determined by several key decision-makers that must agree to the change: Bitcoin developers, economic Bitcoin nodes, bitcoin-holding users, and bitcoin miners.

Bitcoin Developers

Bitcoin developers are the first group that must be convinced that a hard fork change is necessary. If the maintainers of popular Bitcoin implementations do not accept a proposed change, the only remaining options are to fork an existing Bitcoin node software repository or start developing a new implementation from scratch. Convincing developers of an existing implementation can be politically challenging, and starting a new implementation from scratch is a herculean task. Forking an existing project is the easiest route, but still requires convincing a majority of the network to use the fork in order for the change to be adopted by all Bitcoin users.

Economic Bitcoin Nodes

Economic Bitcoin nodes are full nodes that accept Bitcoin in exchange for other forms of value and include Bitcoin exchanges, wallets, payment processors, and businesses that accept Bitcoin in exchange for goods, services, and other currencies. If economic nodes do not upgrade their full node software when a hard fork change is introduced, then blocks that are produced by miners who do choose to upgrade will not be considered valid by nodes that have not upgraded and the blockchain will split. To everyone on the old chain, miners producing blocks with the new software will lose the block reward to a competitor producing valid “old chain” blocks. The economic majority will only choose to upgrade their software if they believe the change is a) beneficial for the long term value of Bitcoin and/or b) acceptable to most of their bitcoin-holding customers.

Bitcoin-Holding Users

Bitcoin-holding users that rely on the services of economic Bitcoin nodes have a choice of where to take their business. If an economic node such as an exchange, wallet, or merchant upgrades their Bitcoin node software to implement changes that their customers do not agree with, then those customers may choose to do business with another economic Bitcoin node instead. However, it is not always obvious what version of the Bitcoin software an economic Bitcoin node is running and so the best way for bitcoin-holding users to have influence over changes to the Bitcoin protocol is to run and rely on their own Bitcoin full node for block verification and transaction broadcasting. If a hard fork upgrade is proposed that a bitcoin-holding user does not want implemented, then they may voice their concern to the economic Bitcoin nodes they do business with in hopes of dissuading them from implementing the upgrade. Similarly, bitcoin-holding users can lobby the economic Bitcoin nodes they do business with to implement a hard fork change if that change is beneficial to them.

Bitcoin Miners

In the early days of Bitcoin, economic Bitcoin nodes were either nonexistent or not that important, and the roles of “full node” and “mining node” were largely bundled together. Bitcoin miners would use low-power laptop and desktop computers and did not have much of a reason to sell the bitcoin they mined to cover operational expenses. Since then, the price of bitcoin has risen dramatically and bitcoin mining has evolved to become a large-scale industrial operation. Bitcoin miners now rely on economic Bitcoin nodes to convert bitcoin into value that is then used to cover the costs of bitcoin mining. While a hard fork change will never be implemented if miners do not upgrade their software to support the change, miners will only upgrade their software if a majority of the economic Bitcoin nodes have also implemented the change.ii

It is a common misconception that Bitcoin miners are the final decision-makers about what version of the Bitcoin software is the “dominant” version that drives consensus in the Bitcoin network. The reality is that Bitcoin miners are just one of many stakeholders which must be convinced to upgrade their software, and for game theoretical reasons are actually most likely to be the last to upgrade their software in the event of a hard fork change being introduced. Most Bitcoin miners operate on thin margins and are therefore very conscientious of their revenue and costs. They will only run software that produces blocks that are accepted by a majority of the economic nodes in Bitcoin, who in turn will only upgrade their software if the change supports the long-term value of Bitcoin and/or is acceptable to most of their bitcoin-holding customers. Coordination is therefore required among all of these stakeholders to debate the merits of proposed hard fork changes and make hard but necessary decisions to ensure that the Bitcoin network continues to grow to support widespread usage.

Making Progress

If the Bitcoin protocol does not evolve to accommodate growing demand and new use-cases, then growth could stall and the unmet demand will be serviced by another competing network instead, potentially harming the long-term value of bitcoin and bitcoin mining equipment. It is therefore in the best interest of Bitcoin developers, bitcoin miners, bitcoin holders, and economic Bitcoin nodes to implement changes that support the growth of the Bitcoin network while maintaining Bitcoin’s key innovation as a decentralized solution to the double-spending problem.

iThe alternate networks may not die off if the hard fork change proposed is a change to the mining algorithm itself. In this case, there is a possibility that the miners on the old chain will continue mining and serving the users who prefer the status quo to the new mining algorithm.


ii A hard fork change could be implemented without miner support if the change is a change to the mining algorithm itself that renders the previous network of miners obsolete.

Email is probably the most popular decentralized messaging protocol. Add yourself to my email contacts if you would like to stay in touch!