Pages:
Author

Topic: [ANN] BitcoinSpinner - page 15. (Read 45071 times)

legendary
Activity: 1764
Merit: 1002
December 05, 2011, 12:20:57 AM
#43
today i moved 0.5 BTC from my laptop wallet ->Spinner->mtgox->Spinner-> back to wallet all no problem.  Nice and easy.
member
Activity: 107
Merit: 10
https://bt.cx
December 04, 2011, 09:57:38 PM
#42
Can you put up your own server?
legendary
Activity: 980
Merit: 1004
Firstbits: Compromised. Thanks, Android!
December 02, 2011, 12:14:23 AM
#41
The problem is you still have to wait to check if the transaction actually took place.
I am not sure what problem you are referring to. Please elaborate.

Maybe Findeton refers to a problem of sending couple transactions in quick succession? One needs to wait for each transaction to be picked up in a block then retrieve the TX outs again from server-side blockchain?

Yeah, that is a problem with only having one private key. I tripped up on this with StrongCoin too (although a workaround was implemented of allowing a spend to multiple addresses--this makes the problem much less severe.) Allowing multiple spends at once will help BitcoinSpinner too, but considering the simple design, it should probably be something the user has to ask for specifically. Also... while a little confusing at first, it might help to list the change itself as also being "coins on the way" ("change on the way?"), with the balance of the mini-wallet being 0.00 for a while after a spend.

StrongCoin and other alternative clients may have a limitation with change sent back to yourself. With BitcoinSpinner the change sent back to yourself is available for spending immediately, and you don't have to wait for a confirmation. In that regard BitcoinSpinner works like the Satoshi client.

You can do a simple test with BitcoinSpinner where you:
1. Have  zero balance in BitcoinSpinner
2. Send 2 bitcoins to BitcoinSpinner in a single transaction
3. Send 0.9995 BTC to another client two times right after each other with no intermediate confirmations.
4. Wait for the funds to arrive in the other client.


I see. That's great then... another plus for BitcoinSpinner.

(I checked the last StrongCoin transaction I sent earlier today, and while it worked, it seemed a bit confusing as to exactly why it crafted the two (!) transactions for my single transaction in the way that it did...)
Jan
legendary
Activity: 1043
Merit: 1002
December 01, 2011, 12:03:39 PM
#40
The problem is you still have to wait to check if the transaction actually took place.
I am not sure what problem you are referring to. Please elaborate.

Maybe Findeton refers to a problem of sending couple transactions in quick succession? One needs to wait for each transaction to be picked up in a block then retrieve the TX outs again from server-side blockchain?

Yeah, that is a problem with only having one private key. I tripped up on this with StrongCoin too (although a workaround was implemented of allowing a spend to multiple addresses--this makes the problem much less severe.) Allowing multiple spends at once will help BitcoinSpinner too, but considering the simple design, it should probably be something the user has to ask for specifically. Also... while a little confusing at first, it might help to list the change itself as also being "coins on the way" ("change on the way?"), with the balance of the mini-wallet being 0.00 for a while after a spend.

StrongCoin and other alternative clients may have a limitation with change sent back to yourself. With BitcoinSpinner the change sent back to yourself is available for spending immediately, and you don't have to wait for a confirmation. In that regard BitcoinSpinner works like the Satoshi client.

You can do a simple test with BitcoinSpinner where you:
1. Have  zero balance in BitcoinSpinner
2. Send 2 bitcoins to BitcoinSpinner in a single transaction
3. Send 0.9995 BTC to another client two times right after each other with no intermediate confirmations.
4. Wait for the funds to arrive in the other client.
legendary
Activity: 980
Merit: 1004
Firstbits: Compromised. Thanks, Android!
December 01, 2011, 11:29:11 AM
#39
The problem is you still have to wait to check if the transaction actually took place.
I am not sure what problem you are referring to. Please elaborate.

Maybe Findeton refers to a problem of sending couple transactions in quick succession? One needs to wait for each transaction to be picked up in a block then retrieve the TX outs again from server-side blockchain?

Yeah, that is a problem with only having one private key. I tripped up on this with StrongCoin too (although a workaround was implemented of allowing a spend to multiple addresses--this makes the problem much less severe.) Allowing multiple spends at once will help BitcoinSpinner too, but considering the simple design, it should probably be something the user has to ask for specifically. Also... while a little confusing at first, it might help to list the change itself as also being "coins on the way" ("change on the way?"), with the balance of the mini-wallet being 0.00 for a while after a spend.

member
Activity: 62
Merit: 10
December 01, 2011, 06:39:06 AM
#38
The problem is you still have to wait to check if the transaction actually took place.
I am not sure what problem you are referring to. Please elaborate.

Maybe Findeton refers to a problem of sending couple transactions in quick succession? One needs to wait for each transaction to be picked up in a block then retrieve the TX outs again from server-side blockchain?
Jan
legendary
Activity: 1043
Merit: 1002
November 30, 2011, 02:36:35 PM
#37
Thanks for all the feedback so far. In the meantime a French and Swedish translation has been added by members of the community. Check out the topic on BitcoinSpinner in the Alternative Clients section, and let's continue there: https://bitcointalksearch.org/topic/bitcoinspinner-53353
legendary
Activity: 1526
Merit: 1134
November 28, 2011, 04:34:51 AM
#36
Congrats! Looks great, I will try it out in a bit.

Re: BitCoinJ and mobile. I fully agree that currently the BCCAPI/Electrum/server side approach gives better performance. I hope we can close that gap over time such that specialized servers are no longer necessary. For instance, using "getheaders" to catch up to the chain head for new users should give dramatically better first-start performance on mobiles, and it's a relatively simple change. That said, offloading everything to the server will probably have better performance and battery usage characteristics for the forseeable future.
Jan
legendary
Activity: 1043
Merit: 1002
November 28, 2011, 03:55:01 AM
#35
The problem is you still have to wait to check if the transaction actually took place.
I am not sure what problem you are referring to. Please elaborate.
Jan
legendary
Activity: 1043
Merit: 1002
November 28, 2011, 03:53:10 AM
#34
Hello,

I'm working on another alternative client Electrum, which has basically same goals like your implementation, but for desktop client (at this moment). I like your job, except this:

Quote
Simply put the BCCAPI (Bit Coin Client API) allows you to create a light-weight secure Bitcoin client in Java.

Is there any reason why to use some Java-specific protocol? I'm solving "ideal way how to do universal network layer" right now and thinking about some universal "Bitcoin client API" too, but I prefer platform independent protocol. I didn't found any format specification on BCCAPI (is there any?) and I'm too lazy to read Java sources (because I'm not a Java developer), but do you think there's some room for cooperation on making this protocol more universal, not Java-oriented?

Interesting.

Java is a programming language, not a protocol. The wire protocol is REST-like HTTP(S), and nothing prevents you from calling the server side from python. The raw API has 7 functions and is well documented with the Java interface declaration: http://code.google.com/p/bccapi/source/browse/trunk/src/com/bccapi/api/BitcoinClientAPI.java

The implementation of the interface is 200 lines of easy-to-read Java code and available here: http://code.google.com/p/bccapi/source/browse/trunk/src/com/bccapi/core/BitcoinClientApiImpl.java

Apart from this there is a bunch of Java classes for transactions and utilities that make it really easy to implement a UI on top of it.
full member
Activity: 126
Merit: 100
November 27, 2011, 03:51:30 PM
#33
The problem is you still have to wait to check if the transaction actually took place.
legendary
Activity: 1386
Merit: 1097
November 27, 2011, 01:55:37 PM
#32
Hello,

I'm working on another alternative client Electrum, which has basically same goals like your implementation, but for desktop client (at this moment). I like your job, except this:

Quote
Simply put the BCCAPI (Bit Coin Client API) allows you to create a light-weight secure Bitcoin client in Java.

Is there any reason why to use some Java-specific protocol? I'm solving "ideal way how to do universal network layer" right now and thinking about some universal "Bitcoin client API" too, but I prefer platform independent protocol. I didn't found any format specification on BCCAPI (is there any?) and I'm too lazy to read Java sources (because I'm not a Java developer), but do you think there's some room for cooperation on making this protocol more universal, not Java-oriented?
hero member
Activity: 731
Merit: 503
Libertas a calumnia
November 27, 2011, 01:38:11 PM
#31
GREAT work, thanks!
Jan
legendary
Activity: 1043
Merit: 1002
November 26, 2011, 12:01:06 PM
#30
Thank you community for all the support. Help pushing this app forward by
  • Rating it on the Android Market. A rating is good, some words even better.
  • Offering translations to other languages, by going to http://code.google.com/p/bitcoinspinner/ and contacting the authors. I just heard from Mats Henricson, who offered to make a Swedish transaltion.
  • Help us getting even better usability by suggesting feature improvements, a better color schemes, nicer icons, or even coin-sounds when Bitcoins tick in.
  • Check out the code and submit patches

I just tried this app, and so far, it's awesome! Just what was needed. (Although the color scheme and/or UI look is not my favorite.)
Thanks. One way of improving this could be to grab the screenshots, fix them up to your liking in photoshop, and send them to the authors.

I'm testing BitcoinSpinner right now. If I understand correctly, when I want to backup the wallet I need to export the QR code and keep it in a safe place because it contains my private keys unencrypted. 

I would like to know if it's possible to generate the wallet from a seed like you do in the SimpleClient that comes with BCCAPI. I really likes this feature because there is no need to backup the wallet, you just need to remember the passphrase.

BCCAPI is amazing. Keep the good work!

Thanks. BitcoinSpinner generates the random seed when it is first started, so it doesn't use the "generate seed from passphrase" feature which is available in the BCCAPI. The backup QR code contains the seed that the private key is generated from, so yes, you should print it out on paper and keep in a safe location.

A forum member is working on a different android client based on the BCCAPI where you use a passphrase + salt for generating the seed, just like the SimpleClient. However I am not sure how close this client is for a beta release. Since he is a member of this forum I'll let him decide when he is ready to announce it.

hero member
Activity: 637
Merit: 502
November 26, 2011, 12:02:41 AM
#29
I'm testing BitcoinSpinner right now. If I understand correctly, when I want to backup the wallet I need to export the QR code and keep it in a safe place because it contains my private keys unencrypted. 

I would like to know if it's possible to generate the wallet from a seed like you do in the SimpleClient that comes with BCCAPI. I really likes this feature because there is no need to backup the wallet, you just need to remember the passphrase.

BCCAPI is amazing. Keep the good work!
Jan
legendary
Activity: 1043
Merit: 1002
November 25, 2011, 08:58:02 AM
#28
...
This makes sense and I'm glad that you're going the conservative route instead of just letting the user specify a 0 fee.  By the way, looking through the code for the BCCAPI, it looks like it's pretty easy to just instantiate it and point it to another server, which means someone with an Electrum or NodeJS server could fairly easily set up a BCCAPI-compatible web API as well and run a service which competes with yours.  This is probably a good thing, though this particular app doesn't let you choose the URL(s) to which it connects.
Competition is a good thing. So far everything is provided for absolutely free, and that is hard to compete with  Wink

Going forward I am hoping that this service can continue to run on donations. The total donation income for the BCCAPI is roughly a stunning 2 BTC, and my expenses for the servers at Rackspace alone are 50$ a month.


...
By the way, I did a little bit of research on MIracle and it looks like they have a brewery, too!  I'm going to see what I can do about getting my hands on some of their beers.
Yummy. Maybe they accept Bitcoin  Grin
member
Activity: 111
Merit: 100
November 25, 2011, 05:09:53 AM
#27
I don't really care about the mass markets, I care about me. Wink

What I really want is a native app built using phonegap, HTML5 & JavaScript such that it's maximally portable.  Also, eventually Apple will allow these apps, especially when everyone is jailbreaking their phones to install them.

This already exists essentially (webcoin) see here:
http://bitcoinjs.org/

This is not what is needed on Android if you are interested in mass adoption.

You might only care about you, as you say, but I care about Bitcoin as a widely adopted tech -- and people like to download apps from the market/app store.

So webcoin might be a good intermediate step for the iPhone, but on Android this app is a step forward.

I just tried this app, and so far, it's awesome! Just what was needed. (Although the color scheme and/or UI look is not my favorite.)
full member
Activity: 225
Merit: 101
November 24, 2011, 02:11:42 PM
#26
Thanks for the feedback.

Regarding the fee: This is a limitation of the server implementation and not the App as such, or in other words my fault. You are right that you can deduce the minimal fee, which is some cases is zero, by among others looking at the age of your inputs. Etotheipi started a thread on this here: https://bitcointalksearch.org/topic/transaction-fee-clarifications-51081
For now I have chosen a conservative approach where the fee is 0.0005 * (1+int(transactionSizeinBytes/1000)). I will be looking into optimizing this going forward.
The paramount thing to note here is that it is critical that the fee calculation is not too low, as you may risk the transaction is not propagated through the network or accepted by a miner. In scenarios where you manage your own block chain and end up with a transaction that got stuck you can basically delete the block chain, keep your wallet keys and load it anew, and finally make a new transaction with a larger fee. With the BCCAPI I cannot do this as I don't have a separate block chain per wallet, and don't want to spend the processing power to scan it anew whenever some poor guy sent out a transaction with a zero fee. In the end I would like this to be simple and safe to use.

This makes sense and I'm glad that you're going the conservative route instead of just letting the user specify a 0 fee.  By the way, looking through the code for the BCCAPI, it looks like it's pretty easy to just instantiate it and point it to another server, which means someone with an Electrum or NodeJS server could fairly easily set up a BCCAPI-compatible web API as well and run a service which competes with yours.  This is probably a good thing, though this particular app doesn't let you choose the URL(s) to which it connects.

No address book: This feature is an App feature and independent of the BCCAPI. It may be a good thing to add to the App going forward, but I guess that it depends on the use-case. If we want it to look like your ordinary wallet, then you do not have an address book or a transaction log for that matter. Whenever you pay you grab the money and pass it on to whoever you are trading with. However, the reason why I don't have an address book and transaction log for my ordinary wallet is that the first doesn't make sense and the latter is very cumbersome to manage. With a Bitcoin wallet this is both feasible and practically manageable. As for the transaction list the BCCAPI already has this functionality. It just needs to go into the App. I'll pass this onto the developer at Miracle and see what he thinks.

In the end the goal with the App is to be simple and easy for anyone to absorb, so maybe transaction logs and address books is something that could go into a Pro version?

I realize it's a feature of the app, but I figured I would put it up there as this thread is dedicated to the app, not just the BCCAPI.  I don't think either an address book OR transaction log is absolutely necessary for the use case of an "in-person" wallet (though having both would certainly help you keep track of spending), and it's very easy to use as it is.  Really, it's an amazing piece of software and I've already told a lot of my bitcoin-curious friends about it.  Thank you for all the work you've done on the BCCAPI and helping create this new generation of low-footprint mobile wallets.

By the way, I did a little bit of research on MIracle and it looks like they have a brewery, too!  I'm going to see what I can do about getting my hands on some of their beers.
full member
Activity: 154
Merit: 102
Bitcoin!
November 24, 2011, 10:29:30 AM
#25
Excellent!
hero member
Activity: 784
Merit: 1010
Bitcoin Mayor of Las Vegas
November 24, 2011, 10:24:39 AM
#24
Just installed... This is the simple type of app I love. I will write it up at BitcoinIntro.com!
Pages:
Jump to: