Tuesday, April 24, 2018

New Course: Surveying Blockchain Technologies for Enterprise

I’m happy to announce a 1 hour course surveying enterprise blockchain applications and software, now available on pluralsight. It’s paywalled, but you should be able to get a free trial to watch the whole course. 

I introduce just what blockchain is, and cover a broad array of applications (supply chain, healthcare, energy, finance, banking and insurance) and software packages (Hyperledger, Coco, Corda, Quorum, Stratumn, Guardtime and BigChainDb). The goal is to give a high level view of blockchain’s potential, but also a realistic view its challenges.

In the last few months, blockchain has been heralded as an invention on par with the internet itself, an invention that will revolutionize business and the world. On the other extreme, many say blockchains are just distributed databases, no different that the technology Google and Amazon have been running for decades (only slower!). My view is somewhere in between, and I searched long and hard to find tangible examples of its promise and challenges for this course.


Blockchain could bring vast efficiencies to supply chains by bringing an entirely new level of reliability and accessibility to data about a good’s journey. As goods move, each company logs a record using an irrefutable digital signature. That record is stored on not just one company’s server, but every company in the network, thereby making any fraudulent changes impossible to make. As more records from different companies, IoT sensors and inspectors are added, the record becomes more and more trustworthy.

What does that extra trustworthiness provide? Consider packaging on food at the grocery store that claims GMO free, fair trade, etc. How do you know that packaging is telling the truth? Compare that to a serialized record of every step of every ingredient in that package, all stored on a database watched by an entire ecosystem of competitors checking each other for fraud. 

This additional trustworthy data has the potential to remove countless expensive human checks and reconciliations. A store orders 10 apples, but only gets 9, who counted wrong? Perhaps the shipper’s digital signature and a 3rd party-inspected Smart Scale (IoT) at both ends of the journey can provide enough additional data that no phone calls need to be made--a credit is automatically applied, or insurance payment automatically sent. Not only is the reconciliation expense avoided, but an opportunities to automate across “trust barriers” are created (ie, the supplier and store).

Extra data could expose new opportunities and insights, as well. A farmer could post about a truckload of lettuce that will go bad if not sold quickly. A provider of screws could see that a recent uptick in demand is due to a temporary marketing campaign, and not a true increase in demand, thereby avoiding buying extra tooling (See “bullwhip” effect).


But blockchain does not deliver these promises on its own. Companies must agree on standards of data, what software to run, and who should have what access. It would be great for a producer to be able to prove their track record to banks to get a new loan, but that producer doesn’t want to share that same data with competitors.

It seems to be proving hard for companies to show benefits with small tests. Blockchain is not just a faster database that can be swapped in. It likely requires new business models and new ways to interact with other companies. Some of the benefits may only be apparent when a critical mass is achieved.

Regulation will certainly prove challenging, especially with the GDPR now taking effect. How can you delete data from an immutable database? If data is encrypted, perhaps throwing out the encryption key will be sufficient. A substantial amount of effort is going into ways to provide fine-grained, per-transaction level visibility.

On the other hand, it is hoped that blockchain can actually help on the regulatory front. Fredrik Voss, VP of Nasdaq blockchain, proposes giving regulators a node on a network to provide “regulatory goggles” that can have full visibility to the direct data. In this way, banks might avoid having to supply reams of reports that all then must be cross-checked by the regulators.


The blockchain behind Bitcoin shares everything to everyone, is extraordinarily slow, prohibitively expensive, and has no clear rules for how to upgrade its software.

Luckily many different organizations have already spent years creating blockchain software optimized for the enterprise world. I was expecting to create a list of pros and cons for each package surveyed, but I was surprised to find almost all of the software chasing similar goals: performance, nuanced privacy controls, and good governance (who can join, how software is updated). And even better, most of the software is modular and configurable. For instance, in Hyperledger, you can swap out different consensus algorithms, but still use the rest of the stack that handles the basic communication, membership rules, Smart Contracting systems, etc. 

The consensus algorithm is the core of a blockchain, the part that truly gives it shared and decentralized control over the data. It’s where the group agrees on and locks in the data. In a stock market, if 5 people all submit a buy request at once, which one should get the stock? The system needs to reach consensus on this.

The choice of consensus algorithm is vital because it generally has a major impact on performance. It takes a lot more communication and time for 1000 computers to agree on something than 5. Hyperledger actually comes with several different choices that let you make the best tradeoff for your application. For instance, 1000 community banks might all want to check every transaction, but companies in a stock trading platform might be willing to delegate some of that control for added performance. A stock trading platform might have 100 members, but only 5 of which are designated as “validators” among who consensus must be reached. 

I do want to point out one software package that I hadn’t yet researched when the course went live: Hashgraph. It promises a superior combination of decentralization and performance over any of the other algorithms I’m aware of. On the downside, it is very new, and patented. For companies already invested in Hyperledger, it looks like it could be plugged into the consensus layer.

Private Blockchains vs Public Networks & Tokens

At the end of the course, I provide some commentary on public vs private networks and digital currency. Many believe private blockchains are just slow distributed databases, and without a public network and digital currency, they offer nothing new to the world. I do think there is merit in a private blockchain run between 5 banks. No one bank would want to trust the others to control the keys to the castle, and I suspect the days it takes to send money between banks is at least partly due to a lack of trust. But any small network should think long about whether the expense and complication of blockchain is really necessary. Our existing legal system may be good enough to prevent fraud.

As the application grows, eg, global supply chains, the case for public networks seems stronger and stronger. Would I trust a record stored on a network of 5 big shipping company computers or the Ethereum network’s thousands of machines spread all over the world? Just as with IntrAnets of old, I suspect the better connectedness, openness and innovation of public networks will eventually outpace private blockchains.

And on tokens, many early enterprise blockchain software projects bragged about not having any cryptocurrencies. But tokens aren’t just about non-governmental money. They provide an important incentive layer to the networks, helping to pay for computation and network resources. They’re also an easily programmable and transferrable form of value. Besides, enterprises already use tokens, they’re just called points, stars and airline miles.

I hope the course provides a fast and balanced introduction to the rapidly evolving world of blockchains decentralized networks… (Hashgraph and other structures aren’t really blockchains, I suppose :) )

Wednesday, June 22, 2016

New Course: Introduction to Bitcoin, Blockchain and Decentralized Technology

I'm very excited to announce the release of a new course on Bitcoin, blockchain and decentralized projects like Ethereum. The Bitcoin world is evolving at a breakneck pace, so I hope this 3.5 hour course will provide one of the fastest ways possible to get up speed.

The course is mostly targeted at developers, but I try to stay at the concept level for the most part and hope it will be insightful for people that just want to learn more in general about blockchain technology and its potential applications. There are tons of demos, including basics like buying online with a mobile phone, buying Bitcoin at an exchange, and storing Bitcoin in a hardware wallet (Trezor), to advanced, including sending transactions programmatically in JavaScript, and creating a Smart Contract on Ethereum.

Note: Pluralsight is paywalled, but you can get a free trial to watch 200 minutes of this 210 minute course.

Full course outline:

Module 1: Bitcoin Concepts and Basic Use
  • Demo: buying a digital video online
  • What gives Bitcoin value?
  • Big Ideas: openness, privacy, decentralized, cryptocurrency, programmable
  • Basic structure: a collectively maintained ledger
  • Transactions: how money is sent in Bitcoin
  • Smart Contract example: crowdfunding
  • Getting Bitcoin: exchange, ATM, in person, pros / cons
  • Demo: buying Bitcoin on an exchange
  • Wallets: How to store and use Bitcoin, mobile, online, hardware, paper, cold storage
  • Demo: using a hardware wallet
  • Bitcoin mining
  • Demo: accepting Bitcoin on a website with BitPay

Module 2: How Bitcoin Works Under the Hood
  • Bitcoin software universe: from wallets and libraries to full nodes
  • Demo: Installing Bitcore, javascript Bitcoin library, create Bitcoin address
  • Digital Signatures,
  • Bitcoin addresses
  • Transaction structure, UTXOs, scripts
  • Demo: creating and sending a transaction on testnet with Bitcore
  • Ledger consensus (voting) & security
  • Cryptographic hashes
  • The blockchain: structure that holds transactions
  • Coin creation, double spend attacks
  • SPV (Simplified Payment Verification) Wallets

Module 3: Advanced Bitcoin
  • HD (Hierarchical Deterministic) Wallets
  • Mnemonic codes (human friendly private key storage)
  • Demo: derive Bitcoin HD addresses securely on public server without private keys using Bitcore
  • Multisignature Addresses for shared wallets & backup
  • Low trust escrow with multisignature addresses
  • Bitcoin challenges: centralization due to mining & software control, blocksize debate
  • Soft vs Hard Forks (software upgrade procedures)
  • Segregated Witnesses
  • Payment Channels & Lightning Networks (secure, off-chain transactions)
  • Check Lock Time Verify (time-based script logic)
  • Replace by Fee (update stuck transactions)
  • Payment Protocol (secure payment address delivery)
  • CoinJoin (mixing transactions for privacy)

Module 4: Beyond Bitcoin

  • Altcoins, metacoins, colored coins & side chains
  • Comparison metrics
  • Byzantine General’s problem
  • Proof-of-Work Consensus Alternatives (Primecoin, Foldingcoin)
  • Proof-of-Stake (Peercoin, NXT, future Ethereum, Bitshares delegated Proof-of-Stake)
  • Permissioned / Private blockchains for banking, enterprise (distributed database or something more? Multichain, R3)
  • Seeking high performance blockchains (Tendermint, Ripple, BigChainDB)
  • Privacy procotols & projects - why needed? (Monero, Ring Signatures, Stealth Addresses)
  • Zero Knowledge Proofs & Zerocash
  • Stability coins: Digix, Tether, BitUSD, Nubits, MakerDAO
  • Ethereum - Open, Decentralized Computer for Smart Contracts
  • Demo: create and use Smart Contract (create your own token) on Ethereum
  • Prediction Markets & Augur
  • IoT (Internet of Things) and DAOs (Decentralized Autonomous Organizations), with Slock.it
  • Decentralized Storage with Storj & IPFS (Interplanatary File System)
  • Decentralized Identity and Reputation (Namecoin, Identify & Onename)

Saturday, September 6, 2014

The Essence of How Bitcoin Works (Non-technical)

A less-technical introduction to the main ideas behind how Bitcoin works, including how money is transferred, who keeps track of it, and how everything is secured. This is the written version of the following video:

If, instead of how it works, you're looking for where to buy Bitcoin, I use coinbase. And for trading, check out bitcoin wealth alliance (both affiliate links).

The goal of this video is to explain the essence of how Bitcoin works without any jargon or scary math. It is not, however, an introduction to what Bitcoin is or why it matters, for that, check out the great intro video at bitcoin.org. So, on to how it works!

Bitcoin lets people exchange money electronically as easily as sending an email or text. To send money, you use what’s called a “Wallet” app to type in an amount, enter or scan a recipient’s account number, and hit ”Send”. The recipient will then see the money pop up in their account. 

So how does it work? At a basic level Bitcoin is just a ledger with account numbers and balances. When Bob sends Carol 5 Bitcoins, his balance goes down by 5, and Carol’s goes up by 5. There’s no gold or government-issued money backing these numbers, just people’s belief that the numbers are worth something, and a system that prevents unfair changes.

Account Security

Part of this system makes sure that no one can spend money from someone else’s account.  Every time you hit “Send”, your Wallet app sends a message to the Bitcoin network describing how the ledger should change, including the sender’s and recipient’s account numbers and the amount to transfer. So what’s to prevent a thief from creating a message transferring money from someone else’s account?

Bitcoin requires a kind of signature on each message to prove that it was created by the true account owner. The signature serves the same purpose as a handwritten signature on a paper check, but it’s based on math rather than handwriting.

The math comes from the world of cryptography, which is normally used to hide secret messages, but in Bitcoin, has been re-purposed to prove ownership. Each Bitcoin account number has an associated key that only the true account owner knows, and is used to create signatures by encrypting transaction messages. Others test the signature by trying to decrypt it. If successful, they know the signature was created by the true account owner.

In addition to not relying on handwriting analysis, these math-based signatures also can’t be copied and reused on other transactions, since the signatures are unique to each transaction.

Maintaining the Ledger

So these signatures keep unauthorized transactions from changing the ledger, but who exactly is checking the signatures, and overall, maintaining the ledger? Surprisingly, anyone who wants to!

One of the main goals of Bitcoin is to provide a decentralized system, meaning no single company or government can control it. Every time someone sends money, a transaction message is passed around to all the people who want to help maintain the ledger, who I’ll call “maintainers.” Each maintainer keeps a personal copy of the ledger and updates it whenever they receive a new transaction with a valid signature.

With ledgers spread all over the world, traffic delays--and occasionally fraud--can lead to differences in those ledgers.  So how does the world decide which version to use?

Like in other democratic systems, there’s a vote, but it’s a bit different than a typical ballot system. Maintainers “vote” by trying to solve a special puzzle based on their version of the ledger. The first person to solve a puzzle announces their solution and everyone updates to that version. 
So the vote turns out to be a kind of mathematical race, but it’s designed to favor the majority’s version. This is because the more people there are working on a particular version, the faster it will be solved.

Because new transactions are constantly being generated, this voting process repeats over and over again so maintainers can continually agree about new transactions.

Voting in a Decentralized System

So why math problems instead of, say, emailing in votes to decide on a ledger? Without a central authority to register voters, it would be hard to enforce one vote per person--a single person could create multiple accounts to vote more than once, or even millions of times.  The math problems prevent this by making each vote have a cost in computers and electricity.  This means out-voting, or out-solving the majority to take over the ledger would effectively require out-spending the majority--an unlikely event.

So the math enables a fair vote in a decentralized system. Two more important details about how it does this:

To prevent someone from pre-solving a puzzle to win the race, each puzzle builds on previous answers, and the winner is not just the most recent solution, but the ledger version with the most total solutions.

The puzzles are also extraordinarily special in that there are no tricks to solving them faster, other than by buying more computers and electricity. It’s this property that underlies the entire system, and gives people assurance that solutions are truly from the majority, and not a clever attacker.

Creating Money

A final note about how money is created. Every time a puzzle is solved, a small award is added to the solver’s balance, effectively creating money “out of thin air.” This award acts as an incentive for people to help maintain the ledger, and is in addition to small fees senders attach to transactions. 

Because maintainers acquire newly created money through computation, they are typically called “miners,” but their main purpose is really to manage the ledger, not to create money.  The voting system simply provides a convenient way to randomly distribute money into the world, and in fact, after 2140 no more money will be created.


In summary, Bitcoin is an electronic currency that’s based on a collaboratively maintained ledger. People transfer money by sending messages to maintainers describing where and how much money should move.  Maintainers make sure that the messages are from the true account owners by checking digital signatures. And finally, the maintainers reach consensus with each other through a math-based voting process. 

I hope this gives you a quick sense for how Bitcoin works. If you’d like to dive deeper into the rabbit hole, check out my 22-minute video: How Bitcoin Works under the Hood.

Monday, June 16, 2014

Google Glass Review: Technically Underwhelming, Socially Misjudged

At my day job I write Augmented Reality apps for industrial applications, and we recently got the chance to develop for Google Glass, both an Augmented Reality application and heads-up guide for a factory worker assembling an industrial pump. To the horror of my fiancé, I also braved the real world for a week wearing Glass on my face, to the grocery store, running, meetup groups, and at home.

Overall, I thought the technology was underwhelming, especially compared to the hype in the media and Google's advertising. The screen is small, the battery is terrible, the processor is barely fast enough to do anything on the Augmented Reality front. I fully expected it to directly connect my brain to the Google-plex, and turn me into some sort of man-machine hybrid that never forgot a face, with the entirety of wikipedia ready to drop in on any conversation.

What I got was a gadget that showed me text messages and let me take pictures without me having to fish out my phone--which is actually pretty great, but not change-the-world-worthy.

(not mention most of the demo videos are fake--there's no way to capture the screen display at a decent frame rate, and definitely not the display and camera at the same time, so be wary!)

I think people (myself included) are misjudging Glass, comparing it against some imagined set of capabilities, and maybe giving it a little too much credit--and fear--than it deserves. Glass is not innovative because it puts a screen on your face. That's been done for 30+ years in industry, military and academia.

Sunday, June 8, 2014

Haggling in America: 4 Things I Never Thought were Negotiable + Haggling Tips

For some reason Americans don't haggle or negotiate over price--you either pay the listed price or you don't buy it. Except at maybe garage sales or car delearships, but even there we hate it. The recently released Edmonds Survey of 1002 car buyers shows this:

"One in five Americans (21%) would rather say sayonara to sex for a month than haggle over the price of a car; 44 percent would give up Facebook for one month and 29 percent would turn over their Smartphone for a weekend if it meant avoiding the haggle" 

Somehow haggling has gotten a bad rap in American culture: it feels slimy, dishonest, price-gougey--just sell me the car for a fair price rather than marking it up $4k and making the sale into this time-consuming game of counter-offers. We get emotional about it. When I offer half for whatever the sticker price says at a garage sale (my standard rule), people get insulted:

"$4 is a VERY FAIR price for this chair, and you want me to give it to you for $2!? This was $199 when I bought it!"

Despite all this cultural disdain, I've discovered you can negotiate for a surprising amount of things in America, you can save a bunch of a money, and it's not hard (but maybe a little bit unsettling at first).

Here are a few of my tales about how I discovered this, followed by some tips. Note: I'm not claiming to be some master negotiator, but I think just by making the smallest effort you can reap huge savings.

Monday, April 28, 2014

DIY Air Freshener: Cut Up Christmas Tree Branches

The closets and cupboards that we don't open very often were acquiring some nasty dank and stale smells over time. Rather than buying an air freshener, we found out that cut up Christmas Tree branches worked pretty well as DIY air fresheners. It's been about 4 months and the closets still smell pine-fresh. Take that Glade!

XMas Tree Timmings make a great DIY Air Freshener
We cut up an entire mini-tree into several tubs of branches and put them in the closets and cabinets that don't get opened very much.

Sunday, April 13, 2014

How Bitcoin Works in 5 Minutes

This is a shorter version of my original "How Bitcoin Works Under the Hood" 22 minute video, and it's also geared more towards non-programmers.


If, instead of how it works, you're looking for where to buy Bitcoin, I use coinbase. And for trading, check out bitcoin wealth alliance (both affiliate links).


At a very basic level, Bitcoin is just a digital file or ledger that contains names and balances, and people exchange money by changing this file. When Bob sells Carol a lawn mower for 5.2 Bitcoins, Bob’s balance goes up by 5.2, and Carol’s down by 5.2. There’s no gold or government issued money backing these numbers. Bob is only willing to trade his real-life lawn mower for a higher number in this digital file because he has faith that other people will also trust the system.

So who maintains this ledger and makes sure no one cheats? One goal of Bitcoin is to avoid any centralized control, so every participant maintains their own copy of the ledger. One surprising consequence of this is that everyone can see everyone else’s balances, although the real system only uses account numbers and not names, so there’s some level of anonymity.

If everyone maintains their own ledger, how are all the ledgers kept in sync as money is transferred? At a basic level, when you want to send money, you simply tell everyone else by broadcasting a message with your account number, the receiver’s, and the amount. Everyone across the entire world then updates their ledger.

As a quick aside,  I’m describing how Bitcoin works for power users--people who help maintain the system. You can also just use the system to send a receive money, however, without maintaining a ledger.

Account Security

If sending money is as simple as creating a message with some account numbers, what’s to stop a thief, Alice, from spending Bob’s money by using his account number?  Like a pen and paper check, Bitcoin requires a kind of signature to prove that the sender is the real owner of an account, but it’s based on math rather than handwriting.

Sunday, March 16, 2014

How I Moderate Discussions about Controversial Topics in Large Groups

I run a meetup group called Controversial Topic Discussion Club in Atlanta. Complete strangers from college age to retired come together regularly to discuss topics like gun control, abortion, drug legalization, charter schools, religion, and many more. The group size ranges from 8 to 40. Having run over 50 events over 5 years, and watching several others help moderate events, I wanted to share my learnings about moderating discussions to keep them respectful, fair and moving.

Before getting into the details, I want to clarify that the goal of our discussions may be different than the goal of moderating a business meeting, where you might be trying to reach a decision. Our group is more focused on learning rather than reaching any consensus, or changing anyone's mind. We're also more interested in just having a good time rather than detailing out the next health care bill, so I would rather let an interesting conversation meander rather than keep it laser focused.


Before each meeting, I prepare a list of sub-topics, questions or interesting facts that I can use to re-start conversations. For example, on our Obamacare event, here are some of my sub-topics and questions:

Monday, December 9, 2013

Different Ways of Life: Polyamory, Traffic Laws, Japanese Address Formats

We all have ways of life that we assume are somehow the "right way," or are somehow optimal. And then you talk to someone that does things completely differently--and it works--and you find out about a whole set of assumptions you've been carrying around that are suddenly suspect.

The meetup group I help organize, Controversial Topic Discussion Club, had someone come in to talk about polyamory. Copying from the wiki entry:
Polyamory is the practice, desire, or acceptance of having more than one intimate relationship at a time with the knowledge and consent of everyone involved. It is distinct from swinging(which emphasizes sex with others as merely recreational) and may or may not include polysexuality (attraction towards multiple gendersand/or sexes).[2][3][4]Polyamory, often abbreviated as poly, is often described as "consensual, ethical, and responsible non-monogamy.
It's one of those ideas that's so foreign to how I was brought up, so different from the monogamous 2-person relationship society tells us is right, that I never even considered it to be anything other than unnatural and bizarre. Until I met several very normal sounding people the other night that are in relationships with 3 or 4 people at once (or more), all of which are perfectly content with the situation, and have been for years (and raising kids!).

I first imagined that everyone would somehow love each other equally, and have sex in multi-way orgies, but this is an outsider's ignorant assumption. The relationships are not always equal--one person may be dating someone outside the core family that's not involved with anyone else in the family. And some members may not have sex with others. Being poly apparently doesn't mean you're bisexual, gay or anything. It only means you're not monogamous, and that there's long-term commitment to the other partners ("swinging" is different in that it's more focused on sex than relationships). I'm certainly not anyone you should listen to to get a definition, but I think it might include a married couple where it's ok to date other people.

The speaker made a point to differentiate between the consensual open relationships he and his family have, and cheating. I believe he said cheating is when the other partner(s) don't approve, or when someone is doing something without telling others. Everyone in a poly relationship is ok with everyone else's relationships. He said jealousy is an issue, but it's an issue in any relationship, and you have to talk things out. He was ok that his wife could build relationships with other people, and is happy she's doing something that makes her happy.

As weird as all this sounds, the more I think about it, the more it seems like a more honest and open form of what are probably very common situations. For example, dating multiple people at once. Or being married, and having an affair. Is it really natural to expect two people to be madly in love with each other--and sexually interested in each other--for over 50 years? The divorce rate may say something about this. (note: I couldn't find any hard evidence that more than 50% of marriages end in divorce, it's probably more in the 30% range).

But what about the children? How could a child grow up in a family with 3 daddies and 4 mommies and boyfriends and girlfriends coming in and out of the picture? For me personally, any sort of gay or poly arrangement is probably better than a single mom. In fact, in a poly family, you have even more adult supervision and mentoring than in a typical mom and dad family. Maybe it could be a replacement for the aunts, uncles and grandparents that used to live in the same house.

What about taxes, survivor benefits, and hospital visitation rights? The speaker was somewhat annoyed that his family didn't get the same benefits as monogamous marriages in terms of insurance coverage, taxes, and other legal stuff. But, as someone who's been single (not married) his whole life, I don't understand why married people get any benefits. 44.1% of the population is single, and it's about to become the majority of people.

"It's just not natural. We won't be able to sustain the human race if everyone's in gay or weird poly relationships." I don't have a lot of evidence to refute this, but I have heard that our idea of monogamous marriage is perhaps evolutionarily new, and that tribes used to have much looser structures. If we look to the animal world, both male and female chimpanzees have sex with multiple partners, so I don't know if you easily say man-woman monogamous are biologically right.

In some cases, there just aren't enough members of the opposite sex to go around, like in engineering or public health school, or China, where their one child policy and a cultural preference for boys has resulted in 9 million more men than women. One final thing that doesn't seem natural is when parents pick their children's' spouses in arranged marriages, which this site claims occurs in 55% of marriages in the world!

I was originally just going to write about Polyamory, but I thought I'd throw in a few other ideas that have shaken up my worldview.

Traffic light in Israel
Traffic Laws
Starting small, in Israel (and many other countries), when the traffic light is about to turn from Red to Green, the Yellow light comes on for a few seconds at the same time as the Red, to indicate it's about to go Green. This lets you get your manual transmission going, and also keeps you from having to come to a complete stop if you're approaching the light.

Japanese Address Formats
Continuing on traffic related ideas, there's a great 2 minute TED talk, Weird, or Just Different?, in which the speaker describes Japanese addresses. Apparently there are no street names, just block names, and houses are not numbered in order, but rather in the order that they were added to the block. I have no idea how you would find the right house having never been to the block, but maybe that formatting system has other advantages.

Doctors Paid to Keep you Healthy
The same talk also mentions Chinese doctors that get paid more when they keep people healthy, rather than only getting paid when they get sick.

Nude Beaches
I was walking along a beach in Spain on a trip, and suddenly realized I had ventured into the clothes optional section of the beach. It wasn't just old naked men (although they were out in force), whole families were also there. This wasn't too long after the "wardrobe malfunction" super bowl episode in the US, where the whole country was up in arms about a potentially exposed nipple--one that children may have seen. Here in Spain I was looking at whole families with nipples in every direction, and no one's eyes were falling out. I'm not the first person to point out how it's strange that the US is more afraid of nipples than extreme violence on primetime TV.

I wonder how many other "ways of life" there are that I've never stopped to challenge...

Monday, October 14, 2013

Is the Republican Party due for a dramatic platform shift?

I know very few people that claim to vote Republican or Democratic tickets, since they sharply disagree with some parts of each party's platform. For example, lots of people are fiscally conservative, but socially liberal, so they don't fit well within either party's platform. I wonder if one of the next elections will be a realigning election, where the platform of one or both of the parties shifts dramatically, or lots of voters switch sides.

There's more than my anecdotal evidence to support a coming shift--look at the trend of people turning independent since 2008:

Source: Gallop Polls
If we look at the numbers to 2013 October, the trend continues, with a record 47% of people identifying themselves as independent, and only 20% as Republican.

What's driving this shift, and what will the new coalitions look like?

Wednesday, October 2, 2013

How Much YouTube Paid me for 4 Million Views, Alternate Ways to Earn Money from Videos

$5,675.51 for 4,054,755 views over 6 years

I'm writing this to share my experience with others wanting to make money off YouTube, and hopefully get some advice. At least for my videos, a minimum wage job would have been a higher paid use of my time, but as people continue to watch old videos, the ROI will continue to increase, so it may eventually pay off.

My CuriousInventor youtube channel mostly has videos on electronics soldering, but also a bit of head phone wrapping and recently Bitcoin.

Some caveats
YouTube didn't used to pay people, and not all my videos are monetized (most are), and I didn't have monetization turned on for all the time. My first revenue came around June 2009, at which point I already had 1.5M views. So a rough lower bound on my total CPM ($ / 1k views) is $5,675 / 3.5 = $1.62 CPM.

If you look at the past 30 days (September 2013), I got 70k views (a typical month is 50k) and $264, or $3.77 CPM.

You're probably better off getting paid taking online surveys than making youtube vids...

Thursday, September 5, 2013

Comparison of Augmented Reality Glasses, Google Glass, Meta, castAR

Google Glass got a lot of media attention recently, but there are a lot better things around the corner that should hit consumer shelves within 2-3 years. I’ve been developing Augmented Reality apps for manufacturing companies at my day job, and wanted to share some of the neat things I see coming, as well as discuss the few remaining hurdles holding them back.

Cruise uses hand motions to flip through video.
In the very near future, I believe glasses that enable futuristic interfaces straight out of the movies will be on Best Buy shelves. The glasses will overlay information in real-time Terminator style, and you’ll be able to interact with it by grabbing and flicking information like in Minority report or Iron Man. (btw, if you think people on bluetooth headsets talking to themselves look crazy, imagine someone waving their hands around interacting with imaginary objects).

Terminator vision overlays information in real time.

Google Glass: a small Heads Up Display + Camera

You might think this type of thing is already provided by Google Glass, but Glass is an extremely limited form of augmented reality. It only provides a small rectangle in your field of view (a HUD, or “Heads Up Display”).

Sunday, July 14, 2013

How Bitcoin Works Under the Hood

new 3.5 in-depth course: Introduction to Bitcoin, Blockchain and Decentralized projects (Ethereum).

The goal of this video is to explain how Bitcoin works under the hood, to give a clearer idea of what it really means to own, send or “mine” Bitcoins.

New: Turkish translation by bitkoyun.com now available.

If, instead of how it works, you're looking for where to buy Bitcoin, I use coinbase. And for trading, check out bitcoin wealth alliance (both affiliate links).

What is Bitcoin at a high level?

First, a brief high-level overview of what Bitcoin is.

At its core, Bitcoin is just a digital file that lists accounts and money like a ledger. A copy of this file is maintained on every computer in the Bitcoin network. (update: you don't have to maintain a ledger just to use Bitcoin to send and receive money, this is for people who want to help maintain the system).

These numbers don’t represent anything in the physical world, they only have value because people are willing to trade real goods and services for a higher number next to their account, and believe that others will do the same. The numbers only have value because we believe they have value, just like any other fiat currency.

To send money, you broadcast to the network that the amount on your account should go down, and the amount on a receiver’s account up. Nodes, or computers, in the Bitcoin network apply that transaction to their copy of the ledger, and then pass on the transaction to other nodes. This, with some math-based security, is really all there is--a system that lets a group of computers maintain a ledger.

While this may sound similar to the way a bank maintains a ledger, the fact that the ledger is maintained by a group rather than a single entity introduces a number of important differences. For one, unlike at a bank where you only know about your own transactions, in Bitcoin, everyone knows about everyone else’s transactions.

Also, while you can trust your bank, or can at least sue it if something goes wrong, in Bitcoin, you’re dealing with anonymous strangers, so you shouldn’t trust anyone. The Bitcoin system is amazingly designed so that no trust is needed--special mathematical functions protect every aspect of the system.

The rest of this entry will explain in detail how Bitcoin allows such a group of strangers to manage each other’s financial transactions.