Post
Topic
Board Altcoin Discussion
Re: Devcoin
by
jasinlee
on 29/04/2013, 02:40:51 UTC

There's a few things going on - hence trying to clear up things.

1) Nodes
What:
Long standing dvc nodes - ideally placed on fast connections & configured with a large number of connections.

Why:
To allow new & existing clients to bootstrap quickly.  To allow a complete fall-back when other systems aren't functioning.

How:
Coded dns names in the code - that allow cname & a lookups.

2) Locators - client discovery
What:
Review the current infrastructure to ensure it's suitable for scalable growth.  
IRC, DDNS (DNS Seeding), Client cache

Why:
It's good to review where you are and where you're going.
DNS Seeding should be reviewed and checked to see if the current setup is optimal.  DNS Seed names (DNS entries) should be checked & updated - are we using the most appropriate record types, what's the change control process.  As you mention - does it fallback properly should those DNS Seeds be taken out? Can geoDNS be leveraged to help users download the blockchain from their closest neighbours.  Tech has moved on - DNS has improved a lot - with ipv6 more prevalent now - srv & locator records can be used and you have more granular control over the how & what.
geoDNS is now pretty affordable and no longer limited to the big-boys - it can make a huge difference to the blockchain startup/catchup time for end-users.
The existing locators aren't setup to gather & supply metrics - each DNS query, irc join is a statistic that's useful in gauging adoption, growth & measuring scale.

How:
Test, metrics, target goals for how this works.

3) DNS
What:
Using existing DNS names to make config & setup easier & simpler for end users.  

Why:
Long term success in pretty much all things comes down to making something accessible to end users.

How:
Update the way a handful of (1) are recorded in DNS, update the documentation for users telling them they can addnode=dvc.devcoin.me and you'll be up & running in no time.
Using something like dvc.devcoin.me is way easier than 15 addnode=abc.def.ijk.lmn entries when a user is complaining that its taken 20h for their blockchain to be downloaded.


I'm overly cautious when it comes to DDNS because there's risk - it's easy to pollute and as it's a centralised public resource it's an address book of hosts.

I would like to suggest a bounty for bringing the devcoin client current to be capable of using the seed nodes. Of all the alt coins posted to an exchange it looks like dvc is the furthers behind on the clients. To keep the currency relevant we need to plan ahead, this looks to be a necessary step to continue the development of the currency.

Over the past 10 years css and xhtml have become more prominent, this is a similar case where the standard method is changing and I would not want the clients to get so far behind that they would cause new users of dvc to give up in frustration. Good design will facilitate the new & update speed of users with regard to the blockchain, help tx propagation across the network, scale with as the number of users grows and provide a resilient mechanism for clients locating other clients.

I would also like to see the receiver list integrated in some manner. One idea would be:

Lookup this months distribution address in the blockchain (via the dvc client) - pull up the first tx - grab the addresses the payment was sent to - distribute the y shares between these addresses. Manual payments that are done at the moment (non-generating shares) are the remainder of y. Send that amount to the this months originating address. This would all be automatically handled by the dvc client at the mining pool. Pools wouldn't have to change anything.

Not sure if this has had a bounty requested yet, but this would address more than half of the new devcoin users that have trouble getting the client working. They are used to bitcoin and other clients, you install and no files needing downloaded and installed in specific directories.

You can post it to git, but the bounty was based upon it being loaded on devtome.com, so just create a new page for it no biggie.

Is this what you had in mind? http://www.devtome.com/doku.php?id=dvcticker
 Smiley

Exactly, and awesome, you got the python so thats an additional language.