Mike Hearn (OP)
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 10:40:33 AM Last edit: March 07, 2011, 10:54:45 AM by [mike] |
|
Google is pleased to announce the release of BitCoinJ, an implementation of the BitCoin system in Java. You can get it here under the Apache 2 license: http://code.google.com/p/bitcoinj/It speaks the native p2p BitCoin protocol so does not rely on the JSON-RPC interface. It implements the "simplified payment verification" design outlined in Satoshis paper and as a result, is more suitable for mobile client developers than miners. The library is not complete yet, but it's complete enough to send and receive coins. BitCoinJ gives you: - A reasonably easy to use API with full JavaDocs
- A getting started guide that takes you through one of the included ...
- Example apps, showing you how to do build a simple app with the library and how to solve Hals private key challenge.
- Unit tests and code with lots of comments. If you found it hard to understand the official implementation, try reading this one.
Please be aware of the following caveats: - Both the API and the on-disk Wallet format will change in future releases. If you want to switch a wallet from this version of the library to another version, you'll probably have to send the coins between the two.
- The core block chain handling is not complete. It does not persist headers or block locators to disk yet, so every time you start your app it will redownload the block chain from scratch. It does not handle forks in the chain yet, this is coming in the next release.
- There are unit tests but the coverage isn't as high as I'd like. There'll be more in future.
- I'm really a C++ programmer by background so undoubtably some things could be more java-ish than they are.
I want this implementation to be as easy to understand as possible especially for people who aren't familiar with C++. If you aren't sure how to accomplish something, functionality you need isn't a part of the public API, or part of the code confuses you, let me know and I'll try to make it clearer. The code is in Subversion and patches are welcome! Please post them either here in this forum, to the bitcoinj Google Group, or (better) using the Google Code review functionality.
|
|
|
|
doublec
Legendary
Offline
Activity: 1078
Merit: 1005
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 12:18:06 PM Last edit: March 07, 2011, 12:56:57 PM by doublec |
|
Great to see a bitcoin implementation developed from scratch!
|
|
|
|
|
Steve
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 04:39:20 PM |
|
Google is pleased to announce the release of BitCoinJ
Could you elaborate on or clarify this statement? Are you in any way affiliated with Google the company and are you suggesting this is a project that is officially sponsored by Google?
|
|
|
|
N12
Donator
Legendary
Offline
Activity: 1610
Merit: 1010
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 04:53:35 PM |
|
"Copyright 2011 Google Inc." says the source code.
|
|
|
|
SmokeTooMuch
Legendary
Offline
Activity: 860
Merit: 1021
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 04:55:12 PM |
|
lol O.o so, uhm, are there any downloads ? ^^Edit1: The code is in Subversion and patches are welcome! Please post them either here in this forum, to the bitcoinj Google Group, or (better) using the Google Code review functionality.
how to get the source ?Edit2: Sorry, I can't brain today. I have the dumb. ->
|
|
|
|
Mike Hearn (OP)
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 05:29:49 PM |
|
There have been a lot of questions on IRC about what, if anything, Google is doing with BitCoin. So let me clear this up.
Google staff have the ability to spend ~20% of their time on projects that interest them, as long as they are relevant or useful to the company. This policy exists to keep Google flexible and to let us explore lots of ideas at once without too much corporate overhead. I've chosen to use some of mine writing and releasing this library through the standard process we have for open sourcing our code. This means it's it has been checked by our lawyers for things like trademark/export compliance, the relevant people have approved its release and so on. This is why the code has our copyright at the top. Google benefits from and supports the open source community, and we're proud of that fact.
This is not "official" in that it does not reflect some vast corporate master plan, we are not about to start accepting BitCoins for AdWords, we have not just dropped 200GHash/sec into the network and we are not going to fork the block chain (to mention just a few of the theories I've seen floating around).
A few people have been confused by this and that's reasonable, because most companies don't give their staff as much freedom as Google does. For now, this is just me and my 20% time. I would like to see us scale up our involvement in future but there are no guarantees of that and you should think of me as just another open source contributor, who happens to be fortunate enough to get paid to work on BitCoin in (a fraction of) office hours.
|
|
|
|
mndrix
Michael Hendricks
VIP
Sr. Member
Offline
Activity: 447
Merit: 258
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 05:36:33 PM |
|
Google staff have the ability to spend ~20% of their time on projects that interest them, as long as they are relevant or useful to the company
Thanks [mike] (and Google) for using your 20% time on this project. This is a great contribution to the Bitcoin community.
|
|
|
|
SmokeTooMuch
Legendary
Offline
Activity: 860
Merit: 1021
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 05:44:18 PM |
|
[mike] should let us know his bitcoin address so we can donate to him for spending his precious time on this.
|
|
|
|
Dobry Den
Newbie
Offline
Activity: 41
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 06:49:28 PM |
|
Inspiring to see you use your 20% discretion on this. ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif)
|
|
|
|
hazek
Legendary
Offline
Activity: 1078
Merit: 1003
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 11:44:56 PM |
|
Google staff have the ability to spend ~20% of their time on projects that interest them, as long as they are relevant or useful to the company
Thanks [mike] (and Google) for using your 20% time on this project. This is a great contribution to the Bitcoin community. Is it? I don't understand how he can take something that's open source and put a copy right on it? I'm not a programmer so that might be the reason why. Also I'm very wary about some big company having anything to with the BitCoin clients. I of course appreciate his effort I just don't fully understand what he is doing and what his motivations might be.
|
My personality type: INTJ - please forgive my weaknesses (Not naturally in tune with others feelings; may be insensitive at times, tend to respond to conflict with logic and reason, tend to believe I'm always right)
If however you enjoyed my post: 15j781DjuJeVsZgYbDVt2NZsGrWKRWFHpp
|
|
|
LMGTFY
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 07, 2011, 11:51:18 PM |
|
Is it? I don't understand how he can take something that's open source and put a copy right on it? I'm not a programmer so that might be the reason why. Also I'm very wary about some big company having anything to with the BitCoin clients.
I of course appreciate his effort I just don't fully understand what he is doing and what his motivations might be.
He's not "take[n] something that's open source and put a copy right on it". Google held the copyright (as he developed it at Google) and instead of not releasing it, they chose to release it under an open source license. Most (all?) open source software will be copyrighted. I suppose [mike] could have released the client into the public domain, but I suspect Google would prefer some sort of license.
|
This space intentionally left blank.
|
|
|
hazek
Legendary
Offline
Activity: 1078
Merit: 1003
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 08, 2011, 12:16:02 AM |
|
Is it? I don't understand how he can take something that's open source and put a copy right on it? I'm not a programmer so that might be the reason why. Also I'm very wary about some big company having anything to with the BitCoin clients.
I of course appreciate his effort I just don't fully understand what he is doing and what his motivations might be.
He's not "take[n] something that's open source and put a copy right on it". Google held the copyright (as he developed it at Google) and instead of not releasing it, they chose to release it under an open source license. Most (all?) open source software will be copyrighted. I suppose [mike] could have released the client into the public domain, but I suspect Google would prefer some sort of license. Thanks, that clears it up for me.
|
My personality type: INTJ - please forgive my weaknesses (Not naturally in tune with others feelings; may be insensitive at times, tend to respond to conflict with logic and reason, tend to believe I'm always right)
If however you enjoyed my post: 15j781DjuJeVsZgYbDVt2NZsGrWKRWFHpp
|
|
|
alkor
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 08, 2011, 01:57:20 AM |
|
Thanks! This is great news. Next, we need a python implementation ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif)
|
|
|
|
error
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 08, 2011, 02:17:55 AM |
|
Thanks! This is great news. Next, we need a python implementation ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) This is supposed to be funny, right?
|
3KzNGwzRZ6SimWuFAgh4TnXzHpruHMZmV8
|
|
|
hippich
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 08, 2011, 03:44:04 AM |
|
Thanks! This is great news. Next, we need a python implementation ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) This is supposed to be funny, right? well.. there is no python implementation. there is only interface to wallet database. it would be nice to have python library for communitcation with p2p network. (although, I do not like python nor going to use it for this =))
|
|
|
|
Luke-Jr
Legendary
Offline
Activity: 2576
Merit: 1186
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 08, 2011, 07:33:43 PM |
|
Thanks! This is great news. Next, we need a python implementation ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) This is supposed to be funny, right? well.. there is no python implementation. there is only interface to wallet database. it would be nice to have python library for communitcation with p2p network. (although, I do not like python nor going to use it for this =)) There are presently at least 2 independent Python p2p implementations...
|
|
|
|
LZ
Legendary
Offline
Activity: 1722
Merit: 1072
P2P Cryptocurrency
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 09, 2011, 08:31:11 PM |
|
[mike], so you really work at Google?
|
My OpenPGP fingerprint: 5099EB8C0F2E68C63B4ECBB9A9D0993E04143362
|
|
|
error
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 09, 2011, 08:37:57 PM |
|
|
3KzNGwzRZ6SimWuFAgh4TnXzHpruHMZmV8
|
|
|
caveden
Legendary
Offline
Activity: 1106
Merit: 1004
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
March 09, 2011, 08:55:27 PM |
|
Thank you [mike] for this! Great work!
I'm browsing the code right now... You implemented all the crypto stuff on your own?? Wow... is bitcoin choice of cryptographic functions so particular that you couldn't find no Java library for it? Anyway, all my respects to you, sir! All those numbers and binary operations make me dizzy just to look at....
|
|
|
|
|