Twitter is also a leading silicon valley tech company with hundreds of extremely intelligent employees. You could easily argue that they may have one of the best engineering staffs in the world. Given that, of course they would use open source versus buying enterprise products.
In terms of engineering staff, they are the exception, not the norm. A company like home depot or kelly moore paints would have a tough time relying on open source for all their operational software.
That's just nitpicking. Twitter is considered a top tech company to work for in SV, IMO. Their hiring standards are no different than Google's or Facebook's.
What you're doing is stupid. All you're doing is placing software engineering behind all of the classes of engineering. Why not mention companies like BP, Pfizer or Toyota ?
In terms of software engineering Twitter is absolutely one of the best around.
Calling what Twitter does -- SMS with ads and RoundRects -- leading software engineering is an insult to software engineers. If twitter built cars and planes, I would walk.
A company like home depot or kelly moore paints would have a tough time relying on open source for all their operational software.
For vertical software systems, probably. For applications developed in-house, I'm guessing that even at Home Depot or Kelly Moore it's the other way around -- more and more, you have to make a good case for using a proprietary library. The connotations of "open source" have changed somewhat, and open source libraries are becoming the norm, even at large old-school software businesses, where the lawyers hate open source.
Shouldn't it be "Twitter is building open source software"? Pointing out the obvious since most of the software companies are built on open source software but only a few build one.
I think close to 100% of the internet is built on/with open source software.
But it's a major headache to get your in house libraries/software released as open source. There's reservations because by default everything developed is considered proprietary and a trade secret. It's difficult to convince management to give stuff back and/or see a benefit, the larger the org the harder it gets. Then comes legal with the legal derp.
And finally you can't just put stuff on Github and expect it to thrive, you need resources to maintain your open source projects and again convince management beforehand that it's not just a liability.
I don't think it's anywhere near "close to 100%", like you're claiming.
IIS is still quite widely used for many web sites. Netcraft's latest survey results suggest just slightly under 30% of all web sites are served by it. So that's some closed-source software powering a significant portion of the web, at least.
And it's quite safe to say that those IIS installations are running on some variant of Windows, which is yet another generally closed-source software system. Then there are other non-web services (DNS, FTP, and so on) handled by such Windows systems.
There are still a surprising number of proprietary UNIX systems out there in production, on the public Internet. We're talking HP-UX, AIX, UnixWare, and even BSD/OS in some cases. There are many behind the scenes, indirectly supporting web sites and other publically-accessible services.
There is a lot of other networking gear that runs proprietary software, too.
Is open source software important to the Internet? Absolutely. Is it the "100%" you're claiming? Absolutely not.
Yes, you're right if you take it that way.
I didn't mean the internet is built exclusively with open source software, but the majority of developed applications contain at least a bit of open source software, like a library, curl, Apache, PHP etc. That's much closer to 100% I think. Something where you can say "we took something for free, we give something back". Not that that's required in any way.
There's some high profile exceptions like the infrastructure parts you mentioned, but noone expects you to open source your router and unix config, there's nothing worth contributing and collaborating on here.
The one exception I've seen though is Microsoft stack applications. For whatever reason open source libraries aren't as widespread there. Sure, there are some and with things like NuGet it's getting easier to use them, but a lot of developers don't seem to bother going outside of what Microsoft offers out of the box.
Sure. Your grateful users might add a feature you didn't have time for. Or they might find a security issue and send you a patch as a part of responsible disclosure. Or they might start hacking on your codebase and actually do something cool. Then you can hire them/buy them out, turning your codebase into a nice recruiting tool.
Think about this: if Twitter open sources 100% of their code, what would change? Would Twitter clones pop up all over the place? No, because Twitter is the software + infrastructure + name. Most companies think that their code contains some type of secret sauce that makes it special. In reality that's not true. Sure, Google may hide their exact PageRank algorithm, but they don't need to hide their web server code. Or their indexing algorithm. Companies like Twitter are even better for this: they do absolutely nothing that's really proprietary.
For an example of this on a much smaller scale look at TheTVDB (http://thetvdb.com/), their entire site source is OSS, yet there are no clones.
For some companies where the barrier to entry is very high or requires a lot of market share to compete, this may be true. But for others where the investment in actually building the thing was the only barrier, giving the code out to the world can be a terrifying prospect.
You are right, it's not always appropriate. However, in most cases, it's just fine. Here's a list of companies that I think could open up at least 95% of their code: Netflix, Hulu, Amazon, Tesla/Ford/GMC/Toyota/BMW/any car manufacturer, Apple, Home Depot/Walmart/Safeway/any retailer, Mint, Twitter, Facebook, Google, and many more.
I built a number of those open source libraries (Summingbird, Storehaus, Algebird, etc) - often more than 50% of our contributions would come from outside Twitter. Scalding has far more outside activity than inside, where a few talented folks are holding down the fort.
I actually built this page a few years ago when I was working at Twitter during a hack day (bonus points if you can find the easter egg!). It's fun to see it on HN again.
Anyone who is interested in Twitter's current open source contributions should definitely check out the open source section of their engineering site as well:
There's some undue harshness in this thread. Twitter have been _huge_ open source contributors to the Scala and big data communities with original works like Scalding, Summingbird, Scala School, twitter/util and tons of other code. The work they have shared has been a big part of us at Snowplow being able to build a scalable open source analytics platform.
It's worth considering the value of IP to a business like twitter. Fundamentally the mechanics of twitter are exceedingly simple - especially when you consider the complexity of apps like Facebook and Google+.
They key difference between Twitter and a would-be competitor is scale (and that's why the actual mechanics are not simple at all), but you don't get to that scale on the strength of technology alone. More importantly, once you're at that scale you become exceedingly hard to dethrone, for primarily non-technical reasons.
That is why Twitter can afford to be extremely generous when it comes to releasing IP. Of course they don't have either, so thanks Twitter!
While Facebook and Google are constantly one-upping each other with their open data center designs and open server architectures, Twitter contributes project after project that are applicable to a far larger group of people. Very much appreciated.
I don't mean to put down Twitter's contribution to open source – which is substantial – but I think you're underestimating Google and Facebook's contributions when you suggest that they are only "one-upping each other with ... open data center designs".
I'm more familiar with Google's contributions, but I would imagine both high-user-visibility projects like Android and Chromium and more developer-oriented projects like protobuf, the Closure Compiler, the Dart and Go programming languages, googletest, Guava, Guice, WebM/WebP, V8, Breakpad qualify. I could consider all of these "projects that are applicable to a large group of people". This, on top of large contributions to other key projects like the Linux kernel and LLVM.
I know less about Facebook's contributions, but I do know that their open source projects includes HipHop/HHVM, and they contribute significantly to Hadoop, LLVM and Mercurial (among other high-profile projects).
I think the point here is not on the amount of contributions, it is about: can you build a Twitter clone using exactly the same opensource technologies as Twitter, or how easy is it? Twitter mainly use open source technologies and they will contribute back if they created something useful - even the projects are the core components of Twitter.
For Google, it would be much harder, as they use so many proprietary (backend) technologies, GFS, BigTable, Chubby etc.
We worked closely with the bootstrap community to move the project to an independent home as part of the 3.0 release, you can read about it here: https://blog.twitter.com/2013/bootstrap-30
It's one thing to take advantage of open source software, but it's another to contribute back to open source. The point of this page is to show the latter…
Yes, that may be so, but perhaps (in some cases) it is because they feel legally obliged to:
"This repository is published in order to share code and information and is not intended to be used directly outside of Twitter. We provide no guarantees of bug fixes, ongoing maintenance, compatibility, or suitability for any user outside of Twitter"
I don't get why they won't just open source their main app code. It's already been mentioned, it's not like the concept is difficult or couldn't be cloned...it's simply not practical for many reasons. But being able to have the code if really cool from an educational aspect.
Twitter uses open source because they do not have the resources to build and maintain custom infrastructure, nor do they think infrastructure is what distinguishes their business. It's that simple.
Only half that statement is true. Twitter has tons and tons of custom infrastructure. Most of those projects are largely built and maintained by Twitter. But their business is built on network effects not trade secret infrastructure, so releasing it as open source helps more than it hurts.
We owe Twatter a big thanks for showing Rails on Fails doesn't scale (via so many fail whales), and so guided many a new startup to explore Scala, Erlang, Python, C++11 - basically things with a good chance to help not hinder your startup.
In terms of engineering staff, they are the exception, not the norm. A company like home depot or kelly moore paints would have a tough time relying on open source for all their operational software.