Critical Section


Sunday,  06/28/15  12:10 PM

I love it

I've been reading a lot about space lately - Ashlee Vance's Elon Musk biography, which is excellent, by the way, a must-read for all of you (!), and Robert Zubrin's The Case for Mars, also excellent, despite having first been written in 1996 and updated in 2011, both following on Andy Weir's wondeful The Martian - and I'm struck by the moving timeline between Science (what we know how to do today) and Science Fiction (what we wish we could do tomorrow).



Friday,  06/26/15  12:30 PM

Spent yesterday coding and the evening sailing (on my rejuvenated C-15).  What could be better?  In the meantime:

ancient hourglassesAt part of my Bitcoin investigations, I've been perusing the writings of Nick Szabo, inventor of Smart Contracts.  (In case you're interested, I've translated his IEEE presentation on this subject from WordPerfect Presentations (!) into PDF...)  Among other things, Nick is rumored to *be* Satoshi Nakamoto.  

Nick has a blog called Unenumerated, and comments on a very underrated invention.  (Hourglasses)  For a longer treatment of the same subject, see A Measure of Sacrifice, in which the measure of time is seen to be important as a measure of investment and created value.

congressional cooperationThis is pretty depressing; 62 years of congressional cooperation in a single GIF. The red and blue dots represent congresspeople, and the lines indicate "cooperation", as measured by voting the same way on pending legislation.

It is interesting to speculate, what has caused this decrease in cooperation?  There are no doubt many reasons, but I suspect mass media is the biggest factor.  Politicians on both sides have been polarized...

Apropos: John Hindraker on Politics in the Era of Symbolic Liberalism.  John posts from a right-wing stance, but it can equally be argued from the other side.  Appearances have become far more important than actions.

Also apropos (or at least, related), James Lileks: The only reason Apple pulled Civil War apps from the store was fear of the Internet.  That is to say, fear of appearances.  "The loud people may complain. The company would have to explain. An explanation would be seen as a justification."

Note: they have not yet pulled WWII apps, despite the undoubted symbols of hatrid (swasticas etc) present...

Philip Greenspun considers Apple Music: A good reminder not to listen to computer scientists.  "Certainly nobody predicted that a company such as Apple would be able to take 30 percent of the recording industry’s revenue because the record companies were incapable of setting up their own servers."  How interesting, right?

remove cat before flight :)To more fun matters ... Have you see this?  Remove cat before flight.  I love it!  (Such a classic cat move, right?:)

Brad Feld wonders Why isn't PGP built into Gmail?  Yeah, good point.  In fact, why isn't PGP standard everywhere?  I've been having a discussion with friends which *might* lead to IP, and we're having it on Slack instead of email, to keep it private. 

Jeffrey Zeldman: Deep Tweets No 613664902180413440.  "Usability testing doesn't reveal problems in your product so much as it uncovers arrogance in your thinking."  Indeed.


landing rockets

Thursday,  06/25/15  10:59 PM

From SpaceX: the Why and How of Landing Rockets.  Seriously cool, both the content and the fact that this company chooses to share this kind of information about what they are doing, and why.  The article includes this amazing video of their last attempt, which was -> <- this close to being successful:

(please click to play video)

Their next attempt is on Sunday, as part of an ISS resupply mission; I'll be watching live and rooting for them!


Monday,  06/22/15  09:23 PM

Working away on several fronts... and blogging...

Escher: Drawing Hands aka C compilerLove this drawing by Escher, "Drawing Hands", aka the C Compiler.  One of my very favorites from one of my very favorites.  (Found via the Flight feature, in this post from 2003, regarding a Google Doodle which celebrated Escher's birthday...)

Hunter Thompson, on Finding your Purpose.  I think this is legit, but even if it isn't, it's great.

Scott "Dilbert" Adams: the famous quote I never said.  In which the distinction is made between Art and Design.

Digital GoldInteresting book review on Ars Technica: Digital Gold (how Silicon Valley and Wall Street arrived at a new gold rush called Bitcoin).  I'm super intrigued by Bitcoin.  {Thanks for the feedback on Bitcoin 101, and stay tuned for Bitcoin 102 :) }

Apropos Bitcoin: A space lawyer explains how we'll forge a civil society off Earth.  There will be blockchain.

Google confirms acquisition of Agawi, with technology for streaming native mobile apps.  I think this just makes all kinds of sense, the "find in App store and then download" model is so broken.  Mobile needs a "click address and run" model just like web pages.

Route 50: America's Loneliest RoadRoute 50: Driving America's 'Loneliest Road'.  "There are no points of interest. We don’t recommend it...  We warn all motorists not to drive there, unless they’re confident of their survival skills."  Sounds compelling, somehow.

Could not agree more with Glenn Reynolds, who links Facebook tries yet again to un-screw-up the News Feed, and comments "why not roll it back to the way it was in 2009?"  *Everyone* I know just wants to see all the posts from all their friends, in chronological order.

Snoop Dogg for Twitter CEO?Snoop Dogg for CEO of Twitter.  Click through, it's not such a terrible idea.  "The most important decision I’ve made in business? The choices of people I have around me."  Well, yeah.

The new, new economy is a little weird: AirBnB is now worth more than Marriott.  I get the value of services like Uber and AirBnB that connect consumers to people with excess capacity, but the service itself doesn't seem like it would be as valuable as the capacity.  This feels frothy...

Munich courtyard stairsFrom Inhabitat: Unique and Spectacular Staircases.  They are both!  Yay.  (So, Scott Adams, are these Art or Design? :)



Galapagos: island animals

Thursday,  06/18/15  10:58 PM

A beautiful advertising campaign for the islands of Galapagos, from Ecuador, showing the islands imagined as large animals.

I already had the Galapagos on my bucket list, this might bump the position up a little :)



Wednesday,  06/17/15  08:25 PM

The Ole filter makes a pass...

So, apparently the Warriers have captured the NBA title.  And I have apparently successfully avoided the entire basketball season, college and pro.  Not sure why that happened, but I'm not sorry.  Huh.

NASA: we're headed for Europa!NASA says we're headed for Jupiter's moon Europa.  Excellent, a fine choice.  Next stop after that can be Titan :)

Canada, tomorrow's superpower.  Hmmm, feels like that needs a question mark.  They definitely have natural resources, good government, and a good culture.  But what about the financial resources to defend themselves?  Seems like geography is helpful, but so is their big brother to the South...

Facebook Moments AppMoments, a new Facebook App for privately sharing photos.  Fascinating idea, can't wait to try it.  I've often thought this would be useful...

This is just beyond weird: Invitation to a microaggression.  "The University of California, headed now by former Department of Homeland Security Secretary Janet Napolitano, has gone insane with political correctness.  The confirmation comes via its new 'faculty training guide,' which has conveniently listed some microaggressions to be avoided in the classroom, including: 'I believe the most qualified person should get the job.'"  This pendulum has most definitely swung too far to the left.

in defense of FarenheitI love this: in defense of Farenheit.

massive excavator assembles hotdogYou must watch this: massive excavator assembles hot dog.  Somehow, this is an ad for gas station hot dogs, not how damn good of a job that excavator is doing.


the amphibious folding planeFinally!  The FDA says you can have your amphibious folding plane.  To infinity, and beyond!


two kinds of people

Wednesday,  06/17/15  08:19 PM

I love this blog: 2 kinds of people*.  Subscribed!

Here are some excellent examples:





* I'm tempted to note, there are 10 kinds of people, those who understand binary, and those who don't ... but I won't.


VS 2013: we can all agree on ugly

Tuesday,  06/16/15  11:20 AM

Visual Studio icon evolutionI just installed Microsoft Visual Studio 2013.  Man, is it ugly.

Beauty is in the eye of the beholder,
but we can all agree on ugly

This "flat" trend in computer user interfaces where we have primary colors, no shading, no affordances, no visual features of any kind has to have bottomed out now, right?  Hopefully the pendulum will swing back and we can have pretty user interfaces that are easier to use again.

I have been messing around with Bitcoin, as you know, and decided it would be "fun" to build a full Bitcoin node from scratch.  The latest version for Windows, as checked into Github, uses VS2013, so I figured why not install it.  (My everyday version of Visual Studio is 2010.)  So I did.  And so I hate the way it looks.

Here's VS 2013, in all its flat glory:

Visual Studio 2013

For comparison, here's Visual Studio 2010, open on the same project:

Visual Studio 2010

See what I mean?  There is shading, the buttons look like buttons, the scrollbars look like sliders, etc.  VS2010 was not only better looking, but easier to use.  For further comparison, here's my previous go-to version, good old VS2005:

Visual Studio 2005

I will say that VS2008 was an improvement over VS2005, but only by a little.  (I did like the window interface of VS2005 better than the tabbed interface of VS2008, but that's another story.)  And going even further back, here's Visual Basic 6, part of the version of Visual Studio which was released in 2000:

Visual Basic 6 (2000)

Yep, that fifteen-year-old user interface is better looking than VS2013.  Blech.

Even the VS2013 icon is ugly!  Check out the icon evolution at the top of this post.  I'm surprised they didn't just use a purple rectangle, but maybe that will come in VS2015.



Monday,  06/15/15  11:57 PM

It's the Water, under reconstruction...A great day, as me and my good friend Mark performed "geriatric surgery" to extend the life of my 36-year old racing sailboat... and meanwhile, let's see what else is going on:

This is so real (and actually kind of funny): Jerry Seinfeld and the Progressive Comedy Pause.  "Tell a joke to a liberal. Between your punchline and his laughter, there is a Progressive Comedy Pause. In this second or two, the liberal will process the joke to make sure he is allowed to laugh..."  Hehe :) 

Consider who turned the crazy machine up to 11?

Although perhaps not that funny, because: liberals are the most easily offended and the least tolerant.

Consider this cartoon; I think it's funny, but perhaps a Progressive would have to think about it for a while to decide whether they're allowed to laugh.  Go ahead, you know you want to...

O'Reilly: Consensual Reality.  "We're on the cusp of an era in which each of us perceives the world around us differently because of technology."  Yep, and Visual Search is going to be a big part of it.

9to5 Mac wonders Will the launch of Apple Music mark the beginning of the end for Spotify?  Hmmm...  well you already know what I think.

drone flyover of the Tesla GigafactoryThis is way cool: Tesla-approved drone flyover of the Gigafactory.  Wow.

Paul Ford: What is Code?  A delightful rumination that manages to hit a bunch of nails on the head.  Read it when you have a few minutes to ponder.

Why 82,000 is an extraordinary number.  A little nerdy, but who doesn't love numerology?

Good news from Apple: webkit content blockers.  Aka, we'll finally be able to have "Adblock for IOS".  If you ever surf on an iPad you immediately discover your desktop Adblock protects you from a whole world of crap.

the better selfie stick!And finally, a better kind of selfie stick.  I love it!


the canals of LA

Monday,  06/15/15  11:47 PM

Did you know Los Angeles used to have a bunch of canals?  Check it out: The Lost Canals of Venice of America.  Most of that area is now Marina Del Rey...

Amazing ... who knew?



flag day

Sunday,  06/14/15  11:01 PM

match raceToday was Flag Day, did you celebrate?  I did, by putting up a flag on our garage ... and then going sailing; ended up in a great match race with a long time friend.  Perfect.

Meanwhile, it's all happening...

announcing a new addition to the group rideHow cute is this?  An announcement from a friend and his wife: "announcing a new addition to the group ride".  Awww...

For you, and so I can find it later:  The perfect way to "see" a ride once you have a GPX file for it.  Either a ride you've actually ridden - from the GPX file generated by your GPS - or a ride you're planning - from, etc.  Very cool.

3D cycle route visualization from ITV4And speaking of ride visualizations, I've been watching the Criterium Dauphine, and ITV4 (a UK television channel) have a great way of showing a ride route in 3D.  Check this out!  Makes me think perhaps I could take a GPX file and figure out how to actually print the ride visualization on my 3D printer.  Stay tuned :)

By the way the Dauphine was a great stage race this year; congrats to Chris Froome for winning, and to Tejay Van Garderen for making it close.

the Martian, the movieAre you ready for The Martian, the movie?  I've raved about the book already - yes, you *must* read it - but now, looking at the trailer, this looks like it's going to be excellent.  Ridley Scott is the Director, by the way.

Meanwhile, in the real world, the Philae lander has woken up!  YAY.  You will remember, this is the little guy who landed on Comet 67/Churyumov seven months ago.  He landed on his side and ran out of power, but scientists were hopeful that as the comet orbited closer to the sun he'd rebuild power and wake up.  And this has apparently happened!

No word on what shirts the scientists were wearing when this happened :)

More space: Seven things to know about the New Horizons visit to Pluto.  Excellent!

Egyptian pyramids from the ISSThe perfect picture from the International Space Station.  Astronaut Terry Virts had been trying to take this picture of the Egyptian pyramids for 200 days, on his last day in space, he got it.  Wow.


bicycle day

Sunday,  06/14/15  10:52 PM

Bicycle Day, 2001You will have seen, last Thursday was Meg's graduation, but last Friday was equally as important; the fourteenth anniversary of Bicycle Day, the first day following Meg's open heart surgery in 2001 that she was allowed to ride a bike again.  I was just going through some old posts celebrating this, and wow, how those years have flown by.

This is a picture of me and Meg on the original bicycle day, off to take a ride :)



everything inflation

Sunday,  06/14/15  10:42 PM

If everyone is special, then noone is...I just noted Meg's graduation last week, which was awesome :)

Also impressive was the incredible "everything inflation" on display.  In her class of 570 students, 104 had 4.0 averages, and there were 35 valedictorians.  Roughly half of the kids graduating wore academic distinction sashes.  And the administrators literally bragged about how few kids failed to graduate.  Huh?

Ah ... when I was a kid ... getting a 4.0 was incredibly hard, only two students in my whole school were able to do it (I did not).  There was one (1) valedictorian.  And if you didn't pass all your classes, you simply did not move on to the next grade, no muss, no fuss. 

I think that was better.


Meg graduates!

Sunday,  06/14/15  09:46 PM

M.E. and meAnd so last Thursday Megan graduated high school, yay!  Our last one, now an "adult" and off to college...  quite a moment. 

There were the usual speeches, and as usual the students were a lot more interesting than the administrators.  I've just recently re-read The Most Human Human (great book!), and it struck me that indeed it is surprise which makes things interesting, and surprise was the difference between the students' speeches - which tended to focus on more specific things I didn't know - and the administrators', which were just blah blah blah platitudes about the students moving on to change the world.

Anyway in Megan's case I have no doubt that she *is* moving on to change the world; anyone who knows Meg knows this.

I couldn't be more proud of her; smart, self-confident, funny, beautiful, and interesting, in the sense of always being surprising, always having a new point of view, a new approach.


Westlake High School graduationAs I think about Meg's graduation, I think about all the other kids who graduated from her high school, and all the other high schools which had graduations.  So many people, all going through this critical transition from kids to adults.  For many of them it was one of the most important days in their lives so far, and they will no doubt remember them forever.

Having blogged for so long, I can also now remember Alexis' graduation, now four years ago, and Jordan's graduation, now (gasp!) eleven years past.  It does indeed bring tears to my eyes rereading those reports and reliving those days.




Bitcoin 101

Friday,  06/12/15  05:08 PM

Everything you always wanted to know about Bitcoin, but were afraid to ask...

<post type=informational alt=reference>

A little while ago, amid all the Bitcoin hype of 2013, I opened a Coinbase account, and I bought one (1) bitcoin.  In the meantime I have read a bunch about Bitcoin, and occasionally I've sent a few Satoshis* to a friend to get them interested (or because they were already).  I thought I kinda sorta knew how it all worked; there was this blockchain that functioned like a giant ledger in the sky, distributed over thousands of computers...  and I thought it was cool.  But I was wrong; I didn't know jack, and it is way cooler than I thought.

Like a lot of things, you only know what you don't know when you try to explain it.  A friend asked me some simple questions and I could not give simple answers.  What is a bitcoin?  What is a bitcoin wallet?  What is a bitcoin address?  How do the keys work?  What's all this about mining bitcoins?  Etc.

After digging around a little, I've learned a little.  And here's what I've learned.

Introduction to Bitcoin

During the early 2000s an informal group of theorists explored ways to exchange value online, without using any central authority.  In a typical value exchange system, there is a trusted intermediary which validates transactions.  In the case of most currencies the intermediary is a government, but it could be any organization.  The goal of these discussions was to develop a system which substituted computational difficulty for trust, enabling a completely decentralized implementation.

In October 2008 a groundbreaking paper was published by Satoshi Nakamoto, entitled Bitcoin: A Peer-to-Peer Electronic Cash System.  This paper is simple, only nine pages, and cleanly explains the entire mechanism of Bitcoin.  There is little math and I highly recommend it to interested readers.  Quoting from the abstract:

A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution.  Digital signatures provide part of the solution, but the main benefits are lost if a trusted third party is still required to prevent double-spending.  We propose a solution to the double-spending problem using a peer-to-peer network.

The Bitcoin concept was analyzed and subjected to every kind of scrutiny.  An open-source reference implementation was created called Bitcoin-Qt, today called Bitcoin Core, and ported to common platforms such as Windows, Mac OS X, and Linux.  The network grew like wildfire, and the rest is history :)


I'm going to start with keys, because that seems like a good place to start.  Keys are used for encrypting information, "locking it" so that it cannot be accessed without having the key.  Bitcoin is based on public-key cryptography, which uses pairs of keys.  You can use either key to encrypt information, "locking it", and then you use the other key to decrypt it, "unlocking it" and making it available.  Anyone can generate a key-pair anytime, and you can have as many as you want.  One key in each pair is the public key, and the other is the private key.  You can freely share your public keys, but you generally keep your private keys ... private.

So how are keys useful?  Suppose you want to send some information to Alice, and you want to keep anyone else from seeing it.  You can encrypt the information with Alice's public key.  Since only she has the private key, only she can decrypt it.  Now suppose you want to send something to Alice, and you want her to know it came from you.  You can encrypt the information with your private key.  Since Alice (and everyone else) has your public key, she can decrypt it, thereby verifying that your private key was used to perform the encryption.  This is often referred to as signing the information, since it is like adding your [unique] signature.  When information is exchanged online both of these things are often done together.  You might send information to Alice, encrypted with her public key and signed with your private key.  She decrypts the message with her private key to access it, and with your public key to verify it came from you.


Okay, the next concept is hashing.  This is the process of taking a big piece of information and making a unique small piece of information from it.  (The result of hashing is sometimes called the digest.)  There are various mathematical ways of doing this.  For any given information, the digest can be easily computed and is always the same.  It is difficult to work backwards, however; given a digest, you cannot easily figure out the original information.  You have to try all the possible original values one by one, computing the hash values, until you find the right one.  Most of the time this would take so long it is literally impossible.

Bitcoin uses a particular hash algorithm called SHA256, which has 256-bit digests.  That means there are 2256 possible digest values; for comparison, there are approximately 281 atoms in the universe.

Bitcoin Addresses

Ole's bitcoin addressWhen value is exchanged in the Bitcoin system, there is a sender, a receiver, and an amount.  To receive value, the receiver generates a key-pair.  The public key is hashed and encoded as a 35-character string called a Bitcoin address.  An example of an address is: 1HizFzbRj9nxa3ErX2fjTRsYRReRhkJ5Jr.  (This is an address for me, if you would like to send Bitcoin to this address, please do :)  Bitcoin addresses are sometimes displayed as QR codes, as shown at right.  (That's my address, again.)

Bitcoin addresses are a destination for value.  They are public, they are anonymous, and they are characteristic of one particular receiver.  They can be permanent, but it is generally recommended that receivers create new addresses every time they receive value, to preserve their anonymity.  Note that it is not possible to determine the public key from the address, since it is a digest.  It is possible to verify that a given public key corresponds to the address, by re-hashing the key.


A transaction is a transfer of Bitcoin value from a sender to a receiver.  A transaction is generated by the sender, and contains one or more inputs and one or more outputs, along with the Bitcoin address of the receiver.  The inputs are references to outputs from previous transactions.  The outputs are Bitcoin addresses to which the inputs' value are to be transferred. 

I know this is a bit vague, bear with me, I'll explain more in a minute.  The key concept is that each transaction simply builds on previous transactions.  Alice sends you Bitcoin, and you receive an output.  You send Bitcoin to Brian, and you pass the output you received from Alice to Brian as an input.  Brian sends Bitcoin to Criss, and she receives the output you sent to Brian.  And so on...  there are just transactions, with inputs, outputs, and destination addresses.

You might be wondering, how are transactions validated?  (Put another way, what prevents malicious or fraudulent transactions from being created?)  When a sender creates a transaction, they sign it with the private key for each input.  (The private key that is paired with the public key used to create the address at which the input was received.)  The public key for the corresponding output is stored in the previous transaction, and is used to authenticate the signature.  This validates that the sender is the current "owner" each of the inputs, and is authorized to transfer them.


Okay, here's where it gets a bit weird.  What *is* a bitcoin?  A bitcoin has no physical or digital existence.  It is purely a chain of transaction records.

So, what is a bitcoin "worth"?  Like anything, it is worth what others are willing to pay for it.  The exchange rate between Dollars and Bitcoins has fluctuated wildly, but is currently around $230/BTC.  (BTC is the abbreviation for one bitcoin, there are also mBTC = thousandths of a bitcoin , uBTC = millionths of a bitcoin, and Satoshi* = one hundred millionth of a bitcoin.)

So what does it mean to "own" a bitcoin?  It means you have possession of a key-pair which corresponds to the address to which the bitcoin was last sent.  Having the key-pair means you can send the bitcoin to someone else.

And the key question (n.p.i.), where do bitcoins come from?  (Put another way, what is at the start of the transaction chain for a given bitcoin?)  Stay tuned, I'll talk about mining in a minute. But first let's talk about the blockchain which makes all this possible.

The Blockchain

The central innovation of Bitcoin is the concept of a blockchain which records every transaction, ever**.  The entire blockchain is public, and every "full node" of the network has a complete copy.  Because everyone can see every transaction, there is no need for trust.  A dishonest node will be "out voted" by honest nodes.  In addition the reward for being an honest node generally exceeds the possible benefit of being dishonest.

As the name implies the blockchain is a sequence of blocks.  Each block contains a time-sequence of individual transactions.  The size of blocks is variable, but currently limited to 1MB.  A bitcoin node generates a new block every 10 minutes.  (We'll talk about what "generates" means a little later.)  An average transaction is about 400 bytes, which means the network as a whole is limited to about 40 transactions per second.  Increasing the maximum size of blocks and therefore the maximum system transaction rate is under discussion.

As noted above, a transaction is a transfer of Bitcoin value.  When a transaction occurs, the sender of value broadcasts the transaction to the network of nodes.  Each node that receives it validates the transaction and stores it in a new block which it is assembling.  When the block is full or if ten minutes have elapsed since the start of the block, it is added to the blockchain.  Each block contains a hash of the previous block, ensuring the integrity of the chain.


Nodes in the bitcoin network are doing a lot of work - they have to receive transactions from senders and validate them, performing a lot of computationally expensive cryptographic math in the process.  Why do the work?  There is a reward for creating new blocks: a node which creates a new block gets new bitcoins!  The first transaction in each block sends a reward to a bitcoin address owned by the node.  This is the start of the transaction record for new bitcoins, and it is the way new bitcoins are created.  The process of generating blocks and receiving new bitcoins as a reward is called mining.

Hmmm... I can hear you thinking... What would keep anyone from operating a node and mining new bitcoins?  Well, nothing.  And in fact, everyone who is running a "full node" on the system is doing exactly this.  But...

With many nodes in the system, and multiple nodes receiving the same transactions, what's to prevent many, many duplicate blocks from being added?  And what keeps the number of new bitcoins from exploding?  There is a mechanism which makes creating new blocks harder.  Inside each block is a nonce, a value which means nothing and can be arbitrarily chosen.  A node creating a new block must chose a nonce which makes the digest created by hashing the block smaller than a threshold value.  The node has to try each possible nonce in turn, perform the hash, and check the value.  The nonce inside bitcoin blocks is 32 bits, which means there are 4 billion possibilities.  There is no mathematical shortcut to this, there is a lot of computational work to create a new block and earn new bitcoins as a reward.

As the network gets larger and more nodes are trying to create blocks, the maximum hash threshold gets smaller, making the computational work harder.  The target is to create a block every ten minutes.  Every time 2016 blocks have been created, the nodes cooperatively agree on a new threshold.  As more nodes join the network, blocks are generated more quickly and the threshold is lowered, making creating new blocks more computationally difficult.  The competition is intense.  Some organizations have built huge datacenters full of specialized computer hardware just to mine bitcoins.

When bitcoin was first launched, the reward for creating a new block was 50 bitcoins.  Every time 210,000 blocks are created, the reward is halved.  The current reward is 25BTC.  It is projected that in mid 2017 the reward will be halved again, to 12.5BTC.  After 21 million bitcoins have been generated - projected to occur in 2024 - that's it, there will be no more.  The value of each bitcoin will probably appreciate over time, and if you believe that, you might feel owning bitcoins is an investment.

Transaction Fees

As described above, as nodes receive transactions and assemble them into blocks, they are paid for their effort with new bitcoins.  But as mentioned, the difficulty of generating blocks keeps increasing, and the reward keeps decreasing, and will eventually be zero when all bitcoins have been mined.  So another mechanism exists to reward nodes, transaction fees.

Bitcoin fees are the hidden ugly reality of what is otherwise a beautiful idea.  This is where the rubber really hits the road, because if fees are too high the payment network won't be used.  And weirdly for a payment system, the sender pays the fees, rather than the receiver.  (Of course, the receiver could agree to accept a lower payment amount to cover the transaction fee, but that’s … complicated.)  The fees are typically small, but typically nonzero.

The Bitcoin network has a few rules around fees.

  • If any output of a transaction is less than .01BTC, a fee of .0001BTC is mandatory. This is apparently to discourage “dust” from polluting the blockchain.
  • If a transaction is larger than 1,000 bytes, a fee of .0001BTC per 1,000 bytes is charged.  Transaction size is not directly under a sender’s control, because a seemingly simple transaction could involve many bitcoins.  For example, if you receive lots of small amounts and then pay a large amount, your client might send a whole bunch of small amounts. Bitcoins are never aggregated, each one is tracked separately.
  • There is a concept of transaction priority, computed as:

sum(value * age) / size

Sparing you the details, if a transaction priority is high enough it can be free.  The target is any transaction worth at least 1BTC which is at least one day old can be free.  Otherwise you pay .0001BTC per 1,000 bytes, rounded up.

As you can see, ugly.  When the sender sends a transaction, it must precompute the fee, and then the transaction is sent with a proposed fee amount.  Each miner node which receives the transaction can accept the transaction and send the fee to itself, or refuse the transaction.  You can try sending a zero-fee transaction (ZFT) and see if someone accepts it, and currently it is likely that someone will, but they don’t have to.  If you send a fee according to the rules above, then they must accept it.  If you request a ZFT it can take longer to be confirmed in the blockchain because many miners may pass on accepting it.

As an experiment I've sent myself bitcoins requesting a ZFT, and they are typically confirmed within 15 minutes.  So currently it can be done.  However it is likely that over time ZFTs cannot be counted upon.


This brings me to the final subject of my '101" overview, Bitcoin wallets.  A wallet is software which performs three functions:

  • It stores and manages your key-pairs and addresses.
  • It sends bitcoin to others.
  • It receives bitcoin from others.  (Where by "receive" we mean it verifies that you have received bitcoin from others; the ultimate reference for who owns what is the blockchain, as described above.)

When Satoshi Nakamoto first released the "reference implementation" in early 2009 (now called Bitcoin Core), it included a simple wallet, and that version is still around today with a few polishes.  There are tens of others now, some for desktops (Windows and Mac OS and Linux), some for mobile platforms (IOS and Android), and many which are web-based (running on a server hosted by others, providing a web UI).  You can use a Bitcoin wallet without knowing any of the details described above, and if you're interested I definitely encourage you to do so.

So where do you get Bitcoin?  You can buy some using dollars or some other government-backed security, from a Bitcoin exchange, or you can exchange something of value with someone who sends you bitcoin in response.  Or you can get some "free" at a Bitcoin faucet, which are websites that distribute tiny amounts of Bitcoin, generally in exchange for your contact info or attention.  (Faucets were started as a way to seed the use of Bitcoin, but these days they aren't needed for that anymore and tend to be scam-ish, so be careful!)

And what do you do with Bitcoin once you have it?  You can buy things with it, pay people for services, or even hold onto it as a somewhat speculative investment.  Or you could send some to me, at the address above :)

* A Satoshi is the smallest unit of bitcoin which can be exchanged, one hundred millionth of a bitcoin.
** Where "ever" means since January 2009, when the first Bitcoin transaction occurred.  The first "real" transaction didn't occur until May, 2010, when Laszlo Hanyecz bought a pizza for 10,000 BTC.


Thanks for reading, your comments / corrections / amplifications are most welcome!


Fairly recent posts:

06/28/15 12:10 PM -


06/26/15 12:30 PM -

Friday,  06/26/15  12:30 PM

06/25/15 10:59 PM -

landing rockets

06/22/15 09:23 PM -

Monday,  06/22/15  09:23 PM

06/18/15 10:58 PM -

Galapagos: island animals

06/17/15 08:25 PM -

Wednesday,  06/17/15  08:25 PM

06/17/15 08:19 PM -

two kinds of people

06/16/15 11:20 AM -

VS 2013: we can all agree on ugly

06/15/15 11:57 PM -

Monday,  06/15/15  11:57 PM

06/15/15 11:47 PM -

the canals of LA

06/14/15 11:01 PM -

flag day

06/14/15 10:52 PM -

bicycle day

06/14/15 10:42 PM -

everything inflation

06/14/15 09:46 PM -

Meg graduates!

06/12/15 05:08 PM -

Bitcoin 101

06/09/15 11:26 AM -

the Apple music mess

06/08/15 09:09 PM -

awesome Ceres flyover

06/07/15 07:09 PM -

re Caitlin

06/07/15 06:26 PM -

Sunday,  06/07/15  06:26 PM

06/07/15 06:01 PM -

beautiful Grimm reality

06/06/15 07:38 PM -

mixed mates (NY 5/18/15)

06/06/15 05:26 PM -

Saturday,  06/06/15  05:26 PM

06/06/15 05:02 PM -

whining about wine point inflation

06/03/15 10:57 PM -

magic storefront

06/02/15 06:50 PM -

SciPunk nostalgia

06/01/15 12:14 PM -

me me click me

06/01/15 09:19 AM -

June gloom?

05/30/15 10:38 PM -

Saturday,  05/30/15  10:38 PM

05/30/15 10:19 PM -

extra time

05/26/15 07:26 PM -

Tuesday,  05/26/15  07:26 PM

For older posts please visit the archive.


'14   '13   '12
'11   '10   '09
'08   '07   '06
'05   '04   '03
flight  X
About Me

Greatest Hits
Correlation vs. Causality
The Tyranny of Email
Unnatural Selection
Aperio's Mission = Automating Pathology
On Blame
Try, or Try Not
Books and Wine
Emergent Properties
God and Beauty
Moving Mount Fuji The Nest Rock 'n Roll
IQ and Populations
Are You a Bright?
Adding Value
The Joy of Craftsmanship
The Emperor's New Code
Toy Story
The Return of the King
Religion vs IQ
In the Wet
the big day
solving bongard problems
visiting Titan
unintelligent design
the nuclear option
estimating in meatspace
second gear
On the Persistence of Bad Design...
Texas chili cookoff
almost famous design and stochastic debugging
may I take your order?
universal healthcare
triple double
New Yorker covers
Death Rider! (da da dum)
how did I get here (Mt.Whitney)?
the Law of Significance
Holiday Inn
Daniel Jacoby's photographs
the first bird
Gödel Escher Bach: Birthday Cantatatata
Father's Day (in pictures)
your cat for my car
Jobsnotes of note
world population map
no joy in Baker
vote smart
exact nonsense
introducing eyesFinder
to space
where are the desktop apps?