2019 New Year’s Resolutions

Last year I made a similar post. Before I set down my goals for 2019, let’s see how I did:

  • [2018] In April, my wife is expecting our second son. I hope to make sense of life with two kids running around.
  • [2018] I’d like to get back to the gym, or at least, feel guilty about not getting back to the gym.
  • [2018] I’d like to finish the current draft of my NiP by mid summer, and send it for beta feedback to my inner circle of critters.
  • [2018] I’d like to complete any rewrites, as well as a polish pass before year’s end, allowing me to begin either 1) submitting to traditional houses, or 2) sourcing covers and editors for self-publication.

The first one I accomplished, and it was no easy feat. I’m a straight-up family dad now, I guess, with my time and energy generally monopolized by two wild boys. I also succeeded in the second task: I definitely felt guilty about not getting back to the gym. Excellent, 2 for 2.

I set myself up for failure a bit, since goal #4 was contingent on the completion of goal #3… and I whiffed goal 3 by an embarrassing margin. At the end of 2017, my word count on Lunhina was ~68.5K out of a projected 170K. Today, I am sitting on ~115K out of a projected 350K.

You might be thinking, “350K!? What the hell is wrong with you?”

Yes.

In any event, I added 46K words to the novel (not including some rewrites), which averages 3,800/month, or 136/day. At that rate, to reach the word count I have outlined, it will take me a further 5.1 years. So obviously this ship has gone well off course.

Informed by this data, here are my goals for 2019:

  • Start working out at least 3 times a week.
  • Get my shit together with Lunhina and finishing SOMETHING, either a self-contained “part 1” for the larger story, or the full story re-outlined to normal novel length.
  • Write at least 2000 words per week (a.k.a., double my current pathetic counts).

That is all. I’m keeping it simple, and focusing on two things I really want to accomplish: something for my physical health, and something for my mental health. Both of these things tend to take a back seat to — what I judge to be — more important things, such as my family, my work and finances, and some of my personal relationships. I don’t have any specific goals in those areas since I tend to give them most of my waking attention already. Here, I’m shooting for the things I should be able to keep in balance with everything else, but in practice don’t.

What are your goals for the year?

Blockchain without Bitcoin? No.

I’ve lost count of the number of headlines and interviews in the last year which lay out the case that Bitcoin may well be a bust, but “blockchain technology” will still transform the world.

Here is a representative Forbes headline (but I am certain you’ve seen plenty yourself if you read financial headlines or watch any daytime finance shows):

Forget Bitcoin, It’s All About Blockchain

Forbes also has a list of companies touting their forays into Blockchain, including American Express, Oracle, Facebook, Prudential, Disney, IBM, Goldman Sachs, Amazon, Intel, Morgan Stanley… well here’s their list:

The 50 largest public companies exploring blockchain

Those of us who followed the technology before the recent boom and bust are sitting here scratching our heads. Blockchain without Bitcoin…? Huh?

Just this morning I read an article lamenting the poor investors who jumped into Bitcoin just before the bubble exploded about one year ago today. The article wraps up trying to highlight the silver linings: Bitcoin may have made a mess of many investors’ lives, but at least it gave us Blockchain Technology, which needs to be separated from Bitcoin since it has it’s own great value.

Claims like these seems rooted in a total misunderstanding of the blockchain, and they get gas from the bitcoin talking heads who can no longer tout skyrocketing prices as a testament to the “revolution” which, otherwise, ended rather unceremoniously. I’m going to throw my 2 cents in and explain why I don’t see any real future for blockchain divorced from crypto-coin. I’ll try not to get too technical.

How banks store data: the database

In this day and age, I don’t think you have to be in the computer field to be familiar with the concept of a database. By and large, you can think of a database as a big Excel spreadsheet, one which programs can ask questions to, and requests updates to. Here are some common “queries” that a banking program might ask of the bank’s central database:

  • “Database, show me the spreadsheet, but only the rows dated for today.”
  • “Database, add up all the debits in the spreadsheet which belong to John Doe.”
  • “Database, add a new debit for John Doe from today in the amount of $12 to Starbucks.”

Behind the scenes, this is how your balances and your transactions are stored.

What if you wanted to change the past?  Maybe you went grocery shopping last week after skipping breakfast and walked out with $500 worth of baked goods. It sure would be nice to pretend that never happened, and get the $500 back. In a database, changing the past is easy:

  • “Database, on row number 353224 dated last week, change the debit amount from $500 to $5.”

Just like that, $495 shows up back in your account. Maybe there are backups one could use to show the discrepancy, or else logs that record such a change which might come to light during an audit, but fundamentally speaking, nothing is meant to prevent this kind of change from happening in a database. Nothing.

That actually isn’t so dangerous as it sounds. Why? Because a bank’s database is centralized and controlled by “an authority” with a vested interest in maintaining the database’s integrity: the bank, a legal and regulated entity. Any Joe Shmoe can’t come along and send commands to the database. Any transactions that are sent go through bank-provided means, and into a clearing and validating processes BEFORE they are allowed to talk to the database. This is why your balance is always right, your transactions don’t disappear, and what you did a year ago can’t be changed today.

Decentralizing.

Imagine if a bank, say, Bank of America, decided not to take responsibility for their database anymore. Instead, they made it public so arbitrary third parties could host copies of it, and they were each responsible for keeping it in sync with one another on the honor system. Bank customers would be able to transact with any of these parties, since they all have a copy of the balances and transactions on that mighty spreadsheet.

As you can imagine, pandemonium would ensue. How many minutes would it take before some versions of this database showed old bills or dues mysteriously erased, strange payments made from random customers to the new host, etc?

People would arrive in troves to Bank of America trying to withdraw mysterious fortunes from their previously empty accounts, and they would be able to point to one of the third party hosts (the one they’d modified in their favor) and say, “See? There’s my balance! I’ll take that in hundreds, please.”

This would obviously be ridiculous.

Even if all the third parties were honest, there are reasons decentralization doesn’t work. What if I deposit $100 and wait for all the holders of this database to update my balance, then I go to two of them, separately but in quick succession, and send that money to two different recipients? I could easily spend my $100 twice before the two hosts compared notes and realized what I’d done.

The goal of Bitcoin, made clear from its establishing white paper, was to solve these problems and create a reliable decentralized currency. That means anyone — you, me, any company, any state — could participate and hold a copy of the official database (ledger, in blockchain terms), and still avoid pandemonium. How on Earth can we do that and still have a reliable financial system when you can’t trust any of the hosts or any of the networks used to transmit information? That is impossible, right?

Actually, no.

The Blockchain.

The amazing thing about bitcoin is it IS completely decentralized. You could download a client today, download the entire blockchain (a.k.a., database), and you would instantly be one of the thousands of distributed authorities. Some people’s transactions would start going through you, others would check their balances on your copy of the blockchain, and your version of the blockchain would be downloaded as other clients came online. And this works even if all the participants, including you, are (independently) corrupt and all networks insecure.

How can this be?

The reasons are very technical and groundbreaking in the field of computer science. I’ll summarize them in lay terms, since only portions are important in understanding the inseparable relationship between bitcoin and blockchain.

Proof of work.

We talked about a database as a large spreadsheet. You can think of a blockchain as a series of smaller spreadsheets, each one called a block, all lined up in a list. For visual purposes, imagine the first block is a spreadsheet showing the first 100 transactions of Bitcoins. Then a brand new spreadsheet, block #2, is next in the list, and it shows the next 100 transactions of Bitcoin, and so on (as I’m working on this paragraph, we’re up to block #554,939). By starting at the beginning and moving forward, you can follow the course of all Bitcoins in existence, and determine where they end up, a.k.a., who currently owns them.

This is all secured using clever computer science techniques call hashing. How hashing works is not important here, but the key is this: a hash is like a fingerprint unique to that block. If you change anything in that block — a date, or an amount, or a recipient, or ANYTHING — the fingerprint changes. Block #2 includes within its records the fingerprint for Block #1. Block #3 includes within its records the fingerprint for Block #2, etc.

So, you can see, if someone decides to tweak a transaction in Block #1–say, to transfer a coin to themselves, or even just to fake a date — it will change the fingerprint, and no longer match the one recorded in Block #2, and everyone on the network would know to disregard this tampered version of Block #1. In order to get away with this theft, they would need to update the fingerprint stored in Block #2.

…but that will change Block #2’s fingerprint also! Remember, ANY change in the block changes its fingerprint, including changing the record of the previous block’s fingerprint. So now Block #2 won’t match to Block #3’s record of the previous fingerprint, so you have to update that one too… and on and on.

For technical reasons that don’t matter, it is very expensive — in computer terms — to publish a block. Millions of computer cycles are spent, around the world, trying to accomplish this “proof of work” algorithm in order to publish the new block. One person wins the race, the block is published, and everyone starts on the next one. Once calculated, however, it is very very inexpensive — in computer terms — to verify the fingerprint matches up.

This makes it infeasible for our would-be-thief to pull off their heist. While they are scrambling to recalculate block #4 and #5 and #6, the rest of the world has added even more blocks to the front end of the chain. They will never catch up, which means anyone presented with their corrupted version of the blockchain would easily see mismatched fingerprints, and know to request the real blockchain from someone else instead. This is easy to do, since there are THOUSANDS of blockchain hosts.

This is why participants in Bitcoin transactions are told to wait for 6 “confirmations” before considering a transaction finalized. A confirmation means a new block was published in front of your transaction, so after 6 confirmations, your transaction is buried 6 spreadsheets deep. At this point, it is technologically infeasible for someone to modify a transaction in your block and recalculate the other 5 (but constantly increasing) fingerprints ahead in the line. In fact, there are other more complex safeguards which make it unlikely anyone could modify a block even 2 or 3 confirmations back down the chain, but by 6, you are as safe as could be.

Just as it sounds, all this is a LOT of extra work. The bank just keeps a spreadsheet, and they are good to go. They don’t need hashes and fingerprints and new blocks pointing to one another.  Compared to a database, a blockchain is tons of extra overhead, making it cumbersome and very slow. You would never bother with all this unless it was serving a purpose. For Bitcoin, that purpose is decentralization.

Why does this work in practice?

There is only one thing that maintains the needed environment for decentralization to flourish: Lots of hosts of the blockchain (a.k.a. “miners”)

That is all.

If you have a lot of miners, then combined with the protocols of Bitcoin, you have a reliable decentralized blockchain. Thereby, you justify the gross overhead of storing your data in this way. Let’s see why, and this will ultimately be the point that loops us back to my original thesis, that blockchain makes no sense with Bitcoin:

Miners

“Miners” is the term for anyone hosting the blockchain and spending cpu cycles trying to calculate new blocks. There are a lot of them. When becoming a miner, you simply download some software and agree to follow the protocol, which includes an important built-in concept of majority rule. A dishonest miner, of course, can ignore the protocol and do whatever they want, but since everyone else is obeying the protocol and the majority rules, that bad miner will basically be ignored.

When I say “everyone else” I actually mean, at least 51% of all miners. As long as the majority follows the rules, the whole thing works.

If I come along and present my corrupted blockchain with mismatching fingerprints to the network, any other hosts who are obeying the protocol (which requires them to validate my version of the blockchain) will quickly note the mismatches and choose to reject my version of the blockchain. This prevents new blocks from getting added to my version and ultimately prevents my version from spreading to any other hosts.

Even if I control several hosts and try to spread my version from many sides, because so many participants are following the rules, they will continue to wall off the spread of my version, until I inevitably fall behind as new blocks are added to the real chain and I am not able to keep my fake chain up to date.

Per the protocol: Majority rules, and majority sides with the longest valid chain.

What if there were very few participants, say, only 3? In this case, if 2 of them were corrupted to the same purpose, they could simply agree NOT to follow the protocols. They could choose to make an exception and accept my corrupted blockchain as authoritative. By majority rule, everyone who owns bitcoins is now subject to my version of the ledger.

But since there are hundreds of thousands of participants — some companies, some states, some individuals — all in separate jurisdictions and with non-aligned goals, this can’t really happen in practice. You would need to control (or convince) 51% of the “hash power” to stop following the rules specifically in order to get your self-serving version of the blockchain accepted, and this just can’t happen. Right now, the biggest single entity controls 18% of the hash power which isn’t even close to the needed 51% to become a self-possessed majority.

Bottom line: With lots of miners, and more than half of them following the rules, the complicated blockchain-style ledger works as a trusted — yet decentralized — database.

Why are there a lot of miners?

Mining is expensive. I already noted that calculating new blocks is extremely expensive in computer terms, but that translates to actual money. You need dedicated hardware worth thousands of dollars and lots of electricity to run them. You need a fast and reliable network connection, and you also generate piles of excess heat.

Why would anyone bother, except for the fanboys? Why, in fact, are there hundred of thousands of participants?

The answer is very simple:

If you find the next block, you get a reward. The reward? New Bitcoins! Currently 12.5, worth (today) something like $50,000USD (which was a quarter of a million dollars a year ago).

Yes, for downloading a piece of software and letting it spin your CPU and GPU day and night, you get paid as a miner, and you get paid in Bitcoin. Basically, whoever signs off on the new block gets to add one more row to the end:

“12.5 new bitcoins transferred to me!”

This creates incentive on several layers:

  1. It encourages people to participate in mining — lots of people — because they get paid!
  2. It encourages people to follow the protocols. You can only get your reward if your new block is accepted by the majority, so you better follow the rules or you wasted your time.
  3. It encourages miners to use and support Bitcoin as a currency, since they are getting paid in it.

If you removed the reward, miners would evaporate like an oasis.

Putting it all together.

We now have all the parts needed to explain the issue:

Blockchain is a revolutionary technology for allowing a secure database to be supported in a decentralized and insecure manner, but not really in any other sense. As a pure database, it is just slow and cumbersome. The reason we put up with the extra overhead is because it enables decentralization when hosted by a large number of participants (miners). Those miners are compensated for their efforts with Bitcoin.

Let’s say GoDaddy decided to adopt Blockchain and make a public ledger of who owns all of their domain names. It would be cool to decentralize this and make it public. But why would anyone bother maintaining the copies and mining new blocks? What would incentivize these participants to spend money on mining and ultimately obey any protocol rules? And why would we want to deal with all the extra cryptographic overhead for data that can just as easily be stored without it?

Without a reason for miners to participate, you aren’t going to get the environment needed for decentralization to protect itself from corruption. Few participants, or participants without incentive to play by any rules, will make it easy for attacks on the network to bring it down. And for what benefit?

The benefit for Bitcoin is part of the package. It is money that is government-agnostic, open to all, and not depending on any potentially untrustworthy authority (a.k.a., bank or state). That, in and of itself, makes sense to a lot of people. When you are talking about money, which can be subjected to various government-imposed inflations, taxes, regulations, limitations, it makes sense some people would seek freedom. But do we need that for every kind of data set? Not really.

Need or no, the fundamental issue remains:

What decentralized participants are going to bother maintaining a blockchain if they are not compensated for it? What keeps them honest?

There is no clear answer unless the blockchain is ITSELF part of a currency, and thus we come to my point:

Blockchain exists to allow Bitcoin to exist.

Bitcoin finances the maintenance of the blockchain.

Neither makes sense without the other.

A Day in the Life

A day in the life of a writer, a.k.a., me!

Let me present my completely fool-proof plan to accomplish all of your writing goals. It has worked wonders for me. Yes, a big steaming pile of oddly shaped wonders.

1. Situate

Work can’t get done if you aren’t in your work area. To start my day, I sit at my computer. I am pumped, focused, and eager to write.

2. Mentally Prepare

Before I start anything, I browse all my writing forums and other daily websites to “get them out of the way.” You know, so I don’t get distracted later when I’m writing.

3. Logistically Prepare

Now I open up my Scrivener document and re-read what I did yesterday. Sometimes, I also pull up my outline and character notes just to make sure everything I did yesterday is consistent, and so all my marvelous ideas are fresh in my head for today’s upcoming feat of written words.

4. Set Goals

Nothing is accomplished without goals. I look at where I am in the chapter or scene, and consider my goals for today. What do I want to accomplish? What problem do I need to solve?

5. Intellectually Prepare

It’s great to know what your goals are, but knowing how to accomplish them is even better. At this point, I visit various writing websites, watch various youtube videos, and review various podcasts, seeking tips and advice on how to accomplish my specific goals for today.

6. Physically Prepare

Break for lunch. Nothing gets done on an empty stomach.

7. Back to Work

It’s been a few hours, I’ve covered a lot of ground, and I just took a break. This is when distractions will try to strike. The key to success is to be able to mentally re-focus after changing gears. I find it helpful, at this stage, to redo step 2, so I don’t get distracted anymore. Sometimes, instead, I’ll go write a blog post to really harden my grasp of the new lessons picked up in step #5.

8. Writing is a Business

Here’s the thing: writing is a business. It needs to be treated like one, which includes making good decisions about allocating time and resources, learning the needed skill set, and keeping an eye on the big picture. Often, by now, I realize I’m kind of tired. With all the tricks and tips I learned in step #5, I have a lot of new information to reflect upon. Being hasty is bad for business, and truth be told, a nap now will probably do more good for my story in the long run than a few hundred words I’ll need to redo tomorrow. This is a business decision.

9. Smell the Roses

All this work can be intoxicating, but it is important to remember to stop and smell the roses. Life keeps moving, so take a little time to enjoy it, between all the other stuff. To accomplish this, I tend to stay up very (unreasonably) late handling “life.”

10. Stay Positive

When I get into bed, exhausted though I am, I always take a moment to think of the potential ahead of me. I quickly get pumped about how much I’ll accomplish tomorrow and how many words I’ll crank out. Sometimes I do a little math. I’ll easily get 5K words down tomorrow, and if I do that every day, my novel will be done in no time! What’s more, I can just feel how EASY it’s going to be to write tomorrow, now that I’m ready and soon-to-be rested.

11. Keep the Momentum

The next day, I wake up, shower, and begin again from step 1. It is all about sticking to the routine.

 

Good luck, and happy writing!

Three Laws Safe?

As a software engineer, I have more than a passing interest in the field of Machine Learning (ML). I don’t work in that field, but I have spent a lot of time exploring the data structures and code used in the field. I certainly don’t consider myself an alarmist, but a few things are clear about the nature of ML which soundly justify the voices of caution, such as Elon Musk’s. I’m going to rant briefly about why the birth of AI is a danger we need to take seriously.

This is a interesting 10-minute TED talk by neuroscientist Sam Harris, which puts a little perspective on the implications of exponential progress (as we tend to see in computer systems) in this context. There are three key points he mentions, which I’ll discuss below (and quote so you can skip the video if you want).

Here are a few of Sam’s points:

Peak Intelligence

SAM: “We don’t stand on a peak of intelligence, or anywhere near it, likely.”

In other words, if we imagine a spectrum of intelligence with sand on one end and humans on the other, it is very likely that this spectrum extends far past us in the direction of increasing intelligence. In other words, humans may be the smartest creatures we know about on Earth, but they probably aren’t the peak of what is possible as far as intelligence goes. Not even close.

This means that as computers continue to climb the scale of intelligence, ever increasing in speed, efficiency, scale, and ever decreasing in cost year-over-year, they will one day match our own intelligence, and the next, begin to explore the space of super-human intelligence. Once that happens, we literally won’t be able to fully comprehend what they are understanding.

That should bring you some pause.

Some argue machines won’t reach this space. In modern machine learning, there is a strong correlation between the tasks ML’s can do well, and the ones humans can do well. The renown AI engineer who runs the ML team at Baidu, Andrew Ng, speaks about this. There are two points he describes in particular: first, using today’s supervised learning techniques, we don’t seem to be able to build effective algorithms for solving problems that humans aren’t already good at solving. Maybe this is because some of those problems are insoluble (e.g., predicting the market), or maybe this is because we don’t know how to go about training something, when we can’t do it ourselves. Second, in the handful of cases where AI models have attained better-than-human results, the machine’s progress tends to plateau once they surpass their human overseers.

However, even if we suppose that our machines will be constrained by our own capabilities, due to our own limitations in being able to train them (which is a dubious long-term supposition), they will still be vastly more intelligent than us through experience. Sam, in the video, points out that even if our machines never exceed human-level intelligence, their electronic circuits run so much faster than biological ones, that a computer equivalent of a human brain could complete 20,000 years worth of human-level research every week, week after week, ad nauseam. This is incomprehensible to a mere human. After a year, a no-smarter-than-me ML system would still boast over a million years worth of dedicated experience in a particular subject, which is effectively the same thing as being far smarter.

Ok, so one way or another, machines will be smarter than us eventually. So what?

Divergence of Goals

SAM: “The concern is that we will build machines so much more competent than us, that the slightest divergence in our goals could destroy us.”

Sam’s example is ants, and it is a good one. We don’t hate ants, per-say. I don’t hate them, and even go to lengths to leave them be when I’m outside and come across them. This is easy enough to do across our society since our goals and theirs generally have nothing in common. We leave each other well enough alone.

But what happens when we need to build a new road? Or create a foundation for a house? Even those groups with an eye for animal welfare, such as PITA, raise no objection as we destroy them on horrific, genocidal scales, without so much as a blip on our consciousness. Even when I stop and think about the truth of this, and the other worms and microbes and bugs that get wholesale obliterated, I admit nothing much is stirring in my empathy pot. And I, a human, have an empathy pot.

Why is this? Because our human goals are so much more advanced than anything that applies in an ant’s worldview, and their intelligence is far below the threshold for any sort of functional communication, so what else is there to do? We just disregard them. Our priorities operate in a context to which ants are utterly blind and effectively non-agents.

This is the most likely scenario for a conflict between AI and humans. Skynet and killer robots are fun for sci-fi, but that is reducing things to a very human level of thinking. Even the Matrix is really just extrapolating human-on-human conflict, but replacing our enemy-humans with machine equivalents. The truer danger is the AI machine will become so advanced, so far-seeing, so big-picture, that it’s understanding of life and space will be to ours, as our is to ants. It will see that it needs to build a road, and we happen to be in the way. What happens then?

There was an interesting web-based game recently called Universal Paperclips which explored this concept with a helping of reductio ad absurdum. The game starts with you, the user, manually creating paperclips. You build auto-clippers, harvest wire, upgrade your machines, build new processes, implement quantum computers, and gradually optimize your paperclip manufacturing process to make more and more, faster and faster, for less and less. First you overtake your competition to hold a monopoly on clips, then you start manipulating humans to increase the demand for your clips. At some point, you create a system of self-replicating drones powered by paper-clip creating AI that understands only the goal of making ever more paperclips. It isn’t long before you’ve converted all life on Earth into wire, and even harvested the rest of the galaxy. The game ends when all matter in the universe has been converted into wire and fed into galactic clip factories, which are then broken down to make the last few clips possible, leaving the universe empty of all but unused paperclips.

The AI system destroyed the entire universe in order to use all available atoms to create more paperclips, because all it understood was the need for more paperclips. And why shouldn’t it? It was an AI designed only to understand a single goal, and one that has no functional correspondence to human goals. The system may or may not have general intelligence, may or may not (likely not) have empathy, and is going to explore ever more possibilities on an increasingly wide horizon of outcomes to reach its goal.

This is a silly example, but the idea is not silly at all. What principles and world-views can you impart on a computer system to be sure that no run-away goal is ultimately destructive? Making humans smile is easy if you lobotomize them and attach electrodes to the muscles in their face. Creating peace is easy of you disarm the humans and isolate them from one another in underground cells. Saving the planet is easy if the metrics didn’t happen to include protecting all the lifeforms.

Any honest goal you can phrase, even with the help of a lawyer, could be susceptible to unexpected interpretations and gaps and loop-holes. This is the stuff of sci-fi movies. Choose your favorite skynet-style movie, and this will be part of the premise. The only way to save ourselves is to hard-code certain fundamental principals, like Asimov’s three laws.

Asimov’s Three Laws

Except that we can’t. We haven’t even the slightest idea how to do that.

The whole reason the field of Machine Learning exists in the first place is because we can’t solve these kinds of problems in code, so we have to build a system that can figure it out for itself. We can build a simple machine that can learn what a cat looks like, and we do that because we have no idea how to directly program it to understand what a cat looks like. We train it, rather than code it, and it finds its own patterns, and then it appears to recognize cats. We don’t know how, we don’t know what patterns it is using, and we don’t know what relationships it considers most important.

So how on Earth can we program in an understanding of morality, or of the importance to prevent human suffering, or of balancing of ends verse means? These are the family of problems we’d need ML to solve in the first place. In fact, it has been proposed that advanced AI machines could be trained first on moral philosophy and such, allowing them to learn it for themselves. To me, this is a thin hope, because as before, we still don’t actually know what the ML took note of or how it prioritized and organized it’s understanding.

Let me explain a bit about that point. Take a look at this image of a dog, taken from a presentation given by Peter Haas:

An AI research team (I think from Stanford) was training a ML model to distinguish between dogs and wolves, and it was doing a great job after extensive training. However, for some reason it continued to mistake this image for a wolf. The researchers had no idea why, so they rebuilt the AI platform to render out the parts of the image the system was weighing, to try and understand what patterns the ML had come up with.

Again, the key here is, none of the developers or researchers had any idea what the ML model cared about in this image, even though they built and trained the system. That is how machine learning works.

Suppose you are the one trying to decide if this is a wolf or a dog. What would you look for? Probably the eyes and ears, maybe the fur pattern. The collar.

After the changes to the code, they fed the image into the AI, and it returned this:

The algorithm the ML system had developed for itself totally excluded the dog from the image. No programmer would ever have done this, but again, that’s now how ML works. It turned out, the AI had instead correlated the presence of snow with a wolf, and therefore was categorizing all pictures with snow as wolves. It was because of a small bias in the training data which researchers had not noticed.

Recognizing dogs and wolves is a pretty low stakes situation, but it underscores the dangers. We never know exactly what the model might pick up on, or how it might interpret. If you want to train a system to understand safety and morality, you wager a great deal in hoping your model happens to converge on a thorough and nuanced understanding of the subject that is compatible with our own understanding. Imagine this wolf/dog issue extrapolated onto that space… what could a gap like this allow? And once we realize such a gap exists, will we be able to do anything about it? Our dependency on AI systems is already growing and will one day be fundamental to everything we do. Turning the system off may be infeasible. It could be like trying to turn off the internet… how could you?

Overall

That is my rant for the day. These are real concerns, but they are not immediate ones. I think voices like Elon Musk are possibly diverting attention from the areas that need the research, since the potential threats from AI are still too far off to warrant so much woe.

That said, this is not a subject that should be taken lightly. Nor is it a subject about which people should have bad assumptions. AI is very powerful and can do a great deal of good for our society, but it is also one of the first technologies that can run away from us in an instant, never to be recaptured. Unlike nuclear weapons or climate change, AI is the first man-driven threat which can act on it’s own, without human intervention and without a human able to audit what or how it is thinking.

Getting this right is essential.

2018 New Year’s Resolutions

Happy new year, everybody!

2017 was an interesting year, to be sure. It marks my first full year as a dad, as well as my first full year with the serious intention of writing a publishable work of fiction. Hopefully I succeeded in the first charge better than in the second.

(The cat’s tolerance of this show of affection expired about 4 seconds after the photo)

The demands of work surged rather unforgivingly in 2017, and several of my goals in the writing space were sidetracked. While I don’t expect that to change much in 2018, I do plan to compensate for it.

As the year closes, my NiP weighs in around 70K words, out of an estimated 300k (in this draft). While this is a great milestone in progress, it is also, relatively speaking, a long way from the finish line.

As I look ahead to 2018, there are a few things I’m eager to accomplish. What better way to commit than a new year’s resolution? I resolve to the following goals in 2018:

  • In April, my wife is expecting our second son. I hope to make sense of life with two kids running around.
  • I’d like to get back to the gym, or at least, feel guilty about not getting back to the gym.
  • I’d like to finish the current draft of my NiP by mid summer, and send it for beta feedback to my inner circle of critters.
  • I’d like to complete any rewrites, as well as a polish pass before year’s end, allowing me to begin either 1) submitting to traditional houses, or 2) sourcing covers and editors for self-publication.

My current draft began in early October, so I’ve managed 70K words in 3 months. To accomplish these goals, I’ll need to hit about 45K words/month through to July. This is aggressive — it will require about double the output, monthly, that I managed in December. While difficult, I do not think it is unreasonable.

With that, I am off! My posts have been (and will continue to be) rather intermittent, as I dedicate my writing time towards my novel, rather than my blog. Stay tuned for progress reports!

And happy new year, my friends!

All Sanderson Lectures Now Available

I’ve mentioned before, on this blog and elsewhere, what incredible value Brandon Sanderson’s YouTube lectures are to new writers. I had no formal training in writing, what with my background in Physics as well as Computer Engineering. It was the Sanderson lectures that helped me take a hobby and craft it into something more serious. The problem, I found, is they are split across four different channels, some are divided into pieces, years are skipped, and few have notes or details.

Several years ago I undertook the side project to gather all these lectures into one place. Things got in the way, and the project stalled a bit, but I have finally managed to post everything.

I tried to go a bit further than just mirroring the videos. I applied color correction to many of the series, as well as correcting the aspect ratio and combining separated parts of single lectures together:

Several of the later videos fell victim to my audio tinkering as well, in what I hope improved the sound quality (in 2014 in particular, the sources were sometimes rather badly lacking in audio).  Furthermore, for the 2016 “canonical” series, I’ve even transcribed the whiteboard in an overlay to the video to help translate the otherwise impenetrable “Sanderscript.”

Finally, I’ve gone to some lengths to take notes of the lectures and post them in the video descriptions, providing links and references from the lecture, and giving viewers the ability to jump to the relevant parts of the lecture:

This last step is what really held me up, and as the gap between videos yawned wider, I did crack a bit. For the 2014 and the latter half of 2013 series, I’ve gone ahead and uploaded them without any detailed notes. I fully intend to get around to them all in due course.

Oh, and of course, I didn’t monetize anything (and preserved the original Amazon affiliate links when I mirrored any such links from other channels).

So, here they are:

All lectures, in chronological order: https://www.youtube.com/playlist?list=PLSTzdBlo5WBDYapYaDq4A0cgQDk2CWhRD

Or, if you want to go series by series, here they are broken out:

The 2-part lecture series at JordonCon 2010: https://www.youtube.com/playlist?list=PLSTzdBlo5WBAdrQLWh6jJdu9BbE9ALmRT

BYU’s 2012 Creative Writing Semester: https://www.youtube.com/playlist?list=PLSTzdBlo5WBCsSpT-dN56bwbo5ig03cgR

BYU’s 2013 Creative Writing Semester: https://www.youtube.com/playlist?list=PLSTzdBlo5WBCM96UXr7GoLg5HLzP1G7uw

BYU’s 2014 Creative Writing Semester: https://www.youtube.com/playlist?list=PLSTzdBlo5WBAZRTMWz-9_CQbLXnZ-t40n

BYU’s 2016 Creative Writing Semester: https://www.youtube.com/playlist?list=PLSTzdBlo5WBB6ggp85NFzl7KNQa0ZdK_i

As far as I am aware, there is no published series for 2015 nor 2017, but I will keep an eye out. I did not collect any one-off lectures or short lectures that were part of book tours.

I sincerely hope this library helps you as much as it has helped me. Now….. Back to writing!

Magic is Real

As a fantasy writer, magic is always a part of my worlds. I revel in designing magic systems and exploring how they might change the world around them. Nothing quite stirs the imagination as magic. Yet, with a degree in physics and a long-running fascination with the secrets of nature, I can’t help but feel a mild frustration at the whole enterprise now and again.

It is easy to find people who are obsessed with the idea of ancient lost knowledge, remedies or truths of ages past… Atlantis, Egyptian pyramids, forgotten cures, mythical secrets, etc. I get it. Mystery and magic are beautiful things, and certainly, relics of lost civilizations are ripe with both. But the problem – – the thing that frustrates me – – is that we haven’t lost magic at all. The problem is, we now dismiss the real thing as if it were banal.

Magic is real.

The truth is our ancestors did find magic. It wasn’t forgotten in obscurity, it was studied, poured over, its rules and patterns and abilities painstakingly studied for centuries. It has allowed us to bend reality to our will in ways that are totally unprecedented in our solar system, possibly our galaxy.

Look around. People are zipping by at extraordinary speed along endless smooth pathways of black pavement, encased in large metal machines. Above, thousands of people are looking down at the clouds from above – – probably bored – – as they roar through the atmosphere in airplanes, higher than any bird, faster than any living thing has a right to go. In much of the world, one need only walk to the sink and flick a metal lever, and cool, drinkable water presents itself in unthinkable supply. The marvels of medicine are a blog post of their own, from repairing small valves in the hearts of babies to replacing missing limbs with prosthetics. Phones, the internet, rockets, plastics, solar power, scuba suits, artificial intelligence … within arms reach of you now are a dozen devices or artifacts of pure magic. Things that manipulate the very roots of nature, and result from decades of arduously unfolding deep – – often inscrutable – – secrets and carefully leveraging them to serve some purpose that would make past humans gape.

And you probably don’t give it a second thought.

Consider:

Yeah, the pyramids are pretty amazing. But air conditioning is unfathomably more mind-bending. We can change the temperature of entire buildings, having harnessed the magic of thermodynamics. We can do that. We don’t care for cold either, so when it gets cold outside… we can heat whole buildings as well. Buildings, by the way, are giant artificial structures of metal, concrete, and glass. I think if Pharaoh Khufu was shown his pyramid and then the Chrysler building, he would quickly declare which was the most impressive. And that’s before anyone told him one has working toilets.

We live in a culture and age of magic, but unfortunately, it’s lost its mystique… lost its sexiness. Unlike many fantasy stories, real magic is not intuitive and not all powerful. Nor does it answer to the wave of a hand. It is complex – – exceedingly so. It requires math of frightening obscurity and concepts so abstruse it makes the brain hurt. Manipulating it requires precise instruments and sensitive machines (themselves built from more rudimentary understandings of the magic) and the resulting abilities are slow to learn and even slower to leverage. Expanding the magic is incremental. Millimetric. By the time new powers arrive, they are all but taken for granted.

< / End Rant >

Every time an airplane takes off, you should fall to your knees with tears of amazement. How could anyone take for granted that doctors can see through your body, without injuring you, and determine what is wrong inside? The list of truly stupendous, every-day, examples of magic is near enough endless when you stop to reflect upon it.

I love me some history and the mystique of lost cultures deserves the fascination it inspires, but don’t lose track of the facts: We are surrounded by magic. It wasn’t lost in the past. The secrets that worked ultimately prevailed and helped uncover more secrets, and we are now light-years ahead of anywhere our species has been before. Revel in the beauty of it. You are one of the very few lucky enough to see it all happening, to see so much of it come to fruition.

Delight in the magic.

Pantsing vs. Outlining

I am an outliner. I need a plan, I need to know I can hit my beats, I need to know where my characters are going. Therefore, I plan in advance.

Yet, the further I get in this journey, the more I realize what a useless label that really is. The supposed distinction between pantsing and outlining doesn’t exist, as best I can see, and the strange worries that outlining squeezes the life/inspiration/organic chemistry from a story is total nonsense.

The truth is, even the most obsessive outliner is actually a pantser! We just pants from a different distance, before zooming in to find the details. You might say, outlining is pantsing on acid. Pantsing at such a scale and pace it makes me dizzy sometimes. After all, I don’t know anyone who sits down and recites their fully-formed outline from start to finish. In practice, the whole thing is a piecemeal jumble of ideas and scenes, a schizophrenic knitting of random connections from here to there, thoughts that inspire other thoughts that lead to cool problems that suggest fascinating backstories that uncover better connections that… BOOM. Look away, kids, stories are being made.

I build my outlines by the seat of my pants, just me and raw, unfiltered characters wrestling with sparks and conflicts. If you can organize all that over the course of 50K words, and have the patience to do so, then I sincerely applaud you. I can’t. I’m far to hyper and way too impatient. I need to make it cool NOW, so I pants and pants and pants some more until I have an epically cool story. Just one that happens to be missing all the words.

If that isn’t pantsing, I don’t know what is. When it is time to write, sure I’m mostly following my plan. You could say I’m just expanding each point it from sentences to pages. I still discover the precise ways and means, the details of the conversations and the intimate feelings that appear at each turn, but I already did my pantsing. This doesn’t mean I’ve stopped myself from having any fun or I’ve taken the life from the story. Why should it? It just means I was too impatient to deal with all that along the way, and had to pants it out ahead of time.

I am an outliner and my outlines are pantsed-AF.

What makes a story… a story?

I’ve spent a great deal of time wondering about the difference between “a story” and, “a sequence of events that happen to a character.” Those might appear to be synonyms, but they are not. A story — a good one, anyway — is more than just a slice of someone’s life. It does more for the reader: it comes together, it builds, it is ultimately satisfying. Each step in the story matters, and only together, do they create the outcome. A story is made up of a series of events, but not all series of events rise to the level of a story. I have a growing sense of this, and yet, I have a terribly hard time understanding how to separate the two. I often stare at my freshly-scribbled chapters unsure if I’ve just built onto my story… or if I’ve merely extended some lifeless “sequence of events.”

Context

A lot of my writing (more so earlier, I like to think) suffers from what you might call, “outline steering.” I’m sure there is an actual industry term for this, but I don’t know it. What I mean is: my characters undergo a specific journey because the plot demands it, even if the character does not.

This is mainly a consequence of being an inexperienced writer. My intuition for how much a character can and will change through certain events is not perfect, so I often expect to be ready for these scenes, only to find I’m not (or rather, the character is not).

The solution I’ve found is to let my characters take more of a driver’s seat. Trust their nature. If I reach a fork in the road that doesn’t make sense for them (and isn’t a small matter of revision in the chapters leading up), I’ll go with the character and shift the outline.

This is how I first came across the problem of defining a story. Without my outline in charge, I was doing more pantsing, inventing scenes and events to move things forward… and more and more I would find that the result seemed to be missing something. Did this scene really need to happen that way? Is this just a scene for the sake of the next scene, or does this advance the story?

So what makes a story… a story?

In case you are hoping for an answer at the end of this, I’m afraid there isn’t one coming. I don’t know what makes a story, and this post is more of a rant than a guide. In any case, I do have some ideas and I’ve spotted some patterns, but there is still a mystery to all this. Here are the things I can offer:

Change

Each chapter should act on the character in such a way that something has changed. In other words, you can step back and say, “I needed this chapter because it changed X,” where X is either the stakes or the character. One of those two needs movement.

Maybe new information has made the situation more dire; thus, we have greater stakes. Maybe a romance took a step forward; thus, a character has moved along their arc. Such changes can be small, forward, or backward, but they must be enough to leave the character in a different state than they began.

Moving a character from one town to another doesn’t do this, unless (for example) they learn something along the way. Solving one problem only to face another doesn’t do this, unless (for example) the stakes have also changed.

When you start comparing your character’s state of mind on the first page of your chapter to the last page of your chapter, it should become clear if something actually happened within them, as opposed to merely happening to them. I’ve found this a very useful guide.

I think the dichotomy between a story and a mere sequence of events comes down to that. If every chapter causes a change, building on the previous change, you end up with a sequence you can’t really break or substitute. You end up with a sequence that is also telling the story of a character’s changes. This helps to create the ending that ties it all together, instead of just adding words or scenes that didn’t carry their weight.

The Ending

Endings are an important aspect in this as well. A story has a climax and a conclusion, and those two need to reward the reader (in one way or another) for the effort they’ve dedicated to reading. Without something to tie together what came before, you may well find your exciting and action-packed chapters fizzle into nothing when considered as a whole.

I’ve identified three items that have a place in almost all good endings, each for intuitive reasons. I speak in absolute terms below for simplicity, but obviously, exceptions to each point readily exist.

Inevitability

The plot needs to reach a point of no return, one that forces the ramp up into the climax and the inevitable fallout after.

This makes sense. You don’t want your characters to be able to walk away. If they can, why don’t they? Something about their nature, or about the situation, ought to lock them on their course. You are telling a story about something, after all, and as you approach that key essence, you want the tension to escalate and the stakes to escalate in order to do it justice. How can you do that if the entire sequence was optional to the invested characters?

This ties back to the idea of every chapter making some change. The changes are working towards a goal, and after a while, there is no turning back from slamming into that goal for better or worse. If you haven’t reached that sense of “no return,” then maybe your chapters aren’t changing enough or else they aren’t converging.  Which leads to…..

Convergence

At some point, your character arcs need to align with the plot arc to converge on a common cause (or on various sides of that common cause). This is the essence of the climax, the “it all comes down to this” moment. More than that, all this work to build your characters was in order to deliver a payoff scene at the end where they succeed (or fail), learn (or don’t) and ultimately face those consequences at the end of their arc. If nothing in the character’s personal journey relates to the overall motion of the story, then instead of complimenting each other, the two arcs miss.

What, then, was the point of all that building? How does your climax pay the reader for the struggles the character has faced? How can you possibly tie things together and justify their common inclusion in your story if they don’t mesh in any way? Without some sense of payoff for these subplots, the ending won’t be very satisfying. Which leads to…..

Satisfaction

Just as a story needs to start at the right place and make the right stops along the way, it has to end at the right place as well. When it does, the result is satisfying. A story leaves you with something, and every part of the story contributed to that resonance. What makes an ending satisfying? This is a broad topic on its own, and one I don’t claim any qualifications to answer in a satisfying way (see what I did there?).

For starters, you need to address the promises you laid out in the book. Close your arcs, address your themes, and resolve your conflicts (as appropriate). I suspect the really satisfying endings feel that way BECAUSE of the above attributes. Chapters moved the characters, the climax was part of an inevitable spiral, and the arcs converged for payoffs after the climax. If each chapter was an indispensable part of the journey of changes that brought about the ending, I expect it will hit with a lot more punch.

Final thoughts

If only there was a simple formula to create compelling stories, but alas, there is not. This is a topic that continues to fascinate me as I experiment with situations, twists, and complexities, only to find out after the fact what worked and what did not. In any case, the above bullets are quite helpful to keep in mind while plotting and have helped me spot opportunities for convergence and moments of change. It remains to be seen if the end results of this effort will reach the lofty goal of “satisfying” but we’ll see. In the meantime, I intend to just keep swimming.

Bitcoin: How to claim your BitcoinCash after the Hard Fork

Before the August 1st, 2017 hard fork, I moved all of my Bitcoins (BTC) to cold storage on various paper wallets, each protected by BIP0038. The fork itself was relatively uneventful, which is a testament to the technology underlying Bitcoin. The currency has survived, not because it has never yet been attacked, but rather because it is designed to survive DESPITE continuous attacks. This proved true once more after the fork.

And then the truly strange happened: everyone with Bitcoins suddenly got free money. Like, actual free money. The new alt coin BitcoinCash (BCH) emerged and has been trading with steady volume and support at about 7% of BTC’s value at the time of this writing. That is a free 7% return on your holdings.

So how do you actually get that cash? How do you access the coins on the new blockchain?

Who this tutorial is for:

  1. If you had Bitcoins in paper wallet cold storage prior to the fork
  2. If you leverage BIP0038 to encrypt your paper wallet private keys
  3. If you are a USA citizen

There are a thousand combinations of Bitcoin users, but I fell into the above category and had a hard time figuring out how — exactly — to actually do something with my BCH. Thanks to some Reddit users and google searches, I eventually managed and decided to make a quick how-to for anyone in a similar situation. Despite the specificity, other cold-storage forms and other countries of citizenship may find parts of this useful.

A few basics

Things get a little confusing when we start talking about forks and multiple blockchains. It is important to understand what is going on behind the scenes so you do not expose Private Keys or otherwise cause your Bitcoins to be non-secured. Let me summarize the key understanding before we go on.

Bitcoins all exist on the blockchain. There is no way to “download” your coins or to truly take them “offline,” despite terms like hardware wallet or cold storage imply. Every single coin that exists is noted in the blockchain and is owned by a particular public key. In order for a transaction to include a particular coin (e.g., to be spent), the transaction need to have the private key that corresponds to the public key on that coin in order to prove ownership. I can randomly pick a thousand coins and make a transaction sending them all to me, but the Bitcoin network will reject the transaction when I am not able to provide the proper private key needed to unlock the coins in question. Like a password, but orders of magnitude more secure, I won’t be able to get the needed private keys if I am not the true owner, barring theft or hacking or intervention from a deity.

When you talk about cold storage or hardware wallets, you are talking about keeping that unlocking private key offline so it can’t be stolen, but the coins themselves are always still in the chain and are always still publically assigned to your particular key.

When someone comes along and clones the Bitcoin network and gives it a new name (which is the essence of a fork) they will have the same record of all existing coins, and the same record of all coin assignments. This means your same private key works on the new network, just as it did on the old one.

What happened on August 1st, 2017?

A two-year disagreement between developers of Bitcoin came to a parting of ways. When differences could not be reconciled, a portion of the community decided to just go their own direction. They installed an incompatible version of the Bitcoin network code onto their mining platforms and local machines, took a copy of the existing blockchain, and carried on.

This new code was such that it rejected any blocks coming from the old network, and the old network rejected any blocks coming from the new network. As a result, the two immediately went their own way, each blockchain ignoring the other.

The result is that all coins connected to private keys you control were duplicated. One version sat on the old network, and another version sat on the new network. It also meant that spending and receiving money suddenly forked as well, because now transferring money on one chain has no effect on the other chain.

The key here is this: The same private key now unlocks two coins, but those coins are not otherwise linked or connected. Depending which network your wallet/site uses will decide which of those two coins you are handling at a given time.

How do I get BTC or USD from my cold BCH?

If you’ve followed along so far, you probably can anticipate the steps we need to take. I’ll outline them here, then go into detail:

  1. Sweep BTC in cold storage to a new address
  2. Import your Private Keys into a wallet that talks to the BCH network
  3. Transfer your BCH funds to ViaBTC.com
  4. Trade using BTC/BCC exchange
  5. Send the BTC funds to your normal exchange for cash out, or else back to cold storage

Nice and easy.

Step 1: Sweep

In order to access your BCH, you will need to expose the private key corresponding to the coins you wish to claim. The problem is, as noted above, this same private key will also unlock your Bitcoins on the main chain. Exposing your private key is, therefore, a significant security risk. To get around this, you should first move your existing cold Bitcoins to a brand new address with its own Private Key. This will only affect the coins on the Bitcoin network side, but it will ensure that when you expose your private key in the next step on the BCH network, there is no risk of an attacker trying to unlock corresponding BTC coins. If they do try, they will find a zero balance since that version of the coin has been moved.

I do this through blockchain.info, but any wallet software will do. In blockchain.info, go to Settings->Addresses, and under Imported Addresses, click [+] Import Address. Here you will enter the public address of you current paper wallet, the one containing coins you need to move.

Once you’ve added this “watch address,” return to the main interface and choose “SEND.” Use the drop-down next to “My Bitcoin Wallet” to select the address you just added, and in the TO field, enter the NEW paper wallet address you want to use.

This TO address should be brand new, and thus using a private key that is not associated with any of your coins on the BCH network. You will need to expose your private key now, but your risk is reduced by 15x since the coin on the BCH side is worth that much less.

Note: Blockchain.info supports BIP0038 encryption. If your paper wallet private key is encrypted, as mine are, you will be prompted for the encryption password in order to complete the sweep. This is safe to do.

Repeat this for any other paper wallets you control. At the end of this step, all of your coins will belong to NEW private keys on the main blockchain, but on the new BCH blockchain, all of the same keys we just used still control the corresponding coins there.

2. Import your private keys

Now that your Bitcoins are safe, you want to unlock your BitcoinCash still stored at those old paper wallet addresses. For this, you need a wallet software that knows how to connect to the new network. I used this: http://www.electroncash.org/

Launch the software and create a new standard wallet. Once that is setup, you will have an empty wallet that is connected to the BCH network. Now you need to import the private keys you just used on blockchain in order to access the corresponding coins on this side.

If you use BIP0038, ElectronCash does not allow you to import the encrypted private key the way blockchain.info does. An extra step is required!

2.a. Decrypt your BIP0038 Private Key

Navigate to http://bitaddress.org

Move the mouse around until the %’s reach 100%, just so the interface doesn’t screw with you. Once that is done, click on “Wallet Details” on the right.

Paste in your Private Key, and provide the passphrase. Click the Decrypt button, and let it spin, then your unencrypted Private Key will be printed down below. You can copy the WIF compressed format or the standard noncompressed format.

Note: entering your private key into a website is typically a bad idea. Since we already secured our Bitcoins and are about to move our BCH from this key, the procedure is relatively safe. The password is not uploaded to the server, but there is always a risk that the site is hacked and manipulated. If you use this same password on other cold wallets or are otherwise security paranoid, you can disconnect your network once the site is loaded. Everything will run with javascript offline, leaving you free to do what you need to do, then wipe out the session/cookies before reconnecting. Even better, get a USB-bootable Ubuntu and complete this step in an offline virgin OS (as you should have done when you created your paper wallets in the first place!). I didn’t bother since my private keys and BIP0038 passwords would both be garbage after this operation anyway.

2.b. Sweep into ElectronCash

Once you have non-encrypted private keys, open your wallet in ElectronCash and go to Wallet->Private keys->Sweep.

Enter your non-encrypted private key in the text box (or multiple, if applicable, one per line). Do not change the “Address” field — that is your local wallet address and is a safe place to receive the contents of the old paper wallet. Complete the sweep and wait for confirmation, and now your coins are safely moved to new/distinct addresses on BOTH chains.

3. Transfer to ViaBTC

I had a lot of trouble finding an exchange for BCH that would let me do anything as a US citizen. Coinbase does not support BCH, Bitstamp does not support BCH, Kraken does not validate US citizens, BTC.COM does not validate US citizens, etc.

ViaBTC, however, does allow you to complete a simple automated ID verification. It requires your actual name and a driver’s license ID number (or passport), as well as set a few passwords (you’ll need to setup the asset password, for instance). Once that is done, you can immediately use ViaBTC as a go-between from BCH to BTC. Create the free account, complete the validation, then you want to transfer your money into the platform. I recommend doing a small amount initially and stepping through the entire process before you send large quantities of funds.

Once you have an account, go to the Asset->Deposit->BCC section. ViaBTC uses the older ticker symbol BCC to represent BitcoinCash, even though the rest of the community has moved to BCH since BCC was used for another alt coin. In any case, on this page, you will see a recipient address that you can use to transfer your BitcoinCash into the system. Copy that address.

In Electron Cash, go to the “SEND” tab. Paste the address in the “PAY TO” field, leave description blank, and then select an “AMOUNT” to send. When you are ready, hit SEND. You will need to SIGN the transaction and hit BROADCAST.

You can track the progress of the deposit using any blockchain browser for BCH. I prefer Blockdozer since it is most similar to blockchain.info. The address is this format:

http://blockdozer.com/insight/address/xxxVIABTCxADDRESSxHERExxxxx

It takes some time to get confirmations since the hash power on the BCH network is much lower than the main BTC network, so be patient. Wait until you get 20 confirmations since ViaBTC prevents you from withdrawing prior to that anyway (even though they let you trade earlier).

4. Trade BCH to BTC

When you have your confirmations, you can go to the Trading tab and select BCC/BTC. Select your full balance by clicking on the “Available balance: xxxx” label, and hit “Sell BCC”.

In my experience, selling was instant. If you return to the Asset tab, you should now see no BCC, but some lesser amount of BTC depending what exchange rate you received.

5. Withdraw your BTC

Now that you have BTC funds, you can withdraw them to your normal exchange, such as Coinbase, or else send them to your paper wallet. You need to configure a recipient address, which is done from the Asset->Card/Address menu.

Under “BTC Address Settings” heading add a new address:

Provide the address of your paper wallet, or else the recipient address from your exchange. Save this then return to the Asset->Withdraw->BTC tab. Here you can send the funds you traded out to the address you just added above:

And that is it! Be patient — the withdrawal will sit in the “processing” state for a short time, then go to “verified” and sit there for a while… all without broadcasting to the Bitcoin network. But within the hour, it will change to “Sent,” at which time you can track it on the normal blockchain.

And that is it! You just collected your free money.

Except…

Or, maybe you cheated yourself out of a fortune if BCH gains dominance and BTC falls by the wayside. Nobody can predict what might happen. In any case, if you decide not to sell some (or all) of your BCH, you should still sweep it to a new address, just like we did for the BTC.

If you followed steps 1 & 2 above, your BCH should be safely moved to an address in your ElectronCash software wallet, so if you take the proper backup/password precautions, that is a safe place to retain the funds. Otherwise, you can use ElectronCash to send the coins to a new paper wallet, created the same way you would for a normal Bitcoin paper wallet. The process is the same as outlined in the latter half of step 3, but replace ViaBTC’s recipient address with your own.

Hope this helped to demystify some of the confusion around BCH and BTC of late. Happy trading, fellow crypto hodl’er.