I seem to recall at one point Sony tried to upstream stuff and it was knocked back for not being up to scratch.
Netflix contribute back without any obligation to. But they track the development branch closely, making upstreaming easier than with the PlayStation OS, which presumably is a bit more 'frozen in time', making it much harder to submit patches.
I thought the original idea behind free software was to provide more freedom to the users (to thinker with, replace, and learn from said software), and not to pad the bottom line of a multi-billion dollar company by saving them the need to spend millions of man-hours building their own OS from scratch?
If GPL didn't force companies to contribute back, would Linux ever be where it is today?
Technically speaking the GPL doesn't force companies to "give back". It simply says you must give the source to anyone who's been provided a binary. Not even by default, you can comply by making them ask and mailing them physical media (if you really want to be a jerk about it).
A vast majority of the GPL "giving back" I see is Company XYZ dropping a messy tarball in some obscure portion of their web site. The code never goes anywhere, and frequently not upstream. No one else benefits from their work or GPL compliance.
Not that this is a good approach - the real companies that "get it" know they're better off upstreaming anything they want/need to depend on in the future.
Thing is, the decision whether to open source your code comes first, not last. GPL doesn't force it in any way, GPL prevents one from using GPL code if they don't intend to immediately release everything.
In other words, what would happen with GPL is that companies which don't intend to give the code back would simply go somewhere else instead.
"not to pad the bottom line of a multi-billion dollar company"
The freedom in F/OSS licensing applies to me just as much as it does to multi-billion dollar corporations, as it turns out.
Sorry, but this is a fundamental misunderstanding about the purpose and intent of Open Source software. If you want to arbitrarily restrict people from using your code, that's fine, but at that point it no longer is open source. It's completely within one's rights to maintain their intellectual property and license it out to businesses at a cost, but all of us benefit from F/OSS software, so it comes down to a personal decision. Imagine if things like curl were proprietary...
They chose to use BSD licenses, which are fairly permissive. The most common F/OSS license is MIT, which is also very permissive. You could use GPL, AGPL, or LGPL "copy-left" licenses which impose specific requirements, but many orgs won't even look at projects with those licenses.