The chainlinker is a blog about the toolchain and platform economy. Chainlinker is for writers and readers interested in how digital platforms work. It also discusses how these technologies are creating a new era of mass collaboration, democratization, and economic empowerment. It is my attempt to think more like a journalist than a programmer, to understand a technology by looking at it from the perspective of its users as well as its creators.
The first Chainlinker was published in May 2011. I’ve been thinking about the blog ever since, but now am ready to start writing again.
Chainlinker is a blog about the toolchain and platform economy. The blog started off as a personal site, which then became a personal blog. I’m now not sure what it is. It’s mostly about tools for building software, and is intended for people who use those tools.
I think the best way to understand how to judge this kind of thing is by thinking back to the initial motivation behind blogging. When I started blogging, I wanted to share my ideas with people. But I wasn’t thinking about needing a platform or having a business model, so it was easy to write just one post and say “here’s my idea.” As the blog has become more professional, I’ve realized that if you’re going to be an expert in something you should probably also be an expert at making money off that expertise – otherwise you’ll get distracted from doing your real work, which is writing and thinking about things. So I’ve been working on figuring out how to do that right. And as part of figuring that out, I’ve been trying to understand what it means for something like blogging to be a viable business model, and how one might build one of those businesses successfully from the ground up.
If you look at the chain of events that led to the invention of Bitcoin, it has a lot of moving parts. More than a hundred years of political and economic history, for one. For another, cryptography is a deeply technical skill. The last thing anybody wants to do is write a blog about the chain linker.
The chain linker is the toolchain: all the parts you need to build software for money. It’s what’s called an industrial-grade toolchain, which means it’s not one company’s product but an open standard: it works with any programming language and platform you can think of, from Windows to Android to Java to C++ to Python to R. A chain linker is also, in some essential way, a platform: it is the software that makes your computer into a money machine. (Well, if you want your computer to do more than just make money, you’ll need more than just one chain linker.)
Chain linkers are open source software—that means they are free—but they aren’t free as in beer; they’re free as in “free speech.”
I first heard the term “toolchain” in the context of open source software, where it refers to the dependencies a programmer must build in order to make a program work. But it turns out that this isn’t how you actually build things.
When I was talking about toolchains on my blog, I used the word to describe the set of tools you need in order to do something. Like a chainsaw or a hammer, these tools are not themselves what you use to create something.
The most common example is programming languages. You could write programs in one language and run them in another, but if you want your program to run on more than one computer, you will have to write it as more than just a program. You will have to add some kind of compiler, which translates your program into machine code. That’s like writing a letter by hand and having someone else type it up for you; it is both easier and harder at once.
Like software developers who depend on Facebook for their social network, programmers who want their programs to be useful depend on chainlinkers: people who provide other programs that let programmers build useful things with their own programs.
You can’t make money without chains.
Chainlink is a general-purpose platform that lets people share and earn value by building chains of transactions. The best way to understand it is to think of it as a kind of blog with a community component, where the blog’s readers are the people who use the platform. So, for example, a chainlinker like me can post an entry about how to make money by blogging, but also I can post an article about a cool new library. Readers of my blog will see both entries and will be able to contribute to both, at no extra cost.
The key innovation is that chainlinkers who have made value contribute some or all of it to those who haven’t yet made any value. The chainlinkers’ posts are free because I don’t pay for them; instead, someone pays me to give them away for free. But readers who want to read the free posts can buy credits (the chainlink equivalent of money), which they can then spend on things they want from other chainlinkers. And chainlink’s economics enable this exchange without adding friction: if they don’t agree with some chainlinker, they can just not buy anything from him or her.
So here we have two separate businesses
We want to use the term “chainlinker” for those who are building applications on top of blockchains. That is, anyone who is building a blockchain-based application, such as a decentralized Twitter or a decentralized DNS, should be called a chainlinker. To some extent, this concept already exists. For example, if you use Bitcoin you are a chainlinker, even though no one has ever heard of you and you don’t have any visible products or services yet.
Chainlink is a term for a set of trustless smart contracts that can be used to build distributed applications, or Dapps. It is an offshoot of Ethereum, the most prominent Dapp platform. Like Ethereum, it uses a Turing-complete language called Solidity.
The chainlinker is a tool for writing and running smart contracts. In other words, it’s a software developer – or whatever one calls the person who writes software for blockchain systems. It’s not hard to write smart contracts in Python or JavaScript; developers can do that today. But chainlinkers automate some of the more tedious parts of that process. And since chainlinkers are written in Solidity, they’re automatically compatible with Ethereum.
More importantly, chainlinkers make it simple to build decentralized apps without writing any code at all – they are just Java apps linked to an Ethereum contract. This makes them useful as tools for building large decentralized applications, which normally require lots of manual work and are therefore difficult to build and manage – like YouTube or Uber (which may be more interesting).