WDC-FTC joint projects
-
Hi,
What exactly you want to cooperate on?
I mean it is all opensource.
Anybody can cooperate.
Cheers
-
Interesting. I actually made the most $ off WDC of all the cryptos I have mined TBH…i don’t hold any currently but that can always change.
-
Our github is here Clone it, fork it, make your changes and submit a pull request. :)
-
I asked Kevlar his thoughts on the subject, since he was around and the time. I think he has some very valid points.
kevlar:
I was here for UNOCS and I’d love to fill you in on the gaps. It started with non-developers making plans to collaborate, and that should be all the more I need to say. What should have happened is the code should have been forked on github, and a pull request made. That’s how developers collaborate. They don’t get non-developers to announce publicly that they’re collaborating.
What they should have done is say, “Hey, I’m from Worldcoin, and I have this here pull request, I was wondering if anyone was interested in merging it.”
Or, if they’re working on something, “Hey, I’m from Worldcoin, and I’m working on this feature on this fork. Can anyone answer a question about this piece of code?” Or, “Does anyone have a good idea on how to solve this problem in code?”
The last thing a developer needs is a non-technical micro-managing middle man to go between him and another developer. And the idea that these things happen because some non-coders decide that it should has been proven over and over again to be exactly how it doesn’t work.
-
Thanks for your answers !
About UNOCS, i didn’t have first hand information at that time (i am in the WDC committee since October 2014) but as kevlar said it seemed that it was about just good intentions from the managers at that time without any coordination with the developers.
I will clarify exactly what we are proposing.
First read this which is our plan for this year.
http://forum.worldcoin.global/index.php?/topic/66-wallet-refactor-project-2015/
As it is opensource of course your dev team could pull and adapt every thing they find interesting to FTC wallet so why they don’t do just that and incorporate a lot of interesting advancements in the wallet ?, the problem is that it takes a lot of time to test and integrate properly some work which it isn’t yours, the idea is that we would implement the framework and our work (if you find it interesting) directly in FTC github and it would be our responsibility to test and integrate correctly on FTC wallet. The same from your part, for example if you are planing to rebase FTC wallet to a newer BTC wallet, then do the work to our WDC too.
To be honest i am not really sure what are your developement plans for this year but once we catch up we obviously need to discuss what exactly we would implement in FTC wallet this year, and the same from your part so the work load is well balanced.
Of course there should be a public commitment to reach the milestones promised, even to impose some penalties if some party is affected from the delays of the other, if we don’t push ourselves hard we won’t
reach our goals.
-
I don’t mean to act as a spiritual medium for Kevlar’s replies, but his feedback via slack is very interesting.
kevlar [2:45 PM]
Spoken like a true non-developer.kevlar [2:52 PM]
Let’s see. If the argument is to be believed, integration and testing is a lot of work. So what he’s suggesting is that we double the amount of work involved? So now if you do something for FTC, you ALSO have to do it for Worldcoin?kevlar [2:53 PM]
How exactly is that collaborating? That’s just “Do our work for us, and maybe we’ll do something for you” (edited)kevlar [2:54 PM]
Oh, and then we should punish each other when we miss arbitrarily imposed deadlines.kevlar [2:54 PM]
That’s rich.kevlar [2:56 PM]
I mean forget for one minute that that’s an INCREDIBLY dumb way to structure development. If you REALLY wanted to do that, you should make one code base which is just re-branded for both coins.kevlar [3:03 PM]
I can just hear his response, “Well that’s what we’re proposing.”Great. Build it, and let us know when it’s done. We can evaluate it then.
Want help building it? Start writing code and discussing your progress. Maybe someone will send you a pull request if they like what you’re doing.
That’s how developers collaborate.
I’m starting to think he’s correct. There is a correct and well established way for open source projects to function, and non developers like myself just get in the way.
-
I am a developer but not in this context as I don’t seem to be able to find a use here for my skills. I think your right non developers may just be getting in the way.
-
There is a time tested and well established method for developers to collaborate. Non developers interfacing between two developers is senseless.
-
I don’t mean to act as a spiritual medium for Kevlar’s replies, but his feedback via slack is very interesting.
kevlar [2:45 PM]
Spoken like a true non-developer.kevlar [2:52 PM]
Let’s see. If the argument is to be believed, integration and testing is a lot of work. So what he’s suggesting is that we double the amount of work involved? So now if you do something for FTC, you ALSO have to do it for Worldcoin?kevlar [2:53 PM]
How exactly is that collaborating? That’s just “Do our work for us, and maybe we’ll do something for you” (edited)kevlar [2:54 PM]
Oh, and then we should punish each other when we miss arbitrarily imposed deadlines.kevlar [2:54 PM]
That’s rich.kevlar [2:56 PM]
I mean forget for one minute that that’s an INCREDIBLY dumb way to structure development. If you REALLY wanted to do that, you should make one code base which is just re-branded for both coins.kevlar [3:03 PM]
I can just hear his response, “Well that’s what we’re proposing.”Great. Build it, and let us know when it’s done. We can evaluate it then.
Want help building it? Start writing code and discussing your progress. Maybe someone will send you a pull request if they like what you’re doing.
That’s how developers collaborate.
I’m starting to think he’s correct. There is a correct and well established way for open source projects to function, and non developers like myself just get in the way.
I don’t know if our friend is a core FTC developer but it seems he has no experience with big software project management, so i will try to make it clearer :
Suppose that FTC dev team has a plan that interests us called product A, and we have plans to make another thing that looks interesting to you (see link in my first post ) … let’s call this product B.
The time invested from FTC dev team doing A and implementing B coupled with the time invested from our team implementing A and building B is a LOT BIGGER than FTC building A on both wallets coupled with the time WDC dev team building B on both wallets.
So it is NOT duplicating work , that’s the whole point.
95% coins have a rebranded wallet including FTC wallet which actually started as a rebranded LTC wallet, so i really don’t get the problem about it.
Another misconception … kevlar seems to believe that FTC has something that interests us now and we would like to leech it’s features now, well it doesn’t … we are not interested in neo scrypt, of course we would like to know the whole dev plan to define what exactly we would like to have ( some one please post a link to get more info :) )
I think a better argument would be: ‘we are not interested in what you are doing’ period, and that would be ok.
FTC and WDC are similar not equal which means that any pull from external source needs to be properly reviewed, tested and integrated which takes time, at least we don’t just type the ‘pull’ command with something we like and get done with it.
I don’t know were i said that we will define the ‘arbitrarily imposed deadlines’, this has to be negotitated of course but it wouldn’t make sense that one teams complies with commitments while the other don’t.
Overall I think it would have been a lot more useful if he just ask instead of ‘throwing jabs’ blindly, attacking doesn’t make someone smarter; if it is not clear our intention is not to attack FTC or it’s community or somehow hijack the work of their dev team.
Are there any official opinions about this ?
Even if we don’t reach an agreement it doesn’t hurt to have a good debate here and explore some ideas for the future won’t you guys agree ? :)
By the way kris_davison and MrWyrm you are doing a great job :)
thanks to other posters too
PD: i have developed an ERP solution in C++ and Qt in my country and i built a company around it so i can really say i have ‘some experience’ about software development topics
-
To be more explicit for non developers :
The team that develops a module has lot knowledge that it is not shared in the source code. for example : what are the caveats ? known bugs ? what was well tested ? what wasn’t? upgrade path ? internal documentation ? api compatibility ? , etc etc etc …mmmmm … etc etc etc. All this knowledge is not transmitted directly in the code.
You don’t need to believe me, most open source companies ( all ? ) bases their revenue model on this fact alone, for example Red Hat , Suse, etc etc etc… have their core product built around open source technologies but they sell support because their knowledge is not transmitted directly in the source code.
Moral: it is extremely more efficient that the development team implements directly their module instead of a third party team.
-
We don’t own our developers, they just contribute to our code. Any of our developers at any time could contribute their time towards any project. That’s up to them. There is nothing mandatory.
-
Hi ! But is there a central plan or direction ? or anybody contributes in the area they want/like ?
-
I don’t know if our friend is a core FTC developer but it seems he has no experience with big software project management, so i will try to make it clearer :
Not wishing to blow smoke up Kelvar’s arse, but that certainly isn’t true. We have had many heated debates on various subjects recently, he might be abrasive in his manner, but he’s anything but inexperienced.
-
You can have a lot of experience developing software but it is different when you work with large programs, very different dynamic and a new set of problems arises; probably i misunderstood the comment, point taken anyway, i withdraw my previous comment :)
I see that we have different developing models, so i agree it couldn’t work the way i projected it. We shouldn’t close the door for future cooperation though, even in the marketing area we can make some joint campaigns. I will hang around if any one has questions or interest in future cooperation
Thanks !
-
I’d welcome you to stick around, please don’t feel like we are not ‘coin friendly’, our door is always open, if there is every any feathercoin features you wish to port and have questions, please post back and I’m sure our Devs will assist where they can as I’m sure you would the same. I’d like to further add, the same offer stands for any coin without any form of ‘pre-agreed collaboration’ effort :)
-
I think maybe its worth talking with lizhi as he seems to be one of a very small list of core wallet developers we have.
I work as a developer so I agree there are other ways of working than just pull requests. But as you can see I’m not sure how feasible they are for us right now. Lizhi is pretty flat out making changes but he is one of only a few devs here that could actually commit to doing what you have suggested.
Everything else is just talk.
-
I’d welcome you to stick around, please don’t feel like we are not ‘coin friendly’, our door is always open, if there is every any feathercoin features you wish to port and have questions, please post back and I’m sure our Devs will assist where they can as I’m sure you would the same. I’d like to further add, the same offer stands for any coin without any form of ‘pre-agreed collaboration’ effort :)
Thanks! i extend the invitation for our forums too.
I think maybe its worth talking with lizhi as he seems to be one of a very small list of core wallet developers we have.
I work as a developer so I agree there are other ways of working than just pull requests. But as you can see I’m not sure how feasible they are for us right now. Lizhi is pretty flat out making changes but he is one of only a few devs here that could actually commit to doing what you have suggested.
Everything else is just talk.
Yeah, i would like to talk to Lizhi to see what he thinks about this.
In WDC we are sick of talking so we changed our model and now we more or less behave like a business with deadlines , pressure, we talk on daily basis . We will se in some months the results
-
Wyrm was assimilated
-
.
-
> I don’t know if our friend is a core FTC developer but it seems he has no experience with big software project management, so i will try to make it clearer :
Perhaps I should make something clear to you: I’m a professional software developer with 22 years of industry experience. My resume reads like a who’s who of the internet. I’ve architected systems that were over a million lines of code in the length of the project. My github repository has software that I architected and wrote that powers cloud computing for nation-level Telecos. I wrote the player for IFilm.com that launched viral videos on the internet 6 years before Youtube, and sold that to MTV. I invented a file system that is capable of storing all of the data that humans will ever create and sold that to AoL. I have 53 software patents listing me as the primary inventor, ranging from the massive distributed file system to music creation software and many topics in between. I’ve contributed to over 30 open source projects including such popular projects as Hibernate (Java ORM) and Apache JCS (Java Caching System), because I get paid to do it in the course of my day job. I’ve managed teams of software developers ranging in size from 2 to 40, been the lead architect for countless enterprise projects, and presently I’m the lead developer on a project for one of the big 7 studios leading a team of 7 developers, 2 artists, and a product owner on a rewrite of a 3.5 million lines of code. I’ve started my own gaming company, wrote my own physics engine, and designed my own CPU architectures. I can code in over 50 languages and have created 2 which are in production use in large enterprise systems. My githup repository is filled with my “big software project management”. I am, by any reckoning, an industry expert in the field of software development and project management, and my pay scale absolutely reflects that.
> Suppose that FTC dev team has a plan that interests us called product A, and we have plans to make another thing that looks interesting to you (see link in my first post ) … let’s call this product B.
> The time invested from FTC dev team doing A and implementing B coupled with the time invested from our team implementing A and building B is a LOT BIGGER than FTC building A on both wallets coupled with the time WDC dev team building B on both wallets.
So it is NOT duplicating work , that’s the whole point.
I don’t even know where to begin with this. It doesn’t take a coder to understand that implementing a feature in one code base is less work than implementing it in two different ones. Your logic fails so miserably I can’t begin to understand how you thought this would work. I’ve made a suggestion regarding how it COULD work, which bears no resemblance to your suggestion (they share a common code base)… you seem to have ignored that. If you have to redo the work in a second code base, you’re duplicating effort. Period. I don’t know how you could possibly suggest otherwise.
>95% coins have a rebranded wallet including FTC wallet which actually started as a rebranded LTC wallet, so i really don’t get the problem about it.
That’s because you’re obviously never worked on an open source project as a developer, let alone solved an actual problem like the one your describing.
>Another misconception … kevlar seems to believe that FTC has something that interests us now and we would like to leech it’s features now, well it doesn’t … we are not interested in neo scrypt, of course we would like to know the whole dev plan to define what exactly we would like to have ( some one please post a link to get more info :) )
I think you are interested in getting on the latest bitcoin core. It’s stopping you from merging upstream changes… but you already pointed out above that you have no idea how that process actually works, and you’re suggesting you don’t want the latest developments from the Bitcoin team included, yet in your original post you said you did. Seems like you don’t really know what the hell you want.
>I think a better argument would be: ‘we are not interested in what you are doing’ period, and that would be ok.
It’s just not true! OF COURSE we’re interested! We’re greatly interested! We would LOVE it if someone would come to us and go, “Hey, I got this here pull request…” and start collaberating with our developers! I’m sure you’d see a lot of good interaction and ideas exchanged in the process.
The problem is you’re not suggesting that, because you have no idea how to do that, or what the value in doing so is, or that it’s even what you should be doing. What your suggesting is formalized structure and overhead which adds absolutely no value to the open source development process what so ever. If you got paid to do open source development 40 hours a week for a living like I do, you would know this.
>FTC and WDC are similar not equal which means that any pull from external source needs to be properly reviewed, tested and integrated which takes time, at least we don’t just type the ‘pull’ command with something we like and get done with it.
I’m not even sure what it is your saying now. Type the ‘pull’ command? Have you ever used RCS before? Yeah… testing takes time… I think people understand that intuitively. I’m not sure who ‘just types the ‘pull’ command with something we like and get done with it’, or even what that is supposed to refer to. Can a non-developer translate that into developer speak for me please?
>I don’t know were i said that we will define the ‘arbitrarily imposed deadlines’, this has to be negotitated of course but it wouldn’t make sense that one teams complies with commitments while the other don’t.
ANY deadline is arbitrary! If you’ve done any software development, you would know that time commitments in software development only define how long it will DEFINATELY take, not how long it will ACTUALLY take. That’s why agile processes embrace change as part of the process and build that cost into the estimations, doing away with arbitrary deadlines and replacing it with velocity which CAN be used to measure when something will be done.
>Overall I think it would have been a lot more useful if he just ask instead of ‘throwing jabs’ blindly, attacking doesn’t make someone smarter; if it is not clear our intention is not to attack FTC or it’s community or somehow hijack the work of their dev team.
I just ask what? If you have the first clue what you’re suggesting, or if I want to get involved with someone who has demonstrated a severe lack of knoledge or understanding of how to properly manage developers working on an open source project. No, I don’t think I need to ask anything here.
>Are there any official opinions about this ?
Yep, my opinion is about as official as you’re going to get. I am a bonified, well established open source developer actively writing code. Bushstar is gone, and MrWyrm is running the show as best I can tell, but he knows better than to just subscribe people to someone elses vision, or speak on the behalf of a developer. What your suggesting is a disaster in the makings. We’ve tried it your way for over 2 years now, and it’s resulted in the death of the coin, while other projects flourish under the model I’m describing. Projects like Storj, Bitcore, BitShare, and… well… Bitcoin itself. They don’t have anything like what your suggesting, they do everything as I described it. Just go look for yourself if you don’t believe me.
>Even if we don’t reach an agreement it doesn’t hurt to have a good debate here and explore some ideas for the future won’t you guys agree ? :)
We don’t need to reach an agreement for two voulenteers to decide they want to work together. We don’t need an argreement for someone to clone the project, do some work, and submit a pull request. We don’t need you to interfere with our development, or tell us what to work on next, and we sure a hell don’t need you to impose business like formalities on something that doesn’t operate anything like a business. People get paid to do work for a business, so if you want to contract a developer, please let me know because I know some good ones who need the money. And when I say money, I mean cash up front at fair market wage, not tips for fractions of a penny. What’s needed is standards and innvoation… something which you’ve not suggested at all, and can’t be provided under the model you’re suggesting. And if you think for one minute you’re somehow different or better at running an open source project like a business, well get in line because idiots just like you are a dime a dozen. This isn’t just a bad idea, this is something that’s been proven to be extremely detrimental to open source development because thousands of people before you have tried it. Your predecessor tried it, and that was a disaster of the worst sort! What you’re suggesting is how non-developers approach software development… it’s definately how I did it when I was first getting started in open source about 10 years ago. Your qualifications of having ‘started a company and written code in C++’ do not qualify you as a developer, nor to the qualify you to lead other developers, or manage an open source project. PLEASE stop before you do more harm than good.
>By the way kris_davison and MrWyrm you are doing a great job :)
thanks to other posters too
They really are. MrWyrm in particular. He’s been handed a crap sandwitch of the smelliest kind, and he’s realized that no amount of condiments will ever make it taste good because it’s still a crap sandwitch. But instead of continuing to make the same mistakes, or sticking his head in the ground, he’s done a brilliant job of educating himself on the relevant topics required to manage a project like this. Topics like economics, management, community building, blockchain technology, and most importantly, open source development, leadership, and how to start a movement. He’s come to understand that leadership, like you’re suggesting, is TOTALLY overrated, and what’s needed is momentum, and he’s been studying how to build that by doing things like acting by example, welcoming others and treating them as equals. He’s actually starting to renew my faith in the coin… faith which has been used and abused in the most obscene way possible… but that’s water under the bridge now. Just today he came up with the most brilliant description of open source software I’ve ever herad, and yet he’s not a developer. I’ll paraphrase it here for you, with my appologies to MrWyrm if I get it wrong:
He said, “It’s like building legos with a small child. I have more skills at building big walls, so I go quickly, and the child works on small little walls, and then sticks them onto the big wall. I then tweak his contribution a little to make it sturdy all over, and then we continue. His lack of skill is not an impediment to contributing.”
We’re lucky to have him.
Immagine for one second if this was dancing. We’re doing the Feathercoin dance. Specifically at this point, Lizhi is dancing, and we’re all watching, because he’s the only one who’s actually coding. But let’s, for the sake of the metaphore, assume we’re all dancing. And what you’re doing is saying, “Hey! You all should come and dance here, and incorporate our dance moves into your dance moves.” And we’re saying, “No, that’s not how this works. You see, if you want us to dance with you, what you should do is come dance with us, and then if we like some of the moves your doing, we might start to dance like that too. But you can’t tell us how to dance and where to dance. That’s not how this works.”. You then replied, “Ok, but what we do is LINE dancing! You see, it’s better than whatever dance your doing, and people who don’t dance are punished.” and we said, “No, you don’t get it. We like dancing where everyone gets to decide how they dance, and if two or more people want to do a dance together, they’re encouraged by the others to, but they’re never given titles like, ‘head dancer’ or ‘dancing relations manager’. They’re just dancing.” And you went, “Oh. Well our dance is definately better, it’s too bad you don’t want to dance with us.” And we’re saying, “No, you misunderstood. We LOVE dancing with EVERYONE. We think people should be free to dance the way they see fit, and if someone starts a movement, then maybe some real collaboration will happen when that first follower turns that lone nut who’s dancing alone into a crowd of people dancing. But you won’t get that to happen by telling everyone how to dance, and when to dance, and not paying them to dance your way. It doesn’t work that way, it’s been tried many times in the past, and it fails every time, because people just go dance the way they want to. They want to dance the way they see fit. We’re not a business, we’re dancing! Come dance with us!”
…
I promised my friend Calem I wouldn’t post on these boards any more, but he got a good bye post, so he’s going to have to understand if I uphold the spirit of the promise, if not the letter. As my friend, I trust he will forgive me this transgresion. If you’re still reading, thank you for understanding. You’re one of the good ones.
I’m not going to post here any more. My work here has finally been done, as I have succeeded in accomplishing what I have tried to do for over two years now.
I came here to learn about crypto-currencies. I’ve done that.
I came here to make friends. I’ve done that.
I came here to enrich people’s understanding. I’ve done that.
I came here to write code. I’ve definately done that.
I came here to help people. I’ve tried really hard to do that.
I came here to educate. I’ve done a lot of that.
I’ve also failed on each of those accounts.
I came here to learn about crypto-currencies, yet I still don’t know what makes a crypto-currency the best one. If anything, my conclusion is there is no best one, which is somehow unsatisfying, yet also relieving, because I don’t have to decide which currency I’ll hold or transact in today. I learned that the market will make that choice for me, regardless of my ethos.
I came here to make friends, but I’ve made a few enemies in the process. Many people don’t like the fact that I won’t appologize for who I am. A few appreaciate that we need people who dismiss the individual in search of the whole, just like we need doctors who ignore the whole around them and focus on the individual people they can save, and that my role in this world doesn’t require people skills, and that I’m ok with being hated, even if it means I’m not remembered when that hate turned to rage, and rage to action, and action to change, and change to a better place. Most just think I’m an asshole. You are, of course, correct. That is my role here: The guy who cared nothing for other people’s feelings and would say what really needed to be said, even if it was wildly unpopular, or even outright wrong, or just plain rude. Yes, I LIKE arguing, debate, controversy, and drama, because it’s how you address what the other people are saying: By making an argument, debating, acting controversial, and even sometimes dramatic in order to get them to see the point being made. I find those tactics to be the part of any healthy software development process, and I understand they do not scale to the people world, but I won’t appologize for being who I am. I am a coder, and I understand most of you are not. For many of you, that makes me lesser than you in your eyes, and that’s ok. For a few, it makes me a knight amongst pesants, and I don’t like that at all either. I’m just a coder, not a hero, not the devil. If I’m not your friend, then either you chose that for yourself, or I chose that for you because your a dumbass, and go fuck yourself.
I’ve tried to enrich people’s understanding, but some people have literally become more entrenched in their dogmatic beliefs upon which they will not be swayed. To them, I have been the loudest in a desperate plea to engage with an honest discussion of the subject, but in over 2 years, no such discussion would happen. Maybe if I leave they’ll listen. Maybe not.
I’ve tried to write code, and I gave it my best shot at one point. I posted regular updates, I made podcasts of my development, I linked to the github repo over and over, and I got a fair amount of support from the community, but I failed to start a movement. Hope, bless her heart, was a first follower. Tuck cheered me on from the start. I’ll miss bantering with them here. But I never reached a tipping point, and I don’t think I will with this community, no matter how good a job I do. It’s just not the right person to do it, and I have to accept that fact.
I came here to help people, but I understand I’ve hurt them too. I’ve championed a coin which I knew was being mismanaged and I was talked into complacency. I failed to recover the money that was scammed from people by that GPU farm fiasco. I watched as millions of dollars of investment of people’s money was pissed away on lies that I knew were lies but didn’t know how to reach the people to stop them from losing their money. I tried to help people, but in the end I fear I only made it worse, both through my actions and through my inactions. I am negligant, although assuredly not criminally and liably like some of the others involved.
I came here to educate, but there’s only so much you can teach people before you realize that there’s more effective ways of educating. I will continue to try and educate people, but not here. This is not the place for me to do that any more.
MrWyrm has my full support, and a direct line to me that we keep open. I hope that you all learn the lessons he’s learning, and benifit in the same way others have before now from this board. I hope my legacy is, at the very least, a cautionary tale on what happens when you allow people who are disruptive in the mix. And I hope you will learn from my example, and learn how to dance the way you want to. I’ll see you all again in version 2.0.
#include using namespace std; class For_every { public: void ngular(){cout << endl << "I";}; void que(){cout<