In the spirit of open communication, I thought I'd try doing a monthly "what's up" with bitcoin development. Here's what's on my radar:
• Wladimir agreed to help pull patches, especially Qt-GUI-related patches, and is now part of the core dev team (Wladimir did the bulk of the work on the new Qt-based GUI).
• Matt and Wladimir will be working on 0.5 release candidate 1 binaries and an updated release process to either ship the Qt libraries or statically link against Qt; the goal is to have them ready this weekend.
• Network stability and wallet security are still my top concerns; start-up experience for new users (the long wait to download the block chain) is next on my list.
• Amir's Bitcoin Improvement Process proposal hasn't been getting the attention it deserves; I'm just as guilty as anybody, I suppose we're all very busy. Helping improve it and writing some BIPs is high on my priority list.
• I've setup a public-write-only email@example.com mailing list to be used as an official way to report and then discuss potential security or denial-of-service vulnerabilities in the bitcoin protocol, and invited the following people to participate: Amir Taaki, Mike Hearn, Stefan Thomas, Nils Schneider, Pieter Wuille, Jeff Garzi and myself.
Stuff I've been working on or plan to be working on soon; let me know if you are able to take on any of these, there are too many things on my TODO list:
• Implementing/experimenting: multi-signature transactions and using OP_EVAL and a new type of bitcoin address to create 'always secure' or 'always backed up' wallets.
• Write BIPs proposing: OP_EVAL. 'standard' multi-signature transactions. Maybe an informational BIP proposing how to roll out upgrades in general.
• Denial-of-service detection/prevention (see the DoSorphans pull request). It would be really nice if somebody with experience simulating network behavior would take this over...
• Cross-platform testing infrastructure. I've made good progress on a Twisted-based tool, but still have a lot to do.
• Tighten up block-time rules to fix the potential "timejacking" attack.
• Work on 'discouraging' blocks/transactions to punish bad-for-the-common-good-but-good-for-me behaviors from miners or nodes.
• Get back to work on headers-only-for-initial-download, so initial startup experience is better for people.
• Rethink/rework transaction fees; give both miners and clients more flexibility to create a market instead of magic hard-coded constants.
• Organization; many things would be much easier if there was a non-profit organization like the Tor Project to pay core developers, testers, a PR person, pay for the Jenkins nightly build server, etc etc etc.
October 13th, 2011
Thursday, October 13, 2011
The State of Bitcoin Development
From the desk of
Tom Williams Gavin Andresen: