I got my timing right and had the following validated contract mined in block #3,000,000 in the transaction https://etherscan.io/tx/0x7c03009d52ec50069adb4311d5225fe2249ce5afb3a9951af258f0f680efb19a at the address 0x952c9a569725d4cb710c69184e5eb8f56d6b8bd6, at Jan-15-2017 10:10:35 AM +UTC (21:10:35 AEST):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
pragma solidity ^0.4.6; contract BokkyPooBahWuzHere { function BokkyPooBahWuzHere() { } function helloWorld() constant returns (string) { return "Hello, World!"; } function yaaay() constant returns (string) { return "yaaay!"; } } |
Here is the Application Binary Interface:
1 |
[{"constant":true,"inputs":[],"name":"yaaay","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"helloWorld","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"}] |
Block #3,000,000 only happens once in a lifetime, and my lifetime. I had to spend a little bit of time thinking about when to send my transaction to get into block #3,000,000. I sent my transaction just after my geth
node received block #2,999,998. From this time on, miners around the world would be mining the transactions to include into block #2,999,999. My transaction was in the transaction pool when block #2,999,999 was mined and propagated through the peer-to-peer network, and so my transaction was included in block #3,000,000.
And from the /r/ethereum post on block /r/#3,000,000:
- user /u/WhySoS3rious spotted my transaction – well done!
- user /u/IAMA_Jewish_Princess posted the link http://scigen.csail.mit.edu/scicache/622/scimakelatex.31218.BokkyPooBah.html where the paper Improving DHTs Using Game-Theoretic Information (downloaded 11:13 Jan 16 2017 AEST) by BokkyPooBah can be found. Only that this paper was NOT published by THIS BokkyPooBah, but one of the other BokkyPooBah doppelgängers.