Jonathan's Blog

Jonathan's Blog

Mindful Leadership and Technology (Mostly Software)


Blockchain Distributed Ledger Cryptoshares Technology Incorporation Governance Crypto-governance

Cryptoshares and You

Posted on .

Want to try a frustrating search? Try looking for companies that can help you incorporate your business on the blockchain or using distributed ledger. What will you search for?

  • incorporate on the blockchain?
  • build company on blockchain?
  • start company on blockchain?

Those are all a bust, because you'll run into a lot of noise about creating blockchain-based products and forming a company around them.

The word you're looking for is 'cryptoshares', but, in all honesty, that won't help you that much either. You just have to google for a while until you come across one of a couple of articles that help get you get oriented in this space.

There's a definite SEO opportunity here.

So, to take some of the pain out of it for you, and to add myself to the list of helpful articles, here are a few companies/projects currently working in this space:

Otonomous offers away to create a distributed ledger-based company, and they can help you incorporate in several different international jurisdictions. It is built on Ethereum.

Counterparty uses the bitcoin blockchain and 'writes in the margins' of bitcoin transactions to build smart contracts. Their software (open source) is the Counterparty protocol, it is Bitcoin-aware and enables these transactions.

CoinOffering uses Ethereum smart contracts to incorporate your business. Their software is also open source, and like the others above, they offer services to help you get set up. Interestingly, they are part of (or somehow related to) Cryptonimica and discuss International Arbitration and Cryptography Centre which is some type of online dispute resolution system. From the outside it appears that the idea is a cryptography-based, online arbitration system or court. Interesting.

OpenAssets is an open source protocol with some reference implementations on github. It doesn't seem to have a service organization around it as the others do. This means you're free to do with it what you want, but you will be figuring it out.

Using the 'judging a book by its cover' system. I've ordered these in level of maturity. Otonomous and Counterparty have actual (non-github) web sites, and Otonomous appears ready to help you incorporate in both the real world and online.

CoinOffering is building up their service, and has incorporated themselves. OpenAssets appears to be just a protocol, for now.

Also interesting is that Delaware seems to be pushing ahead to be the first US jurisdiction to allow this type of online, cryptography-based incorporation.


Blockchain Leadership Technology Distributed Ledger Reading List

Distributed Ledger (aka Blockchain) Reading List

Posted on .

This list is designed for a technology leader. I'm going to assume that the person who is looking at this is technical enough to know what a database is and roughly how the internet works, but will be less technical than other reading lists that are out there.

So, to begin, the first thing you need is a picture. Words are great and important and you can't understand distributed ledger or blockchain technology without words. But it is also important to have a picture in your mind, so you can refer to it later.

Here is the best picture I have found describing bitcoin specifically:

Here is a good picture for distributed ledger more generally:

Here are some overviews, the first one is expressing the distinction between distributed ledger and blockchain:

This is from IBM and introduces HyperLedger, which is a Linux Foundation Project they are supporting:

How do distributed ledgers fit into the broader world of data storage:

A really good description of the problem distributed ledgers are solving:

Do you need a distributed ledger?

I hope this is helpful. I'm going to keep adding and editing. I may make it a static page at some point.


Leadership Technology Blockchain Blockchaininess


Posted on .

In discussing blockchain opportunities with clients who are curious about how it might serve them, I've realized a couple of things, I've realized a couple of things.

  1. Not all problems have some type of blockchain answer. The question you should ask yourself is, "Does another type of data storage solve this problem equally well?" Or "Am I just doing this so I can say blockchain?"
  2. You should also ask, "How am I going to generate new revenue or save costs?" Or "What business outcome am I after?"

If the answer to number 2 is "Reinventing My Industry", that will come with some friction.

In looking at this challenge, some of the problem comes from ourselves. We haven't seen enough, done enough, or tried enough things to always understand what it does or how it will change things.

I'm speaking for myself here. If the answers aren't in my head, it isn't the technology's fault, it just means that I don't quite see how to fit it in. Or it's possible that what it will do is so radical that it may require some (additional) visionary ideas to help light the way.

Visionaries, apply here.

So, blockchaininess is a term for an idea that matches what blockchain technology does best. So far these seem to share that they are broad and sweeping in their implications, if they're going to be successful. This doesn't mean it will always be that way, but it isn't an incremental technology, which is why it can be so hard to look at. It isn't like stuff you've done before.

It could also be a term for a way of thinking about problems that inherently sees problems that can be solved well by blockchain.

Some of this will take time. But don't wait. My recommendation is to do some reading and start thinking about it. Start trying things. It is a powerful tool - look no further than Bitcoin for evidence of that.

What it will do for us, in technology and beyond, is still something we can decide and influence.

At least one other person is using the term blockchaininess. There was one other but it appears to have been edited out of their twitter profile. I'll list them for completeness:

EDIT: Not directly saying 'blockchaininess' but linked from the first link and related to what I'm talking about. A good, detailed read:


Ghost Blog Technology

New Blog Theme

Posted on .

I have updated this blog to use the Tiles theme. I was looking to shake things up and I was impressed with the layout and animations. It provides a bit of visual interest, while staying true to a pretty straightforward blog site.

Having all the posts on a single page is different. And I do miss my old orange circuit board cover image, but I'll get over it.

If you like it, you can buy it here: Theme Forest Link

Support is excellent from the developer.


Software Estimate Software Development Technology Leadership

Estimating Software #1

Posted on .

Software estimates are out of fashion.

In spite of being out of fashion, many of us are asked (often for very good business reasons) to provide them.

Right or wrong, there are situations where you should not provide an estimate. I learned these the hard way, here are the ones I know:

  1. R&D work
  2. Highly complicated things you've never done before (even if you're 99% sure you can do them).
  3. Things you can't break down into small pieces
  4. System integrations where you don't control the flow of development (A vendor needs you to attend 10 meetings and then they want to certify your 1 line of code.)
  5. System integrations where the system is still being developed or tested (Here's a great question I've learned to ask over the years: 'How many other people have used this API before?').
  6. Collaborative Development - two teams working together, especially for the first time.
  7. Co-development - sometimes this manifests itself as #5, but it can be other things, like working with an outside vendor in a novel way on the same codebase.

Pretty much everything else is feature work and you can estimate that. It might be a little scary or intimidating, but you can.

I don't mean to suggest there is anything wrong with the things the 7 categories above. Those things can be very important work that needs to get done, and those things might be very fun work (if you can get it).

But, fun as it may be, you really shouldn't estimate it.

Here's what to do with those 7 items above - don't estimate them. Break them out into separate subsystems or budgets or categories. Whatever you use to segregate work, put them in their own place and create visibility to how the work is progressing.

Some clients/bosses won't like it, but they also won't like budget/timeline overruns with no explanation either.

Make it clear up front. Use your estimate (or non-estimate in this case) to communicate and set expectations. Then use it to reset them later if you need to.

Many bosses/clients will appreciate the effort you put into managing the simpler parts. And they'll appreciate that you understand how to separate more complex things from the typical or mundane.


Technology Leadership


Posted on .

When I want an egg, I don't want something that is not an egg.

Eggs don't have labels on them that say 'EGG'. They are still eggs.

Someone can put the label 'EGG' on a rock, but that doesn't make it an egg.

Most rocks don't carry the label 'NOT EGG' on it. This also does not make them eggs.

It might be that I find a whole bunch of egg-shaped things labeled 'EGG' where there were only rocks before. If this happens I promise I will run some tests before I start lowering the price of omelettes.


What's this all about then?

Well, I found something on Google. It was clearly generated content that was generated poorly. It is a very high search result for the thing I was looking for.

Google isn't responsible for that, I realize.

It just makes me wonder why someone spends money (they clearly spent some money to build this thing) that is untested and wrong. Why do you do that?