This is just a quick little post describing what *I* think will bring Bitcoin mainstream. I wish I had the programming skills to do it myself. (But of course if anyone else uses the idea and gets filthy rich, a thank you present to me would be very appreciated!
Problems (or issues I guess) with Bitcoin client as is:
-user can't really do anything until entire block chain is downloaded -depending on the device used, this large amount data/bandwidth could be troublesome
-everything is done with a wallet - this means the device it's on can get stolen, lost, broken
-sure the user could make backups and encrypt it but I'd say most people will not do this
In some ways the killer app (perhaps EasyBitcoin) would be like mybitcoin.com but with one main difference. Each user would still have their OWN wallet.
EasyBitcoin would run a server that maintains a connection to the bitcoin network and keeps a copy of the block chain. Each user would be able to visit EasyBitcoin, register, and create an account. This will create a location on the server for storing the users wallet.
Then the user grabs the GUI for interacting with EasyBitcoin for Win/Linux/Mac/iPhone/Android etc. These GUI's are simple in that their whole function is securely communicating with EasyBitcoin and making their OWN encrypted local wallet. The block chain is used on the server side of things. Every time the software is loaded a username and password is requested to unlock wallet and get access to server. (Perhaps it locks after a certain amount of time of not being used) This will allow it to talk to EasyBitcoin using encryption. If no wallet exists on the users computer OR the server a new one is made by the GUI. Every so often an encrypted back up is sent to the server. That way if the user loses his computer they don't lose their wallet. If the user wants to change and use other software they can visit EasyBitcoin and select to download the wallet.
The GUI and the server then communicate to keep the transactions in sync. When the GUI is loaded the addresses listed in the wallet are passed along to the server and the server returns all the transactions that should show up in the GUI. I guess kind of like moving the bitcoind and running it on the server and securely communicating over the internet instead. It would be cool if only the GUI had access to the private keys and EasyBitcoin didn't need to see the whole wallet. Only an encrypted copy existing on the server.
This would allow a very lightweight bitcoin client that can run with minimal resources. Wallets would be safer and less likely lost/stolen and the user would have something that works right away. They would also be able to move on to other services as their wallet is kept separate.
To make money I guess the service could charge something like .01 per transaction over 10 or something....
....something like that...