Warren getting upset about Feathercoin
-
Just my two cents, but what exactly is [b]needed[/b] at this point in software development? To me it seems like FTC works just as well as LTC or BTC when it comes to its functionality, the coins get sent and received in a timely manner and the block times have stabilized. In my eyes, the code does not require a change, instead we should be increasing adoption and market image, not adding new features we are not sure anyone actually needs.
Additionally, why is ACP bad? I know you can just say “centralization”, but in this instance what could go wrong with it? How can we prevent those failure modes from occurring? -
Kevlar, I tried separating the code into coherent parts. It’s like UNIX hasn’t been invented yet, or we don’t value the lessons we learned.
I did at one time manage to patch the iptables driver to hide routers for an ISP, so a disgruntled employee couldn’t hit it.Maybe it’s just me and ASM and JS and Lisp make more sense.
Vidicus, we need developers in order to customize the interface, to notice subtle bugs, to avoid some poisoning the code with proprietary licensed crap so they can get a court to say we have to shutdown. It’s not like assembling a couch. It’s more like making cobwebs look like concrete.
-
[quote name=“zerodrama” post=“34836” timestamp=“1384803274”]
making cobwebs look like concrete.
[/quote]Are those lyrics from a Tool song? ;)
-
[quote name=“Vidicus” post=“34834” timestamp=“1384802530”]
Just my two cents, but what exactly is [b]needed[/b] at this point in software development? To me it seems like FTC works just as well as LTC or BTC when it comes to its functionality, the coins get sent and received in a timely manner and the block times have stabilized. In my eyes, the code does not require a change, instead we should be increasing adoption and market image, not adding new features we are not sure anyone actually needs.
Additionally, why is ACP bad? I know you can just say “centralization”, but in this instance what could go wrong with it? How can we prevent those failure modes from occurring?
[/quote]You raise an interesting point, Vidicus.
One argument is that currencies are competing, not acting as complimentary players. If this is true, then adoption is a direct function of utility: The more utility a product provides, the more intrinsic value it possesses. The more intrinsic value something possesses, the more it will be adopted. Therefore, to increase adoption, it’s necessary to increase utility.
Now your argument that services provide utility is a solid one, but it ignores the fact that any service is equally valid for any currency, UNLESS that currency offers a feature that no other currency offers.
This is the argument for things like the Payment Protocol, and Zerocoin: By adoption of these features, you provide utility above and beyond that of other currencies, and give users a reason to choose one currency over another.
tl;dr: Product differentiation, increased utility, and steady innovation is needed to compete in a competitive landscape where products are constantly being differentiated, utility is consistently increasing, and innovation is a steady stream of new features.
As for ACP, it defeats mining based consensus, which is actually harmful to the economy; As Warren correctly pointed out, users don’t need to subscribe to ACP if mining majorities already do. If mining majorities are the ones deciding the blockchain, you don’t need ACP. All ACP does is prevent perfectly legitimate mining majorities from reorganizing the blockchain like they SHOULD be able to. That’s why Bitcoin doesn’t have it. The argument that one mining majority is more valid than another in the eyes of the developer is antithetical to the entire trustless system and gives too much control to a single entity when the free market should be deciding these things democratically by voting with their hashpower. This in turn deteriorates utility and destroys value in the currency.
-
[quote name=“zerodrama” post=“34836” timestamp=“1384803274”]
Kevlar, I tried separating the code into coherent parts. It’s like UNIX hasn’t been invented yet, or we don’t value the lessons we learned.
[/quote]Mike Hearn did a fantastic job of this. You should check out BitcoinJ. It’s incredibly well done.
[quote]
Maybe it’s just me and ASM and JS and Lisp make more sense.
[/quote]ASM huh? You mean Assembly? Last time I wrote assembly I was programming an 8051 microcontroller to talk to an STA-013 and an FPGA acting as an IDE controller for [url=http://www.pjrc.com/tech/mp3/]this project[/url].
Yes of course JS and Lisp make more sense: They’re abstractions, and that’s what abstractions do; They hide complexity.
[quote]
Vidicus, we need developers in order to customize the interface, to notice subtle bugs, to avoid some poisoning the code with proprietary licensed crap so they can get a court to say we have to shutdown. It’s not like assembling a couch. It’s more like making cobwebs look like concrete.
[/quote]If that were to happen the solution is trivial: rip out the offending code, continue as normal. To date no open source project has ever been forced to “shutdown” against their will due to “proprietary licensed crap”, they’ve just had to go in a different direction to avoid copyright infringement.
-
Kevlar,
Wasn’t the Technical Discussion board the start for what was to be a discussion between devs on the topics and changes relevant to technical issues? It’s sort of sitting quiet right now, but I think you should totally go in and start a thread.
-
[quote name=“mnstrcck” post=“34844” timestamp=“1384805415”]
Kevlar,Wasn’t the Technical Discussion board the start for what was to be a discussion between devs on the topics and changes relevant to technical issues? It’s sort of sitting quiet right now, but I think you should totally go in and start a thread.
[/quote][quote author=Kevlar]Because I don’t have the support of the developer, nor any faith in his ability to lead, code, or manage the code base. Bushstar is a really nice guy, but as a leader of developers he’s failed to demonstrate any real redeeming qualities which inspire developers to get behind his effort and contribute their support to him.
You see, if he had, we wouldn’t be having this discussion right now, because other developers would have joined on and there would be a process in place for group development, a road map of features, an open repository to fork, and people actively working on it.
Good leaders lead by example, and so do good coders. Show me some good code, and I’ll get on board without hesitation.[/quote]
Sorry, saving Kevlar some time so we can move on to the next solution. ;)
-
[quote name=“Tuck Fheman” post=“34846” timestamp=“1384805762”]
Sorry, saving Kevlar some time so we can move on to the next solution. ;)
[/quote]That’s kind of disingenuous Tuck. Kevlar pushed for the TechDev board to be made, it was, and he hasn’t really been active on it. Using Pete’s criticisms as a means of just avoiding the question is kinda lame. I mean, Kevlar could just pick up the torch if he wanted to - he could rally the troops, no?
This situation reminds me a lot of what I deal with when I’m large group backcountry camping. Usually, there’s one person who was in a leadership role for the planning, organization and early part of the trip - and when issues arise out in the field, they might not be doing what’s the best for the group for whatever reason. Well, we’re 3 days out from other humans and making shitty mistakes can result in dire consequences. It’s at that point that someone else usually steps up and rallies the morale, makes a few calls, and gets the ball rolling.
Maybe that’s what we need?
-
[quote name=“mnstrcck” post=“34849” timestamp=“1384806490”]
[quote author=Tuck Fheman link=topic=4440.msg34846#msg34846 date=1384805762]
Sorry, saving Kevlar some time so we can move on to the next solution. ;)
[/quote]That’s kind of disingenuous Tuck. Kevlar pushed for the TechDev board to be made, it was, and he hasn’t really been active on it. Using Pete’s criticisms as a means of just avoiding the question is kinda lame. I mean, Kevlar could just pick up the torch if he wanted to - he could rally the troops, no?
This situation reminds me a lot of what I deal with when I’m large group backcountry camping. Usually, there’s one person who was in a leadership role for the planning, organization and early part of the trip - and when issues arise out in the field, they might not be doing what’s the best for the group for whatever reason. Well, we’re 3 days out from other humans and making shitty mistakes can result in dire consequences. It’s at that point that someone else usually steps up and rallies the morale, makes a few calls, and gets the ball rolling.
Maybe that’s what we need?
[/quote]What can I do to help? Do we need to get people more active around the Tech Development board? It seems we have had many suggestions for feature implementation such as a messaging system and I believe Zero Coin could still be worked with as they have a library. We will also have HD Wallets with the rollout of 0.8.5
I think what’s happening here is that there are lot of people who really care about Feathercoin and that is demonstrated in this thread. They want to see it succeed but are not sure exactly what they can do to help.
As regards Kevlar’s point about showing a good face and talking not doing I was not aware that I was not [i]doing enough[/i], it certainly hasn’t felt like that to me when dealing with Bittylicious, organising the conference to raise awareness, working with UKMark and his new venture to be released soon but then again I may be wrong. If I am I do expect to be told and put in my place because I do not wish to come across as all talk and no action or lazy because as I say that is not how I experience it from my point of view. Others may disagree.
-
[quote name=“mnstrcck” post=“34849” timestamp=“1384806490”]
[quote author=Tuck Fheman link=topic=4440.msg34846#msg34846 date=1384805762]
Sorry, saving Kevlar some time so we can move on to the next solution. ;)
[/quote]That’s kind of disingenuous Tuck. Kevlar pushed for the TechDev board to be made, it was, and he hasn’t really been active on it. Using Pete’s criticisms as a means of just avoiding the question is kinda lame. I mean, Kevlar could just pick up the torch if he wanted to - he could rally the troops, no?
This situation reminds me a lot of what I deal with when I’m large group backcountry camping. Usually, there’s one person who was in a leadership role for the planning, organization and early part of the trip - and when issues arise out in the field, they might not be doing what’s the best for the group for whatever reason. Well, we’re 3 days out from other humans and making shitty mistakes can result in dire consequences. It’s at that point that someone else usually steps up and rallies the morale, makes a few calls, and gets the ball rolling.
Maybe that’s what we need?
[/quote]I’ve been as active on it as anyone else. The discussions generally don’t go anywhere useful, and they certainly haven’t resulted in code getting written, so I stopped trying.
Could I ghost write for Pete and watch him take all the credit? Sure. Sunny King did, but he was paid for his time and effort.
Let’s say I did. What would I do? There’s no roadmap for development, no direction from the community as to what features are of greatest demand, no other developers who are itching to contribute, no glaringly obvious bugs to fix, no innovative new features never seen before, and no reward for having done so.
I suppose that’s what I would do, huh? Set forth a roadmap for development, solicit direction from the community, support other developers who want to contribute, fix bugs, and implement innovative new features.
So why don’t I? I -=really=- don’t want to.
I agree that it’s going to take a developer to rally the developers. I don’t want that position, I don’t want to cheerlead, I don’t want the responsibility, I don’t want the title, I don’t want the attention, I don’t want to be a community leader, I don’t want to write C++, I don’t want to innovate for someone else’s solution, and I don’t want to ghost write for someone else. I’m VERY happy with my position as onlooker and commentator, and I have no delusions that I would somehow do a better job with troop morale when my own morale is reaching new lows and I’m being very successful with my own projects.
I’ve been devoting my free time to other crypto-currencies who do have a solid development process in place, and my own coding projects. The recent Zerocoin enhancements were a lot of work and it’s taken this long to get it there. It’s very rewarding and I’m enjoying the process immensely. My own projects have been showing some fantastic ROI as well the past week.
I sold all my alt-currencies earlier in the year and I’m holding BTC like it’s headed to the moon, and so far that’s been working FANTASTIC… so well I may quit my job soon and just write code for myself full time. ChrisJ and I have been discussing services and I’ll be spending a lot more time on those soon because they have the potential to turn into a game changer too, but the reward on those projects is easy to quantify. I think I’ll stick with what’s working, thank you.
-
JS and Lisp don’t hide complexity.
They hide a fragile world. The problem with the bitcoin code has to do with the complete lack of organization.
In any case, I have things I want to do and I see a lot of unused talent here, so I’ll take you up on that Promethean challenge Kevlar.
-
I think the reasons these conversations dont go anywhere and the reason that there are no major bugs to fix is that its working. Seems pointless trying to fix what isnt broken.
Zerocoin does sound interesting but ive not heard alot of people asking for it on here?
I would like to have a conversation about at what point or what would make it a reasonable time to rethink ACP and would be interested to hear everyones views although I would be hesitant to do it too early and go back to the situation we were in with the 51% attacks.
I think you are right that other things deserve attention and I think thats why bushstar has been focusing on the market. I think that will end up being really worthwhile.
-
Now this is interesting from Warren:
[quote]Now that FTC is much discredited and near delisting, I suppose there is no harm in telling more of this story. Hopefully this will help others to avoid losing money to scams in the future.
The Litecoin devs agreed months ago that although we are capable of destroying their network due to their not fixing any security issues in their client, we were not willing to do anything that could be construed as illegal. I’m surprised that nobody else has done so as some of the possible attacks were known to the public and were previously used against the Bitcoin and Litecoin networks. For example, active attacks were the reason for the Bitcoin 0.8.3 emergency security release.
So with dev’s unwillingness to attack, some of the large Litecoin investors and pools came up with a plan to use entirely legal means to destroy FTC’s economy. Roughly 45% of the LTC hashrate under the control of several pool ops were willing to turn their hash power against the FTC network to strip mine and dump on the exchanges at a loss, subsidized by the large LTC investors. We devs were amused by this plan but we were pleased to leave it to the pools to work on. The reference client devs do not work on pool software, and client devs have lots of other higher priorities.
Some of the pools were testing the tech to do this. Then out of nowhere someone else entirely began a series of massive reorg attacks against the FTC network. The hashrate to do it wasn’t coming from the existing LTC pools, so our best guess is it came from GPU farms switching from Bitcoin hoping to manipulate the markets for trading profit. The reorg attacks, and especially the BIG time-travelling attack with the 72 block reorg, made a complete mess of FTC. The pools were then afraid to go forward with the economy draining strip mining plan because the cost would be too high if their blocks were orphaned in another reorg attack.
In the end, it turns out that FTC did a good job of killing itself and didn’t need Litecoin’s help.
The marketing shills, shiny videos and promises of “innovation” were unfortunately effective at attracting suckers to buy their meritless product that they were incapable of defending. It was surprising to me the extent of which they lacked engineering competence, we thought they would copy 0.8.x months ago. In any case, even if they were competent, there is simply no way to defend a copy when you are always a tiny % of the global hashrate capable of being used against your network. This is proven by the repeated, spectacular failures of Terracoin. Their centralized broadcast checkpoints was a final an act of desperation, an act of capitulation and the beginning of the slow death spiral.
I give Feathercoin this offer. Want a working Feathercoin 0.8.5.1 client with all of your innovations integrated and working? I’ll do it for a one-time payment of 100 BTC. You seem to hire help whenever you can’t figure out simple coding issues, so why not hire now? =)[/quote]
-
[quote name=“zerodrama” post=“34862” timestamp=“1384811065”]
JS and Lisp don’t hide complexity.They hide a fragile world. The problem with the bitcoin code has to do with the complete lack of organization.
In any case, I have things I want to do and I see a lot of unused talent here, so I’ll take you up on that Promethean challenge Kevlar.
[/quote]Of course they hide complexity! That’s the entire point of a programming language: To allow the user to express their wishes in a natural form that gets transformed into it’s more verbose form which can be executed by a computer. There is no memory management in Javascript because that complexity is hidden. Tail recursion is trivial in Lisp because the complexity that’s required to enact it is hidden. You can’t even do DMA operations in either language because that complexity is hidden, let alone talk to the hardware directly. Under the covers, the compiler and/or the VM translate that simplistic expression into a very complex set of instructions that are encoded in a very complex and human-unfriendly format called “machine code”. You get to write in a very simple non-complex language, but ultimately it gets transformed into a very complex language. That’s called hiding complexity.
Computers are not fragile. They used to be, but they’re not any more. It used to be that a badly written piece of code could very trivially end your computing session, but now-a-days you REALLY have to go out of your way to make one process impact another’s execution. Modern operating systems have hidden so much complexity that most of today’s developers don’t even know what an interrupt even is any more, or how to trap one, or what the stack is, let alone how to smash it for fun and profit by overwriting your return address.
These days the worst you can expect in terms of fragileness when you execute bad code is that your process dies, and anything more than that requires a whole lot of work. That’s not fragile, that’s incredibly robust.
The Bitcoin code base doesn’t suffer from a complete lack of organization at all. The main code consists of less than 100 files, all of which are appropriately named, all of which follow good C++ coding conventions of exposing their headers in a .h file and providing implementations in a .cpp file. The objects themselves are broken up by responsibility and each one has several if not many appropriately named methods which are made appropriately visible and have appropriate parameter signatures that include const correctness and passing by reference of appropriately named objects. You can literally read the headers and get a very through understanding of what a method is expected to do. I picked a line at random to demonstrate:
[quote]
bool CWallet::ChangeWalletPassphrase(const SecureString& strOldWalletPassphrase, const SecureString& strNewWalletPassphrase)
[/quote]Now without even inspecting the implementation, I can tell you that this is a method on the Object CWallet which is designed to change the wallet’s passphrase. It accepts a reference to a const SecureString for the old wallet passphrase, and a const reference to a SecureString for the new wallet passphrase, and returns a boolean, presumably true if the operation is successful, otherwise false.
All of the code looks like this. There’s not a single place that I’ve seen where the code literally shits the bed and devolves into madness, and I’ve seen a LOT of code bases that do so I know one when I see one. If there’s some place where you think organization could be refactored, please point it out because I’d love to see it improved, but I’ve not actually witnessed this disorganization you refer to.
-
[quote name=“Kevlar” post=“34859” timestamp=“1384809396”]
I’ve been devoting my free time to other crypto-currencies who do have a solid development process in place, and my own coding projects. [b]The recent Zerocoin enhancements were a lot of work and it’s taken this long to get it there.[/b]
[/quote]What coin is this?
-
[quote name=“Tuck Fheman” post=“34878” timestamp=“1384815470”]
[quote author=Kevlar link=topic=4440.msg34859#msg34859 date=1384809396]
I’ve been devoting my free time to other crypto-currencies who do have a solid development process in place, and my own coding projects. [b]The recent Zerocoin enhancements were a lot of work and it’s taken this long to get it there.[/b]
[/quote]What coin is this?
[/quote]The soon-to-be-alt-coin that will implement Zerocoin, name still TBD. It’s not just a library any more, they’ve decided to do a reference implementation in their own blockchain. They went this route because, after much debate, it was decided that there wasn’t an existing coin worth implementing it in. Litecoin and Feathercoin was heavily considered, but eventually turned down due to a lack of development leadership; any coin that implements it would need some pretty heavy hand holding moving forward, not to mention a hard fork, and without a dedicated team capable of pulling it off it was decided it was best to just launch our own without all the legacy problems, and if individual developers of alt-coins wanted to they could just do their own implementation by forking their reference implementation.
-
[quote name=“MrFeathers” post=“34880” timestamp=“1384816386”]
OOOO :o. This is going to be really interesting! Is it going to have a “fair launch” w/o premine? Is it going to be gpu mine-able scrypt? Is there going to be a website where I can track the release?
[/quote]More importantly [i]and on topic[/i], is Warren going to be upset?
-
[quote name=“MrFeathers” post=“34880” timestamp=“1384816386”]
OOOO :o. This is going to be really interesting! Is it going to have a “fair launch” w/o premine?
[/quote]It had better, or there’s going to be hell to pay.
[quote]Is it going to be gpu mine-able scrypt?
[/quote]Highly likely. It’s already been announced that it won’t be SHA-256.
[quote]Is there going to be a website where I can track the release?
[/quote]Well here is the guy’s blog: [url=http://blog.cryptographyengineering.com/]http://blog.cryptographyengineering.com/[/url]
Don’t know where the official announcement is planned. Probablly bitcointalk.org.
To be sure it won’t be this year when it happens. The holiday slowdowns are rapidly approaching. If I had to guess I’d say late January, early February at the soonest.
-
[quote name=“Kevlar” post=“34883” timestamp=“1384816896”]
Well here is the guy’s blog: [url=http://blog.cryptographyengineering.com/]http://blog.cryptographyengineering.com/[/url]
[/quote]Where do I buy shares?
;)
-
[quote name=“Kevlar” post=“34879” timestamp=“1384815994”]
The soon-to-be-alt-coin that will implement Zerocoin, name still TBD.
[/quote]Coin of Destiny.
I remember watching Matthew’s video on Zerocoin when we first started discussing it here (back in May/June).