6 ms·
It doesn't really cost anything to open source something though. These are all projects which are developed for a reason: the commercial version might be prohib
by simonrobb 7y ago
It doesn't really cost anything to open source something though. These are all projects which are developed for a reason: the commercial version might be prohibitively expensive at Uber scale, or not technically capable of operating at Uber scale, or just plain doesn't exist yet. At that point you can engage with the tech community and offer it as OSS (not to mention make your engineers happy), or you can keep it to yourself and eventually lose that opportunity to somebody else.
- sbarre 7y agoThat's not true. It costs quite a bit to open source a product if you're a commercial entity.. It needs to be reviewed (by legal, security, engineering, etc) and approved.. You're not just flipping the public/private flag on the repo.
- on_and_off 7y agoAlso, the doc, blog posts, feedback from the community, evangelization at conferences, thinking out the API design so it answers enough cases, not just yours, all take engineering time, that's not free.
- simonrobb 7y agoOf course. But compare that cost to (say) six full time engineers pumping out code for a couple of years. It's not the dominant cost by any means. Not to mention you're paying those other folks a salary regardless. If it helps you attract better talent, well - there's a financial incentive there through increased efficiency which I'm sure on its own is more than equal to the review cost.
- est31 7y agoNot disagreeing but elaborating: The costs are higher when it's an already existing product of which parts the company doesn't fully own enough rights of for publishing. Even higher when it's not known which parts are fully owned by the company and which parts are of foreign origin. The costs are lower when it's meant to be open sourced from the start and it's been a project constraint since before the first line was written.
- gowld 7y agoWhy would you give your open source code a tighter security and engineering review than your in-house code? Are you hoping for security through obscurity? And quality through obscurity?
- VBprogrammer 7y agoIf you are going somewhere where you have to get changed in public, say the gym, do you make sure you are wearing your good underwear?
- sbarre 7y agoI'm pretty sure I didn't say anything like that?
- CydeWeys 7y agoWe open sourced my team's project a few years ago ( https://nomulus.foo https://nomulus.foo ) and it was a substantial amount of work. There's everything you're saying plus a fair amount of engineering to get the darn thing working externally; we were built/hosted within the Google monorepo which is obviously not externalizable. And you end up spending lots of time writing documentation that you hadn't ever gotten around to when it was just a project being worked on by a handful of engineers all sharing adjacent desks.
- dougk16 7y ago> It doesn't really cost anything... Depending on context, sure this could be true. Like if you're comparing the cost of releasing some small OSS module of Uber's to Uber's annual revenue, sure, it's going to be a negligible cost. But if you compare against the cost of developing the module in the first place, it can easily be an equal expense. For example I spent several months on a BLE library for Android (https://github.com/iDevicesInc/SweetBlue https://github.com/iDevicesInc/SweetBlue) and asked my company to open source it. It took several more months to get the library to a point that was suitable for a proper OSS release. So cleaning up code, making sure no sensitive info, swear words and such, documentation, lawyery stuff, icons, PR copy, blog post, basic website, wiki, and much more nitty gritty I'm glossing over. I mean a company can just throw code over the wall into GitHub and call it OSS, but I associate a basic level of polish with a proper OSS release that does indeed take a good amount of effort. And that's just initial effort! If it becomes at all popular then you have further ongoing overhead. I'd say a general rule is that open-sourcing something is at least 50% of overall cost of the project.
- xmichael999 7y ago100% agreed, I started doing this for a small project my company has. We don't really use it anymore, but it would be helpful to many hobby projects however we are now sitting here saying 3 weeks work to just give this code away? ick.
- novok 7y agoA lot of this work is self made at companies although.
- simonrobb 7y ago> So cleaning up code, making sure no sensitive info, swear words and such, documentation, lawyery stuff, icons, PR copy, blog post, basic website, wiki, and much more nitty gritty I'm glossing over. I'm the manager of one of Uber's OSS projects, and all that the things you listed here ring true. I just know that in our case at least, OSS prep absolutely pales in comparison to the feature/operational work put in by the team. To be clear, when I added "really" to that first sentence it was meant to communicate that there is some cost, but in the sense that it's negligible to Uber's losses, as you point out. I was responding to OP's "dubious use of resources" comment. But I can see that wasn't clear.
- rifung 7y ago> It doesn't really cost anything to open source something though. Yes, it costs next to nothing to just open source a project if you mean literally just putting the source on some hosting site. However, open sourcing something properly, where you respond to issues, document things properly, and provide build/test infrastructure to external developers is much more work. Not only that but you have to be much more careful when creating APIs and be much more vigilant about keeping backwards compatibility.
- theincredulousk 7y agoThere was the fixed cost of developing it, and then the potential lost revenue of not selling it, similar to an opportunity cost. If the presumption is that the software would be useful ("developed for a reason") economics suggests there is some price people would be willing to pay for it, and you forfeit that when you make it OSS. That absolutely costs something. Sure you may not want to be in the business of commercial software (support, maintenance, ultimately just responsibility) which is a completely sane thing to avoid. However when you are bleeding money at the rate of a small country's GDP per year, avoiding opportunities to generate profit based on intangibles like community engagement can come off as ill-advised. In fact, if your company is declared bloated, it stands to reason that you should have the capacity to take on the additional overhead of selling the software. It is not that contributing to OSS is wrong, or that your points are wrong, just that there is a time and situation for this kind of strategy. Contrast with Amazon, whose entire development of AWS was for the reasons you point out. Instead of open-sourcing it, to the extent that would be possible, they made it into a product and almost in a single move turned consistent overall loss into a massively profitable company. So this is not at all to argue against the merits of having healthy OSS contribution at a company, but more to say that a company can't contribute to OSS if they are bankrupt - so avoiding the latter should be prioritized over the former.