We build open source tools for processing spreadsheet data (https://github.com/sheetjs/js-xlsx is our largest and most popular open source project). Our open source tools have been used by government agencies, S&P 500/Dow companies, and startups alike. We've found people have taken the library, removed header comments, and sold as-is. Some startups have taken our web demo http://oss.sheetjs.com/, replaced the name with their own, and tried to use that to raise money. But those aren't really regrettable -- it's written off as "shameless people are shameless".
The truth is, you can never really know what would have happened if you didn't open source in the first place. Would an open source alternative emerge? Would people pay for your project or would it die in relative obscurity? That's unknowable.
If there's any regret, it's probably the amount of time spent doing support work for the open source libraries. It's not particularly interesting (usually pertaining to something in the README), time consuming (everyone seems to have their own secret project that they don't want to discuss, so you have to draw out the underlying issue slowly), and uncompensated.
I've discovered that "shameless people are shameless" is surprisingly common. I stumbled across a site for a new JS book one day, and it looked exactly like the personal site of one of our frontend developers. I asked him if he started selling his site as a template, and he goes pale. About 15 minutes later we found where someone had lifted all the assets off his site, replaced his name and photo, and put it up for sale on ThemeForest. Didn't even remove all the comments he left in the code. Dude was making about $2k a month with it. He ended up having to send him a cease and desist, and the guy only gave him about $3k as a settlement.
Out of curiosity, why do you restrict the drop zone on your demo page to that tiny box in the corner, why not let the file be dropped anywhere on the page?
Throwing random code over the wall is fairly harmless, until it sees any level of popularity, at which point you become the sole point of contact for a sea of people expecting bug fixes for free. That can be rewarding, but it can also be intensely draining.
Imagine looking at your personal inbox giving you the same feeling of dread as you'd expect looking at your work inbox after being off for a few weeks..
I'm currently trying to offload one project because it's getting too much, and just finding a new maintainer who knows C and Python to a decent standard has turned out difficult. None of the regular project users have stepped up. Shrugs
Exactly this experience happens in big teams internally as well.
It works like this according to my experience: You see a problem before it really does financial harm to the company. You start developing a solution. You expect to get rewarded with prices, raises, titles and public encouragement, because you solved the problem before anybody even saw it.
But instead this will happen: The employees who run into the problem first and therefore would be the one who suffer from it, find that your solution may be an answer. But instead of making it work they find ways to complain about it publicly. Since management hasn't yet realized that there is a problem, they just hear that you are not doing your job and put pressure on you to fix all the bugs, because of your bugs nobody else can work, so it seems.
This is not stupid by the other people or by accident. The moment they have found a way to complain about you it doesn't matter anymore if the task will be successful or not, since a failure wouldn't be blamed on them anymore as well. Everybody knows that the bugs are your fault, right?
In this regard open source seems less harmful to me. In open source at least there is no boss who can push you to solve the bugs, or fire you if you don't.
This matches my experience. Even now, depending on the day, I might be looking at around 30-50 emails of varying, usually depressingly low quality per day. I've had some relatively successful one man projects in the past and at peak popularity it would take me several hours per day to sift through everything.
> None of the regular project users have stepped up
Most projects' development processes are under-documented, even healthy projects and those run by people not looking to get out. This may be the case with yours.
Have you written up a short description of your practices and the things that a maintenance takeover would entail?
Not regretting it, but open sourcing our embedded PHP engine PH7[1] did hurt our sales (I think) when some Chinese company started abusing the software by embedding it in their hardware without paying any license fee (The software is dual licensed and require a commercial license for closed source code). I have a indirect proof of that abuse but starting a lawsuit against a Chinese co won't lead to any result?
I think I regret making Papa Parse[1] open source under the MIT license, anyway. Turns out it became incredibly popular and I missed a lot of opportunities to make a profit on the side. But it is used by government agencies around the world, and non-profit organizations like the UN and Wikimedia, so at least it's doing some good. But I know quite a few large businesses are using it at the core of their products... for free. Oh well. It was fun to build.
I understand your feeling, but I used it in a startup I work for. As I was responsible for this feature (customers uploading their csv files), with PP I did this task in half a day when it could have took me a few days. I told this to my boss and I asked him to donate to PP from the company, but I never heard about it again, so I will ask him again on Monday.
I use papaparse, it's been pretty awesome, so that thank you for making it.
Have you considered offering support contracts, or a dual licensing approach? I don't mean to butt in and offer a bunch of unsolicited advice, just more curious because I might be trying to do similar stuff with some of my projects, so always on the lookout to see what works and what doesn't.
Thanks again for making papaparse it's really fast and has really helped me get some projects off the ground a lot faster than I would have otherwise!
Is it incredibly popular because it is uniquely useful or primarily because it was open source under the MIT license? To put it differently, would people have started using it if you started with a closed source solution, or would someone else have emerged with a better open source alternative?
You can still monetize it right? Look at what happened so far as a market validation and build a "better" paid variation of it that includes support and maintenance. Wouldn't that be possible?
Could learn from the Pharma industry where they use techniques like changing the formulation or introducing a new drug administration route to "renew" the patent.
Instead of debating it, if it were me, I would just give a people a reason to pay and see if it works.
You could have the same product presented as:
Lil Papa "recommend for individual use" - FREE/DONATE
Fat Papa "recommended for business use" - 1 MILLION/month (the same thing but we send you one emoji a month and give you a proper invoice)
Looks like you already have people trying to pay you and they could easily do it if there was invoiced paid option.
If folks can make money off of "Laundry Balls" there is no reason you shouldn't off of work like papaparse.
I'm a huge fan of the two-clause BSD license, but I can also understand that regret. I've always wondered how you would monetize something like this, though. It always seems difficult to me how you ensure that you're being paid without an army of lawyers (the Microsoft model) or limiting it to some sort of app store (the Apple / Google model). What would be the best way to do it, if you had it to do over again?
The opposite. In my country it's really hard to get any ownership of your content if you are an employee. For instance you work as secretary for a bodyguard company and in your private time lead a pop-rock band. It's not impossible that your boss can grab a share of your music earnings.
In this regard open-source is really helpful, because it enables me to write code in one gig that is good enough to earn my pay there, but allows me in a legal way to use the same code in my next gig. Instead of giving my boss monopoly over my long-term viable content, I make it free to everybody and therefore useful to my future self.
I would even argue it's good for the boss too, since this way I am more motivated to produce, and 90% of the code used in production is totally useless once the author is gone, since most developers aren't good enough to reuse preexisting code and will instead start writing their own code from scratch.
> For instance you work as secretary for a bodyguard company and in your private time lead a pop-rock band. It's not impossible that your boss can grab a share of your music earnings.
What country is this? I can't imagine such a scenario outside of a serfdom.
While I don't regret it, last experiences with open source probably made me to not do it again. Essentially people seemed to assume that if I release a project, it also means that I'm require to provide free support for it, etc. The attitude from users of the software was depressing - in fact to me it feels that my paying customers are nicer on average.
I think it's human nature to not value things that are free the same way we value things we have to pay or spend effort for. It makes sense that it follows to open source projects as well, though I'm often appalled at some of the requests and tickets on some of the open source libraries I use and contribute to.
If I see an unanswered 'dumb' question that's relatively recent I'll try and answer it in such a way that the maintainer(s) can effectively just close the ticket and be done with it.
Without contributing code I hope that me giving them 2-10min of their life back is a small but welcomed bit of help for them.
Similar feeling here. I released something open source, others started contributing to it (which is rare! so that's awesome!) but their commits started breaking things for others. That meant I'd get the complaints, and I had to spend a lot of unpaid time fixing their bugs. There were ongoing debates as well from contributors (and non-contributors!), and that's how I learned what the word "bikeshedding" means :)
Instead of giving something for free to the world, I'd accidentally created an unpaid job & ongoing drama for myself (ie a net-negative for me personally, instead of at least being a neutral / zero).
With my commercial software, I'm being paid by customers to help them, and the better I make the software, the more likely people are to buy it. The incentives align. Those paying customers are mostly nicer to me as well, some wonderful compliments. And none of them have ever debated GPL vs BSD vs MIT with me - they just want the software to work, work well, and be beautiful & easy to use.
The free users have no skin in the game. If they don't get what they want, they're on to the next one.
The paid users see your products value, and use it to solve a problem of theirs. They ask for fixes/features because it would make a bigger difference to them.
but a problem that i run into often as a user of open source software is that in many cases the readme or other promotional material makes generous claims about quality or performance that the softwares fail to live up to. and in those cases i'm quick to bash the authors
Definitely: the software for running World of Warcraft private servers, also known as MaNGOS.
Founded and released that in 2005, got so much trouble because of that and wasted loads of cash to keep up project through numerous DDoS attacks, hacks (one of them even causing github downtime in 2013).
I had no idea it was so taxing, but I do want to let you know that MaNGOS is probably what set me on a path of learning programming (which has become my career) so I am indebted to you.
But did you regret making it open source, or doing it at all? Wouldn't most of those issues have still occurred had you kept the source closed, but ran such a server?
Thanks to mangos I've played for years for free. I've made dozens of friends along the way. It's been a big part of my life and I'm very happy about it. Your project has made me and thousands of people very happy. So don't talk such rot.
I released an open-source universal cryptocurrency banking website in 2013 called "Safewallet". It has decent google ranking for SEO terms related to open-source crypto banking.
Every time the price of Bitcoin goes up I start getting emails from wantrepreneurs asking me to essentially work for them without pay because they "have a great idea" and "just need a little help getting the software working". During Bitcoin mania phases ( like now ) I'll get 2-3 of these emails a month.
Too many stories to list. Everything ranging from offers of $2,000 to build a "BitStamp clone" or the time I was suppose to be having a sales call with the CEO and instead was greeted by their lead engineer with an endless list of questions on how they could build their own cryptocurrency bank. CEO got real nasty when I politely informed him they would have to pay me for my expert advice.
They all want something for nothing and get an attitude when I tell them I'm not going to build them their own cryptocurrency bank for free or for minimal pay.
Regret spending so much time on something which has only brought me grief.
I can't get into details, but I worked at a place that was thinking about opening up some development for open source publishing. Another team was working on some very high-end algorithmic work in a specialized field and the company was pumping lots of money into internal R&D for that group. They were selected as an open source test case.
They pushed up their code to github and within a few months a group of them had left the company to form a boot-strapped competitor using their same code -- essentially using the open source publication of their tools as a way to legally ex-filtrate corporate IP -- a nightmare scenario for many companies (and also recently in the news i.e. Uber v Waymo).
This one act burned all open source publishing plans to the ground and now that company open sources as little software as possible. Now, several years later, they haven't published a single line of open source code that I'm aware of.
I made an open source lib for Cordova (eventually ported to React Native and others). I found I'd gained a number of users with few contributing back, so I forked my own project, closed the source into compiled and encrypted binaries. Now I sell licenses and support, generating ~$20k/month. Innovation has skyrocketed since I've been able to dedicate 100% of my time to the products for the last 2.5 years.
Lot of comments indicate that the code authors regret making their code open source because somebody rebranded their code or sold it and made money.
You always had a choice to stop development in the early stages and:
1) Make it proprietary - Why didn't you do it?
2) Have a commercial version - Why didn't you do it?
3) Change the license from MIT/Apache/etc - Why didn't you do it?
4) Charge for features/support/maintenance/etc - Why didn't you do it?
When you use certain OS licenses, you give the permission to its user to do whatever they wish including selling it and therefore, complaining about it later doesn't make any sense.
Mattermost for example, was APL. Then they changed it to AGPL because they experienced something similar.
Gitea was born out of the frustration that the original code was not maintained properly.
There are numerous examples like this.
So stop complaining and take action else embrace open source with all your heart.
When we call software “free,” we mean that it respects the users' essential freedoms: the freedom to run it, to study and change it, and to redistribute copies with or without changes. This is a matter of freedom, not price, so think of “free speech,” not “free beer.” These freedoms are vitally important. They are essential, not just for the individual users' sake, but for society as a whole because they promote social solidarity—that is, sharing and cooperation. They become even more important as our culture and life activities are increasingly digitized. In a world of digital sounds, images, and words, free software becomes increasingly essential for freedom in general.
- Richard Stallman
I regret not making a good deal of software open source. But it's a tough decision depending on your market.
One of the niches I specialized in was essentially taken over by an influx of offshore resources. It's like going into bizzaro world when you go to a meeting on a project and someone else is using your own powerpoint presentation and is doing it wrong. It's offensive when you go through project documentation and see that someone else has gotten paid for documents that you wrote for another customer - especially when they are not current.
When I began experiencing this kind of thing, I felt confident in my decision _not_ to open source software.
But the reality is that my biggest source of pride was given to the world at large. And all these years later I would appreciate having a lot of code which I no longer own in my portfolio. And while there are those who would have poached and pillaged my work, my income would have been minimally affected (or maybe not at all). The fact is that when I operated in that niche, the money I earned was all due to the fact that I was good, not because of any particular piece of software. Having a public portfolio of related software might have even brought in more business.
Yes. I did horrible things at the start of clj-time in my fork. I was so disgusted with my solution I abandoned it.
Those decisions got propagated and didn't get fixed for a long time. I should have kept it closed and let someone else do it properly, rather than unless abandonware on the world.
In fact, come to think of it, I regret everything I've ever open sourced. I can't think of even one time it lead to a positive outcome. I can't think of even one time it didn't lead to a decidedly negative outcome.
The same is true of my writing. Every time I've wrote about the advancements of programming, people have made it their goal to oppose it and mock me over it.
Lots of people love to talk about how great this community is. But I've never seen our world as much more than a slowly spreading cloud of venom in a larger medium of confusion. I've felt this way ever since the days when I was a kid and the title "hacker" was rigorously gatekept in local and isolated oligarchies.
One pattern I have seen a few times is that a company develops some important internal piece of software and then later the opens the source code (normally motivated by the notion that other people will contribute to it - which they rarely do).
What normally happens next that the company loses control of this software which they probably didn't realise was so important to their core business as the employees who worked on it are empowered move to other companies and develop private forks or start up as a micro-ISV/contractor business based around providing private forks of the software to clients.
I think what people don't realise is that most of the legal structure around open source software is for software used by end-users. For internal software the GPL doesn't function in the same way: other organisations are more than able to keep private forks and realise all the benefit of the software without contributing back.
I'm encountering difficulties right now with a project I open-sourced. Some other people made it a core part of their business, but then I left the company, so I can't merge patches to the official branch. And to be honest I don't have the time to do this (I work for another growing startup).
But it's still it's one of the best things I have ever done in computing. It was fun, and I got paid to do a kind of pure research, and enhance my own reputation while doing it. My former employer got free patches from very big and talented companies. I've made some interesting connections through this, that's for sure.
First time I made a project I wrote myself (a CP solver called Minion) GPL. I now know several companies had interest in it but we're afraid to put any GPL in their toolchain. I've never received useful external contributions, so I may as well have used BSD.
The second is a project I work on where GPL V2 was chosen. Now some committers have passed away so we are stuck on 2, so can't link with other, GPL v3-only code
Nooo. Open source was always something I really believed in. I don't have projects which are used by the masses, but the random thanks by a stranger when he finds something I made and open sourced[1] as useful is priceless. But that's just me.
As a whole, I'm much more happy that I did than if I hadn't.
Over the past 13 years, I've been developing console emulators for 12 systems and counting. If my work were closed source, I would not have received patches and contributions from 30+ people and counting. And I wouldn't have met several amazing people who ended up becoming very good friends for a very long time. One in particular has been amazing in helping me open up and be less guarded all the time.
I was also able to sell one complete commercial license, and received a partial payment for a license from another company that then vanished (I tried to refund the latter, but e-mails to them no longer work.) I've received a very large number of donations over the years. Should be around $5000 in license sales, $7500 in donations, and another $2500 to fundraise hiring a person to decap chips and extract program code from them for improving emulation. I've also had multiple people make very specialized custom hardware that has helped me out more than words can express. I've had people trust me and lend me thousands of dollars worth of rare games for the purpose of verifying information for emulation and then returning them.
But I would be lying if I said it was all good. At the time of writing, I am aware of eighteen forks of my emulator. Two of these projects in particular never talk to me or submit upstream fixes, and instead commit changes to their own repository with extremely derogatory remarks about me and my programming skills. Two of these intentionally undermine and sabotage the entire goal of what I've been working on from day one (namely, adding known-incorrect hacks to speed up emulation. My distaste for hacks was the whole reason I got involved with emulation in the first place.)
Most of the forks of my software are from versions I released either three and a half years ago, or six years ago. A small number of them are quite popular, meaning my work may as well have been discontinued for those users.
One fork collects over $2,000 a month on Patreon off the backs of others' emulator cores including mine -- even ones that are explicitly non-commercial. One developer just wantonly ignored my GPL license and sells my emulator on Steam, doesn't provide any attribution or credit for using my work, and plays games when people try and get the source code to said work (but to be fair, one person did obtain it.) That one was made particularly worse because he wasted a good 20+ hours of my time over the span of six months promising repeatedly to license my emulator, only to back away at the last minute and pull this without even telling me.
I've had people very blatantly read through my source code to improve their emulators and documentation, and not just avoid giving me credit, but outright deny having ever looked at my code. In the most egregious case, someone copied a set of opcode mnemonics from a CPU core. Only ... that CPU core was never publicly documented: I made up every single mnemonic myself, and the only place those mnemonics existed were in my source code.
I've ended up with two people who have harassed and impersonated me online for six and eleven years respectively now, for reasons I really can't comprehend. I've had half the main staff of the most popular emulator out there make a passtime of digging through my 400K-line codebase, looking for individual lines that were poorly written to mock completely out of context in a public chat area -- and they're people I still have to work with often.
But what I always remind myself is, it's easier to dwell on the negatives. It's possible I could have made a lot more money with commercial licensing sales if my work were closed source. But my software is vastly better than it would be without all the help I've received over the years due to being open source. And I benefited a lot from other open source emulators, so it would be pretty selfish to not return the favor to others. There's no sense in me trying to force people to use my version of my software. I'd rather have a smaller number of users who actually fully appreciate what I'm going for. And I have a pretty thick skin at this point for the rest of it.
That said, do put as much thought as you can into this before releasing as open source. Once you do so, you can never go back. Even if you try, your work will be forked at the last open source release. But speaking for myself, if I could go back and do it all again, I would still keep everything open source.
[+] [-] sheetjs|8 years ago|reply
The truth is, you can never really know what would have happened if you didn't open source in the first place. Would an open source alternative emerge? Would people pay for your project or would it die in relative obscurity? That's unknowable.
If there's any regret, it's probably the amount of time spent doing support work for the open source libraries. It's not particularly interesting (usually pertaining to something in the README), time consuming (everyone seems to have their own secret project that they don't want to discuss, so you have to draw out the underlying issue slowly), and uncompensated.
[+] [-] beckler|8 years ago|reply
[+] [-] lobotryas|8 years ago|reply
[+] [-] lgas|8 years ago|reply
[+] [-] _wmd|8 years ago|reply
Imagine looking at your personal inbox giving you the same feeling of dread as you'd expect looking at your work inbox after being off for a few weeks..
I'm currently trying to offload one project because it's getting too much, and just finding a new maintainer who knows C and Python to a decent standard has turned out difficult. None of the regular project users have stepped up. Shrugs
[+] [-] erikb|8 years ago|reply
It works like this according to my experience: You see a problem before it really does financial harm to the company. You start developing a solution. You expect to get rewarded with prices, raises, titles and public encouragement, because you solved the problem before anybody even saw it.
But instead this will happen: The employees who run into the problem first and therefore would be the one who suffer from it, find that your solution may be an answer. But instead of making it work they find ways to complain about it publicly. Since management hasn't yet realized that there is a problem, they just hear that you are not doing your job and put pressure on you to fix all the bugs, because of your bugs nobody else can work, so it seems.
This is not stupid by the other people or by accident. The moment they have found a way to complain about you it doesn't matter anymore if the task will be successful or not, since a failure wouldn't be blamed on them anymore as well. Everybody knows that the bugs are your fault, right?
In this regard open source seems less harmful to me. In open source at least there is no boss who can push you to solve the bugs, or fire you if you don't.
[+] [-] shp0ngle|8 years ago|reply
Before open sourcing, I have that anxiety that people will look at my shitty code and judge.
Nobody really looks at the code in reality. People just come, write some terribly written bug report, and then they write "+1" in github issues.
[+] [-] shimo5037|8 years ago|reply
[+] [-] __s|8 years ago|reply
[+] [-] carussell|8 years ago|reply
Most projects' development processes are under-documented, even healthy projects and those run by people not looking to get out. This may be the case with yours.
Have you written up a short description of your practices and the things that a maintenance takeover would entail?
[+] [-] jnwatson|8 years ago|reply
Small world.
[+] [-] irremediable|8 years ago|reply
[+] [-] oss_workhorse|8 years ago|reply
[deleted]
[+] [-] symisc_devel|8 years ago|reply
[1]: https://github.com/symisc/ph7
[+] [-] mholt|8 years ago|reply
[1] http://papaparse.com
[+] [-] pmtarantino|8 years ago|reply
Thanks again for this library.
[+] [-] benjaminjackman|8 years ago|reply
Have you considered offering support contracts, or a dual licensing approach? I don't mean to butt in and offer a bunch of unsolicited advice, just more curious because I might be trying to do similar stuff with some of my projects, so always on the lookout to see what works and what doesn't.
Thanks again for making papaparse it's really fast and has really helped me get some projects off the ground a lot faster than I would have otherwise!
[+] [-] TAForObvReasons|8 years ago|reply
[+] [-] arjunvpaul|8 years ago|reply
Could learn from the Pharma industry where they use techniques like changing the formulation or introducing a new drug administration route to "renew" the patent.
Instead of debating it, if it were me, I would just give a people a reason to pay and see if it works.
You could have the same product presented as: Lil Papa "recommend for individual use" - FREE/DONATE Fat Papa "recommended for business use" - 1 MILLION/month (the same thing but we send you one emoji a month and give you a proper invoice)
Looks like you already have people trying to pay you and they could easily do it if there was invoiced paid option.
If folks can make money off of "Laundry Balls" there is no reason you shouldn't off of work like papaparse.
[+] [-] sverige|8 years ago|reply
[+] [-] sprobertson|8 years ago|reply
[+] [-] erikb|8 years ago|reply
In this regard open-source is really helpful, because it enables me to write code in one gig that is good enough to earn my pay there, but allows me in a legal way to use the same code in my next gig. Instead of giving my boss monopoly over my long-term viable content, I make it free to everybody and therefore useful to my future self.
I would even argue it's good for the boss too, since this way I am more motivated to produce, and 90% of the code used in production is totally useless once the author is gone, since most developers aren't good enough to reuse preexisting code and will instead start writing their own code from scratch.
[+] [-] sverige|8 years ago|reply
What country is this? I can't imagine such a scenario outside of a serfdom.
[+] [-] albedoa|8 years ago|reply
[+] [-] INTPenis|8 years ago|reply
Because if it was then I'd be able to take that awesome product with me when I left and benefit from it where it's needed.
[+] [-] repomies6999|8 years ago|reply
[+] [-] manyxcxi|8 years ago|reply
If I see an unanswered 'dumb' question that's relatively recent I'll try and answer it in such a way that the maintainer(s) can effectively just close the ticket and be done with it.
Without contributing code I hope that me giving them 2-10min of their life back is a small but welcomed bit of help for them.
[+] [-] SyneRyder|8 years ago|reply
Instead of giving something for free to the world, I'd accidentally created an unpaid job & ongoing drama for myself (ie a net-negative for me personally, instead of at least being a neutral / zero).
With my commercial software, I'm being paid by customers to help them, and the better I make the software, the more likely people are to buy it. The incentives align. Those paying customers are mostly nicer to me as well, some wonderful compliments. And none of them have ever debated GPL vs BSD vs MIT with me - they just want the software to work, work well, and be beautiful & easy to use.
[+] [-] Sholmesy|8 years ago|reply
The paid users see your products value, and use it to solve a problem of theirs. They ask for fixes/features because it would make a bigger difference to them.
[+] [-] rhlala|8 years ago|reply
[+] [-] pmarreck|8 years ago|reply
I've seen this said quite a few times in many contexts
[+] [-] nqzero|8 years ago|reply
but a problem that i run into often as a user of open source software is that in many cases the readme or other promotional material makes generous claims about quality or performance that the softwares fail to live up to. and in those cases i'm quick to bash the authors
open source doesn't excuse false advertising
[+] [-] marenkay|8 years ago|reply
Founded and released that in 2005, got so much trouble because of that and wasted loads of cash to keep up project through numerous DDoS attacks, hacks (one of them even causing github downtime in 2013).
oh well. Next :-)
[+] [-] sturmen|8 years ago|reply
[+] [-] tokenizerrr|8 years ago|reply
[+] [-] ghthor|8 years ago|reply
[+] [-] mrkrabo|8 years ago|reply
[+] [-] _Marak_|8 years ago|reply
Every time the price of Bitcoin goes up I start getting emails from wantrepreneurs asking me to essentially work for them without pay because they "have a great idea" and "just need a little help getting the software working". During Bitcoin mania phases ( like now ) I'll get 2-3 of these emails a month.
Too many stories to list. Everything ranging from offers of $2,000 to build a "BitStamp clone" or the time I was suppose to be having a sales call with the CEO and instead was greeted by their lead engineer with an endless list of questions on how they could build their own cryptocurrency bank. CEO got real nasty when I politely informed him they would have to pay me for my expert advice.
They all want something for nothing and get an attitude when I tell them I'm not going to build them their own cryptocurrency bank for free or for minimal pay.
Regret spending so much time on something which has only brought me grief.
see: https://github.com/bigcompany/safewallet
[+] [-] bane|8 years ago|reply
They pushed up their code to github and within a few months a group of them had left the company to form a boot-strapped competitor using their same code -- essentially using the open source publication of their tools as a way to legally ex-filtrate corporate IP -- a nightmare scenario for many companies (and also recently in the news i.e. Uber v Waymo).
This one act burned all open source publishing plans to the ground and now that company open sources as little software as possible. Now, several years later, they haven't published a single line of open source code that I'm aware of.
[+] [-] christocracy|8 years ago|reply
[+] [-] nathancahill|8 years ago|reply
I get a handful of emails each day requesting assistance. I direct them to the README, Stackoverflow and this page: https://github.com/nathancahill/Split.js/wiki/Split.js-Suppo...
This has worked out well, I've made money off of serious users and avoided a lot of painful back and forth with people who don't want to share code.
[+] [-] devj|8 years ago|reply
You always had a choice to stop development in the early stages and: 1) Make it proprietary - Why didn't you do it? 2) Have a commercial version - Why didn't you do it? 3) Change the license from MIT/Apache/etc - Why didn't you do it? 4) Charge for features/support/maintenance/etc - Why didn't you do it?
When you use certain OS licenses, you give the permission to its user to do whatever they wish including selling it and therefore, complaining about it later doesn't make any sense.
Mattermost for example, was APL. Then they changed it to AGPL because they experienced something similar.
Gitea was born out of the frustration that the original code was not maintained properly.
There are numerous examples like this.
So stop complaining and take action else embrace open source with all your heart.
When we call software “free,” we mean that it respects the users' essential freedoms: the freedom to run it, to study and change it, and to redistribute copies with or without changes. This is a matter of freedom, not price, so think of “free speech,” not “free beer.” These freedoms are vitally important. They are essential, not just for the individual users' sake, but for society as a whole because they promote social solidarity—that is, sharing and cooperation. They become even more important as our culture and life activities are increasingly digitized. In a world of digital sounds, images, and words, free software becomes increasingly essential for freedom in general. - Richard Stallman
[+] [-] Steeeve|8 years ago|reply
One of the niches I specialized in was essentially taken over by an influx of offshore resources. It's like going into bizzaro world when you go to a meeting on a project and someone else is using your own powerpoint presentation and is doing it wrong. It's offensive when you go through project documentation and see that someone else has gotten paid for documents that you wrote for another customer - especially when they are not current.
When I began experiencing this kind of thing, I felt confident in my decision _not_ to open source software.
But the reality is that my biggest source of pride was given to the world at large. And all these years later I would appreciate having a lot of code which I no longer own in my portfolio. And while there are those who would have poached and pillaged my work, my income would have been minimally affected (or maybe not at all). The fact is that when I operated in that niche, the money I earned was all due to the fact that I was good, not because of any particular piece of software. Having a public portfolio of related software might have even brought in more business.
[+] [-] KirinDave|8 years ago|reply
Those decisions got propagated and didn't get fixed for a long time. I should have kept it closed and let someone else do it properly, rather than unless abandonware on the world.
In fact, come to think of it, I regret everything I've ever open sourced. I can't think of even one time it lead to a positive outcome. I can't think of even one time it didn't lead to a decidedly negative outcome.
The same is true of my writing. Every time I've wrote about the advancements of programming, people have made it their goal to oppose it and mock me over it.
Lots of people love to talk about how great this community is. But I've never seen our world as much more than a slowly spreading cloud of venom in a larger medium of confusion. I've felt this way ever since the days when I was a kid and the title "hacker" was rigorously gatekept in local and isolated oligarchies.
[+] [-] calpaterson|8 years ago|reply
What normally happens next that the company loses control of this software which they probably didn't realise was so important to their core business as the employees who worked on it are empowered move to other companies and develop private forks or start up as a micro-ISV/contractor business based around providing private forks of the software to clients.
I think what people don't realise is that most of the legal structure around open source software is for software used by end-users. For internal software the GPL doesn't function in the same way: other organisations are more than able to keep private forks and realise all the benefit of the software without contributing back.
[+] [-] neilk|8 years ago|reply
But it's still it's one of the best things I have ever done in computing. It was fun, and I got paid to do a kind of pure research, and enhance my own reputation while doing it. My former employer got free patches from very big and talented companies. I've made some interesting connections through this, that's for sure.
[+] [-] CJefferson|8 years ago|reply
First time I made a project I wrote myself (a CP solver called Minion) GPL. I now know several companies had interest in it but we're afraid to put any GPL in their toolchain. I've never received useful external contributions, so I may as well have used BSD.
The second is a project I work on where GPL V2 was chosen. Now some committers have passed away so we are stuck on 2, so can't link with other, GPL v3-only code
[+] [-] prodicus|8 years ago|reply
[1]: https://github.com/tasdikrahman/
[+] [-] byuu|8 years ago|reply
Over the past 13 years, I've been developing console emulators for 12 systems and counting. If my work were closed source, I would not have received patches and contributions from 30+ people and counting. And I wouldn't have met several amazing people who ended up becoming very good friends for a very long time. One in particular has been amazing in helping me open up and be less guarded all the time.
I was also able to sell one complete commercial license, and received a partial payment for a license from another company that then vanished (I tried to refund the latter, but e-mails to them no longer work.) I've received a very large number of donations over the years. Should be around $5000 in license sales, $7500 in donations, and another $2500 to fundraise hiring a person to decap chips and extract program code from them for improving emulation. I've also had multiple people make very specialized custom hardware that has helped me out more than words can express. I've had people trust me and lend me thousands of dollars worth of rare games for the purpose of verifying information for emulation and then returning them.
But I would be lying if I said it was all good. At the time of writing, I am aware of eighteen forks of my emulator. Two of these projects in particular never talk to me or submit upstream fixes, and instead commit changes to their own repository with extremely derogatory remarks about me and my programming skills. Two of these intentionally undermine and sabotage the entire goal of what I've been working on from day one (namely, adding known-incorrect hacks to speed up emulation. My distaste for hacks was the whole reason I got involved with emulation in the first place.)
Most of the forks of my software are from versions I released either three and a half years ago, or six years ago. A small number of them are quite popular, meaning my work may as well have been discontinued for those users.
One fork collects over $2,000 a month on Patreon off the backs of others' emulator cores including mine -- even ones that are explicitly non-commercial. One developer just wantonly ignored my GPL license and sells my emulator on Steam, doesn't provide any attribution or credit for using my work, and plays games when people try and get the source code to said work (but to be fair, one person did obtain it.) That one was made particularly worse because he wasted a good 20+ hours of my time over the span of six months promising repeatedly to license my emulator, only to back away at the last minute and pull this without even telling me.
I've had people very blatantly read through my source code to improve their emulators and documentation, and not just avoid giving me credit, but outright deny having ever looked at my code. In the most egregious case, someone copied a set of opcode mnemonics from a CPU core. Only ... that CPU core was never publicly documented: I made up every single mnemonic myself, and the only place those mnemonics existed were in my source code.
I've ended up with two people who have harassed and impersonated me online for six and eleven years respectively now, for reasons I really can't comprehend. I've had half the main staff of the most popular emulator out there make a passtime of digging through my 400K-line codebase, looking for individual lines that were poorly written to mock completely out of context in a public chat area -- and they're people I still have to work with often.
But what I always remind myself is, it's easier to dwell on the negatives. It's possible I could have made a lot more money with commercial licensing sales if my work were closed source. But my software is vastly better than it would be without all the help I've received over the years due to being open source. And I benefited a lot from other open source emulators, so it would be pretty selfish to not return the favor to others. There's no sense in me trying to force people to use my version of my software. I'd rather have a smaller number of users who actually fully appreciate what I'm going for. And I have a pretty thick skin at this point for the rest of it.
That said, do put as much thought as you can into this before releasing as open source. Once you do so, you can never go back. Even if you try, your work will be forked at the last open source release. But speaking for myself, if I could go back and do it all again, I would still keep everything open source.
[+] [-] stutsmansoft|8 years ago|reply
The person who did this didn’t even have a conversation with me about it before doing so.
This was before GitHub and forking and such, but it made me feel angry and unappreciated.
The code that went around was almost entirely my work.
I’m still bitter 25 years later and I’ve never contributed to Open Sores again.