Pages:
Author

Topic: The original Bitcoin client sucks. - page 2. (Read 5688 times)

legendary
Activity: 1778
Merit: 1008
August 19, 2012, 01:39:32 PM
#27
It takes forever to get started and I bet most people who are new to Bitcoin pick it up, get tired of it and move on.

Why hasn't the development team created a thin client yet?

I think you mistake the intent of the reference implementation and the nature of bootstrapping an entire social movement. The standard client is needed to run the network and is not needed by casual users to use Bitcoin. Right now, its better to attract the competent who can help build the network infrastructure and services needed to transform Bitcoin into something useful, simple and safe for all users.

yea, this, very much. right now is like the 80'd and early 90's of the internet. building the network and systems so that the really cool, user friendly and poetentiall world changing stuff can more easily be accomplished later. laying a foundation, as it were. as such, the more technically inclined the user base the better, for the time being. at the least, i figure we'd want a "bitcoin 1.0" satoshi reference client before REALLY going into user friendly (read: AOL back in the 90's) territory.
donator
Activity: 1464
Merit: 1047
I outlived my lifetime membership:)
August 19, 2012, 01:34:16 PM
#26
It takes forever to get started and I bet most people who are new to Bitcoin pick it up, get tired of it and move on.

Why hasn't the development team created a thin client yet?

I think you mistake the intent of the reference implementation and the nature of bootstrapping an entire social movement. The standard client is needed to run the network and is not needed by casual users to use Bitcoin. Right now, its better to attract the competent who can help build the network infrastructure and services needed to transform Bitcoin into something useful, simple and safe for all users.
donator
Activity: 1218
Merit: 1079
Gerald Davis
August 19, 2012, 01:15:45 PM
#25
I don't see any reason why we can't have the best of both worlds.  Why can't the Satoshi client operate as a thin client when it's first installed, and then switch to full client mode in the background when the blockchain becomes up to date?

Because the Satoshi client likely SHOULDN'T be used by most users.  As Bitcoin continues to grow and diversify the reference client will increasingly only be used by miners, merchants, service providers, and hardcore (technically capable) users.   Trying to make it light and friendly is counter productive.   The bitcoind portion of the reference client is used by our company (and many others).  The reference client needs to be stable, secure, and provide an example for other implementations.  We should be encouraging DIVERSITY in clients not trying to create the single "uber client"  which is everything to all users.  

While it isn't my call I think three things probably need to happen over time:
1) The reference client needs to stop being called "the bitcoin client".  I use the term Satoshi client or reference client in everyday language.  The developers using the term Bitcoin client creates an implied sense that this is THE CLIENT and increasingly it is the worst choice for new casual users.

2) The satoshi client should be given less prominence on bitcoin.org.  All clients should be considered peers.  The bitcoin.org website should deal with the protocol and provide access to all clients on an equal basis.  Maybe management of bitcoin.org should be handled by someone who isn't involved in the development of the Satoshi client.

3) It would also be useful if the Satoshi client was refactored into three independent components:

* the library (which could be used by other developers to build alternative clients without rebuilding the low end code).  This would prevent a lot of reinventing the wheel and keep various clients on the same core codebase.  A change to the library could be easily integrated into new version of alternative clients. 

* the node - providing high level abstraction of the non-wallet portions of the client.  Has no concept of wallets, user interface, etc.   It receives commands from client(s) and communicates with the network.  Runs as a daemon or windows service 24/7 in the background.  (Note: electrum server is essentially a non-reference implementation of "the node").

* the client/GUI - communicates with a node (either locally or remotely) to facilitate the actions of the user.  Has no direct connection to the bitcoin network instead it sends command to "the node".

Currently the reference client is all three major components tightly integrated together which makes extending it very difficult.  If other developers do extend it for custom implementations it becomes a continually challenge to keep that fork compatible with changes made to the satoshi client codebase.   Tight integration between these major components stifles alternatives and results in a lot of "reinventing the wheel".
legendary
Activity: 1596
Merit: 1100
August 19, 2012, 01:05:30 PM
#24
I don't see any reason why we can't have the best of both worlds.

We can!  Get a github account and start submitting pull requests.

It's open source:  if you have a need, we welcome those changes being submitted.  The Qt part of the client certainly needs more Qt hackers!

If you can't program, hire someone who can write the feature for you.

legendary
Activity: 1596
Merit: 1100
August 19, 2012, 01:02:33 PM
#23
By keeping the bitcoin network stable and working smoothly they ARE indirectly helping to create lightweight clients and web wallets etc. Everyone else relies on them. With the limited manpower all open source projects have I presume they concentrate their firepower on "keeping the engine running smoothly" and leave the eye candy to other devs.

That's pretty much it.  The reference client needs to be correct first and foremost, and that is primarily where the "core dev team" attention goes.

But isn't "core dev team" a meaningless term?  There are many other developers working on web wallets and alternative clients that are far more usable.  At a minimum I would trust the clients built upon BitcoinJ.

Using MtGox or another web wallet means zero blockchain download time, too.

legendary
Activity: 1092
Merit: 1016
760930
August 19, 2012, 01:02:20 PM
#22
Perhaps it would make sense to start calling Bitcoin-Qt a backbone node rather than a "client".
hero member
Activity: 812
Merit: 1006
August 19, 2012, 12:30:08 PM
#21
I don't see any reason why we can't have the best of both worlds.  Why can't the Satoshi client operate as a thin client when it's first installed, and then switch to full client mode in the background when the blockchain becomes up to date?

I disagree. There are other thin clients being developed. Satoshi client should remain a full-fledged stable client, it makes no sense to try to appeal to everyone with it.

I know what you mean, but it's still possible to create a new client based on Satoshi client… Wink

I actually think it makes more sense to build a thin client from scratch than base it on Satoshi client. But of course if you want to implement a thin client, you decide yourself.
newbie
Activity: 59
Merit: 0
August 19, 2012, 12:17:12 PM
#20
From an email I sent to somebody concerned about bitcoin usability just a couple of days ago:

Making the reference Bitcoin application more usable isn't a high priority for me right now.

The high priority is making it safe to use, even if your computer gets infected by malware. I WANT it to be hard and geeky to use so only geeks who are able to keep their computers secure run it.

Also, the "download and run software on my computer" way of doing things is dying. The vast majority of ordinary users will be using Bitcoin on their smart-phones or through a web browser in the near future....


Thats fair enough, but wouldn´t it be possible to include an up to date snapshot of the current blockchain (updated on a daily/weekly basis), as an option. Whilst the disk space being taken up is substantial the real issue seems to be the time it takes to catch up when first installing the client. Downloading via the network takes for ever. I do get that you may not want to do that via bitcoin.org. but how about providing it via a torrent link for example?
hero member
Activity: 812
Merit: 1006
August 19, 2012, 12:01:35 PM
#19
I don't see any reason why we can't have the best of both worlds.  Why can't the Satoshi client operate as a thin client when it's first installed, and then switch to full client mode in the background when the blockchain becomes up to date?

I disagree. There are other thin clients being developed. Satoshi client should remain a full-fledged stable client, it makes no sense to try to appeal to everyone with it.
sr. member
Activity: 420
Merit: 250
August 19, 2012, 11:58:12 AM
#18
Yes, use an alternative client. Just like MT GOX was doing when they sent coins to an invalid address. Seriously, don't do it; the original client is more reliable than something that's been slapped together.
legendary
Activity: 924
Merit: 1004
Firstbits: 1pirata
August 19, 2012, 11:54:58 AM
#17
I don't see any reason why we can't have the best of both worlds.  Why can't the Satoshi client operate as a thin client when it's first installed, and then switch to full client mode in the background when the blockchain becomes up to date?
+1
+2, maybe use those checkpoints for something good
legendary
Activity: 1896
Merit: 1353
August 19, 2012, 11:50:39 AM
#16
I don't see any reason why we can't have the best of both worlds.  Why can't the Satoshi client operate as a thin client when it's first installed, and then switch to full client mode in the background when the blockchain becomes up to date?
+1
legendary
Activity: 1937
Merit: 1001
August 19, 2012, 11:49:03 AM
#15
I think some kind of 'warning' or note that the original client is still very 'technical'? could be an idea to point the average user to web-wallets, light-weight clients or mobile clients.
sr. member
Activity: 254
Merit: 250
August 19, 2012, 11:47:29 AM
#14
I don't see any reason why we can't have the best of both worlds.  Why can't the Satoshi client operate as a thin client when it's first installed, and then switch to full client mode in the background when the blockchain becomes up to date?
member
Activity: 107
Merit: 10
August 19, 2012, 11:19:34 AM
#13
From an email I sent to somebody concerned about bitcoin usability just a couple of days ago:

Making the reference Bitcoin application more usable isn't a high priority for me right now.

The high priority is making it safe to use, even if your computer gets infected by malware. I WANT it to be hard and geeky to use so only geeks who are able to keep their computers secure run it.

Also, the "download and run software on my computer" way of doing things is dying. The vast majority of ordinary users will be using Bitcoin on their smart-phones or through a web browser in the near future....


Fair enough, but at least put up a "geeks only"-type notice (phrased more politely, of course) on the front page then.
Letting ordinary people waste hours or days of their time on downloading the reference client AND the 3GB blockchain,
without any obvious warning, is a little disrespectful IMHO.
hero member
Activity: 756
Merit: 501
There is more to Bitcoin than bitcoins.
August 19, 2012, 11:06:35 AM
#12
As for your lite clients, people who type "Bitcoin" in google never learn about them. It took me forever to find http://blockchain.info/wallet because it doesn't get the privilege of being called "official".

This is a legitimate concern. Perhaps a simple change of wording on bitcoin.org and other prominent sites would help?
legendary
Activity: 1652
Merit: 2301
Chief Scientist
August 19, 2012, 11:01:38 AM
#11
From an email I sent to somebody concerned about bitcoin usability just a couple of days ago:

Making the reference Bitcoin application more usable isn't a high priority for me right now.

The high priority is making it safe to use, even if your computer gets infected by malware. I WANT it to be hard and geeky to use so only geeks who are able to keep their computers secure run it.

Also, the "download and run software on my computer" way of doing things is dying. The vast majority of ordinary users will be using Bitcoin on their smart-phones or through a web browser in the near future....
full member
Activity: 223
Merit: 100
August 19, 2012, 09:54:12 AM
#10
I do not really mind the original client to be honest, it does its job and if its kept up to date on a regular basis it doesnt take too long to catch up.
I agree though that new users may be put off.

+1 - I like the original client and I actually look forward to firing it up and watching my payments come in from my deposits as it syncs with the network (yes, I am a total nerd I know). As for it being daunting to new users, I certainly agree that the time needed to download the blockchain can be considered a deterrent but I also can't help but feel that if someone has problems with copying/pasting, typing in labels, selecting from an address book and pressing a send button then maybe that person shouldn't be sending money over the Internets with any method  Wink
hero member
Activity: 504
Merit: 500
August 19, 2012, 08:46:17 AM
#9
I do not really mind the original client to be honest, it does its job and if its kept up to date on a regular basis it doesnt take too long to catch up.
I agree though that new users may be put off.
legendary
Activity: 1526
Merit: 1134
August 19, 2012, 07:47:56 AM
#8
We know that startup time whilst syncing the chain is a problem. There's no need to bait us - nobody wants Bitcoin to be a small, geek-only currency, certainly none of us on the development teams do.

Lightweight clients have been written. I have spent the last 2 years writing code that is widely used in their creation. If you go to bitcoin.org and click Clients you'll see some of them. In fact Jim, the author of Multibit which is a lightweight client, already posted on this thread. He was just too modest to plug his own software.

So why is the Satoshi client still the version in the top right of the home page? There are several reasons why we're not ready to fully push lightweight clients yet:

  • One is that we still need lots of people to run the Satoshi client. Servers and miners are, by themselves, probably not enough right although in the longer term that's definitely the way things will evolve. If not enough people run the reference client we may start to run out of sockets again like we did last year during the wave of press coverage. If we run out of sockets people can't get connected to the network at all.
  • The lightweight clients that exist today all have problems of various kinds. Ones based on bitcoinj have various missing features and other things that are considered important (like wallet encryption, though Jim is working on that). Systems like Electrum or the blockchain.info wallet have surprising privacy and security properties that are difficult to explain to people.
  • There are changes coming down the pipeline that will dramatically improve the performance of the reference client, dropping chain download time significantly.

I think there's a general consensus right now in the core development team that Bitcoin, in its current state, isn't quite ready to go as a currency for the everyman (or everywoman in your case). It's not just performance. Other parts of the system need work too - it's still too hard to secure your wallet for both end users and service operators, fee handling needs improvement, the software all needs auto update engines. Even basic things like bitcoin: URI handling doesn't work right yet.

So even if tomorrow we redirected everyone to MultiBit or Electrum or blockchain.info from the home page, we would simply swap one set of problems for another. The real solution is to improve all the clients in parallel and then at some point we should be able to build consensus around pushing users towards one or two lightweight clients, whilst simultaneously asking people who have the resources to run the classic client.

Summary: It would be a mistake to prioritize on-boarding new users above all else right now because they'd just hit problems later. The block chain download time acts as a natural throttle on our growth and ensures that anyone who makes it through has the interest and tolerance needed to manage Bitcoins other issues.
Pages:
Jump to: