If you do decide to build this app, I would highly recommend making it open-source. Properly building a custom-skinned OS X app is not easy. Compared to UIKit on iOS, which was built from the ground up to support animation and appearance customization, AppKit is a dinosaur.
When subclassing controls, you'll encounter AppKit bugs, things that can't be skinned without overriding private methods, and inconsistencies between OS versions. The animation APIs are woefully inadequate, especially if you need to support 10.7 or 10.6. (over two-thirds of the install base as of January, according to [1])
If done well, the source code would be a valuable resource to the Mac developer community. Custom-styled desktop experiences are becoming the new norm, yet building them remains somewhat of a black art.
I expect people would be reluctant to use a client not sanctioned by bitcoin.org officially, although I'm not sure how difficult that is. It may be as simple as sending an email to get them to add it to the list.
I would think that any new bitcoin wallet could be introducing a substantial security risk before it has been extensively field tested. If someone where to sneak some code in, or even just screw up a security protocol, all the stored bitcoins would be at risk.
I'm struggling to feel enthusiastic about this one, it seems to be designed more to just do something with Bitcoin, rather than provide any actual innovation.
Yeah I'm not a big fan of this particular design, but putting together a polished and featureful alternative that uses the real bitcoind behind the scenes is definitely an opportunity.
Do people really prefer graphical git over the command line? I'm honestly curious. FTP with a GUI I get, but it doesn't seem like git lends itself as well to such a UI.
I love gitx for Mac [0]. Shows list of all files changed. Click the file and each consecutive line of change is shown above. You can stage individual blocks.
Plus it's much easier (for me) to shift-click a few files than git add path_to/file_changed N times.
I'm not that technical, so the GUI really helped me get started. Having one Sync button is useful because you don't have to remember to pull before you push.
The Github app is actually not my favorite Git GUI, Gitbox is (http://gitboxapp.com/).
I found a gut GUI was good for me as a beginner, it was a stepping stone to using it on the command line. I was so stuck in a Subversion mindset that I needed something visual to work with first.
But now I use it on the command line all the time.
This looks a lot like https://www.strongcoin.com but with a dashboard. I will probably add this kind of functionality too. (I own strongcoin)
But to build your app, I recommend you take the code for http://carbonwallet.com which is already available on github and submit a pull request for a dashboard like you have in your post.
CarbonWallet is already available as a chrome application, and the logic is tried and tested.
I agree with you that most bitcoin wallets are either look ugly or are hackable online wallets maintained by third party.
Among all I tried I like Electrum the most for it's speed and it's deterministic nature, i.e. the whole wallet can be fully recovered from passphrase, instead of regular backups.
Im glad we are on the same page. Ideally I would love to build a full suite where you can see and control everything from one app. Iterations from the basic wallet are pretty much unlimited.
I wouldn't say Armory works fine on OS X. In fact, it's a bit of a hassle to set up. From their website:
>WARNING: This does not work on all OSX systems. We are working hard to expand the compatibility set. If it does not work for you, most users have success from the directions on the Building Armory from Source page. It takes a little bit of effort, but it works!
I didn't have any issue with it. Unpacked the DMG, copied it to the applications folder, started bitcoind and off I went. Hated the program of course, but that's a different kettle of fish,
There are a lot of issues around bitcoin and seeking to build a pretty interface to it addresses none of them.
One of my objections to bitcoin is the suggestion that I use Tor to mask my IP to keep my actual IP from occurring in the blockchain.
I think if you are telling users to use Tor to "stay safe" thats a problem already.
Second, "balance" information from your wallet is also stored in the blockchain.
Thats comforting, an IP address combined with how much bitcoin I possess. We have seen where that ended up more than once. Why not just paint a target on my forehead?
Cold storage is one solution to backing up your bitcoin and keeping it offline until needed.
Needing to "create a new bitcoin address" for every transaction, also fishy.
I would rather someone build a solution to bitcoins defiencies than see a pretty screen.
> mask my IP to keep my actual IP from occurring in the blockchain.
The blockchain does not store any IP address.
> Needing to "create a new bitcoin address" for every transaction, also fishy.
Creating a new bitcoin address for every transaction is not recommended and not needed. So no, it's not fishy. On the contrary, having the possibility to generate different address and using one address for one addressee is quite smart and useful.
Some effort is required in order to protect your privacy with Bitcoin. All Bitcoin transactions are stored publicly and permanently on the network, which means anyone can see the balance and transactions of any Bitcoin address. However, the identity of the owner cannot be associated with their Bitcoin address until personal information is revealed by the owner during an exchange. This is why it is recommended for Bitcoin owners to use many different Bitcoin addresses; in fact, you should create a new one each time you receive money. This is especially important for public uses such as websites. You might also want to consider hiding your computer's IP address with a tool like Tor so that it cannot be logged.
The blockchain does not store any IP address. Read about the protocol or read the specs or read the code, or easier : ask anybody.
Bitcoin is absolutely not anonymous, and not intended to be anonymous. Which does not mean that the IP address of the sender and/or receiver is stored into the blockchain. The blockchain contains txid, amount, addresses and timestamps, but no IP address.
To examplify what bitcoin.org says in your quote : If you open an account on anybitcoinstoreorwalletorexchange.com, which assigns you a deposit address or which allows you to withdraw bitcoin to one of your bitcoin address, then this website will obviously be able to match your bitcoin address to the IP you used to visit the website, which might not be in your best interest depending on the website intention. Therefore, you could use Tor. That is all.
To the point of "a new one each time you receive money", it would be better phrased as "each time you receive money from a new untrusted peer". Let's say I got an account on example.com, and want to withdraw bitcoin from this website for the first time. It is considered best practice to create a new address to receive these bitcoin. Then whenever I want to withdraw from this website again, I could use the same address. This is the reason why bitcoin addresses can be labeled in the bitcoin software. Think of the tuple (sender_address, receiver_address) as a private key for a specific transaction funnel.
When subclassing controls, you'll encounter AppKit bugs, things that can't be skinned without overriding private methods, and inconsistencies between OS versions. The animation APIs are woefully inadequate, especially if you need to support 10.7 or 10.6. (over two-thirds of the install base as of January, according to [1])
If done well, the source code would be a valuable resource to the Mac developer community. Custom-styled desktop experiences are becoming the new norm, yet building them remains somewhat of a black art.
[1] http://www.cultofmac.com/208455/os-x-mountain-lion-now-accou...