GMnostr
GMnostr
GMnostr 4
GMnostr 3
GMnostr 😄
GMnostr
test
Kicking the Hornet’s Nest: The Complete Writings, Emails, and Forum Posts of Satoshi Nakamoto, the Founder and Creator of Bitcoin
Everything Satoshi wrote publicly arranged in chronological order. (A 527 page book broken into 22 sections here on Nostr.)
Table of Contents - parts 1 to 22
Part 1 – pages 1-11 (page numbers align with the printed book)
Part 2 – pages 12-24
Part 3 – pages 24-54
Part 4 – pages 54-75
Part 5 – pages 75-100
Part 6 – pages 100-124
Part 7 – pages 125-150
Part 8 – pages 150-175
Part 9 – pages 175-200
Part 10 – pages 200-225
Part 11 – pages 225-250
Part 12 – pages 250-275
Part 13 – pages 275-300
Part 14 – pages 300-325
Part 15 – pages 325-350
Part 16 – pages 350-375
Part 17 – pages 375-400
Part 18 – pages 400-425
Part 19 – pages 425-450
Part 20 – pages 450-475
Part 21 – pages 475-506
Part 22 – pages 506-527 (the end)
# Kicking the Hornet's Nest - third edition - part 11
All links, digital (pdf, txt, docx, md) and book in print, can be found at https://hive.blog/@crrdlx/satoshi
Edited by [crrdlx](https://njump.me/nprofile1qyv8wumn8ghj7mn0wdj8y6tkv5hxzurs9aex2mrp0yq3wamnwvaz7tmjv4kxz7fwwpexjmtpdshxuet59uqzqqzmcn0yrn7ttq8hrjkk46ysn2tk26rr8f8k4y7xkl74hlh3rcdzm9d3t8), npub:
```
nostr:npub1qpdufhjpel94srm3ett2azgf49m9dp3n5nm2j0rt0l2mlmc3ux3qza082j
```
----
### Kicking the Hornet's Nest pages 225 - 250
----
**BitcoinTalk**
Re: Simple to implement feature requests
_2010-02-08 16:37:24 UTC_ - [-](https://bitcointalk.org/index.php?topic=46.msg284#msg284)
There are command line options:
bitcoin -addnode=1.2.3.4 to tell bitcoin about a node to connect to
bitcoin -connect=1.2.3.4 connect only to the specified node(s)
You can use more than one of these, for instance
bitcoin -connect=(first to try) -connect=(next to try) ...
You can specify non-routable IPs with -connect like 192.168.x.x, so if you had a server farm and you wanted one server to connect to the world and the rest to connect to the one server, you could do that.
In particular, -addnode is needed if you're always going to connect through TOR, since the IRC server blocks all the TOR exit nodes. To connect through TOR, you could use:
bitcoin -proxy=127.0.0.1:9050 -addnode=212.159.72.216
**Martii Malmi (AKA Sirius) “COPA trial” email #158**
**Date: Thu, 11 Feb 2010 22:58:29 +0000**
**From: Satoshi Nakamoto
**Subject: Re: Translation**
**To: mmalmi@cc.hut.fi**
I didn't make any changes to Drupal code. The only thing other than
installing themes was the .htaccess file (which really is needed, it
didn't work in the global config file).
It was only SMF where I made some PHP changes.
You might find it preferable not to translate it into your own language.
Often the standard answer about legalities is that it's only intended
for people in other countries. Translating it into your home language
weakens that argument.
_mmalmi@cc.hut.fi wrote:_
_> I got the translations working correctly, now it should automatically_
_> detect the language from the browser settings. Choosing manually is of_
_> course also possible. I asked the translators to send me their_
_> translations as pm or e-mail. I guess I'll make a Finnish translation_
_> myself at some point. Multiple translations add to the site's credibility._
_>_
_> Drupal is asking to do a security update. Do we have other customized_
_> files we need to backup than those located in the "sites" directory?_
_>_
**BitcoinTalk**
Re: DEB Package?
_2010-02-12 02:33:02 UTC_ - [-](https://bitcointalk.org/index.php?topic=49.msg315#msg315)
Are you just trying to run the program or do you really need to compile it? There's a 32-bit linux binary that can be run on 64-bit ubuntu if you "sudo apt-get ia32-libs".
I recently updated the SVN for building on 64-bit Karmic with wxWidgets 2.9.0. This was after the 0.2.0 release. The 0.2.0 release did not build on 64-bit yet.
Unfortunately there currently isn't a -dev deb package of either of the versions of wxWidgets that we can use. On Karmic they only have the UTF-16 version. We need either the ANSI (libwxgtk2.8-ansi-dev) version or the UTF-8 (wxWidgets 2.9.0) version. We're moving towards 2.9.0.
I know you said you didn't want VM, but as a last resort, last I checked the Windows version runs fine in Wine.
**BitcoinTalk**
Re: Repost: Request: Make this anonymous?
_2010-02-12 17:28:32 UTC_ - [-](https://bitcointalk.org/index.php?topic=7.msg324#msg324)
True, sending by IP through Tor trades one problem for another. The Tor exit node can see the text of your message and potentially MITM you.
Best to only send to bitcoin addresses then. Payments by bitcoin address are broadcast over the network as part of the normal network traffic. All communications with the network are broadcasts of public information.
**Martii Malmi (AKA Sirius) “COPA trial” email #160**
**Date: Sat, 13 Feb 2010 01:08:42 +0000**
**From: Satoshi Nakamoto
**Subject: Re: JSON-RPC status**
**To: mmalmi@cc.hut.fi**
I uploaded my JSON-RPC and command line implementation to SVN. I'm
waiting to post on the forum when I've had more time to think about the
commands. At least some method names are going to change.
To enable the RPC server, add the switch -server. It's not on by default.
Client commands are without any switches, as such:
bitcoin getblockcount
bitcoin getdifficulty
bitcoin getnewaddress somelabel
bitcoin sendtoaddress 1DvqsbZ... 1.00
bitcoin getallpayments 0
bitcoin stop
Applications would normally use JSON-RPC directly, not command line.
I haven't tested my JSON-RPC server with anything else yet. If you do,
please tell me how it goes. You're using Python, right?
Getting the Linux version to run without the GTK installed will be a
separate task.
mmalmi@cc.hut.fi wrote:
> That's great! I'll start familiarizing myself with Liberty Reserve and
> its api.
>
**BitcoinTalk**
Re: DEB Package?
_2010-02-13 01:38:37 UTC_ - [-](https://bitcointalk.org/index.php?topic=49.msg326#msg326)
I couldn't get wxWidgets 2.8.9 to compile on Karmic 64-bit either.
I have been compiling the latest SVN on Karmic 64-bit with wxWidgets 2.9.0, which compiles fine on 64-bit. Read build-unix.txt and use the given ../configure parameters on wxWidgets so you can use the makefile.unix.wx2.9 as supplied. (--enable-debug --disable-shared --enable-monolithic)
-- fixed
The download link on the homepage is to the sourceforge tar.gz archive which contains the 32-bit binary and the 0.2.0 sources, which were not yet buildable on 64-bit at the time.
The SVN was first buildable on 64-bit with wx2.9.0 on 28 January 2010.
Hopefully they'll have a wxWidgets 2.9.0 debian package someday.
**BitcoinTalk**
Re: What's with this odd generation?
_2010-02-14 06:28:03 UTC_ - [-](https://bitcointalk.org/index.php?topic=48.msg327#msg327)
[_**Quote from: theymos on February 12, 2010, 08:31:52 AM**_](https://bitcointalk.org/index.php?topic=48.msg318#msg318)
_Does the sending client send more BitCoins to account for the fee (so the recipient gets what he's expecting)?_
Yes.
[_**Quote from: SmokeTooMuch on February 12, 2010, 01:11:09 PM**_](https://bitcointalk.org/index.php?topic=48.msg319#msg319)
_why do we even need fees ? i thougt the no-fees-feature was one of the advantages of bitcoin ?!_
Almost all transactions are free. A transaction is over the maximum size limit if it has to add up more than 500 of the largest payments you've received to make up the amount. A transaction over the size limit can still be sent if a small fee is added.
The average transaction, and anything up to 500 times bigger than average, is free.
It's only when you're sending a really huge transaction that the transaction fee ever comes into play, and even then it only works out to something like 0.002% of the amount. It's not money sucked out of the system, it just goes to other nodes. If you're sad about paying the fee, you could always turn the tables and run a node yourself and maybe someday rake in a 0.44 fee yourself.
**BitcoinTalk**
Re: What's with this odd generation?
_2010-02-14 15:52:23 UTC_ - [-](https://bitcointalk.org/index.php?topic=48.msg329#msg329)
Right. Otherwise we couldn't have a finite limit of 21 million coins, because there would always need to be some minimum reward for generating. In a few decades when the reward gets too small, the transaction fee will become the main compensation for nodes. I'm sure that in 20 years there will either be very large transaction volume or no volume.
**Martii Malmi (AKA Sirius) “COPA trial” email #163**
**Date: Sun, 14 Feb 2010 21:48:31 +0000**
**From: Satoshi Nakamoto
**Subject: Re: JSON-RPC status**
**To: mmalmi@cc.hut.fi**
_mmalmi@cc.hut.fi wrote:_
_>> I haven't tested my JSON-RPC server with anything else yet. If you do,_
_>> please tell me how it goes. You're using Python, right?_
_>>_
_>> Getting the Linux version to run without the GTK installed will be a_
_>> separate task._
_>_
_> Yes, using Python. I didn't test the JSON-RPC yet as I don't have_
_> Bitcoin running on the vps yet. It doesn't work without a window manager_
_> even if GTK libraries are installed. I asked about it at wxWidgets forum_
_> (http://wxforum.shadonet.com/viewtopic.php?t=26954) but they didn't have_
_> much clue. Maybe we'll just need to make two different binaries._
I will probably relent and do that. I can move init and shutdown into
init.cpp or start.cpp or something, link only wxbase and not link ui.o
and uibase.o.
wxWidgets is mostly Windows people, they wouldn't know much about GTK.
Don't you have an Ubuntu laptop you can test and compile on so you don't
have to toy with the vps?
**BitcoinTalk**
Re: Proof-of-work difficulty increasing
_2010-02-15 06:28:38 UTC_ - [-](https://bitcointalk.org/index.php?topic=43.msg346#msg346)
14/02/2010 0000000065465700000000000000000000000000000000000000000000000000
2009 1.00
30/12/2009 1.18 +18%
11/01/2010 1.31 +11%
25/01/2010 1.34 +2%
04/02/2010 1.82 +36%
14/02/2010 2.53 +39%
Another big jump in difficulty yesterday from 1.82 times to 2.53 times, a 39% increase since 10 days ago. It was 10 days apart not 14 because more nodes joined and generated the 2016 blocks in less time.
**Martii Malmi (AKA Sirius) “COPA trial” email #165**
**Date: Mon, 15 Feb 2010 18:11:53 +0000**
**From: Satoshi Nakamoto
**Subject: Re: JSON-RPC status**
**To: mmalmi@cc.hut.fi**
_mmalmi@cc.hut.fi wrote:_
_>> Don't you have an Ubuntu laptop you can test and compile on so you_
_>> don't have to toy with the vps?_
_>_
_> Yes. Tested with Python's JSON-RPC, and seems to work fine! Really easy_
_> to use._
Hurray, I got it on the first go.
Could you send me the Python code you used? So if I do some testing
later I don't have to figure it out myself.
**BitcoinTalk**
Re: Setting up multiple bitcoin machines behind NAT
_2010-02-16 01:34:56 UTC_ - [-](https://bitcointalk.org/index.php?topic=54.msg360#msg360)
Right now there isn't a port number setting to do that. It's a feature yet to be implemented. You can only set up your NAT to port-forward to one of the computers. (I said something earlier about NAT port translation, but that wouldn't work, other nodes wouldn't know to connect to that port)
If you want, as a small optimization, you could run the rest of your computers as:
bitcoin -connect=
so they get all their network communication from the first computer and don't all connect over the net individually for the same information. This saves bandwidth, although it doesn't use much bandwidth to begin with, so it wouldn't really matter unless you had tons of computers.
For redundancy in case the first computer goes down, you could have two that connect out and the rest connect to both of them. The first two are run normally, the rest are run like:
bitcoin -connect=
**BitcoinTalk**
Re: Proof-of-work difficulty increasing
_2010-02-17 17:58:03 UTC_ - [-](https://bitcointalk.org/index.php?topic=43.msg388#msg388)
[_**Quote from: Sabunir on February 16, 2010, 08:51:51 AM**_](https://bitcointalk.org/index.php?topic=43.msg372#msg372)
_. Perhaps it has to do with my connection's very high latency (2000ms or more on average)_
2 seconds of latency in both directions should reduce your generation success by less than 1%.
[_**Quote from: Sabunir on February 16, 2010, 08:51:51 AM**_](https://bitcointalk.org/index.php?topic=43.msg372#msg372)
_and/or my high packet loss (sometimes up to 10% loss)?_
Probably OK, but I'm not sure. The protocol is designed to resync to the next message, and messages get re-requested from all the other nodes you're connected to until received. If you miss a block, it'll also keep requesting it every time another blocks comes in and it sees there's a gap. Before the original release I did a test dropping 1 out of 4 random messages under heavy load until I could run it overnight without any nodes getting stuck.
**BitcoinTalk**
Re: Bitcoin client and website translation
_2010-02-17 19:19:43 UTC_ - [-](https://bitcointalk.org/index.php?topic=47.msg389#msg389)
I updated the SVN with changes to support translation. Translatable strings are all enclosed in _(""), and we're using UTF-8 on all platforms.
When the program runs, it looks in the directory of the EXE for the file: locale\
On Linux, it also looks for:
/usr/share/locale/
/usr/local/share/locale/
(are there other standard places it should look on linux?)
Here's a quick walkthrough using poedit to make a .po and .mo file:
- Download the bitcoin sourcecode from SVN
- In the trunk directory, mkdir locale\
- In poedit, File->New catalog->Paths tab
- Click the "New item" dotted rectangle button
- Put "../../.." and MAKE SURE TO PRESS ENTER to add the path
- Click OK
- Save the file as "bitcoin.po" in the LC_MESSAGES directory you made
- It should then scan the sourcecode and find about 170 strings
- If it didn't find anything, check Catalog->Settings->Path tab, make sure the "../../.." was added
When you're done translating, commit both bitcoin.po (the editable catalog file) and bitcoin.mo (compiled data used by the program).
**BitcoinTalk**
Re: Number of connections
_2010-02-21 03:43:48 UTC_ - [-](https://bitcointalk.org/index.php?topic=58.msg413#msg413)
Nodes stop trying to initiate connections once they have 15. If you can accept incoming connections, then you can get well above that from nodes connecting to you, otherwise you max out at 15.
I don't know if there's any reason to have 15 connections. Maybe it should be 10.
Since nodes that can only connect out are probably at or near 15 most of the time now, you should level off to an equilibrium. 45 suggests a ratio of 3 out-only nodes to every 1 in-accepting node.
The number of connections won't be a good gauge of the size of the network any more. Someone should periodically IRC to the bitcoin channel on chat.freenode.net and count the number of users. That gives you the total count of network nodes (except TOR nodes).
Block generation is again running ahead of pace. We're in for another big step up in difficulty at the next adjustment in about 5 days.
**BitcoinTalk**
Post your static IP
_2010-02-21 04:19:53 UTC_ - [-](https://bitcointalk.org/index.php?topic=59.msg414#msg414)
It would be nice to have a list of static IPs for new users to send test donations to so they can see how the software works. If you can accept incoming connections and you have a static IP address, post it here!
Anything sent to these IPs should be considered a donation.
If you do request a round-trip, be sure to include your return bitcoin address or IP in the comment, but please assume it'll be one-way. They won't necessarily be watching for incoming transactions to send back.
**BitcoinTalk**
Re: Current Bitcoin economic model is unsustainable
_2010-02-21 05:44:24 UTC_ - [-](https://bitcointalk.org/index.php?topic=57.msg415#msg415)
Excellent analysis, xc.
A rational market price for something that is expected to increase in value will already reflect the present value of the expected future increases. In your head, you do a probability estimate balancing the odds that it keeps increasing.
In the absence of a market to establish the price, NewLibertyStandard's estimate based on production cost is a good guess and a helpful service (thanks). The price of any commodity tends to gravitate toward the production cost. If the price is below cost, then production slows down. If the price is above cost, profit can be made by generating and selling more. At the same time, the increased production would increase the difficulty, pushing the cost of generating towards the price.
In later years, when new coin generation is a small percentage of the existing supply, market price will dictate the cost of production more than the other way around.
At the moment, generation effort is rapidly increasing, suggesting people are estimating the present value to be higher than the current cost of production.
**BitcoinTalk**
UI improvements
_2010-02-21 21:48:01 UTC_ - [-](https://bitcointalk.org/index.php?topic=60.msg426#msg426)
Uploaded some UI changes to SVN as version 0.2.5.
Instead of View->Show Generated, we now have tabs:
- All Transactions
- Sent/Received
- Sent
- Received
Makes it a lot easier to flip to received and check for payments.
Moved the "Your Addresses" book inside the main address book. It was confusing having two address books.
I found the "To:" in "From: unknown, To: (one of your bitcoin addresses)" still confusing, so I changed it to "From: unknown, Received with:". The bitcoin address is abbreviated so you can see the label that you set in the Receiving tab of the address book.
Fixed a few UI glitches from the upgrade to wxWidgets 2.9.0.
I haven't forgotten about you people who want non-UI, but I had to do some fun stuff before more build bashing.
**Martii Malmi (AKA Sirius) “COPA trial” email #168**
**Date: Mon, 22 Feb 2010 20:17:42 +0000**
**From: Satoshi Nakamoto
**Subject: Re: Non-GUI option**
**To: mmalmi@cc.hut.fi**
_mmalmi@cc.hut.fi wrote:_
_> Just a few clues I've found about running the same binary without a GUI:_
_>_
_> 1) GTK supports running a program without display:_
_> http://library.gnome.org/devel/gtk/2.12/gtk-General.html#gtk-init-check._
_> This doesn't tell if it's possible in wxWidgets though._
I see it calls gtk-init-check in wxApp::Initialize.
I can subclass Initialize, call the original one while suppressing the
error message and ignore the return value. It seems to be working.
Any suggestions what to name the command line switches and how to
describe them? Is there any traditional standard? I'm currently using:
-daemon (or -d) (Enables RPC and runs in the background)
-server (Enables RPC)
**BitcoinTalk**
Re: generation slowed down dramatically
_2010-02-23 00:49:56 UTC_ - [-](https://bitcointalk.org/index.php?topic=61.msg433#msg433)
Just a random streak of bad luck. It looks steady to me.
Competition doesn't have an effect until the next automatic retarget adjustment, and we haven't reached the next one yet.
The adjustments are every 2016 blocks. To calculate our progress towards the next one, divide the block total by 2016. The fractional part is how far we are to the next one.
My back-of-the-envelope projection: 42032 blocks/2016 = 20.85 = 85% of the way. About 1.5 days to go until the next one. That'll only be about 10 days since the last one, the target is 14 days, so 14/10 = 1.4 = around 40% difficulty increase.
**BitcoinTalk**
Re: UI improvements
_2010-02-23 01:16:28 UTC_ - [-](https://bitcointalk.org/index.php?topic=60.msg434#msg434)
There are now "Sending" and "Receiving" tabs in the Address Book. Your addresses are referred to as "receiving addresses".
madhatter was working on building it on Mac. He had errors probably caused by UTF-16 wxWidgets 2.8. Should have better luck now with 2.9.0. wxWidgets 2.9.0 is UTF-8 and wouldn't have that problem.
I think he had it working on FreeBSD, but he wanted a non-UI version.
I have the command line and JSON-RPC daemon version working now. Will SVN it in a day or two.
I disabled gdm on my Ubuntu system so it boots into command line. I hope I will be able to get it enabled again with rcconf.
**Martii Malmi (AKA Sirius) “COPA trial” email #169**
**Date: Tue, 23 Feb 2010 01:41:01 +0000**
**From: Satoshi Nakamoto
**Subject: Re: Non-GUI option**
**To: Martti Malmi
_>> Just a few clues I've found about running the same binary without a GUI:_
_>>_
_>> 1) GTK supports running a program without display:_
_>> http://library.gnome.org/devel/gtk/2.12/gtk-General.html#gtk-init-check._
_>> This doesn't tell if it's possible in wxWidgets though._
_>_
_> I see it calls gtk-init-check in wxApp::Initialize._
_>_
_> I can subclass Initialize, call the original one while suppressing the_
_> error message and ignore the return value. It seems to be working._
This is working. A few more things and I'll upload it.
We'll need to tell people to install the GTK libraries. Do you remember
the apt-get command to install GTK, and can you install it without
having a GUI installed?
**BitcoinTalk**
Re: Bitcoin Address Collisions
_2010-02-23 16:26:09 UTC_ - [-](https://bitcointalk.org/index.php?topic=62.msg443#msg443)
There's a separate public/private keypair for every bitcoin address. You don't have a single private key that unlocks everything. Bitcoin addresses are a 160-bit hash of the public key, everything else in the system is 256-bit.
If there was a collision, the collider could spend any money sent to that address. Just money sent to that address, not the whole wallet.
If you were to intentionally try to make a collision, it would currently take 2^126 times longer to generate a colliding bitcoin address than to generate a block. You could have got a lot more money by generating blocks.
The random seed is very thorough. On Windows, it uses all the performance monitor data that measures every bit of disk performance, network card metrics, cpu time, paging etc. since your computer started. Linux has a built-in entropy collector. Adding to that, every time you move your mouse inside the Bitcoin window you're generating entropy, and entropy is captured from the timing of disk ops.
**BitcoinTalk**
Re: UI improvements
_2010-02-23 16:53:27 UTC_ - [-](https://bitcointalk.org/index.php?topic=60.msg446#msg446)
[_**Quote from: Xunie on February 23, 2010, 12:28:27 PM**_](https://bitcointalk.org/index.php?topic=60.msg439#msg439)
_/etc/init.d/gdm start_ _and it will start gdm!_
Ah yes, there we go, back to normal again.
The ctrl+alt+F[1-8] thing never worked on this computer. The screen just goes haywire.
**BitcoinTalk**
Command Line and JSON-RPC
_2010-02-23 22:15:41 UTC_ - [-](https://bitcointalk.org/index.php?topic=63.msg452#msg452)
Version 0.2.6 on SVN can now run as a daemon and be controlled by command line or JSON-RPC.
On Linux it needs libgtk2.0-0 installed, but does not need a GUI running. Hopefully gtk can be installed without having a windowing system installed.
The command to start as a daemon is:
bitcoin -daemon [switches...]
Or, to run the UI normally and also be able to control it from command line or JSON-RPC, use the "-server" switch.
bitcoin -server [switches...]
With either switch, it runs an HTTP JSON-RPC server that accepts local socket connections on 127.0.0.1:8332. The port is bound to loopback and can only be accessed from the local machine, but from any account, not just the user it's running under.
To control it from the command line, the interface is a command name without any switches, followed by parameters if any.
bitcoin
For example:
bitcoin getinfo
bitcoin getdifficulty
bitcoin setgenerate true
bitcoin stop
It's a simple JSON-RPC client and prints the JSON result. Look at rpc.cpp for the list of commands.
Web apps or anything automated will normally use JSON-RPC directly, not command line. There are JSON-RPC libraries for all the major languages. In script languages like PHP and Python the syntax is as natural as calling a local function.
**BitcoinTalk**
Re: Bitcoin Address Collisions
_2010-02-23 22:24:00 UTC_ - [-](https://bitcointalk.org/index.php?topic=62.msg453#msg453)
[_**Quote from: NewLibertyStandard on February 23, 2010, 07:04:47 PM**_](https://bitcointalk.org/index.php?topic=62.msg450#msg450)
_Are generated bitcoins encrypted with whichever address is currently displayed in the main Bitcoin window?_
No, each generated transaction uses a new, single-use address.
Nothing uses the address in the main window, it's just there for convenience for you to copy. 0.2.5 has a "New..." button next to it to make it easy to change each time you use it.
**BitcoinTalk**
Re: URI-scheme for bitcoin
_2010-02-24 05:57:43 UTC_ - [-](https://bitcointalk.org/index.php?topic=55.msg481#msg481)
That would be nice at point-of-sale. The cash register displays a QR-code encoding a bitcoin address and amount on a screen and you photo it with your mobile.
**BitcoinTalk**
Re: Command Line and JSON-RPC
_2010-02-24 06:17:23 UTC_ - [-](https://bitcointalk.org/index.php?topic=63.msg482#msg482)
[_**Quote from: theymos on February 24, 2010, 03:07:37 AM**_](https://bitcointalk.org/index.php?topic=63.msg467#msg467)
[_**Quote from: satoshi on February 23, 2010, 10:15:41 PM**_](https://bitcointalk.org/index.php?topic=63.msg452#msg452)
_On Linux it needs libgtk2.0-0 installed_
_Will this requirement be removed sometime? I'd rather not have to deal with GTK._
How much "dealing with" does GTK actually require? Is it just a matter of "sudo apt-get install libgtk2.0-0" and having some extra libraries sitting around? GTK doesn't have to do anything, just be there for bitcoin to link to when it loads up, have the gtk-init-check call fail because no GUI present, then it's done.
It saves us butchering everything with ifdefs and a separate compile and binary to use wxBase just to try to avoid linking GTK.
**Martii Malmi (AKA Sirius) “COPA trial” email #172**
**Date: Wed, 24 Feb 2010 06:34:52 +0000**
**From: Satoshi Nakamoto
**Subject: Re: Non-GUI option**
**To: mmalmi@cc.hut.fi**
_> I'll give Drupal accounts to the bitcoin.org translators, so they can_
_> keep the translations up to date._
Good, that gives them a little sense of ownership and responsibility.
I hope we get at least one .mo file for the software translation in time
to put into the 0.3 release.
**BitcoinTalk**
New icon/logo
_2010-02-24 21:24:23 UTC_ - [-](https://bitcointalk.org/index.php?topic=64.msg504#msg504)
New icons, what do you think? Better than the old one?
*Note: invalid image links omitted by editor*
Full size 530x529 image for scaling down to custom sizes:
*Note: invalid image link omitted by editor*
The perspective shadow was too thick on the larger sizes. I updated 32, 48 and the full size.
I release these images into the public domain (copyright-free). I request that derivative works be made public domain.
**BitcoinTalk**
Re: Make your "we accept Bitcoin" logo
_2010-02-24 21:53:52 UTC_ - [-](https://bitcointalk.org/index.php?topic=45.msg507#msg507)
If you GPL stuff, I have to avoid using it. Nothing against GPL per-se, but Bitcoin is an MIT license project. Anything GPL please clearly mark it as such.
**BitcoinTalk**
Re: Command Line and JSON-RPC
_2010-02-24 22:08:55 UTC_ - [-](https://bitcointalk.org/index.php?topic=63.msg509#msg509)
When and how fast did memory usage increase? Right away, slowly over a long time, or starting at some later event?
I have -daemon running on ubuntu 9.10 64-bit and memory usage is steady.
It has to be something about the difference on the server besides 64-bit. Maybe some malfunction from the lack of GUI. A memory leak debug tool could give a clue.
**BitcoinTalk**
Re: Proof-of-work difficulty increasing
_2010-02-24 22:42:24 UTC_ - [-](https://bitcointalk.org/index.php?topic=43.msg510#msg510)
The automatic adjustment happened earlier today.
24/02/2010 0000000043b3e500000000000000000000000000000000000000000000000000
24/02/2010 3.78 +49%
I updated the first post.
**BitcoinTalk**
Re: New icon/logo
_2010-02-25 01:56:24 UTC_ - [-](https://bitcointalk.org/index.php?topic=64.msg521#msg521)
[_**Quote from: Sabunir on February 25, 2010, 01:47:56 AM**_](https://bitcointalk.org/index.php?topic=64.msg519#msg519)
_I like them. Do they come in higher resolutions?_
Yes, the original is 546x531 pixels.
It looks good at larger size too, but since the small icons are what you mostly always see, I wanted to judge it on those first. I'll post larger sizes and full size a little later.
**BitcoinTalk**
Re: Command Line and JSON-RPC
_2010-02-25 22:54:17 UTC_ - [-](https://bitcointalk.org/index.php?topic=63.msg539#msg539)
OK, I made a build target bitcoind that only links wxBase and does not link GTK. Version 0.2.7 on SVN.
I split out the init and shutdown stuff from ui.cpp into init.cpp, so now ui.cpp is pure UI. ui.h provides inline stubs if wxUSE_GUI=0. We only have four functions that interface from the node to the UI. In the bitcoind build, we don't link ui.o or uibase.o.
[_**Quote from: sirius-m on February 25, 2010, 04:32:17 PM**_](https://bitcointalk.org/index.php?topic=63.msg538#msg538)
_It started increasing right away. I'll see if valgrind can help me._
Sure feels like it could be something in wxWidgets retrying endlessly because some UI thing failed or something wasn't inited correctly. Our hack to ignore the initialize failure and run anyway means we're in uncharted territory. We're relying on the fact that we hardly use wx in this mode. We do still use a few things like wxGetTranslation and wxMutex.
Another way to debug would be to run in gdb, wait until everything is quiet and all threads should be idle, and break it and see which thread is busily doing something and what it's doing.
I suspect bitcoind will probably work fine, but I hope you can still debug the problem.
##### BitcoinTalk
Re: Proof-of-work difficulty increasing
_2010-02-25 23:06:29 UTC_ - [-](https://bitcointalk.org/index.php?topic=43.msg540#msg540)
The formula is based on the time it takes to generate 2016 blocks. The difficulty is multiplied by 14/(actual days taken). For instance, this time it took 9.4 days, so the calculation was 14/9.4 = 1.49. Previous difficulty 2.53 * 1.49 = 3.78, a 49% increase.
I don't know what you're talking about accepting easier difficulties.
**BitcoinTalk**
Re: Command Line and JSON-RPC
_2010-02-26 16:29:21 UTC_ - [-](https://bitcointalk.org/index.php?topic=63.msg555#msg555)
wx/clipbrd.h isn't used, move it inside the #if wxUSE_GUI.
Updated headers.h on SVN.
Sorry, I linked to wxbase but I had full wxWidgets on my computer.
The db.h:140 class Db no member named "exisits" is stranger. pdb->get, pdb->put, pdb->del compiled before that. Do you have version 4.7.25 of Berkeley DB?
Db::exists()
I suppose they might have added exists recently, using get before that.
**BitcoinTalk**
Re: New icon/logo
_2010-02-26 23:17:19 UTC_ - [-](https://bitcointalk.org/index.php?topic=64.msg561#msg561)
Good suggestion. I made the B slightly lighter and the background slightly darker. Very slightly. The foreground is now exactly the same colour as the BC in the old one.
It's kind of OK if you can't easily read the B in the 16x16. At that size, you just need to see that it's a coin. It doesn't matter so much what's embossed on it, just that there be some detail there because it wouldn't look like a coin if it was a blank smooth circle.
It's slightly wider than tall because the dark perspective under it goes more to the right than down.
I finished and posted the 32x31 and 48x47 versions in the first message. I like the 48 a lot.
How does everyone feel about the B symbol with the two lines through the outside? Can we live with that as our logo?
**BitcoinTalk**
Re: Command Line and JSON-RPC
_2010-02-26 23:48:44 UTC_ - [-](https://bitcointalk.org/index.php?topic=63.msg562#msg562)
Are you using wxWidgets 2.9.0? I don't recommend using anything other than 2.9.0.
It looks like they've got a reference in the wx headers (arrstr.h) to something outside of wxBase.
Removing -D__WXDEBUG__ from bitcoin's makefile would probably solve it.
If that doesn't work and you just want to get it working, you could edit wxWidgets include/wx/arrstr.h, line 167 and comment out the wxASSERT_MSG.
**BitcoinTalk**
Re: New icon/logo
_2010-02-27 04:28:29 UTC_ - [-](https://bitcointalk.org/index.php?topic=64.msg566#msg566)
[_**Quote from: Cdecker on February 27, 2010, 03:24:07 AM**_](https://bitcointalk.org/index.php?topic=64.msg565#msg565)
_How about an SVG version? That way we could automatically generate smaller and larger versions as needed._
I don't know how to do SVG, but I did the original very large, over 500 pixels across, so it can be scaled down. I'll give the original when I'm finished.
I had to custom tweak each icon size so the vertical lines land square on their pixels, otherwise they're ugly blurry and inconsistent. Such is the challenge of making icons. The original will be good for scaling to custom sizes between 48 and 500 but not smaller.
**BitcoinTalk**
Re: wxWidgets 2.9.0
_2010-02-27 21:22:53 UTC_ - [-](https://bitcointalk.org/index.php?topic=65.msg571#msg571)
[_**Quote from: Cdecker on February 27, 2010, 05:09:59 PM**_](https://bitcointalk.org/index.php?topic=65.msg569#msg569)
_Looking through the source of 2.8.10 it appears that_ _unicode_ _is possible with that version too._
In the Windows world, "unicode" means UTF-16 (wchar).
2.8 has two build variations, ANSI and UTF-16 (unicode). The UTF-16 version is the "unicode" version provided in the Debian package. I believe 2.8 and its UTF-16 build labelled simply "unicode" has been the source of build problems described in the forum. We were previously using 2.8 ANSI in anticipation of getting to UTF-8 without going through UTF-16 hell. We cannot compile with UTF-16.
2.9 has only one version, UTF-8. On Windows, we set the codepage to UTF-8, so on all platforms our code is UTF-8 and wxWidgets interfaces with us in UTF-8. On Linux I assume the codepage is already UTF-8. By standardizing on 2.9 we avoid the multi-build confusion of 2.8, and we need 2.9 for UTF-8 internationalization.
Make sure you read build-unix.txt and configure wxWidgets using the configure parameters given.
Curious, why is it incredibly hard to provide wxWidgets 2.9.0? If you mean for users, that's why we static link it.
It's unfortunate that we require so many big dependencies, but we need them all. At least on Debian/Ubuntu, all but wxWidgets are available as packages. Eventually they'll provide a 2.9 package.
**Martii Malmi (AKA Sirius) “COPA trial” email #174**
**Date: Sun, 28 Feb 2010 14:47:01 +0000**
**From: Satoshi Nakamoto
**Subject: Re: Bitcoind**
**To: mmalmi@cc.hut.fi**
I put it at bitcoin.org/download/linux64-0.2.7.1.tar.gz. You can delete
it when you've got it.
I thought about what might cause the problem you're having and made a
change that this build includes. This might have been unsafe code,
although it would probably always get lucky.
in util.cpp, old:
const char* wxGetTranslation(const char* pszEnglish)
{
// Wrapper of wxGetTranslation returning the same const char* type
as was passed in
static CCriticalSection cs;
CRITICAL_BLOCK(cs)
{
// Look in cache
static map
map
if (mi != mapCache.end())
return (*mi).second;
// wxWidgets translation
const char* pszTranslated =
wxGetTranslation(wxString(pszEnglish, wxConvUTF8)).utf8_str();
// We don't cache unknown strings because caller might be
passing in a
// dynamic string and we would keep allocating memory for each
variation.
if (strcmp(pszEnglish, pszTranslated) == 0)
return pszEnglish;
// Add to cache, memory doesn't need to be freed. We only
cache because
// we must pass back a pointer to permanently allocated memory.
char* pszCached = new char[strlen(pszTranslated)+1];
strcpy(pszCached, pszTranslated);
mapCache[pszEnglish] = pszCached;
return pszCached;
}
return NULL;
}
new:
const char* wxGetTranslation(const char* pszEnglish)
{
// Wrapper of wxGetTranslation returning the same const char* type
as was passed in
static CCriticalSection cs;
CRITICAL_BLOCK(cs)
{
// Look in cache
static map
map
if (mi != mapCache.end())
return (*mi).second;
// wxWidgets translation
wxString strTranslated = wxGetTranslation(wxString(pszEnglish,
wxConvUTF8));
// We don't cache unknown strings because caller might be
passing in a
// dynamic string and we would keep allocating memory for each
variation.
if (strcmp(pszEnglish, strTranslated.utf8_str()) == 0)
return pszEnglish;
// Add to cache, memory doesn't need to be freed. We only
cache because
// we must pass back a pointer to permanently allocated memory.
char* pszCached = new char[strlen(strTranslated.utf8_str())+1];
strcpy(pszCached, strTranslated.utf8_str());
mapCache[pszEnglish] = pszCached;
return pszCached;
}
return NULL;
}
If you still suspect this code, for testing you could change it to:
const char* wxGetTranslation(const char* pszEnglish)
{
return pszEnglish;
}
_mmalmi@cc.hut.fi wrote:_
_> I tried debugging my build of bitcoind with ddd debugger, but didn't_
_> have much success yet. It always ends up taking all the system's memory_
_> and finally crashes. Could you please send me again the latest 64 bit_
_> build of bitcoind, so I can see if the problem is about my build?_
_>_
**Martii Malmi (AKA Sirius) “COPA trial” email #175**
**Date: Sun, 28 Feb 2010 20:09:07 +0000**
**From: Satoshi Nakamoto
**Subject: Re: Bitcoind**
**To: mmalmi@cc.hut.fi**
Could you send me the debug.log?
_mmalmi@cc.hut.fi wrote:_
_> I tried debugging my build of bitcoind with ddd debugger, but didn't_
_> have much success yet. It always ends up taking all the system's memory_
_> and finally crashes. Could you please send me again the latest 64 bit_
_> build of bitcoind, so I can see if the problem is about my build?_
_>_
**BitcoinTalk**
Re: New icon/logo
_2010-03-02 02:33:05 UTC_ - [-](https://bitcointalk.org/index.php?topic=64.msg588#msg588)
We have the standard icon sizes, and the full size scales nicely to anything else.
I added the full size to the first post.
**Martii Malmi (AKA Sirius) “COPA trial” email #178**
**Date: Tue, 02 Mar 2010 22:27:22 +0000**
**From: Satoshi Nakamoto
**Subject: Re: Bitcoind**
**To: mmalmi@cc.hut.fi**
Does it still do it if you didn't do getinfo?
You could comment out the CreateThreads listed below, then re-enable
them one at a time until it does it again. Then we would know which
thread the problem is in.
net.cpp, under // Start threads
CreateThread(ThreadIRCSeed, NULL)
CreateThread(ThreadSocketHandler, NULL, true)
CreateThread(ThreadOpenConnections, NULL)
CreateThread(ThreadMessageHandler, NULL)
init.cpp:
CreateThread(ThreadRPCServer, NULL);
_mmalmi@cc.hut.fi wrote:_
_> Here goes. I forgot to mention the crash error message:_
_>_
_> terminate called after throwing an instance of 'std::bad_alloc'_
_> what(): std::bad_alloc_
_>_
----
Kicking the Hornet’s Nest: The Complete Writings, Emails, and Forum Posts of Satoshi Nakamoto, the Founder and Creator of Bitcoin
Everything Satoshi wrote publicly arranged in chronological order.
Table of Contents - parts 1 -22
part 1
part 2
part 3
part 4
part 5
part 6
part 7
part 8
part 9
part 10
part 11
part 12
part 13
part 14
part 15
part 16
part 17
part 18
part 19
part 20
part 21
part 22 - the end

Starting to upload "Kicking the Hornet's Nest" in markdown format here on nostr. It's broken into 22 parts so as to allow for notes of somewhat normal size. Hopefully all 22 will work and are not too long.

# Kicking the Hornet’s Nest

### The Complete Writings, Emails, and Forum Posts of Satoshi Nakamoto, the Founder of Bitcoin and Cryptocurrency
Third Edition
Mill Hill Books
----
### Kicking the Hornet’s Nest: The Complete Writings, Emails, and Forum Posts of Satoshi Nakamoto, the Founder of Bitcoin and Cryptocurrency
Copyright © 2019 Mill Hill Books. All rights reserved.
Third edition copyright © 2024 Mill Hill Books. All rights reserved.
Published by Mill Hill Books
ISBN 978-0-359-32744-7

----
It would have been nice to get this attention in any other context. WikiLeaks has kicked the hornet's nest, and the swarm is headed towards us.
- *Satoshi Nakamoto, December 11, 2010, 23:39:16 UTC*
_This statement was in reference to an article by PC World. It can be accessed at_ [_https://www.pcworld.com/article/213230/could_wikileaks_scandal_lead_to_new_virtual_currency.html_](https://www.pcworld.com/article/213230/could_wikileaks_scandal_lead_to_new_virtual_currency.html)_._
_Two days later, Satoshi Nakamoto disappeared from making further public postings._
----
_**Sources:**_
- [_https://satoshi.nakamotoinstitute.org_](https://satoshi.nakamotoinstitute.org/) _- This was the main resource for this book. Their work and organization is priceless._
- [_https://BitcoinTalk.org/_](https://bitcointalk.org/) _- The forum set up by Satoshi._
- [_http://www.metzdowd.com/pipermail/cryptography_](http://www.metzdowd.com/pipermail/cryptography) _- The Cryptography Mailing List was used by the group generally known as “cypherpunks.”_
- [_https://plan99.net/~mike_](https://plan99.net/~mike) _- Personal emails to/from Mike Hearn, publicly shared on the Internet at this site._
- [_https://en.bitcoin.it/wiki/Source:Trammell/Nakamoto_emails_](https://en.bitcoin.it/wiki/Source:Trammell/Nakamoto_emails) _- Personal emails to/from Dustin Trammell (aka Druid) from January 2009. Also, emails from Trammell’s website:_ [_https://www.dustintrammell.com/s/Satoshi_Nakamoto.zip_](https://www.dustintrammell.com/s/Satoshi_Nakamoto.zip)
- [_https://online.wsj.com/public/resources/documents/finneynakamotoemails.pdf_](https://online.wsj.com/public/resources/documents/finneynakamotoemails.pdf) _- Personal emails to/from Hal Finney, publicly shared on this Wall Street Journal site._
- [_https://www.coindesk.com/satoshi-nakamoto-hal-finney-emails_](https://www.coindesk.com/satoshi-nakamoto-hal-finney-emails) _- “Newly discovered emails” revealed in November, 2020, in a CoinDesk article written by Michael Kapilkov._
- [_https://bitcoinmagazine.com/technical/bitcoin-adam-backs-complete-emails-satoshi-nakamoto_](https://bitcoinmagazine.com/technical/bitcoin-adam-backs-complete-emails-satoshi-nakamoto) _which references the COPA case file dump at_ [_https://www.dropbox.com/scl/fo/4y3gdele4foy15006z8ch/h?rlkey=scs42wew1o3vwfv0nduhc43dm&e=1&dl=0_](https://www.dropbox.com/scl/fo/4y3gdele4foy15006z8ch/h?rlkey=scs42wew1o3vwfv0nduhc43dm&e=1&dl=0) _– Personal emails to/from Adam Back previously unseen publicly prior to the February 2024 COPA case._
- [_https://mmalmi.github.io/satoshi/_](https://mmalmi.github.io/satoshi/) _- Personal emails to/from Martii Malmi. These were released publicly by Malmi in February 2024 as part of the COPA case._
----
_Notes on the Third Edition_
_One might ask, “Why is there a third edition of Satoshi’s words?” The simple answer is that new, or rather, previously unseen Satoshi writings have emerged publicly._
_The “Hal Finney emails” cited above by CoinDesk in November of 2020 prompted version two of “Kicking.”_
_Then, in February of 2024, the “COPA trial” began with the possible identity of Satoshi Nakamoto at the core of the case. That trial called in individuals who had made early electronic contact with Satoshi to offer witness statements. As a result, new, previously private “Satoshi emails” became public. Hence, here is the Third Edition of “Kicking.”_
_I think that a chronological record of Satoshi’s writings is interesting, useful, and important. To that end, I’m committed to keeping this book freely offered and in several formats. See all the links at_ [_https://hive.blog/@crrdlx/satoshi_](https://hive.blog/@crrdlx/satoshi) _to download a copy._
- _crrdlx, editor_
_February 24, 2024_
[https://hive.blog/@crrdlx/satoshi](https://hive.blog/@crrdlx/satoshi)

----
This book is available in print at [https://lulu.com](https://lulu.com/)
Digital versions (pdf, txt) can be obtained for free at [https://hive.blog/@crrdlx/satoshi](https://hive.blog/@crrdlx/satoshi) Visit this site for all links, digital and print.
----
_Notes from the Editor (written for the First Edition)_
_Ten years ago, on January 3, 2009, Bitcoin went live. That day, Satoshi Nakamoto generated the first Bitcoin block, which has since come to be known as the “Genesis block.” In the Genesis block, Satoshi encoded the message, “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.” This was likely to both timestamp the block to the outside world (using the title of the article on the front page of the London’s daily_ The Times, _but, more importantly, to offer a comment. The comment gave insight that was both outward toward the financial system and inward toward Satoshi himself. Any article title could have been chosen as a timestamp. This one was clearly meant to convey a message. Satoshi sent the message that he does not favor banks. More likely, he does not like the fractional reserve banking system and the endless creation of fiat currency that coincides with fractional reserve banking. 2008 and 2009, when Bitcoin was born, were the years of rampant “cash injections,” “stimulus packages,” “quantitative easing,” and “too-big-to-fail” bank bailouts. Bitcoin, with its hard-coded 21 million coin limit, would solve the fiat addiction. Infinite paper money would be replaced by finite numbers written in code._
_What’s more, Satoshi fired a shot across the bow of the financial powers-that-be. Bankers, politicians, and the manipulators of the money supply have not been happy about Bitcoin and cryptocurrency. Ten years in, the powers seem to be warming to the idea a bit—or, at least, they’re beginning to realize the use-cases and the inevitability of crypto. Still, their reluctant “embrace” is very slow and very cautious. I imagine one of the most threatening things to the powerful is to suggest that power be taken from them and then dispersed to the people themselves. Putting power into the hands of the people means saying, “You know what? We the people really don’t need you after all. Have a nice day.” Bitcoin suggests this very thing financially—it gives the power, freedom, and responsibility to the individual. As a boy, my brother and I would occasionally come upon a hornet’s nest while playing in the woods. When we did, being boys, there was really nothing else to do but to throw a rock or stick at it, or kick it. Kicking a hornet’s nest isn’t rational, but just too tempting and just too much fun not to. And when you do it, you do it fast and then you run like hell!_
_Since January 2009, some people have placed an almost religious status onto Satoshi and his writings (the term “Genesis block” serves an example). I do not subscribe to this position, and I discourage anyone from doing so. Satoshi is, or was, a man, or a woman, or a group—as fallible and as human as us all. And, I’m sure he holds just as many hang-ups and weaknesses as anyone else. Applying demi-god status to a mortal man is unfair to that person, and sets one’s self up for disappointment. And yet, Satoshi was very clever. So, I do think his writings, interactions, and thought processes are important, revolutionary, and worth documenting. I realize that all of these words are fantastically preserved and organized on websites, particularly at the Satoshi Nakamoto Institute (_[_https://nakamotoinstitute.org/_](https://nakamotoinstitute.org/)_). Still, having a hard copy for reference or referral may be appealing to some. And, I realize other such books exist already. However, they include_ _most__, but not all, of Satoshi’s writings and they include excellent commentary as well. This book is distinct in that it has the entirety of Satoshi’s work included, is arranged chronologically rather than topically, and offers almost zero commentary. The goals here were to be complete, to build a chronological chain of Satoshi’s words and thoughts, and to allow Satoshi’s words to speak for themselves free from an editor’s interjections. Thus, this book was assembled.
_Following are all of the public writings of Satoshi Nakamoto, the founder of Bitcoin—at least these are all that I could find. They are arranged in chronological order. Many of the writings are very technical. Some are purely code and will read as jibberish to most of us. I debated whether to include these “writings” or not. But, I wished to have a full account of all of Satoshi’s writings, and so, even the code was included. Though unwieldly to read, even they convey a message—Satoshi was focused, businesslike, and pragmatic in his dealings and work. Since many of the writings are in response to others’ comments, and for the sake of revealing the context of Satoshi’s words, there are writings by other people included here as well. However, any non-Satoshi writings_ _are_ _italicized. Satoshi’s writings can be identified by the fact that they are_ _not_ _italicized._
||
| ----------- |
| Satoshi’s words are not italized. They look like this. |
| _Words by others_ _are_ _italicized. They look like this._ |
||
_Compiling these writings was educational to the editor. It seemed to offer insight into Satoshi Nakamoto. Lessons were learnt regarding Satoshi combing through his words, or, at the least, following were my interpretations:_
_Satoshi is polite. He said “Thanks” or “Thank you” several times. Often, an exclamation point was included for emphasis. And, he apologizes when appropriate._
_Satoshi is a good teacher. In the earlier phases especially, he patiently and clearly answers questions one-by-one._
_Satoshi is a clear communicator. His English, grammar, and syntax are nearly flawless. Although he does, on occasion, dabble in textese—he throws in a WTF and an AFAIK—nearly all of his communications are in clear, declarative, complete and correct sentences._
_Satoshi is a fantastic thinker. He is able to think with beautiful logic. He is able to think abstractly in concepts via analogies (such as the Gambler’s Ruin problem in the whitepaper). His more formal logic is seen in his code, naturally, but it is also witnessed in his writings. For example, in a response to theymos, Satoshi simply states, “The premise is false,” then he explains why. As something of an aside, that statement harkens to Ayn Rand’s_ Atlas Shrugged_, _where “check your premises” is an ongoing sub-theme in the novel. For anyone unfamiliar with the book, the phrase does two things. First, it’s a reference to Aristotelian logic of non-contradiction—if two things seem to contradict, they actually don’t, one of them is wrong—check your premises. And secondly, the uber-theme of the novel itself is an indictment of government bailouts very similar to the Chancellor’s brink-of-bailout of January 3, 2009._ Atlas Shrugged _damns governments and powers which purport to know what’s best and act for the people’s best interest, rather than freeing the people to simply act for themselves. I don’t think Satoshi was thinking_ Atlas Shrugged _when he wrote the premise statement to theymos. I believe he was merely thinking clearly. But, the theme of_ Atlas Shrugged_, _and the “theme” of Bitcoin, certainly do seem to coincide with those words._
_Satoshi likes to double-space after a sentence is complete. This was the standard taught to typing or keyboarding students up until roughly the year 2000. Stylometry, studying a person’s literary quirks in writing, has been a ripe field for pondering the identity of Satoshi Nakamoto. It may be a stretch, but with few clues, this double-space idiosyncrasy has often been noted in places like /r/Bitcoin on Reddit. There has also been discussion about Satoshi’s tendencies toward British spellings of words, such as cheques for checks, neighbours for neighbors, decentralised or formalised with an s rather than a z, or use of the word “bloody.” Some say these British tendencies were for obfuscation—to fake the world. I personally think there is something to the British influence. His British usage reads very organicly and unforced. I interpret that Satoshi indeed had some British-influenced upbringing (e.g., Britain, or Canada or Australia or a British Caribbean island). Like micro-expressions in facial body language, wording, in organic thought or writing, becomes hard-coded. To_ _not_ _release those tendencies would require constant and extreme discipline. Of course, Satoshi just might well have those qualities and fool me right there! Regarding double-spacing, I tend to believe that the double-spacing may well hint at Satoshi’s age…he most likely learned to type when double-spacing after a period was standard. Revolutionary ideas have often come in history from people in their 20s or early 30s, but in this case, that seems too young. Typing this specific way, given the revolutionary thoughts for Bitcoin, and the technical skill acquired and necessary to create the code, as well as the polish in writing, Satoshi was likely not young when working on Bitcoin. Purely speculating, I would guess that he was likely around 40 when the whitepaper came out in 2008…meaning he was likely born around 1968, give-or-take a few years._
_Satoshi is a heads-down programmer. Many of the writings here are mundane coder-talk. They are likely cryptic jibberish to nearly everyone. Satoshi does not fiddle with small-talk or niceties. He consistently remains focused and practical. When wished a happy Christmas by Mike Hearn if he celebrates Christmas, Satoshi makes no response either way. He merely proceeds to the task-at-hand._
_Satoshi values privacy. This is witnessed in his words—naturally for a cypherpunk—but also in his focused neglect of including anything personal about himself (or herself), such as the Christmas non-comment. It’s worth noting here that since Satoshi Nakamoto is unknown, Satoshi’s sex is unknown. Satoshi may be a man, woman, or group. However, since_ サトシ _is generally a male’s name in Japan, Satoshi is referred to here using singular, male pronouns._
_Satoshi can pack a lot into a few words. His writing style is brief and to-the-point, but not impolite or terse. On the day the whitepaper was revealed, when he writes,_ “I've been working on a new electronic cash system that's fully peer-to-peer, with no trusted third party,” _he could have almost simply stopped right there._
_Satoshi has a practical sense of marketing about him. He understands the importance of a good icon or logo. He understands that slow growth is not necessarily a bad thing. And he gets that there is such a thing as bad publicity (e.g., the WikiLeaks, hornet’s nest comment)._
_Despite his focused, logical, business-minded tendencies, there seems to me to be a bit of boyishness about him. This is seldom shown, but it is there, revealed in his writings in rare glints. This leads to a final conclusion…_
_Satoshi is human. When he writes to Mike Hearn on_ _Wed, March 9, 2011_, “That’s great news!” _the guarded wall that normally shields Satoshi-the-person seems to quaver. It hints at a real person, with emotions, excitement, and an almost childlike glee in what he’s doing, lying somewhere behind the façade of Satoshi Nakamoto. He’s kicking the hornet’s nest himself, and he knows it. And, when just two days before withdrawing from public posts_
----
This is a short form (kind 1, I assume), written in obsidian.
Doing a test with obsidian
Chapter 7
Not sure what to do next, weasel and stoat went back to the mountain. They slowly climbed to the top, then weasel said to the sage, "I went to towns A through E, but I still don't know the answer to, "Who is the buidlr?"
Sage said, "Ahh, but you do know the answer. And, the answer was in the riddle itself all along: the buidlr is he, the buidlr is she, the buidlr is we. We are all the buildr."
The answer is: we all are the buidlr. Look it up: https://en.wikipedia.org/wiki/Mustelidae"
The end
Chapter 7
Not sure what to do next, weasel and stoat went back to the mountain. They slowly climbed to the top, then weasel said to the sage, "I went to towns A through E, but I still don't know the answer to, "Who is the buidlr?"
Sage said, "Ahh, but you do know the answer. And, the answer was in the riddle itself all along: the buidlr is he, the buidlr is she, the buidlr is we. We are all the buildr."
The answer is: we all are the buidlr. Look it up: https://en.wikipedia.org/wiki/Mustelidae."
The end
Chapter 6
Finally, in E-town, weasel and stoat came upon the honey badger. Excited to be at the end of his journey, weasel shouted, "Hello honey badger! You look really busy doing honey badger things, but could you tell me, who is the buidlr?"
Honey badger paused, raised his chin and said, "I don't care," and went about doing honey badger things. Then he added, "It's important."
Chapter 5
In D-town, they came upon an otter swimming in the river. "Hello there otter," said weasel, "do you happen to know who the buidlr is?"
Otter paused a moment then said, "Howdy there! Nope, sorry, I don't know." Then he added, "Well, gotta get back to work now. It's important for things to work."
And weasel and stoat moved on.

