Meanwhile, Windows is still pretty much the only desktop OS for 99% of people, Nvidia has stolen large-scale compute with a holistically proprietary CUDA, and Google has hijacked the ecosystem and culture with Android and ChromeOS (the former by having vendors use the incredibly destructive model of forking the kernel and stuffing it with binary blobs rendering it stuck to that version on whatever device you have, and the later replacing userspace with Google's web properties exclusively).
> So it's hard for a generative OS to support whole stacks of hardware below and software above.
Is only true because of how Google broke Linux. If we had gotten all these garbage phone vendors to upstream open drivers rather than shove proprietary bullshit into every Android handset, Cyanogenmod would not be the only group even remotely capable of keeping up with legions of arbitrary kernels with tons of broken proprietary bits littering the market.
This post is more about the mindshare effect Facebook and Google properties have on people, but there is actually and honestly nothing we can do about that at this point. No killer feature or guarantee of privacy or distributed solution is going to break the network effect of Facebook or Twitter now. As long as we keep the social network alternatives like ostatus and diaspora alive and we can claw long and hard to pull some users there just to keep them afloat we can't really expect to do more.
But we can do a lot more on the hardware front. We are still crippled by proprietary firmwares everywhere[1], rampant with backdoors, and there is no mindshare there to worry about - all it takes is a concerted effort and focus and within several hardware generations we can reverse this dire course, and the consumers do not even need to notice it happening. But if we can get at least some viable computing platform without any trade secreted proprietary freedom-crippled bits that could be spying on you, stealing your info, or just not operating how you want, we could at least sit in our silo and preach from a hardened rather than rickety tower of ethics.
PS: Considering this is about the Linux anniversary on Linux Journal, it is worth mentioning the gross negligence in enforcing the GPL with Linux has contributed a lot to the ability for corporate market dominators to seize control. All those Nvidia CUDA servers depend on the passivity in addressing Nvidia's proprietary kernel modules, and all those Android phones depend on the apathy of Linux developers to ever go after the hardware manufacturers for obviously and blatantly violating the GPL on almost every Android handset by forking the kernel, integrating proprietary driver software, and then going so far as to modify the free parts in some ways incompatible with upstream to make it work with the proprietary parts. The day Linux GPL enforcement is a thing is one step closer to curtailing the power abuses by many of these large enterprises over their users because that is actually a straightforward way to do it.
I can appreciate why you are expressing the negativity you are... but that's not going to help us either.
So many years ago, nobody expected anything to take the place of AOL. Of Yahoo. Of MySpace. Those giants have fallen because someone decided to do something.
So, instead of deciding to do nothing but accept this as inevitable... do something. Contribute to Diaspora. Convince your friends and family to use email instead of Facebook. Explain to others outside of the HN echo chamber why the world we're heading towards is bad, and how to change it.
I didn't see it as negative, or as acceptance of the inevitable. I read "all it takes is a concerted effort and focus and within several hardware generations we can reverse this dire course" and "The day Linux GPL enforcement is a thing is one step closer to curtailing the power abuses by many of these large enterprises over their users because that is actually a straightforward way to do it.". These are good, concrete suggestions and it is extremely unfair to characterise them as "preaching to an echo chamber instead of actually doing something".
>So many years ago, nobody expected anything to take the place of AOL. Of Yahoo. Of MySpace. Those giants have fallen because someone decided to do something.
Oh please, this is a terrible comparison. AOL was constantly mocked by general internet users, and finally died simply because it became obsolete thanks to other ISPs, web services like Gmail, etc. All of which are big companies.
Yahoo died (it's dead now, but a zombie) because of other big companies, like Google, whose services users migrated to (like Gmail again).
MySpace died (again, another zombie) because of the rise of Facebook, which again, is another huge company.
Your "someone" who decided to "do something" in every case was a big corporation who out-competed them, not a ragtag bunch of volunteers offering something for free because they want to improve the world.
I'd love it if everyone dumped Facebook and switched to Diaspora and email, but I'm sorry, there just aren't any examples at all of this kind of thing happening. Users abandon one crappy corporate service only when some other less-crappy corporate service comes along as an alternative, and the pain of switching becomes low enough to make it worthwhile for them to do so. Highly-technical users are, of course, the exception, but they pretty much never manage to convince their friends and family to abandon the corporate stuff and take up the community-driven stuff, they only succeed (sometimes) in recommending the least-crappy corporate stuff and getting people to switch to that.
Fair enough, but they were a profit-seeking company, and a centralized, proprietary one at that. It wasn't some kind of open-source service that you can download and run on your own server that conquered MySpace; it was a company that started small (serving only college students at first) and hired employees and grew.
Windows hasn't been at 99% for 15 years now. Apple's share of usage based on Web access stats is at about 10% now. Linux is at 1.5%, ChromeOS at 0.5%.
If you factor-in mobile Web access, Windows share is under 50%, and Android, which is an open source OS, with a Linux kernel (it took discarding the Linux userland and replacing it with a single runtime for apps and middleware to make Linux successful), is over 25% and Apple's OSs are at over 15%. Android "mods" like Cyanogen are a serious factor in open source development.
> We are still crippled by proprietary firmwares everywhere[1], rampant with backdoors, and there is no mindshare there to worry about - all it takes is a concerted effort and focus and within several hardware generations we can reverse this dire course, and the consumers do not even need to notice it happening.
(Please understand I care about these issues as much as you do but) you're vastly understating the effort required to purge these proprietary firmwares. Especially with the rise of high speed serial links, the model for peripherals has become a separate CPU running closed code, with ever-more complex code for competitive advantage (eg SSDs). Software is eating this world as well, for much the same reasons - increased complexity, post-manufacturing flexibility, and the emphasis on marginal cost.
A possible way forward is to concentrate on the central processor, treat peripherals as hostile [0], and mitigate vulnerability to them. For example, a hard drive "as-a-service" can be made secure with encryption and some type of PIR/ORAM (depending on our model of its side channels, which could be reduced by putting it in a Faraday cage with filtered power). This seems excessive, and it is.
But the alternatives are to convince Samsung to open up their SSD firmware (lol), hack into their always-changing devices, or to independently create an open SSD design. This design would be Free software with dumb hardware/flash, would have to be performant enough to convince consumers, and you'd have to successfully deter manufacturers from re-adding microprocessors to the dumb flash to increase margins.
[0] This obviously doesn't work for some peripherals, like a keyboard.
I think the Linux community has always massively underestimated how destructive the no-stable-API policy has been.
The result of not being willing to commit to a driver API has been that Android devices - by far the most massive deployment of Linux kernels ever - are a wasteland of out of date, exploit-ridden kernels that can't be patched because of the monolithic driver model. Windows has a single kernel and all driver vendors play nicely within it. You can upgrade Windows separately to upgrading your PC, and you get the updates when Microsoft pushes them out. This takes a lot of effort by Microsoft, but it works.
Android devices, on the other hand, can't do that because Google can't provide shared kernel builds. Everyone has to do it themselves. And as noted above, this did not lead to a utopia of shared and open drivers, it just led to Linux users having out of date operating systems.
> Google can't provide shared kernel builds. Everyone has to do it themselves.
Somehow, desktop Linux manages to ship one kernel per architecture (x86, ARM, MIPS, etc) and manages to support almost all hardware out there, and manages to keep their kernel up to date.
Yes, Linux is actively hostile to proprietary third party shipped binary drivers. I'd call that a feature more than a detriment, because we want open drivers, if for no other reason than it prevents panned obsolescence of hardware and lets you keep your computers working even when the original OEMs refuse to. It gives you control over your hardware in a way you cannot get with proprietary drivers.
Though it is worth mentioning DKMS exists, works, and in practice if any Android OEM wanted to they could recompile via DKMS their blob crap every kernel update and ship the kernel + drivers combined as they have been doing for years no problem, just with updated kernels. They don't, and that is absolutely not the fault of Linux itself, its because OEMs don't care and as long as users keep buying their hardware while they continue to violate the GPL and deny users power over their own devices they will get away with it.
This isn't quite true: XP drivers are incompatible with later Windows versions, and there's been a lot of problems with Win10 not working with drivers for older Windows versions. When this happens, users end up throwing away perfectly good hardware. Obviously, it's not nearly as bad as Android where every single version is incompatible with any other version, but it's still there.
The problem with Android is that Google has done an absolutely terrible job of managing it and getting vendors to participate correctly (by open-sourcing their drivers so that the OS can be updated). Linux was never meant to be a commercial product, it was always designed with the open-source philosophy, and what you're seeing there is the result of the conflict here. The kernel itself absolutely does have a stable API, but the drivers have always been considered to be part of the kernel, by the devs.
> No killer feature or guarantee of privacy or distributed solution is going to break the network effect of Facebook or Twitter now.
This is a key point. The reason free software and the open Internet have been able to achieve what they have was due to their first mover advantage. TCP/IP, email, and Linux itself all benefited from network effects. Absent that we would have likely wound up with something like AOL owned by a Baby Bell.
Windows is still the desktop OS for the majority because you can't walk into Best Buy or Frys and buy a Linux laptop or desktop. There was a small window with the early netbooks, but that's it. My kingdom for the ability to walk into Frys and buy Dells XPS 13 with Ububtu.
>> you can't walk into Best Buy or Frys and buy a Linux laptop or desktop.
Nobody has a reason to. Not at least to buy one over a Windows 10 PC (or a Mac, or a Chromebook). The people who want/need to will just buy one, stick a USB stick with Ubuntu on it and go about there business 15 minutes later.
Technically if given the choice and broad availability almost any Linux DE is less resource intensive than Windows (and uses much less disk space) so you can shave multiple kinds of bucks off the hardware costs.
There is also a real benefit to users (the kind that don't care about ethics / privacy / control of the hardware and who think they can download more ram) that Linux desktops maintain their UX very consistently. Gnome 3 changed a lot, but MATE, Cinnamon, XFCE, and LXDE all cropped up to maintain the Gnome 2 metaphor. KDE gives you the option to do almost any metaphor, but has traditionally kept the defaults the same for some ~15 years. Windows changes their task bar, start menu, system settings, browser, and file manager every other release at least.
An Android phone is running more than one operating system. A friend of mine who worked in the cell phone industry provided a bunch of details which I quoted on my blog: http://boston.conman.org/2013/01/22.2
TL;DR: Android phones have at least two separate CPUs, one to run the applications, the second one the actual phone portions, each running their own operating system.
We're also a lot older now and many realize the "us versus them" thing wasn't helpful. Shame the article opens with such a flattering retelling of a wonky strategy.
It was always the data, not the code. Try and find an open dataset for any interesting machine learning problem and you'll realize that while "freedom" was busy doing things like setting back the use of precompiled headers in GCC a decade and making it virtually impossible for an artist to get a copy of ffmpeg that handles all the file formats she needs, the real value remains the data.
We don't need 15 open source PDF viewers. We need open access to the papers. And even hippie scientists at Berkeley seem unwilling to share those for some reason. So odd given the heritage.
I don't care much about Google's half-baked machine learning library. Give me the 128k neural output from the 250TB of voice queries if you wanna be "open" and advance machine learning. Unsurprisingly they've got that locked up tight. But culturally you can make the argument that's very much "ours" just like government-funded research papers are.
Given interesting data, nerds will ALWAYS find a way to read it. Focusing on code was a bit of a mistake; that's cheap and you get it for free. And the gap between open software licenses and Creative Commons licensing always seemed odd.
> Focusing on code was a bit of a mistake; that's cheap and you get it for free
But as you said the people who spent their time writing the code generally didn't have the influence to release data, so there was very little lost time-opportunity.
So I'm glad they focused on the code rather than idly pontificating about the inequality of data access.
And through their efforts they managed to drag open concepts into the mainstream consciousness so that releasing data becomes a digestible mainstream concept instead of a crackpot manifesto.
Since everything in OSS has to be free, there is no economic model. Eventually things with an economic model supersede or embrace/extend open ecosystems because they have the resources to do so. They also have the resources to address user experience, which is the most important thing unless your target audience consists of only hackers. (Even then it still matters.) Good UX is an immense amount of work, and it's the sort of work that devs tend not to find fun and therefore must be paid to do.
Until and unless there is an economic model for free-as-in-freedom, surveillance-ware and closed models will continue to dominate.
It's a struggle, but some of us are working on one proposal to address the economic model via https://snowdrift.coop (still not launched, hoping to finally get going soon)
Things which are not controlled by a company, or at least a foundation of some kind, are essentially a commons. The tragedy of the commons then goes into effect.
Who is responsible for upgrading the system? Nobody.
Who resolves disputes over technical vision? Nobody.
The internet and web 1.0 were an aberration - they came out of government funded research (DoD/CERN/universities). People built decentralised things because their salaries were very safe and accountability against any kind of commercial metrics (like userbase size) were non-existent. But at the same time, beyond salary, they didn't have big budgets to run centralised services. Early internet protocols are a reflection of the funding model used to build them .... NOT what was technically the best approach and NOT even anything privacy related! Which is why despite being decentralised most early internet protocols didn't really think about privacy much: those weren't research topics that interested the government funding sources.
In a sense, the early internet was a product of a hard-left entirely state-driven economic model.
So we now have a strange kind of rose-tinted glasses effect where people hark back to a better era of cooperation and friendship, a time without dirty dirty things like "profit" and "digital rights" getting in the way. This is a common theme amongst those on the political left: stuff was better when it was run by the state.
But the state didn't want to continue funding the internet in perpetuity, so it was opened to commercialisation, and since then virtually all technical progress has been driven by the profit motive and by implication, the ability to make lots of money by getting lots of users on your centralised platform (which are a lot easier to build anyway).
Is this worse? Maybe. It's capitalist. Whether that's better or worse than what we had before depends on your political perspective.
Redhat et al. have shown us that it is entirely possible to make money off of free software. Google et al. have shown us that free software trumps proprietary, even if there is no money to be made from it. The business model of selling licenses to proprietary software is a relic of a long-gone era at this point. Even Microsoft is giving away Windows 10 for "free".
It's possible to make money off free software in B2B with services, support, SaaS, proprietary value adds, etc. That's how RedHat and many other enterprise vendors with OSS offerings make money. This only works for selling to corporations. End users don't pay for that kind of thing.
I am not aware of anyone making money in free software in B2C other than through surveillance, ads, or other ways of "monetizing the user." This is how Google, Facebook, and others who produce free software in B2C areas make money.
From a freedom POV, B2C is what matters. I assume that since we're talking about free-as-in-freedom we're interested in getting beyond surveillance as a business model.
Apple's OS X, which wouldn't be what it is if Linux hadn't already been the leading nix OS.*
Well that isn't true. NeXTStep was built on the 68k from 4.3BSD which originated on the VAX. It has no lineage in common with Linux, and in fact pre-dates it. And OSX now is by far the most popular workstation Unix.
That's not what he wrote. In its initial release, OS X did depend heavily on free software (Samba, Apache, GNU, etc.), which again thrived because of Linux.
It would be more accurate to say Linux thrived because of them! Samba IIRC predates Linux too, as does the GNU project, Apache is based on the original httpd which was built on... Drum roll... NeXTStep. In 1990, before Linux existed.
Amusingly: http://www.diam.unige.it/informatica/documentazione/httpd_do...
"3.5) Why doesn't NCSA HTTPd work on my Linux system?
NCSA HTTPd is not crippled. Linux may be crippled. NCSA HTTPd uses a standard BSD4 and SYSV feature known as file descriptor passing. NCSA HTTPd supports both the BSD and SYSV style of file descriptor passing. Linux chose not to implement either."
That's CERN httpd release notes for 0.1 @ 1991, not NCSA. NCSA didn't join the web until much later.
In fact, SLAC was first to the web in the USA, and Marc had originally approached my boss, who wrote MidasWWW, to see if he'd want to collaborate on the web browser which would become Mosaic.
Doh, missed the edit window. However, it's clear that NCSA was not initially developed on or for Linux.
PS: An interesting side note, the SGML standard committee decided not to include hyperlinks which more or less directly resulted in HMTL. https://en.wikipedia.org/wiki/Standard_Generalized_Markup_La... I wonder if that would have pushed the web forward even faster or not as HTML is far less strict, but you could make a less strict render for SGML as well.
Came in here to be that guy and make this comment, but you beat me to it. Have an up-vote.
I can't anyone is even disputing the fact that OS X didn't largely benefit from the fact that there was tons of GNU/GPL tooling out of the box that power users could use. Bash? GCC/G++ (before the clang/llvm migration out)? GNU. X-windows (granted I don't think many people used it post-Carbon, but I remember using it on my iBook 266mhz...).
\/ Edit: Mea culpa. IIRC you're right re: tcsh. I haven't used OS X as a daily operating system since first year undergrad (placing that at just under a decade) so afford me some liberties with details, kindly :)
Well, OS X's ancestors had a largely BSD-derived userspace so that's neither here nor there. The strongest claim and perhaps biggest contribution, I think, was GCC on which NeXTs Objective C compiler was based from the beginning.
What many of these comments seem to be missing is that I don't think Doc Searls meant Linux the kernel when he said this. He meant Linux the OS (which some want to call GNU/Linux as he mentioned) with all these parts included.
All of these components played their part in the rise of the OS and benefited from each other. The Linux kernel as well as things like the GNU project were absolutely necessary for this ecosystem to becoming a reality and that is what OS X benefited from as well.
Solaris was a much bigger deal than Linux well into the OSX era. In fact if Linux had never happened Solaris would probably still be around and we'd be arguing about how much OS X owes to Solaris and whether it matters that SunOS predated NEXT but Solaris didn't.
> In fact if Linux had never happened Solaris would probably still be around and we'd be arguing about how much OS X owes to Solaris
Hardly. How would have Apple developed a full userland and development toolchain with the resources it had at that time? That's exactly the point of the article: OS X wouldn't be where it is without Linux (read: GNU/Linux), not because it was technically the best Unix (it wasn't), but because it was free software.
You do know that OS X was just a rebranding of NeXTSTEP which dates back to 1985 and so had all those things (dev tool chain, userland, etc) 6 years before Linux started, right? How much did NeXTSTEP owe to Linux, say in 1990?
NexTSTEP didn't have a lot of stuff that OSX had. Samba comes to mind. Another are autofs, bash, curl, less, libxml2, libxslt, screen and countless others.
screen was posted to net.sources in March 1987, under the name BSD screen manager. It made it to comp.sources.unix in August 1987 (v10i095), and was BSD multi-screen manager.
Samba, bash, screen and autofs all predate Linux and most of the rest were either initially developed on others unixes or at least at a time when Linux was far away from its current dominance. The idea that modern OSX relies in any material way on Linux is simply obviously false to anyone with a basic understanding of the history of UNIX.
Linux succeeded due to its compatibility with this rich ecosystem of software, not the other way around.
At the time, GNU had a problem: they had almost complete userland, but no kernel. That meant, that you needed some other expensive system to run the GNU software. Hurd was just around the corner, for years.
What Linux changed that it opened the GNU software to much wider audience. You didn't need an expensive Sun workstation, cheap (relatively, at the time) PC was enough.
With the Linux kernel and GNU software, you had a complete, usable system, that anybody could use. Many people did, and they contributed back. The development accelerated.
So technically, no, OSX doesn't rely on Linux-the-kernel. But it benefited by the increased exposure GNU software got.
(Samba is about a year younger than Linux-the-kernel.)
The computer labs at my uni were Solaris workstations almost everyone hated them. I completed most of our assigned work using Linux on my home pc (along with a heap of other students in my class) this was in late 90's.
Everyone was buzzing about Linux. The general attitude was 'Why would you run Solaris when you could just run Linux'
Maybe in other segments Solaris was a 'big deal' but for students and developers Linux was a game changer.
You are absolutely correct, Linux was a game changer. It deserves it's success. No argument there at all. That's not what we're talking about though. I don't believe Linux's success had any appreciable benefits for OS X. Linux came along far too late in the day to play that role.
Also most of the early adopters of osx that I knew at the time were actively seeking out a unixy desktop because they worked on software eventually destined for Linux servers and didn't like the available desktop options for Linux.
Not to say that was the entire market, but it was a good chunk of it.
In the beginning (10.0 - 10.2 timeframe), OSX was pretty much broken if you wanted to work on software that was destined for Linux. Even the existing software was PITA to get running on OSX, you were fighting both autotools and OSX linker and libraries at once.
Not strictly true, it was quite possible to write code on OSX that could be run on Solaris and Linux easily enough. You just had to not depend on autotools too much, and understand how to use the OSX linker/libraries properly in your project.
(Disclaimer: I am one of those programmers who only switched to Apple because of the tiBook, which was a damned sexy Unix workstation in spite of the fact it was also a damned sexy laptop.. and I used it for developing apps for Linux and SGI Irix without much hassle.)
> it was quite possible to write code on OSX that could be run on Solaris and Linux easily enough. You just had to not depend on autotools too much, and understand how to use the OSX linker/libraries properly in your project.
You had to take care to use libraries/APIs that were available at all three systems (no dlopen() or dlsym() at the time in OSX!), and take quirks of the OSX linker into account.
(Disclaimer: I was getting angry at Apple at the time. In a few years, they went through OS9->OSX migration, getting rid of Classic mode in emulation and now switching to Intel. They were breaking compatibility again; it meant buying new software like MS Office again - looking at the PC side, they didn't have such problem. So PB12 was my last Mac for a long time... until 2015, actually).
I don't really consider that to be the early adopter phase of OSX. If you go by the whole technological lifecycle theory that'd be the innovator phase (though realistically I think it was mostly just the most die-hard left of the old guard Apple fanatics).
To me it's when the Intel macs came along (10.4.4 I think) that new adopters really started picking up steam, but the ecosystem they helped build wasn't really there yet.
Only speaking for myself, but I initally switched to OSX right from FreeBSD because of the similarity . At that point the PHP+MySQL stack was still faster on BSD (mainly because of yahoo I think) and the ports system much easier to use than rpms for instance.
Otherwise I only saw Solaris or commercial types of unix (like what came with IBM servers) in use in companies I directly worked with. I understand that linux was already rising pretty strong, but tried and true Unix/BSD systems were definitely seen as the more 'serious'/professional choices.
>> At that point the PHP+MySQL stack was still faster on BSD
Which was interesting because then Linux became faster, and had things like better SMP support that didn't get improved in BSD to give it the performance edge until 2007 or so...
If we assume that the author is following the usual convention of referring to GNU/Linux as simply "Linux", I don't think it's unfair to say that OSX draws heavily from the free software ecosystem. Take a look in /usr/bin on an OSX machine and it's pretty much the free software kitchen sink. Emacs AND Vim even. The only reason Unix is popular for a workstation at all nowadays is because Linux runs everything.
If he meant GNU why didn't he say so? Linux has nothing to do with OSX, whether you call it Linus or GNU/Linux.
> The only reason Unix is popular for a workstation at all nowadays is because Linux runs everything.
And at a stroke the entire history of Sun, Solaris and Sun OS is brushed under the carpet as though it never existed. Yes. I give up. You win. Workstations only exist because of Linux. I think I need a little lie down.
Because people think it's cool to just call it Linux and endlessly deride Stallman for insisting it be called GNU/Linux, even though the nuance is very important in discussions like this one.
> And at a stroke the entire history of Sun, Solaris and Sun OS is brushed under the carpet as though it never existed.
I don't think Sun is responsible for Apple's choice of a Unix. I was around in the late 90s, and Linux really was an amazing workstation — far more so than a Sun, because the value for money ratio was incredibly good.
I also remember when OS X first came out (and before that, mklinux), and the selling point was that it was a Unix, like Linux.
I'd still rather have a Linux workstation than a Mac. Linux gets out of my way and lets me work. Solaris never did that (oh, the days of Solaris 'packages' …), and OS X still doesn't.
> And OSX now is by far the most popular workstation Unix.
That's kind of cheating though. OS X is a "workstation OS" but it's also a "desktop OS" used by millions of elementary school teachers and news reporters. So then the "workstation OS" gets to claim those people as users, but their main competition in that market is Microsoft Windows, which OS X loses the popularity contest to in the same way that OS X (including iOS) loses to Linux (including Android).
That's what I'm saying. Apple don't have 90% of the workstation market if you include Windows PCs in the same market, but they also don't have 90% of the workstation market if you don't include Mac users who don't care anything about Unix because they only run Firefox and MS Office.
Well, since I worked on the team moving NeXTstep to the i386 family at NeXT, I can say with certainty that Linux played no role at all. We had copies of ATT UNIX and BSD UNIX which had portions already running on Intel (so we didn't have to completely reinvent the wheel.) There was some discussion about which UNIX we should be using on Intel in order to move it all to Mach - but the easy path was to build on some earlier work with the existing BSD port to i386 (in particular, memory management had been done in one of the ports, and using that as a starting point was very helpful.) As for GNU - we spent an incredible amount of time fixing bugs in both the C and C++ compilers. Really, GNU wasn't really considered "production worthy" before the NeXT project - and it was more of a toy until we fixed it. Steve was committed to using GNU to try to to compete with Apple based on low cost open source. As a programmer, it wasn't open source that helped us, - we were fixing and helping open source. I've always found it ironic that the open source community ignores the role of the rich and powerful in allowing them to succeed. (Ironically, I was later involved with the team at Oracle that converted Linux from a toy into a functioning kernel. It was missing many system calls and a lot of functionality. Speaking as a kernel engineer, Linux was almost useless. Larry decided to use Linux as a way to price compete against Microsoft - shouldn't be too surprising since Larry and Steve were good friends and shared ideas. I wrote the original white paper for Larry analyzing the state of the Linux kernel.)
In 1994 I did contract work for a serious businesses that ran commercial pay-for-click information website that ran fabulously on Linux, 1.2.x kernels.
Since I first started using Linux in 1993 (0.99 patch level 12), it has always been a functioning kernel.
Anyone can write a functioning kernel. The question is if it provides all the functionality required to run complex modern software -- especially big databases, which was pretty much your defacto benchmark back then.
"Linux doesn't provide these syscalls or anything comparable" might mean you go from "runs reasonably well" to "can't run on this hardware at all because the kernel doesn't know how to do these tricks with memory, etc"
I personally know at least a dozen Linux kernel contributors. Some of them are among the most competent, prolific and enthusiastic developers out there who would code until their fingertips bleed. Most work or worked at the usual suspects, yes, including Oracle.
It's the first time however I hear anyone claiming as much credit. Oracle didn't even start dabbling with Linux until 21st century, and it was already a decade old project dominating Internet server deployments at that point.
It certainly wasn't my intent to criticize any Linux contributor. I think that there are a lot of people doing the right things for the right reasons. They do that work in a social context, though. And I think that we need to understand how our society really works in order to make the right decisions moving forward.
Exactly. When I started doing the port of Oracle to Linux I had been reading the newsgroups - and they had been claiming POSIX compatibility. But system calls were missing many options, and entire sections of library code were missing. I'd run POSIX compatibility testing, so I knew that something didn't make sense. I kept posting to the news groups - mentioning that I was trying to port some software and hoping that they would notice my Oracle email address and take me seriously. Eventually, after trying several branches, somebody admitted that they had never actually run the POSIX suite, since it was too expensive. As long as you only wanted to do simple programs, Linux was fine. It was nowhere near being able to run Oracle, and it was nowhere near being able to run it well (with any of the then-modern features such as async I/O or direct memory paths or scheduling for long runnning processes or efficient large memory allocations.) It was a toy.
I'm with you on the facts, but it was anything but a toy. Minix was a toy, linux allowed a whole raft of useful applications to be run on PCs that would have otherwise required a large investment in hardware.
Linux would have succeeded with or without Oracle, and I find it sad that you would try to re-write history to the point where it would seem that without Oracle linux would have remained a toy.
> Linux would have succeeded with or without Oracle, and I find it sad that you would try to re-write history to the point where it would seem that without Oracle linux would have remained a toy.
Ehhh... I don't see where he claimed anything about that. I see "Linux was a toy. Oracle helped make it not a toy." But, nothing about what would have happened otherwise. Be careful not to get sad over things not said. Principle of Charity and all that...
Exposing async I/O is largely a trivial hack, if the filesystem is already asynchronous under the hood, allowing I/O to proceed in parallel with computation. It's mostly about separating the request placement for I/O from being notified about completion or optionally waiting. The wherewithal to cob together this sort of mousetrap was in the Linux kernel since the early dawn, pretty much.
1990 POSIX didn't have aio_read and all that; it came later. A lot of this stuff was being standardized in parallel with the progress being made in Linux. According to the 1997 Single Unix Spec (Issue 2), the aio stuff came from the 1993 real-time extensions to POSIX. [http://pubs.opengroup.org/onlinepubs/007908799/xsh/aio_read....] "Derived from the POSIX Realtime Extension (1003.1b-1993/1003.1i-1995)". This was bleeding edge POSIX in the mid 1990's, and didn't exist when Torvalds started.
The performance optimization requirements of large databases aren't the be-all and end-all of "non-toyness", anyway.
The Linux people were decent at optimizing for the cases that their user base cared about. E.g. Linux exploded as a web server OS all over the world, so there was a lot of focus on decent networking, and tricks like serving a static file right out of the kernel and whatnot.
Thats pretty relative to be honest. I remember using a variety of Linuxes back then and being pretty unhappy with the results. Stability was barely a possibility. Compared to SunOS it was like Windows 3.x
I had a bunch of Linux servers in the mid 90's that we only rebooted once in 3 years, because of an office move. I'm sure there were ways of making Linux crash back then, but stability was easy as long as you got hardware that was known to work.
It's easy to forget the early days of Linux. If you go back and read the articles of the time they often pointed out that Linux made a good print server. But that was about all it could do - get lpr-style requests and talk to a printer driver. I did a test port of Oracle to Linux and wrote up a white paper for Larry. Larry was trying to figure out how to get Bill to kill important features in SQLServer. So Larry and Scott and IBM and HP had a couple of floors of kernel engineers at Redwood Shores fixing Linux and submitting the changes until Bill agreed to make SQL Server work more poorly stop competing so aggressively. But by that time we had already submitted enough to make Linux into a functioning product.
I'm just a geek who grew up in Silicon Valley. I soldered and wire wrapped chips I picked up from Haltek/Halted and the sales offices of local chip manufacturers, and taught myself programming using switches to enter binary codes (before I bought a broken teletype and fixed it - paper tape was a huge improvement after using switches to program.)
> Bill agreed to make SQL Server work more poorly stop competing so aggressively.
I might have been living under a rock and everybody but me already heard about this story. But I would expect that every HN reader would drop his coffee cup reading this for the first time.
Is this true? Why had I never heard about it? Why should Bill do that?
I'm not sure that I see the connection between Linux at Oracle and the group of "Larry, Scott, IBM and HP" wanting Bill Gates to neuter SqlServer. Could you explain in more detail? This whole saga is fascinating, especially since I've come from a generation where Linux has such a connotation of quality.
Yeah, I guess the connection isn't obvious. Bill had decided to start competing in the SQL space. He announced a bunch of features that matched Oracle's enterprise features 1:1 and promised to make SQLServer scalable and supported by a big consulting force. So Larry met with Scott/HP/IBM and to move forward with a "low cost linux appliance" with software to compete in the various segments of the PC space - they would almost give the whole thing away for free. Larry met with Bill with a list of demands in exchange for killing the project. It took a series of several meetings. I don't know the specifics asked by IBM/HP/Sun, since I only heard the Oracle side of the story. I believe we had, at one point, 200 engineers from those companies there at Oracle HQ making Linux work. I know that we flew in Linus to explain to him some of the changes (since they were enterprise kernel features that he had no background with) - and he green-lighted the changes (they really just matched what was already in the UNIX kernels from HP/IBM and others.)
I can remember those "Built a print server with Linux" times. But I did have the impression that MS really didn't take Linux as a serious contender, not even as a server OS. Was I wrong believing that?
I knew OS people from NeXT, Microsoft, and several other companies at the time. None of us took Linux too seriously - it was too unreliable and too immature. But by the time that Oracle got it fixed (and IBM "took over" Red Hat to roll out the "new" Linux), it was a real product.
From that article:
" The first presentation was by Lance Larsh of Oracle who, essentially, provided a laundry list of changes and features Oracle would like to see in order to get better performance out of high-end, large database servers "
...bullet list...
" The reception was "generally" positive - many or most of the above problems are well known and on the list to be fixed in 2.5 already. One exception was the non-preemption request, which was considered dangerous and unnecessary. "
At the time it didn't seem like anything significant - nobody really wanted to do a Linux port of Oracle. But I did a test port and wrote up the many missing system calls and many incomplete system calls and many missing library implementations. Larry read it and I didn't really think about it again. Guess I should have saved a copy. And this was definitely an internal white paper - not something for circulation.
>> I've always found it ironic that the open source community ignores the role of the rich and powerful in allowing them to succeed.
I don't think anyone ignores anything, it's more like the OSS community (of which I'm not a part, btw) simply doesn't feel that their freedom is a good price to pay for - anything, really.
Also, to be fair, the "rich and powerful" mostly get into peoples' way when we try to live our lives in a meaningful way, and that includes OSS folk, who just like to write and exchange software. If the "rich and powerful" decide to patent everything, which is the real sticking point for the OSS community, then the OSS folk have no toys to play with.
After browsing that user's comment history, it certainly seems like he's trying very hard to have some interesting stories to tell. Make of that what you will.
I visited the NeXT factory in Fremont when it was making cubes. For fairly obvious reasons at UCB Sun workstations were everywhere. I was asked by some of the people giving the tour what it would take to get departments to go with their boxes. I said access to source was something we had come to expect but it was out of the question.
Yeah, that factory sure was impressive, wasn't it? I would sometimes go out of my way just to visit - hoping that they were running (it took a long time to get it started, and after that it took a long time to get it stable. Really, it was Sony and their manufacturing expertise that finally got us working.) I remember sitting up in the "control room" while they used the GUI to directly control the robots on the factory floor - watching the robots move in the dimly lit factory. It may be common now, but at the time that was "state of the art".
I page through, knowing already that there's a problem, to see what he's thinking in terms of solutions.
At the bottom I catch a reference to ProjectVRM. I follow the link and what I find is all bloggy and vague. If there's anything concrete in there, it's not brought together in front of the new visitor.
I think the problem is that the FSF's definition of freedom still stems from a time where everybody being a programmer was seen as a realistic and achievable goal.
The actual situation is that we have two groups that care about different things: Users and developers.
Users' biggest concern is that the software helps them achieve what they want to do. They care about restrictions like DRM if it hinders them in doing what they want to do. The only way free software can help here is that other people (developers) can remove those restrictions. Proprietary software can easily offer the same freedoms for users.
> Users' biggest concern is that the software helps them achieve what they want to do.
There are two problems with this assertion: (1) users often don't know what they want to do or what they'll want to do in the future and (2) users don't have the education to understand the freedoms provided by open source / free software or lack thereof.
The situation is similar with automobiles. Until now at least people had the freedom to change the oil or filters by themselves or even do technical repairs. The worst that could happen is a void warranty, which is limited anyway. And people that don't have the technical know-how, such as myself, can go into any repair shop. Doesn't have to be an "official representative" of my car's brand. This in turn keeps prices down. I mean, I can tell you that for my Peugeot, where I live, the prices for both service and components for my car at the local representative are at least 2x or 3x bigger than at alternative and quite respectable repair shops.
Let me put it another way. A proprietary software package doesn't even guarantee that it will still be around and developed in 10 years from now. An open-source software on the other hand might not be maintained in 10 years from now, but people (like a government agency) can always fund further development, if they really, really need it alive. Open source never dies.
> They care about restrictions like DRM...
Again, users don't care about DRM. Because they don't understand it. If they did, they would reject DRM-enabled products.
>An open-source software on the other hand might not be maintained in 10 years from now, but people (like a government agency) can always fund further development, if they really, really need it alive. Open source never dies.
At the government department or big organization level, they can fund or perform any proprietary development they need themselves as well. FOSS just isn't necessary at that level of resources. For ordinary users FOSS provides essentially zero comparative benefits over proprietary. If code doesn't have the features they need, goes unsupported or has bugs, they're in the same boat regardless. People choose to pay for software for valid reasons.
"they can fund or perform any proprietary development they need themselves as well"
Try phoning up Microsoft and asking them how much it would cost to add a feature for an old piece of DOS software that they haven't touched in the last 20 years. I suspect the answer would be at least 8 figures, if not 9.
The point is, an organization at that scale can solve problems at that level because they have the resources to fund development of an alternative that e.g. doesn't rely on DOS. Individual users don't have the funds to do that, or the skills to develop new features themselves, so once it's no longer supported they're equally screwed whether the software they rely on is FOSS or proprietary.
If the software is open source, you can relatively easily find somebody to do it for you for $100/hour or so. That's within the scope of many individuals.
$100 000 000 is outside of the scope of pretty much everybody.
Relatively easily. Really. Your solution is for ordinary non technical people to become development managers and hire someone they don't know to do something they don't understand at their own financial risk.
How can they not understand it? If the consultant does his job, the software will work. Any idiot user can tell if the software actually runs or not.
People hire mechanics to fix stuff all the time, even though they don't really understand how their cars work. They do know when their cars aren't working though.
You're trying to convince me that ordinary people are utterly incapable of hiring experts to perform services for them?
How do they know how much work the change will take? How will they know what a reasonable fee is for completing it? How can they verify the solution's quality beyond a limited demo in controlled circumstances? Even if the payment was kept in escrow by a third party, how can they be sure they draft the requirements for payment in such a way that they can avoid a technically valid but practically useless end product? They would be completely at the mercy of an unscrupulous developer.
** > There are two problems with this assertion:
(1) users often don't know what they want to do or what they'll want to do in the
future and (2) users don't have the education to understand the freedoms provided by
open source / free software or lack thereof. <
RE: 1 - Yes they do. Look at your little sister/brother/niece/nephew aged 13-18. They want to gossip and flirt on Instagram and take selfies as a way to promote themselves. Their goal is pretty clear-cut -- they want to raise their social stature amongst their peers. People in their 40s know what they want too. With Facebook they can keep in touch with people they knew 20 years ago and kill time at their work playing {whatever replaced Farmville} looking at pictures of {cats or something}.
RE: 2 - I agree, but I posit it's really not their job to care. You don't know how the traffic light infrastructure works (presumably) or the logistics of your city's DPW. You just presume concrete will be poured into potholes when appropriate. Very few people actually care how things actually get done; their concern isn't freedom or the subtle politics behind BSD vs GPL2 vs CC w Attribution - their concern is if they can 'drive home without hitting the potholes' (load instagram without the app crashing).
--
(That car analogy breaks down due to the fact that you're driving a relatively obscure car manufacturer/make/model. Those alternative and respectable repair shops are staffed with your average joe picking up a spanner used to swapping out Toyota Corolla struts and changing Ford Focus oil. The difference in topology between cars has decreased as a function of time (especially modern cars, which tend to share components - e.g. the '99 Corolla was piece for piece, internally, what a Chevy Prizm had of the same model year).
I'm no automotive engineer but I can tinker my way into making anything work (bonus: with a high confidence factor of "this wire loom won't catch on fire"), but Joe-your-friendly-tech is charging 2x-3x more because he has to open a book and invest time in reading data-sheets for something he's not used to working on regularly (then ordering the proper pieces, installing them, and doing things like calibrating the stoich of the carb/adjusting the float, etc that's all taken care of by one of the ~600-800 MCU's in a modern car).
>That car analogy breaks down due to the fact that you're driving a relatively obscure car manufacturer/make/model
Not sure of where the GP lives, but PSA (Peugeot) is the second car manufacturer in Europe (after Volkswagen) in terms of markets share, and the first in France...
"Again, users don't care about DRM. Because they don't understand it. If they did, they would reject DRM-enabled products."
This may be the true. But how about this:
'Users don't care much about DRM because the benefits of convenience outweigh the costs'
How do you know which explanation is true? Personally I favor the latter. DRM is not more complicated than other things that people care about. If it was compelling for people to care about it, the people who do understand it would find it easier to educate and convince those who don't.
> Again, users don't care about DRM. Because they don't understand it. If they did, they would reject DRM-enabled products.
I understand DRM in great detail (as CTO of a streaming film company), and though I would in principal like to reject it, I have no basis to do so except illegal piracy. Theoretically if all the customers stood up and boycotted DRM we could have an effect, but in practice that would mean not being able to see the latest premium content for some period of time. Are people really going to give up their Game of Thrones to strong arm the industry? I can't foresee any universe where that would happen regardless of the users' understanding and savviness.
edit: it's amazing how this provokes a flurry of replies, none of which address my point at all. I am not making any positive claims about DRM. I am simply asking: how are you going to mobilize customers to boycott DRM?
Why? Pirates are the only ones who aren't affected by DRM. That's why I torrent Netflix shows even while paying for Netflix. I can play them anywhere, even without a net connection.
I would turn the question the other way: are movie publishers going to give up the distribution over internet / playback on anything connected to the internet?
I very much doubt it. They are never going back to physical discs and require their customers to drive to shop and buy a physical copy. Heck, right now companies like Netflix fight hard in order to be able to be present in the web browser.
On the other hand, I see adapting a so keep your Game of Thrones for yourself attitude somewhat more realistic. There are already people like that.
As a user I've got an objection to DRM: it restricts me from using products that were already legally bought-and-paid-for. I bought a Blu-Ray drive for my media computer. My friend brought over a Blu-Ray copy of "The Social Network". It turned out that we could not play the film in the drive without paying an additional fee for a proprietary, DRM-enabled Blu-Ray video player application.
This is particularly bullshit because I paid for the hardware. They could have just built the appropriate crypto keys into there. Hell, they could have built a whole update-and-revocation scheme into the drive's firmware, something that much smaller and weaker devices than Blu-Ray drives can still afford in their electronics and firmware.
They could have built it all so that buying the hardware would enable me to play the media, no further questions asked. They did not need to sell me a piece of hardware that is outright unusable for its intended purpose without further payment for proprietary software whose primary job is just to license the appropriate crypto keys.
There's nothing wrong with software competition, but that's not what this is. Otherwise you would be able to get software that does that under a free software license.
Depends on what kind of software you want to buy. I can buy a computer without an operating system. I can then buy an OS separately. If I want to use that OS to run a web browser, I have many options. If I want to use that OS to run the new Tomb Raider game, which is published by Microsoft, I must buy Windows.
There is software competition to perform basic functions. There is not software competition for some more specialized cases because one competitor is far superior to the others.
There's everything wrong with selling hardware that cannot work for its intended purpose without additional proprietary, for-profit software. Would you buy a car if you had to pay again to receive a steering wheel, a transmission, or a key? No.
Or to take an analogy closer to home, NVIDIA and ATI both sell graphics cards. They also both distribute proprietary device drivers as binary blobs. They do not charge money for the binary blobs on top of what they already charged for the card itself.
Nobody has to give anything away for free, but charging twice to use one piece of hardware for its intended purpose oughtn't be allowed.
There's two parts to Bluray: the storage medium and the specification for the data on the storage medium. You can burn and read bluray disks with a filesystem, and presumably you could use your bluray reader with those kinds of disks. People who don't want to use their bluray reader to watch DRM-encumbered media don't want to pay for a licensed device.
It is not the responsibility of the hardware seller to know what your intended purpose is. To continue on your graphic card example, perhaps I want to buy them to use in my custom bitcoin mining operation, for which I have created my own more firmware that provides greater efficiency. I would then appreciate not being forced to pay extra for general-purpose graphics software I do not need.
DRM doesn't prevent privacy, it only professionalizes it. At some point the data is decrypted and crackers will take the data from there. You can only make copying harder, but not impossible. Pretty soon after release everything lands on the pirate bay.
The only people that are hindered are legitimate costumers. The playback might not work, because the monitor/projector because it doesn't support HDCP. With movies on Blurays they can't make copies for backups/to play the movie without a disc spinning/to play the movie on a device without a bluray drive. My sister cuts music pieces together for dancing, you can't do that with drm'd music. Pirating media often is hassle-free compared to the legal way.
The problem for customers is that compared to buying analog media or digital media without DRM you are restricted to simple playback and also in certified settings (certain programs, devices etc.). With streamed media the issue is not as bad, as you can compare it more to renting, but there are also issues (e.g. I need crappy silverlight to use amazon prime video in Safari).
My hope is that movie and series content owners will wake up the same way as music studios and book publishers. Selling music without DRM didn't hurt the music industry. Selling ebooks only with DRM led to the strong market position of Amazon with the Kindle.
The only people that are hindered are legitimate costumers.
No, also third parties that have nothing to do with the content industry. At work, we have massive 60" touchscreen in all our conference rooms, and we use them daily for presentations/meetings. Those presentations are regularly interrupted by 20 seconds of black screen.
The problem? HDCP handshake incompatibility between the newest batch of laptops and the TVs.
> Theoretically if all the customers stood up and boycotted DRM we could have an effect, but in practice that would mean not being able to see the latest premium content for some period of time. Are people really going to give up their Game of Thrones to strong arm the industry?
Ordinary people aren't organized. They won't suddenly all stand up and sign some kind of petition. What they're going to do -- what they are doing -- is that when DRM sucks, they go watch cat videos or argue with people on the internet instead of watching your content, and that money disappears out of your pocket.
> An open-source software on the other hand might not be maintained in 10 years from now, but people (like a government agency) can always fund further development, if they really, really need it alive. Open source never dies.
Government agencies aren't even the interesting example.
The argument we usually get is that not everybody is going to be a programmer. Which, OK, sure, but maybe 10-20% of people are going to be programmers. Which means even if you aren't a programmer, your brother and your niece and your buddy are. So now you have some unmaintained software you've been using for 20 years, you get a new OS and it doesn't work anymore. It will take your buddy three hours to fix if they have the source and 1000 hours without it. And you can impose on (or afford to pay) your buddy for three hours but not 1000. And then your buddy can publish the fix and now everybody has it.
And it goes the same even if the thing isn't broken. If "the user" can improve the software then so can the user's brother who actually knows how to, which is clearly useful to the user.
It's fairly simple maths. How do you get better software, when every programmer in the world can improve it, or when only the assigned teams at Apple or Google or [defuct company] can do it?
10-20% seems high; even right now, programmers make up about 1% of the US workforce and computer and mathematical occupations combined account for less than 3% of the US workforce (halve the numbers to get percentage of US population).
That's the current percentage of professionals, which is likely to increase. It doesn't include many "programmers" whose occupation is listed under engineering or finance or management or security, or anyone who does it as a hobby instead of an occupation.
And why do you expect the students and retirees who constitute the non-working half of the population to have a different long-term composition?
>FSF's definition of freedom still stems from a time where everybody being a programmer was seen as a realistic and achievable goal.
The FSF does not believe that everyone should be a programmer. Much like freedom of the press matters for those that aren't journalists, freedom of the software matters for those that aren't programmers. I care about the right to repair even though I'm not a car mechanic.
>The actual situation is that we have two groups that care about different things: Users and developers
This is a very broad and inaccurate generalization. Even as someone that identifies as a "developer", I'm often just a user. Sometimes the "user" ends up hacking on something, perhaps not even really knowing that they did. It's a spectrum, and it wouldn't seem like such a dichotomy if more software was actually written that encouraged its users to explore its source code and provided ways to extend it. The tech industry reinforces the "user and developer" separation and I think that's a real shame.
> The tech industry reinforces the "user and developer" separation and I think that's a real shame.
It's also a losing strategy, which is why concepts like dogfooding and support duties exist.
Developers must be users at times, and users have a lot to gain from occasionally being developers (hence all the brouhaha about "learning to code" and so on).
Seeing the world in terms of users and developers is a throwback to 1970s waterfall cathedrals, something the Free Software movement is quite clearly set against.
I think in practice it's a user / tinkerer / developer trichotomy. Or to put it another way blind user / configuring user / developer.
With the ability to take a change someone else has made and apply it to something you purchased (e.g. Cyanogenmod) being exercised far more frequently than individual development.
Sure, it's a spectrum. But it's a very lopsided one -- there's a huge mass of people over at the "100% user" side of the spectrum, and a long, thin tail out towards developer.
But even those "100% users" will happily task third parties with improving their tools. "Freedom to tinker" is also important because without it, you don't have third parties that can help you. Your friend won't be able to do it, and there will be no small repair shop down the corner of the road, etc.
I'm pretty sure this is only because the current state of the art for software development is too hard, too risky and too inefficient.
Algorithmic and structural thinking are achievable by anyone. Most people just aren't willing to deal with arguing with a machine about what you mean (syntax), dealing with the accidental complexity and risks that modern languages and runtimes thrust upon you (memory management, declaring types, distributed consistency, persistence not being baked in, caring about where on the network your app "really runs"), and how much work it takes to go from a simple formula, some data and some money to a result.
If I am a scientist with a megabyte of numbers, a trivial map function (x^2) and a reduce function (x+x'), how many steps does it take and how many concepts do I have to learn and how long would it take me to run it? What if it's a gigabyte? How about a terabyte? A petabyte? A constant stream? What if my numbers are "weird" to computer science people like being bigger than a 64bit int or being n-dimensional arbitrary-precision vectors? Depending on these answers, why the hell are the steps and concepts I have to learn widely different? This is like the simplest problem to solve, and we just haven't. Software is solving problems it has invented for itself and failed both other disciplines and the layperson.
I think that if you are concerned about freedom, then you need to use an OS that is not controlled a commercial entity. OS X, iOS, Windows, Android, ChromeOS, and Ubuntu all have issues; even though some of them are open source.
It is, but I upvoted bc I think they're trying to point out that even Ubuntu gets tainted by commercial desire. But you're right in that the degree and flavor of taint varies between the OSes. It's much more productive to point out the features and uses of each of these OSes that modulate freedom.
Freedom is partially in the OS and largely in how we use it. Constantly upgrading to the newest thing, for example, I would consider a luxurious consumer habit that serves the elite, but gives smaller relative gains to the individual. I suggest holding on to any OS as long as possible before upgrading.
And the fact that even Ubuntu gets tainted with commercial desire is really indicative of much bigger ideas... For example, it points out how power corrupts and needs checks and balances. (don't know if this is even possible with an open source OS). It also makes me wonder if this cyber-organic lifestyle is even physically possible. Is it possible that we've been drawing a massive check against ourselves and this degree of connectivity is unsustainable? Why does it constantly require so much software to keep going? Is there no point of equilibrium in sight?
Oh really? I seem to recall Ubuntu sending people's search results to Amazon. Why did they do that? They are a corporation and, thus, more concerned about money than freedom.
To be fair, that was a default, but you can change it, or avoid it entirely by not installing the launcher developed by Canonical. Which was always both the strength and Achilles' Heel of Linux compared to other desktop OSes. For people that never install Unity (Kubuntu, Lubuntu, Ubuntu Gnome), it's simply not an issue.
This is quite a bit different than, for example, the situation with Windows 10.
The difference is that the users of Windows have no choice. Microsoft takes advantage of the situation. Canonical has no such advantage, but they surely would like to, according to this precedent.
> I don't really think so. Canonical has proven to be a poor leader of the free software community.
Why is that? They set out to make Linux more accessible. If you're complaining about the level of control they exert on Ubuntu, there are good reasons for that.
Ubuntu has been the user friendly introduction to GNU/Linux and free software for many people, it was for me, but in recent years Canonical has made many harmful decisions. They have a purposely unclear trademark policy, have had multiple GPL violations, opted users into sending desktop search data to Amazon, market proprietary SaaS (Landscape, defunct One Cloud, and AFAIK the Snappy server is proprietary), and sell and encourage the use of proprietary software in their Software Center. It's time to move on from Ubuntu.
I've really liked Ubuntu and was looking forward to 16.04, but can you recommend what my next move might be? I'm certainly open to suggestions. My goal is a low-admin workstation for running design apps like Inkscape, eagle and other CNC and electrical engineering software. merci.
As someone that deeply cares about tech & freedom, truly feel most techies fail to see that that majority of the world does not see freedom as a priority.
While I do not know the answer, I do believe it's possible to find one.
For most people, freedom means something like, "My partner and I will work our whole entire lives doing things we don't really like, possibly be out of debt by retirement, at which point our kids will be in debt. Then we can travel the world and spend the rest on our healthcare." The fact that they can do that seems good enough for them. They always think if they work a little harder they will get ahead.
For others, freedom means something like, "I will further the betterment of humanity. I will work until my house is paid off and then expand and enjoy the gift of existence."
For the elite, the perspective is, "I've got a six-sigma edge. It enables me to put a in few months of light, clever work a year and not have to kowtow to anybody, all while living in devastating luxury. It requires leveraging all available resources, such as plundering the environment, the Constitution, the well-being of others, but it keeps me on top."
The elites are the ones convincing all the mainstreamers to forward their potential to their own causes. "Spend all your time on facebook. Consume. Compete. Upgrade. Fear." Linux people are caught in the middle, because they tried to make tools to help the mainstreamers, but didn't quite get there yet and the elites got a hold on it.
I believe the real answer is waking people up to the reality of how their desires are being manipulated to trap themselves in debt and desire. Basically, the message of Adbusters. Stop feeding Hollywood. Stop eating out all the time. Slow food. Do things IRL. Eat together. Fix old cars instead of constantly tweaking designs. Stop responding to dopamine rushes.
I went out to lunch with an admin at my company the other day. Her family doesn't have laundry machines in their home, but they're going to Las Vegas for a vacation. Why give away all that time and money to others?
>For most people, freedom means something like, "My partner and I will work our whole entire lives doing things we don't really like, possibly be out of debt by retirement, at which point our kids will be in debt. Then we can travel the world and spend the rest on our healthcare." The fact that they can do that seems good enough for them.
Well it's better than what we had before. 5-15 centuries ago, freedom meant something like, "My family will toil all day long, with no vacation, for our whole entire lives in some feudal lord's fields doing backbreaking work in exchange for getting to live in a crappy shack with dirt floors and have some crappy low-nutrition food and not getting murdered by robbers. Our kids will work for the same lord or his heirs. Travel is just a fantasy."
I wish he would have gone more into the design of the kernel and significant changes that are going to be needed to take advantage of the NVRAM based systems that are coming very soon. The I/O design needs to be completely overhauled.
It's probably going to be a great time to rewrite and resign portions of Linux, but I honestly don't think the community will be capable of doing a major architectural change. Kernel modules have been a great step towards modular design, and this needs to be pushed everywhere so that more changes can be isolated in the development process.
I've been a huge Linux (and GNU, most of what this article is about really is GNU, not Linux) user since being introduced to it in 1996, but as much as I love it, I do wonder if there are new options that will reveal themselves in the next few years that will better answer some of the modern hardware advancements. Linux is a beast of a system now, with a lot of technical debt and a hard to penetrate C code base, I hope it can evolve where it needs to, but I think it will require huge commitments from the community.
Could you elaborate on the changes for the NVRAM devices that you'd like to see?
My understanding is that the 3D XPoint type devices are just exposed as a regular mmapped device and provide storage which is still a fair bit slower than DRAM, but a lot faster than SSDs.
Those are both a few years, old, but I haven't seen discussion as to the progress made around scheduling when the disks start performing as fast as the CPU load operations.
Again, I was just pointing out that I wish that article got into more details around that, b/c I don't know the state of the world, but have some concerns in this particular area and the ability for the kernel to be able to accommodate new scheduling techniques to better utilize the much faster disk access.
Like everyone, I want more freedom, not less: the battle should begin with a sane GPL version 4. See the MIT, BSD and LGPL licenses which provide more freedom over GPL3.
There's no benefit from making the GPL into something like the LGPL or MIT/BSD. If you prefer those licenses, they're already available to be used instead. The GPL stands for a specific kind of freedom and should continue to stand for the same, maybe with tweaks but definitely in the same spirit.
If it continues to go out of fashion then that's a different issue, but watering it down doesn't help to further the causes that the FSF set out to achieve with it.
> If it continues to go out of fashion then that's a different issue, but watering it down doesn't help to further the causes that the FSF set out to achieve with it.
If it continues to go out of fashion, that means that it is not an effective means of furthering the cause ths FSF set out to achieve for it.
One can agree with what the FSF overtly claims its goals to be, without believing that the current form of the GPL is particularly an effective method at achieving those goals in the current environment (one might even believe that the basic approach of the GPL was the most effective approach for an earlier time with different circumstances, without believing that it is effective now.)
It may be the case that compelling very specific rules for software freedom if a package is used isn't actually the most effective way, in practice, of promoting software freedom.
This is a great article, if a little slapdash on the details. I don't agree with the notion that we're "losing"; the reason is neatly exemplified by the HN front page:
3. FreeBSD 10.3 officially supported on Microsoft Azure (microsoft.com)
138 points by tachion 6 hours ago | flag | 77 comments
10. Microsoft Edge WebGL engine open-sourced (github.com)
308 points by aroman 13 hours ago | flag | 80 comments
24. How the Windows Subsystem for Linux Redirects Syscalls (microsoft.com)
330 points by jackhammons 20 hours ago | flag | 243 comments
Microsoft. Open-sourced. Time travel from even 5 years ago and that HN front page would blow your mind. Industry-wide, it's more and more common now for "free" to be the default. Heck, complain about Android all you like, but for all that, the OS itself is miles more free than Windows. We actually owe this dire forking situation to the freedom Android affords - imagine if every fly-by-night laptop manufacturer felt comfortable rolling their own custom branded Windows with proprietary interface components.
I don't argue for complacency. We need to up our game with things like GPL compliance and reclaim the concept of a "distro", but on phones this time. But taking the long view, we're definitely "winning".
I think what's contributing to the whole hourglass thing is that browsers do not play nicely with native/low-level primitives. It's bascially yet another waist above the OS waist (browser APIs) and the IP waist (HTTP).
Develop a nice decentralized solution? Maybe it involves some UDP multicast? Forget the browser.
Want to have two devices on the network talk to each other? Bounce it through a cloud provider.
Want to use "everything is a file"-files? The browser's interaction with the filesystem is incredibly clumsy.
So if you wanted to use the full strength of linux/any other lower layers, this would hamper adoption.
The browser is a terrible app platform that 'won' primarily because the incredibly minimal levels of holistic design in it meant everyone could agree on it, because doing so gave power to nobody in particular. The downside of that approach is, well, it's just a mishmash of things that don't work well or fit together properly.
It's not even really decentralised. From the birth of the web it was driven by Netscape, then Microsoft, then MozCorp, then Apple for a while, and now Google, with bits of Opera thrown in occasionally. There has always been at least one dominating browser maker adding whatever random features they thought would be cool at the time.
There was also the case that admins routinely blocked all ports on the company firewall, except for 80 (http). Thus funneling anything and everything through the browser became the easiest way.
We lost Linux. The big thing about Linux was that you could swap out pieces of it for better ones if you wanted. "Linux is about choice" - vi or emacs, KDE or Gnome and so on.
OSX doesn't have that. Android doesn't have that. And in these days of systemd, Linux doesn't even have that any more.
I did. But I can't stop the systemd folk making every program hard-depend on systemd. So I already can't use e.g. gnome (unless I wanted to maintain my own fork of an old version - am I supposed to maintain every single piece of software I use?)
I would argue Android does have that...replaceable launchers, dialers, address books, a full open-source repository of apps (F-Droid) and built-in side-loading of APKs make it more open than any other mainstream mobile OS, even if it isn't perfect.
How does systemd, an entirely Open Source project under a liberal license, compare in any reasonable way to OSX or even Android (which, I would argue, is already pretty far ahead of OSX, though certainly still flawed from a software freedom perspective)?
This is just an arbitrary excuse to inject your personal dislike of systemd into a conversation where it doesn't fit. systemd is under the LGPL. That guarantees our freedom to change it, fork it, examine it, etc. And, no one forces you to use it; there are many distros still shipping without it (but, the major distros have chosen to include it because it's the best solution we've got, so far, to solve the problems it solves).
I don't have a next fight. If I'm going to fight for something, it's going to be something a whole lot more important than computer software. Free software is here to stay. Success has occurred. I'm not going to grope around for another fight. Instead I'm going to harness my software freedoms to write software that does what I need it to do.
Peace is fine. But go and negotiate one with the market. I'm fine with calling it a war, because it is kind of a defensive war - the current direction of affairs, the default, seems to be going towards a pretty bad future.
One point I took away from the article was to look around and think more deeply about what issues today are just important as freedom in computing was during the ascension of Linux.
To me, a big one is ownership: who really owns/controls the things we purchase?
As for free software, consider that desktop computers are rapidly becoming less and less relevant to consumers at large, on average, yet they are also becoming one of the last holdouts of free software. Of the devices being produced and sold today, what fraction are free and what fraction are locked down? How do you expect that to change tomorrow?
Desktop computers are extremely relevant to people who do anything more than passively consume entertainment and participate on social networks. Mobile touch screen devices are next to useless for creating content.
I totally agree, but despite this, I still think desktops' general-population relevance is declining. I also think that laptops unfortunately are trending toward less freedom as compared to desktops.
I think the point is that sociopolitical struggles continue outside of what we do as free software authors, and so we regularly need to re-examine the greater context in which we operate.
From the comments it doesn't look like many read the article. Here's the tldr:
Free software won. Yay!
However, what about hardware, infrastructure, and services?
Oops. All those things have been become increasingly centralized.
Centralization has diminished our privacy, and therefore our liberty.
Time to put restrictions on corporations so we can have liberty again.
Now the only part I disagree with is the last part. Laws and regulations got us into this mess in the first place. These companies are huge because they can sue or prevent others from competing through laws and regulations. Guess who lobbies to create these laws in the first place? (It's not the little guy) The biggest problem is Intellectual Property (IP). Because of it we have DRM and many companies have very literal monopolies (enforced by government) on things. Apple has a patent on rounded rectangles for heaven's sake.
What we need is a decentralization of power, and a turn towards distributed systems. The best way to do that will be to eliminate IP. That will take some time, but we should do it gradually. By allowing people to "copy" it will create competition and weaken the monopoly-like position many of these companies hold. Power will fragment and decentralize. That should be the goal.
The simple use of the term "IP" goes against your goal.
All these things we call "IP" are mostly unrelated to the notion of "property" itself ; they're related to temporary government-enforced monopolies.
This simplistic view as a "property", which is a very familiar notion for most of us, confuses people into thinking that they could, and should be able to "own", for example, a joke, an idea for a business, or any kind of idea, the same way they can today own their car or their house.
The law is way more complicated than that, and by default, ideas can't be owned (and for that matter, can't be "stolen" either).
I don't think we want this to change.
However, it might be desirable to get this into peoples' mind.
> The simple use of the term "IP" goes against your goal. All these things we call "IP" are mostly unrelated to the notion of "property" itself ; they're related to temporary government-enforced monopolies.
It also lumps together many unrelated things. There is no big trouble with trademarks. Copyright itself isn't even a problem, the problem there is DRM. But software patents are unredeemable. They aren't all the same.
There's also a bunch of other mostly unrelated stuff that gets called intellectual property, such as regional designations (e.g. "designed in California") and ship hull designs, which receive their own special treatment:
Each of these "intellectual properties" has its own special nuances and treatments, and often completely different laws. You have to demonstrate originality to copyright something, but you can trademark the most unoriginal things. You have to demonstrate that something has a function before you can patent it, but you can copyright the most useless things. You need to demonstrate that something really was created where you want to regionally designate it, but you don't need to prove anything to trademark it.
Lumping them all together is like saying programming, literature, mathematics, and theatre are all the same just because they all happen to have some sort of abstraction to them.
> All these things we call "IP" are mostly unrelated to the notion of "property" itself ; they're related to temporary government-enforced monopolies.
All "property" is government enforced monopolies, and much of it outside of IP (and especially much of the broader class of intangible personal property of which IP is itself as subclass) is also either temporary or conditional in nature.
The difference is, a property right to a single parcel of land doesn't give you market power. You don't own every similar parcel of land. It isn't a monopoly in the antitrust sense. But a patent on a device does exactly that.
Of course it does. The claims define what a patent covers. Noting that the vast majority (95%+?) of patents go unused, it's reasonable to assume that they have some correlation with market usage. What other hypothesis would you posit for the over abundance of value-less patents? Mine is that most ideas have no market value terrible, hence most patents don't either.
And then it covers all of them. The whole market. It's like if you owned a ranch house on a beach and that caused you to become the owner of every ranch house on every beach, and if someone built a new one somewhere else on some land that isn't yours then you would become the owner of it too. That's not how real property works.
And you're confusing the value of the market with control over it. It's possible to have a total monopoly on some useless junk nobody wants.
In the antitrust sense, the standard set upthread, market power requires pricing power, which inn turn requires that there is both some market demand and inefficient competition from market substitutes (which need not be identical) to constrain the monopolists ability to set prices and extract rents.
Pricing power doesn't actually require demand, it's just that nobody cares about the markets where there is no demand. But it's still a monopoly, which you would notice immediately if any demand ever came to exist, the hope for which is why people even bother applying for those patents.
Without demand, the test for pricing power (the ability to raise prices from some level at which there are nonzero sales without losing sales) cannot be satisfied -- you can't have market power with no market.
> Without demand, the test for pricing power (the ability to raise prices from some level at which there are nonzero sales without losing sales) cannot be satisfied -- you can't have market power with no market.
In theory that's the test, but it doesn't actually work. In practice market power isn't binary. There is always a substitute for anything if you jack the price up high enough. And a monopolist would jack the price right up to that point, so that increasing it any more would cost sales.
But the zero volume case is the divide by zero case anyway. A test isn't going to give you a yes or no, it's going to give you NaN. That doesn't mean there is no market power, it only means you can't tell without a buyer. And in the patent case, as soon as there is a buyer there is market power.
Sure it does; there's no pricing (and therefore market) power if the mechanism, however novel and eligible for protection, has alternatives with equal utility.
> Sure it does; there's no pricing (and therefore market) power if the mechanism, however novel and eligible for protection, has alternatives with equal utility.
That's kind of the point. A patent by its nature has zero value without market power.
Contrast this with actual property. If you have wheat or copper, you have no market power, it's a pure commodity market, but people will still pay you something for it.
Consumers are like water seeking the path of least resistance. It takes lots of engineers to reduce the resistance. Someone pays these engineers. That money comes from the users. Users don't like to actually pay for things if there is a free alternative, so users pay indirectly with their information.
A Facebook clone wouldn't pull many users due to network effects. I think decentralization is opposed to network effects in this case.
The article mentions the somewhat current but certainly future problem of decisions being made by algorithms which "casually crush" users without any human being able to determine why it happened (and in many cases unable to fix it).
They could fix this problem by hiring more people and giving them more power to correct the system, but it will probably never be a big enough problem to affect the bottom line.
Increasing awareness of the problem and technical skill among users would probably cause users to become more autonomous and less like water. This is a long term possibility, but it strikes me as an unappealing fight. It’s like trying to convince an entire generation to take bitter medicine without any parents to assist.
I’ll assume users won’t be getting better. Perhaps we just need to focus on building better ways to protect ourselves from the almighty algorithm, so there are options when the system fails. We can protect our data from online shopping sites by having nodes that process purchases for a large number of users and perhaps ship to a network of local points where pickup is by some type of PKI based system. Social networks seem like a lost cause. A return to blogs with lots of links rather than a replacement network may be the answer.
But, it is possible to make distributed systems that are interopable. In that case, the standard, not a system itself is what gains the network effect.
Ha! I can assure you that by the time Urbit is ready to compete with Facebook, it'll be as easy to sign up for as Facebook. That's a necessary condition, not a sufficient one. It ain't happening any time soon, neither.
Metcalfe's law is an impossible problem in theory, but not necessarily in practice.
For instance, one way for a new system to get around Metcalfe's law is to steal the network effect of the existing network. This is the same principle as in Tantek Celik's POSSE (publish on self, syndicate elsewhere) design, but a little more general.
Concretely, it's very hard to compete with Facebook, but relatively easy to let a user control their own Facebook account from their own general-purpose computer. Especially if you can get them to bring their own API key ("BYOK").
From controlling your own data in Facebook, you may move to mirroring it; from one-way mirroring, to two-way sync; from two-way sync, to discarding the silo. So it's not even necessary to replace Facebook in one impossible step; you can build a stepladder for users to migrate off gradually.
Of course, that this is possible doesn't make it easy!
You wrote: "Now the only part I disagree with is the last part. Laws and regulations got us into this mess in the first place. These companies are huge because they can sue or prevent others from competing through laws and regulations."
I think this is dangerously wrong. It completely glosses over and overlooks the fact that economies of scale are real and larger organizations can solve larger problems.
The guy with the machine gun will win the karate tournament if the tournament has no rules. Rules are necessary to create a level playing field when power distributions are asymmetric.
You don't need laws on your side when you can just buy up your upstart competitors, or price them out of the market with loss leaders.
In this context, one of the few tools the community has to create a level playing field, is software licensing. In particular, *GPL style licenses tend to make things much fairer, by imposing rules on all parties that prevent one from profiting asymmetrically off the work of the others.
Open Source, of the permissive variety, does the opposite. Corporations can use the code as they wish and not give back to the community. Community efforts to compete are always at a disadvantage because anything good they create can be folded into the proprietary solutions. So closed, built on open, beats purely open.
>Rules are necessary to create a level playing field when power distributions are asymmetric.
It's a Catch-22 when the rules (laws written on paper) were what made the power distributions so greatly asymmetric in the first place.
This is quite obvious when studying tribal cultures as compared to civilized cultures. It's also worth noting the inherent distributed organizational design of tribal cultures as compared to the inherently centralized design of civilized cultures.
>Before our white brothers arrived to make us civilized men, we didn't have any kind of prison. Because of this, we didn't have any delinquents. Without a prison, there can't be no delinquents. We had no locks nor keys therefore among us there were no thieves. When someone was so poor that he couldn't afford a horse, a tent or a blanket, he would, in that case, receive it all as a gift. We were too uncivilized to give great importance to private property. We didn't know any kind of money and consequently, the value of a human being was not determined by his wealth. We had no written laws laid down, no lawyers, no politicians, therefore we were not able to cheat and swindle one another. We were really in bad shape before the white man arrived and I don't know how to explain how we were able to manage without these fundamental things that (so they tell us) are so necessary for a civilized society.
Anthropology long ago over turned the "noble savage living in peace" idea that you seem to be promoting here - violence, rape and theft were and are common - even look at chimpanzees our closest cousins. Power law distributions of wealth come from economics, and laws are there to enforce our human understanding of fairness against our human nature of selfishness and greed.
Violence and war are unequal - the strong (and male) take from the weak the old the young and the nursing. Laws are a compact between the strong and the rest, that with defence from the strong we will get peace and sharing and status. Status is the coinage society bribes the strong to prevent them just taking all they want. At some point society manages to produce through peace and trade more than could be stolen and the deal becomes profitable for both sides.
And different guards guard each other. Balance of power etc
Sorry, but it didn't. Not the way we wanted it to, back in 1999.
It just won companies who use it on their servers or as a lower level component of their value added offerings (from Android phones and iOS -Mach, BSD etc-, to set top boxes).
And the main things those companies care for is that it's free (as in beer) and free (as in "lots of volunteers help improve their software they then wrap and sell as part of their commercial products for free").
But FOOS didn't won the consumers and end users -- those could not care less whether their Android device is based on FOSS Linux or not.
Besides, it's mostly closed/proprietary mobile apps they buy and use on it day in, day out. Plus closed (silo-ed) web services.
The battle is for the heads, and the future battlefield are the minds of tomorrow. The defeating blow is that Microsoft owns now minecraft - the first experience of the hacker culture a kid could have today where tech has become magic. This "Do-it-yourself" could have educated a million freedom demanding, because limits not accepting citizens. Now its hugged to death.
Linux has surely advanced, and in some areas clearly won. Not everywhere though. Desktop usage and gaming are still an uphill battle against incumbent monopolists.
I agree with the rest. Decentralization of services and usage of FOSS for them is critical for freedom as well. Consider what a major mess instant messaging still is. Despite all the years of innovation it's a horrible mix of non interoperable walled gardens (unlike e-mail). How can this mess be fixed and "next Facebook" be avoided exactly? Decentralized social networks exist, but they are still in infancy, and making them grow is not trivial.
But of course it goes beyond all that. More importantly, consider advancement of society towards some non too distant technological future. Do we want to see a grim cyberpunk like domination of governments+megacorporations meld which controls everyone's life through access to augmentations and technology of everyday things, or we want to preserve free society while still having advanced technology?
Something like Jabber that everyone can adopt. With multiple open source clients like Pidgin, adding support to those clients would be a huge first step, then adding support for open source IM clients for mobile would also increase the range for something like Matrix or Jabber. Maybe a new player will come into town. It would be nice to be able to host an email server on a $5 a month DigitalOcean server, I can host IRC, and Mumble, alongside PHP and MySQL powered websites on DO for that amount, but a mail server is too much apparently.
Most people give up on XMPP because of the XML side, maybe something like Matrix. I think the lock-in mentality could be worked around if we had open and public servers kind of how IRC has them that would be defaults in some of the clients, but the option should obviously remain to pick a server. Pidgin would reach many platforms, and other clients that already support multiple platforms.
A tad premature one thinks and who is the we? Linux has been incubating a monster within its midst that goes by the name Redhat. This is the cathedral that was born in the bazaar with $2 billion in revenues, tight ties to the freedom loving US security industry and wielding massive influence thanks to its the ability to fund developers and projects to get things its way. If your fundamental altruistic principles depend on a commercial organizations goodwill your position is already comprised.
A cathedral is primarily concerned with self preservation and it will be naive to ignore how money drives decisions in the real world. A lot of the freedom that got Linux here and Redhat itself to its billion dollar revenues are now being slowly plucked away to entrench Redhat's continued dominance but this is not Redhat's fault. Any organization that got that big would do the same and it's the open source world's failure to anticipate and account for the disproportionate influence something like this would wield.
Even today most Linux organizations are industry bodies with no voice for the users, and in many circles there is open contempt for users nevermind its their commitment though some pretty dismal software that got you in a position that you can choose to ignore them in the first place. A project without users has no reason to exist.
As for Android how is it Linux? You can't run Linux on your Android phones. The GPU, hardware and drivers is locked down so tightly it makes Microsoft and Intel look like Stallman's soulmate when compared to Arm and its vendor ecosystem. And Google too, Android was designed to work around the GPL. Using Android to beat the Linux drum is galling and self defeating.
What we have is thousands of companies benefiting from Open source to build multiple billion empires. 20 years later there is not a single resource that tell you all the companies using open source and how they support it or give back. There is no transparency, pressure or even the felt need to give back. The newer lot of developers do not seem to even care about GPL though that could just be the audience here. Gloating about winning in the context seems misplaced even if it were true. It was never about winning but about choice.
I see a lot of promise in distributed Turing Complete blockchains like Ethereum giving a nonproprietary and decentralized alternative to centralized services. There is a positive feedback loop where the more smart contracts are uploaded to the blockchain, the more useful it becomes, and the more people upload their programs to it to utilize that functionality. All of these smart contracts necessarily make their code accessible to the public, in being hosted on a public blockchain, and are copyleft, since there's no way enforce IP law on their use.
It could conceivably neutralize the forces that enable big government and big business.
249 comments
[ 5.9 ms ] story [ 362 ms ] thread> So it's hard for a generative OS to support whole stacks of hardware below and software above.
Is only true because of how Google broke Linux. If we had gotten all these garbage phone vendors to upstream open drivers rather than shove proprietary bullshit into every Android handset, Cyanogenmod would not be the only group even remotely capable of keeping up with legions of arbitrary kernels with tons of broken proprietary bits littering the market.
This post is more about the mindshare effect Facebook and Google properties have on people, but there is actually and honestly nothing we can do about that at this point. No killer feature or guarantee of privacy or distributed solution is going to break the network effect of Facebook or Twitter now. As long as we keep the social network alternatives like ostatus and diaspora alive and we can claw long and hard to pull some users there just to keep them afloat we can't really expect to do more.
But we can do a lot more on the hardware front. We are still crippled by proprietary firmwares everywhere[1], rampant with backdoors, and there is no mindshare there to worry about - all it takes is a concerted effort and focus and within several hardware generations we can reverse this dire course, and the consumers do not even need to notice it happening. But if we can get at least some viable computing platform without any trade secreted proprietary freedom-crippled bits that could be spying on you, stealing your info, or just not operating how you want, we could at least sit in our silo and preach from a hardened rather than rickety tower of ethics.
[1] http://mail.fsfeurope.org/pipermail/discussion/2016-April/01...
PS: Considering this is about the Linux anniversary on Linux Journal, it is worth mentioning the gross negligence in enforcing the GPL with Linux has contributed a lot to the ability for corporate market dominators to seize control. All those Nvidia CUDA servers depend on the passivity in addressing Nvidia's proprietary kernel modules, and all those Android phones depend on the apathy of Linux developers to ever go after the hardware manufacturers for obviously and blatantly violating the GPL on almost every Android handset by forking the kernel, integrating proprietary driver software, and then going so far as to modify the free parts in some ways incompatible with upstream to make it work with the proprietary parts. The day Linux GPL enforcement is a thing is one step closer to curtailing the power abuses by many of these large enterprises over their users because that is actually a straightforward way to do it.
So many years ago, nobody expected anything to take the place of AOL. Of Yahoo. Of MySpace. Those giants have fallen because someone decided to do something.
So, instead of deciding to do nothing but accept this as inevitable... do something. Contribute to Diaspora. Convince your friends and family to use email instead of Facebook. Explain to others outside of the HN echo chamber why the world we're heading towards is bad, and how to change it.
Oh please, this is a terrible comparison. AOL was constantly mocked by general internet users, and finally died simply because it became obsolete thanks to other ISPs, web services like Gmail, etc. All of which are big companies.
Yahoo died (it's dead now, but a zombie) because of other big companies, like Google, whose services users migrated to (like Gmail again).
MySpace died (again, another zombie) because of the rise of Facebook, which again, is another huge company.
Your "someone" who decided to "do something" in every case was a big corporation who out-competed them, not a ragtag bunch of volunteers offering something for free because they want to improve the world.
I'd love it if everyone dumped Facebook and switched to Diaspora and email, but I'm sorry, there just aren't any examples at all of this kind of thing happening. Users abandon one crappy corporate service only when some other less-crappy corporate service comes along as an alternative, and the pain of switching becomes low enough to make it worthwhile for them to do so. Highly-technical users are, of course, the exception, but they pretty much never manage to convince their friends and family to abandon the corporate stuff and take up the community-driven stuff, they only succeed (sometimes) in recommending the least-crappy corporate stuff and getting people to switch to that.
Well... now it's a huge company. It's not like Facebook was a pre-existing massive corporation that decided to pivot and 'do this social media thing'.
If you factor-in mobile Web access, Windows share is under 50%, and Android, which is an open source OS, with a Linux kernel (it took discarding the Linux userland and replacing it with a single runtime for apps and middleware to make Linux successful), is over 25% and Apple's OSs are at over 15%. Android "mods" like Cyanogen are a serious factor in open source development.
(Please understand I care about these issues as much as you do but) you're vastly understating the effort required to purge these proprietary firmwares. Especially with the rise of high speed serial links, the model for peripherals has become a separate CPU running closed code, with ever-more complex code for competitive advantage (eg SSDs). Software is eating this world as well, for much the same reasons - increased complexity, post-manufacturing flexibility, and the emphasis on marginal cost.
A possible way forward is to concentrate on the central processor, treat peripherals as hostile [0], and mitigate vulnerability to them. For example, a hard drive "as-a-service" can be made secure with encryption and some type of PIR/ORAM (depending on our model of its side channels, which could be reduced by putting it in a Faraday cage with filtered power). This seems excessive, and it is.
But the alternatives are to convince Samsung to open up their SSD firmware (lol), hack into their always-changing devices, or to independently create an open SSD design. This design would be Free software with dumb hardware/flash, would have to be performant enough to convince consumers, and you'd have to successfully deter manufacturers from re-adding microprocessors to the dumb flash to increase margins.
[0] This obviously doesn't work for some peripherals, like a keyboard.
Reminded me of http://blog.invisiblethings.org/papers/2015/state_harmful.pd... (via https://news.ycombinator.com/item?id=10787614).
>or to independently create an open SSD design
http://www.openssd-project.org/wiki/The_OpenSSD_Project
The result of not being willing to commit to a driver API has been that Android devices - by far the most massive deployment of Linux kernels ever - are a wasteland of out of date, exploit-ridden kernels that can't be patched because of the monolithic driver model. Windows has a single kernel and all driver vendors play nicely within it. You can upgrade Windows separately to upgrading your PC, and you get the updates when Microsoft pushes them out. This takes a lot of effort by Microsoft, but it works.
Android devices, on the other hand, can't do that because Google can't provide shared kernel builds. Everyone has to do it themselves. And as noted above, this did not lead to a utopia of shared and open drivers, it just led to Linux users having out of date operating systems.
Somehow, desktop Linux manages to ship one kernel per architecture (x86, ARM, MIPS, etc) and manages to support almost all hardware out there, and manages to keep their kernel up to date.
Yes, Linux is actively hostile to proprietary third party shipped binary drivers. I'd call that a feature more than a detriment, because we want open drivers, if for no other reason than it prevents panned obsolescence of hardware and lets you keep your computers working even when the original OEMs refuse to. It gives you control over your hardware in a way you cannot get with proprietary drivers.
Though it is worth mentioning DKMS exists, works, and in practice if any Android OEM wanted to they could recompile via DKMS their blob crap every kernel update and ship the kernel + drivers combined as they have been doing for years no problem, just with updated kernels. They don't, and that is absolutely not the fault of Linux itself, its because OEMs don't care and as long as users keep buying their hardware while they continue to violate the GPL and deny users power over their own devices they will get away with it.
The problem with Android is that Google has done an absolutely terrible job of managing it and getting vendors to participate correctly (by open-sourcing their drivers so that the OS can be updated). Linux was never meant to be a commercial product, it was always designed with the open-source philosophy, and what you're seeing there is the result of the conflict here. The kernel itself absolutely does have a stable API, but the drivers have always been considered to be part of the kernel, by the devs.
This is a key point. The reason free software and the open Internet have been able to achieve what they have was due to their first mover advantage. TCP/IP, email, and Linux itself all benefited from network effects. Absent that we would have likely wound up with something like AOL owned by a Baby Bell.
Nobody has a reason to. Not at least to buy one over a Windows 10 PC (or a Mac, or a Chromebook). The people who want/need to will just buy one, stick a USB stick with Ubuntu on it and go about there business 15 minutes later.
There is also a real benefit to users (the kind that don't care about ethics / privacy / control of the hardware and who think they can download more ram) that Linux desktops maintain their UX very consistently. Gnome 3 changed a lot, but MATE, Cinnamon, XFCE, and LXDE all cropped up to maintain the Gnome 2 metaphor. KDE gives you the option to do almost any metaphor, but has traditionally kept the defaults the same for some ~15 years. Windows changes their task bar, start menu, system settings, browser, and file manager every other release at least.
TL;DR: Android phones have at least two separate CPUs, one to run the applications, the second one the actual phone portions, each running their own operating system.
It was always the data, not the code. Try and find an open dataset for any interesting machine learning problem and you'll realize that while "freedom" was busy doing things like setting back the use of precompiled headers in GCC a decade and making it virtually impossible for an artist to get a copy of ffmpeg that handles all the file formats she needs, the real value remains the data.
We don't need 15 open source PDF viewers. We need open access to the papers. And even hippie scientists at Berkeley seem unwilling to share those for some reason. So odd given the heritage.
I don't care much about Google's half-baked machine learning library. Give me the 128k neural output from the 250TB of voice queries if you wanna be "open" and advance machine learning. Unsurprisingly they've got that locked up tight. But culturally you can make the argument that's very much "ours" just like government-funded research papers are.
Given interesting data, nerds will ALWAYS find a way to read it. Focusing on code was a bit of a mistake; that's cheap and you get it for free. And the gap between open software licenses and Creative Commons licensing always seemed odd.
It's easy to say in hindsight, but that openness was not at all seen as a viable option for a lot of people in the industry back in the day.
Now that this has been solved (mostly), it is now necessary to take back control on the data. Thus, this article.
...and hey you Snowden's inside Google leak that 128k model already.
But as you said the people who spent their time writing the code generally didn't have the influence to release data, so there was very little lost time-opportunity.
So I'm glad they focused on the code rather than idly pontificating about the inequality of data access.
And through their efforts they managed to drag open concepts into the mainstream consciousness so that releasing data becomes a digestible mainstream concept instead of a crackpot manifesto.
Since everything in OSS has to be free, there is no economic model. Eventually things with an economic model supersede or embrace/extend open ecosystems because they have the resources to do so. They also have the resources to address user experience, which is the most important thing unless your target audience consists of only hackers. (Even then it still matters.) Good UX is an immense amount of work, and it's the sort of work that devs tend not to find fun and therefore must be paid to do.
Until and unless there is an economic model for free-as-in-freedom, surveillance-ware and closed models will continue to dominate.
Things which are not controlled by a company, or at least a foundation of some kind, are essentially a commons. The tragedy of the commons then goes into effect.
Who is responsible for upgrading the system? Nobody.
Who resolves disputes over technical vision? Nobody.
The internet and web 1.0 were an aberration - they came out of government funded research (DoD/CERN/universities). People built decentralised things because their salaries were very safe and accountability against any kind of commercial metrics (like userbase size) were non-existent. But at the same time, beyond salary, they didn't have big budgets to run centralised services. Early internet protocols are a reflection of the funding model used to build them .... NOT what was technically the best approach and NOT even anything privacy related! Which is why despite being decentralised most early internet protocols didn't really think about privacy much: those weren't research topics that interested the government funding sources.
In a sense, the early internet was a product of a hard-left entirely state-driven economic model.
So we now have a strange kind of rose-tinted glasses effect where people hark back to a better era of cooperation and friendship, a time without dirty dirty things like "profit" and "digital rights" getting in the way. This is a common theme amongst those on the political left: stuff was better when it was run by the state.
But the state didn't want to continue funding the internet in perpetuity, so it was opened to commercialisation, and since then virtually all technical progress has been driven by the profit motive and by implication, the ability to make lots of money by getting lots of users on your centralised platform (which are a lot easier to build anyway).
Is this worse? Maybe. It's capitalist. Whether that's better or worse than what we had before depends on your political perspective.
I am not aware of anyone making money in free software in B2C other than through surveillance, ads, or other ways of "monetizing the user." This is how Google, Facebook, and others who produce free software in B2C areas make money.
From a freedom POV, B2C is what matters. I assume that since we're talking about free-as-in-freedom we're interested in getting beyond surveillance as a business model.
Well that isn't true. NeXTStep was built on the 68k from 4.3BSD which originated on the VAX. It has no lineage in common with Linux, and in fact pre-dates it. And OSX now is by far the most popular workstation Unix.
https://en.m.wikipedia.org/wiki/File:Unix_history-simple.svg
That's not what he wrote. In its initial release, OS X did depend heavily on free software (Samba, Apache, GNU, etc.), which again thrived because of Linux.
NCSA httpd released version 0.1 was June 1991. http://www.w3.org/Daemon/Features.html
Amusingly: http://www.diam.unige.it/informatica/documentazione/httpd_do... "3.5) Why doesn't NCSA HTTPd work on my Linux system? NCSA HTTPd is not crippled. Linux may be crippled. NCSA HTTPd uses a standard BSD4 and SYSV feature known as file descriptor passing. NCSA HTTPd supports both the BSD and SYSV style of file descriptor passing. Linux chose not to implement either."
In fact, SLAC was first to the web in the USA, and Marc had originally approached my boss, who wrote MidasWWW, to see if he'd want to collaborate on the web browser which would become Mosaic.
PS: An interesting side note, the SGML standard committee decided not to include hyperlinks which more or less directly resulted in HMTL. https://en.wikipedia.org/wiki/Standard_Generalized_Markup_La... I wonder if that would have pushed the web forward even faster or not as HTML is far less strict, but you could make a less strict render for SGML as well.
I can't anyone is even disputing the fact that OS X didn't largely benefit from the fact that there was tons of GNU/GPL tooling out of the box that power users could use. Bash? GCC/G++ (before the clang/llvm migration out)? GNU. X-windows (granted I don't think many people used it post-Carbon, but I remember using it on my iBook 266mhz...).
\/ Edit: Mea culpa. IIRC you're right re: tcsh. I haven't used OS X as a daily operating system since first year undergrad (placing that at just under a decade) so afford me some liberties with details, kindly :)
Not quite, actually.
Samba => sometime in 1992
Linux => October 1991
It wasn't invented for Linux, but Samba exists today because of it.
I don't think so. But IRC predates Linux. :)
All of these components played their part in the rise of the OS and benefited from each other. The Linux kernel as well as things like the GNU project were absolutely necessary for this ecosystem to becoming a reality and that is what OS X benefited from as well.
Hardly. How would have Apple developed a full userland and development toolchain with the resources it had at that time? That's exactly the point of the article: OS X wouldn't be where it is without Linux (read: GNU/Linux), not because it was technically the best Unix (it wasn't), but because it was free software.
Linux did not exist at the time.
Linux succeeded due to its compatibility with this rich ecosystem of software, not the other way around.
What Linux changed that it opened the GNU software to much wider audience. You didn't need an expensive Sun workstation, cheap (relatively, at the time) PC was enough.
With the Linux kernel and GNU software, you had a complete, usable system, that anybody could use. Many people did, and they contributed back. The development accelerated.
So technically, no, OSX doesn't rely on Linux-the-kernel. But it benefited by the increased exposure GNU software got.
(Samba is about a year younger than Linux-the-kernel.)
Everyone was buzzing about Linux. The general attitude was 'Why would you run Solaris when you could just run Linux'
Maybe in other segments Solaris was a 'big deal' but for students and developers Linux was a game changer.
Not to say that was the entire market, but it was a good chunk of it.
For reference, older Linux desktop options were... well, I'll just say they played a lot like Dwarf Fortress.
(Disclaimer: I am one of those programmers who only switched to Apple because of the tiBook, which was a damned sexy Unix workstation in spite of the fact it was also a damned sexy laptop.. and I used it for developing apps for Linux and SGI Irix without much hassle.)
You had to take care to use libraries/APIs that were available at all three systems (no dlopen() or dlsym() at the time in OSX!), and take quirks of the OSX linker into account.
(Disclaimer: I was getting angry at Apple at the time. In a few years, they went through OS9->OSX migration, getting rid of Classic mode in emulation and now switching to Intel. They were breaking compatibility again; it meant buying new software like MS Office again - looking at the PC side, they didn't have such problem. So PB12 was my last Mac for a long time... until 2015, actually).
To me it's when the Intel macs came along (10.4.4 I think) that new adopters really started picking up steam, but the ecosystem they helped build wasn't really there yet.
At least, that's my perception.
Otherwise I only saw Solaris or commercial types of unix (like what came with IBM servers) in use in companies I directly worked with. I understand that linux was already rising pretty strong, but tried and true Unix/BSD systems were definitely seen as the more 'serious'/professional choices.
Which was interesting because then Linux became faster, and had things like better SMP support that didn't get improved in BSD to give it the performance edge until 2007 or so...
> The only reason Unix is popular for a workstation at all nowadays is because Linux runs everything.
And at a stroke the entire history of Sun, Solaris and Sun OS is brushed under the carpet as though it never existed. Yes. I give up. You win. Workstations only exist because of Linux. I think I need a little lie down.
Because people think it's cool to just call it Linux and endlessly deride Stallman for insisting it be called GNU/Linux, even though the nuance is very important in discussions like this one.
I don't think Sun is responsible for Apple's choice of a Unix. I was around in the late 90s, and Linux really was an amazing workstation — far more so than a Sun, because the value for money ratio was incredibly good.
I also remember when OS X first came out (and before that, mklinux), and the selling point was that it was a Unix, like Linux.
I'd still rather have a Linux workstation than a Mac. Linux gets out of my way and lets me work. Solaris never did that (oh, the days of Solaris 'packages' …), and OS X still doesn't.
That's kind of cheating though. OS X is a "workstation OS" but it's also a "desktop OS" used by millions of elementary school teachers and news reporters. So then the "workstation OS" gets to claim those people as users, but their main competition in that market is Microsoft Windows, which OS X loses the popularity contest to in the same way that OS X (including iOS) loses to Linux (including Android).
Seriously?
Since I first started using Linux in 1993 (0.99 patch level 12), it has always been a functioning kernel.
"Linux doesn't provide these syscalls or anything comparable" might mean you go from "runs reasonably well" to "can't run on this hardware at all because the kernel doesn't know how to do these tricks with memory, etc"
It's the first time however I hear anyone claiming as much credit. Oracle didn't even start dabbling with Linux until 21st century, and it was already a decade old project dominating Internet server deployments at that point.
Linux would have succeeded with or without Oracle, and I find it sad that you would try to re-write history to the point where it would seem that without Oracle linux would have remained a toy.
Ehhh... I don't see where he claimed anything about that. I see "Linux was a toy. Oracle helped make it not a toy." But, nothing about what would have happened otherwise. Be careful not to get sad over things not said. Principle of Charity and all that...
Toy: for amusement or education of creator.
Non-toy: implements real requirement for some task.
For instance, 80 bytes of machine code which pop out a piece of bread when it toasts to a certain darkness level: non-toy.
Which news groups were those? They (and your posts) should still be around somewhere.
1990 POSIX didn't have aio_read and all that; it came later. A lot of this stuff was being standardized in parallel with the progress being made in Linux. According to the 1997 Single Unix Spec (Issue 2), the aio stuff came from the 1993 real-time extensions to POSIX. [http://pubs.opengroup.org/onlinepubs/007908799/xsh/aio_read....] "Derived from the POSIX Realtime Extension (1003.1b-1993/1003.1i-1995)". This was bleeding edge POSIX in the mid 1990's, and didn't exist when Torvalds started.
The performance optimization requirements of large databases aren't the be-all and end-all of "non-toyness", anyway.
The Linux people were decent at optimizing for the cases that their user base cared about. E.g. Linux exploded as a web server OS all over the world, so there was a lot of focus on decent networking, and tricks like serving a static file right out of the kernel and whatnot.
I might have been living under a rock and everybody but me already heard about this story. But I would expect that every HN reader would drop his coffee cup reading this for the first time.
Is this true? Why had I never heard about it? Why should Bill do that?
https://lwn.net/2001/features/KernelSummit/
From that article: " The first presentation was by Lance Larsh of Oracle who, essentially, provided a laundry list of changes and features Oracle would like to see in order to get better performance out of high-end, large database servers "
...bullet list...
" The reception was "generally" positive - many or most of the above problems are well known and on the list to be fixed in 2.5 already. One exception was the non-preemption request, which was considered dangerous and unnecessary. "
J. Corbet is the author.
Would you mind sharing a link by any chance?
I don't think anyone ignores anything, it's more like the OSS community (of which I'm not a part, btw) simply doesn't feel that their freedom is a good price to pay for - anything, really.
Also, to be fair, the "rich and powerful" mostly get into peoples' way when we try to live our lives in a meaningful way, and that includes OSS folk, who just like to write and exchange software. If the "rich and powerful" decide to patent everything, which is the real sticking point for the OSS community, then the OSS folk have no toys to play with.
Understandably, they are not happy with that.
At the bottom I catch a reference to ProjectVRM. I follow the link and what I find is all bloggy and vague. If there's anything concrete in there, it's not brought together in front of the new visitor.
The actual situation is that we have two groups that care about different things: Users and developers.
Users' biggest concern is that the software helps them achieve what they want to do. They care about restrictions like DRM if it hinders them in doing what they want to do. The only way free software can help here is that other people (developers) can remove those restrictions. Proprietary software can easily offer the same freedoms for users.
There are two problems with this assertion: (1) users often don't know what they want to do or what they'll want to do in the future and (2) users don't have the education to understand the freedoms provided by open source / free software or lack thereof.
The situation is similar with automobiles. Until now at least people had the freedom to change the oil or filters by themselves or even do technical repairs. The worst that could happen is a void warranty, which is limited anyway. And people that don't have the technical know-how, such as myself, can go into any repair shop. Doesn't have to be an "official representative" of my car's brand. This in turn keeps prices down. I mean, I can tell you that for my Peugeot, where I live, the prices for both service and components for my car at the local representative are at least 2x or 3x bigger than at alternative and quite respectable repair shops.
Let me put it another way. A proprietary software package doesn't even guarantee that it will still be around and developed in 10 years from now. An open-source software on the other hand might not be maintained in 10 years from now, but people (like a government agency) can always fund further development, if they really, really need it alive. Open source never dies.
> They care about restrictions like DRM...
Again, users don't care about DRM. Because they don't understand it. If they did, they would reject DRM-enabled products.
At the government department or big organization level, they can fund or perform any proprietary development they need themselves as well. FOSS just isn't necessary at that level of resources. For ordinary users FOSS provides essentially zero comparative benefits over proprietary. If code doesn't have the features they need, goes unsupported or has bugs, they're in the same boat regardless. People choose to pay for software for valid reasons.
Try phoning up Microsoft and asking them how much it would cost to add a feature for an old piece of DOS software that they haven't touched in the last 20 years. I suspect the answer would be at least 8 figures, if not 9.
$100 000 000 is outside of the scope of pretty much everybody.
People hire mechanics to fix stuff all the time, even though they don't really understand how their cars work. They do know when their cars aren't working though.
You're trying to convince me that ordinary people are utterly incapable of hiring experts to perform services for them?
RE: 2 - I agree, but I posit it's really not their job to care. You don't know how the traffic light infrastructure works (presumably) or the logistics of your city's DPW. You just presume concrete will be poured into potholes when appropriate. Very few people actually care how things actually get done; their concern isn't freedom or the subtle politics behind BSD vs GPL2 vs CC w Attribution - their concern is if they can 'drive home without hitting the potholes' (load instagram without the app crashing).
--
(That car analogy breaks down due to the fact that you're driving a relatively obscure car manufacturer/make/model. Those alternative and respectable repair shops are staffed with your average joe picking up a spanner used to swapping out Toyota Corolla struts and changing Ford Focus oil. The difference in topology between cars has decreased as a function of time (especially modern cars, which tend to share components - e.g. the '99 Corolla was piece for piece, internally, what a Chevy Prizm had of the same model year).
I'm no automotive engineer but I can tinker my way into making anything work (bonus: with a high confidence factor of "this wire loom won't catch on fire"), but Joe-your-friendly-tech is charging 2x-3x more because he has to open a book and invest time in reading data-sheets for something he's not used to working on regularly (then ordering the proper pieces, installing them, and doing things like calibrating the stoich of the carb/adjusting the float, etc that's all taken care of by one of the ~600-800 MCU's in a modern car).
Not sure of where the GP lives, but PSA (Peugeot) is the second car manufacturer in Europe (after Volkswagen) in terms of markets share, and the first in France...
This may be the true. But how about this:
'Users don't care much about DRM because the benefits of convenience outweigh the costs'
How do you know which explanation is true? Personally I favor the latter. DRM is not more complicated than other things that people care about. If it was compelling for people to care about it, the people who do understand it would find it easier to educate and convince those who don't.
> Again, users don't care about DRM. Because they don't understand it. If they did, they would reject DRM-enabled products.
I understand DRM in great detail (as CTO of a streaming film company), and though I would in principal like to reject it, I have no basis to do so except illegal piracy. Theoretically if all the customers stood up and boycotted DRM we could have an effect, but in practice that would mean not being able to see the latest premium content for some period of time. Are people really going to give up their Game of Thrones to strong arm the industry? I can't foresee any universe where that would happen regardless of the users' understanding and savviness.
edit: it's amazing how this provokes a flurry of replies, none of which address my point at all. I am not making any positive claims about DRM. I am simply asking: how are you going to mobilize customers to boycott DRM?
Why? Pirates are the only ones who aren't affected by DRM. That's why I torrent Netflix shows even while paying for Netflix. I can play them anywhere, even without a net connection.
I very much doubt it. They are never going back to physical discs and require their customers to drive to shop and buy a physical copy. Heck, right now companies like Netflix fight hard in order to be able to be present in the web browser.
On the other hand, I see adapting a so keep your Game of Thrones for yourself attitude somewhat more realistic. There are already people like that.
This is particularly bullshit because I paid for the hardware. They could have just built the appropriate crypto keys into there. Hell, they could have built a whole update-and-revocation scheme into the drive's firmware, something that much smaller and weaker devices than Blu-Ray drives can still afford in their electronics and firmware.
They could have built it all so that buying the hardware would enable me to play the media, no further questions asked. They did not need to sell me a piece of hardware that is outright unusable for its intended purpose without further payment for proprietary software whose primary job is just to license the appropriate crypto keys.
And there is no law prohibiting anyone from publishing free software that could run the game, unlike in the DRM case.
Or to take an analogy closer to home, NVIDIA and ATI both sell graphics cards. They also both distribute proprietary device drivers as binary blobs. They do not charge money for the binary blobs on top of what they already charged for the card itself.
Nobody has to give anything away for free, but charging twice to use one piece of hardware for its intended purpose oughtn't be allowed.
The only people that are hindered are legitimate costumers. The playback might not work, because the monitor/projector because it doesn't support HDCP. With movies on Blurays they can't make copies for backups/to play the movie without a disc spinning/to play the movie on a device without a bluray drive. My sister cuts music pieces together for dancing, you can't do that with drm'd music. Pirating media often is hassle-free compared to the legal way.
The problem for customers is that compared to buying analog media or digital media without DRM you are restricted to simple playback and also in certified settings (certain programs, devices etc.). With streamed media the issue is not as bad, as you can compare it more to renting, but there are also issues (e.g. I need crappy silverlight to use amazon prime video in Safari).
My hope is that movie and series content owners will wake up the same way as music studios and book publishers. Selling music without DRM didn't hurt the music industry. Selling ebooks only with DRM led to the strong market position of Amazon with the Kindle.
No, also third parties that have nothing to do with the content industry. At work, we have massive 60" touchscreen in all our conference rooms, and we use them daily for presentations/meetings. Those presentations are regularly interrupted by 20 seconds of black screen.
The problem? HDCP handshake incompatibility between the newest batch of laptops and the TVs.
Ordinary people aren't organized. They won't suddenly all stand up and sign some kind of petition. What they're going to do -- what they are doing -- is that when DRM sucks, they go watch cat videos or argue with people on the internet instead of watching your content, and that money disappears out of your pocket.
Government agencies aren't even the interesting example.
The argument we usually get is that not everybody is going to be a programmer. Which, OK, sure, but maybe 10-20% of people are going to be programmers. Which means even if you aren't a programmer, your brother and your niece and your buddy are. So now you have some unmaintained software you've been using for 20 years, you get a new OS and it doesn't work anymore. It will take your buddy three hours to fix if they have the source and 1000 hours without it. And you can impose on (or afford to pay) your buddy for three hours but not 1000. And then your buddy can publish the fix and now everybody has it.
And it goes the same even if the thing isn't broken. If "the user" can improve the software then so can the user's brother who actually knows how to, which is clearly useful to the user.
It's fairly simple maths. How do you get better software, when every programmer in the world can improve it, or when only the assigned teams at Apple or Google or [defuct company] can do it?
And why do you expect the students and retirees who constitute the non-working half of the population to have a different long-term composition?
[0] http://www.bls.gov/cps/cpsaat11b.htm
The FSF does not believe that everyone should be a programmer. Much like freedom of the press matters for those that aren't journalists, freedom of the software matters for those that aren't programmers. I care about the right to repair even though I'm not a car mechanic.
>The actual situation is that we have two groups that care about different things: Users and developers
This is a very broad and inaccurate generalization. Even as someone that identifies as a "developer", I'm often just a user. Sometimes the "user" ends up hacking on something, perhaps not even really knowing that they did. It's a spectrum, and it wouldn't seem like such a dichotomy if more software was actually written that encouraged its users to explore its source code and provided ways to extend it. The tech industry reinforces the "user and developer" separation and I think that's a real shame.
It's also a losing strategy, which is why concepts like dogfooding and support duties exist.
Developers must be users at times, and users have a lot to gain from occasionally being developers (hence all the brouhaha about "learning to code" and so on).
Seeing the world in terms of users and developers is a throwback to 1970s waterfall cathedrals, something the Free Software movement is quite clearly set against.
With the ability to take a change someone else has made and apply it to something you purchased (e.g. Cyanogenmod) being exercised far more frequently than individual development.
Algorithmic and structural thinking are achievable by anyone. Most people just aren't willing to deal with arguing with a machine about what you mean (syntax), dealing with the accidental complexity and risks that modern languages and runtimes thrust upon you (memory management, declaring types, distributed consistency, persistence not being baked in, caring about where on the network your app "really runs"), and how much work it takes to go from a simple formula, some data and some money to a result.
If I am a scientist with a megabyte of numbers, a trivial map function (x^2) and a reduce function (x+x'), how many steps does it take and how many concepts do I have to learn and how long would it take me to run it? What if it's a gigabyte? How about a terabyte? A petabyte? A constant stream? What if my numbers are "weird" to computer science people like being bigger than a 64bit int or being n-dimensional arbitrary-precision vectors? Depending on these answers, why the hell are the steps and concepts I have to learn widely different? This is like the simplest problem to solve, and we just haven't. Software is solving problems it has invented for itself and failed both other disciplines and the layperson.
Freedom is partially in the OS and largely in how we use it. Constantly upgrading to the newest thing, for example, I would consider a luxurious consumer habit that serves the elite, but gives smaller relative gains to the individual. I suggest holding on to any OS as long as possible before upgrading.
And the fact that even Ubuntu gets tainted with commercial desire is really indicative of much bigger ideas... For example, it points out how power corrupts and needs checks and balances. (don't know if this is even possible with an open source OS). It also makes me wonder if this cyber-organic lifestyle is even physically possible. Is it possible that we've been drawing a massive check against ourselves and this degree of connectivity is unsustainable? Why does it constantly require so much software to keep going? Is there no point of equilibrium in sight?
My comment stands.
This is quite a bit different than, for example, the situation with Windows 10.
The situation is different; but the direction is the same.
1. Canonical makes no money.
2. They introduce a "bad" feature to try to make money.
3. Users outrage so canonical makes it easy to cancel.
4. Users are still not happy so Canonical turns it off by default.
vs
1. Microsoft makes s*loads of money from various sources.
2. They show an annoying popup urging users to upgrade to W10 (to make more money? to reduce support?).
3. They start forcing it by "closing is accepting".
4. They just start forcing it (according to many reports) so the users start creating tools to stop it.
It was one misstep. They have done, and continue to do, a lot of things right.
Why is that? They set out to make Linux more accessible. If you're complaining about the level of control they exert on Ubuntu, there are good reasons for that.
While I do not know the answer, I do believe it's possible to find one.
Focus on building relationships first, then tech.
For most people, freedom means something like, "My partner and I will work our whole entire lives doing things we don't really like, possibly be out of debt by retirement, at which point our kids will be in debt. Then we can travel the world and spend the rest on our healthcare." The fact that they can do that seems good enough for them. They always think if they work a little harder they will get ahead.
For others, freedom means something like, "I will further the betterment of humanity. I will work until my house is paid off and then expand and enjoy the gift of existence."
For the elite, the perspective is, "I've got a six-sigma edge. It enables me to put a in few months of light, clever work a year and not have to kowtow to anybody, all while living in devastating luxury. It requires leveraging all available resources, such as plundering the environment, the Constitution, the well-being of others, but it keeps me on top."
The elites are the ones convincing all the mainstreamers to forward their potential to their own causes. "Spend all your time on facebook. Consume. Compete. Upgrade. Fear." Linux people are caught in the middle, because they tried to make tools to help the mainstreamers, but didn't quite get there yet and the elites got a hold on it.
I believe the real answer is waking people up to the reality of how their desires are being manipulated to trap themselves in debt and desire. Basically, the message of Adbusters. Stop feeding Hollywood. Stop eating out all the time. Slow food. Do things IRL. Eat together. Fix old cars instead of constantly tweaking designs. Stop responding to dopamine rushes.
I went out to lunch with an admin at my company the other day. Her family doesn't have laundry machines in their home, but they're going to Las Vegas for a vacation. Why give away all that time and money to others?
Well it's better than what we had before. 5-15 centuries ago, freedom meant something like, "My family will toil all day long, with no vacation, for our whole entire lives in some feudal lord's fields doing backbreaking work in exchange for getting to live in a crappy shack with dirt floors and have some crappy low-nutrition food and not getting murdered by robbers. Our kids will work for the same lord or his heirs. Travel is just a fantasy."
It's probably going to be a great time to rewrite and resign portions of Linux, but I honestly don't think the community will be capable of doing a major architectural change. Kernel modules have been a great step towards modular design, and this needs to be pushed everywhere so that more changes can be isolated in the development process.
I've been a huge Linux (and GNU, most of what this article is about really is GNU, not Linux) user since being introduced to it in 1996, but as much as I love it, I do wonder if there are new options that will reveal themselves in the next few years that will better answer some of the modern hardware advancements. Linux is a beast of a system now, with a lot of technical debt and a hard to penetrate C code base, I hope it can evolve where it needs to, but I think it will require huge commitments from the community.
My understanding is that the 3D XPoint type devices are just exposed as a regular mmapped device and provide storage which is still a fair bit slower than DRAM, but a lot faster than SSDs.
This is a good intro paper on some issues: https://homes.cs.washington.edu/~luisceze/publications/novos...
This discussion is relevant too:
https://lwn.net/Articles/547903/
Those are both a few years, old, but I haven't seen discussion as to the progress made around scheduling when the disks start performing as fast as the CPU load operations.
Again, I was just pointing out that I wish that article got into more details around that, b/c I don't know the state of the world, but have some concerns in this particular area and the ability for the kernel to be able to accommodate new scheduling techniques to better utilize the much faster disk access.
This is dishonest phrasing and I think you understand that.
If it continues to go out of fashion then that's a different issue, but watering it down doesn't help to further the causes that the FSF set out to achieve with it.
If it continues to go out of fashion, that means that it is not an effective means of furthering the cause ths FSF set out to achieve for it.
One can agree with what the FSF overtly claims its goals to be, without believing that the current form of the GPL is particularly an effective method at achieving those goals in the current environment (one might even believe that the basic approach of the GPL was the most effective approach for an earlier time with different circumstances, without believing that it is effective now.)
It may be the case that compelling very specific rules for software freedom if a package is used isn't actually the most effective way, in practice, of promoting software freedom.
I don't argue for complacency. We need to up our game with things like GPL compliance and reclaim the concept of a "distro", but on phones this time. But taking the long view, we're definitely "winning".
Develop a nice decentralized solution? Maybe it involves some UDP multicast? Forget the browser.
Want to have two devices on the network talk to each other? Bounce it through a cloud provider.
Want to use "everything is a file"-files? The browser's interaction with the filesystem is incredibly clumsy.
So if you wanted to use the full strength of linux/any other lower layers, this would hamper adoption.
It's not even really decentralised. From the birth of the web it was driven by Netscape, then Microsoft, then MozCorp, then Apple for a while, and now Google, with bits of Opera thrown in occasionally. There has always been at least one dominating browser maker adding whatever random features they thought would be cool at the time.
OSX doesn't have that. Android doesn't have that. And in these days of systemd, Linux doesn't even have that any more.
Oh RMS, how little they understand you...
This is just an arbitrary excuse to inject your personal dislike of systemd into a conversation where it doesn't fit. systemd is under the LGPL. That guarantees our freedom to change it, fork it, examine it, etc. And, no one forces you to use it; there are many distros still shipping without it (but, the major distros have chosen to include it because it's the best solution we've got, so far, to solve the problems it solves).
I don't have a next fight. If I'm going to fight for something, it's going to be something a whole lot more important than computer software. Free software is here to stay. Success has occurred. I'm not going to grope around for another fight. Instead I'm going to harness my software freedoms to write software that does what I need it to do.
To me, a big one is ownership: who really owns/controls the things we purchase?
As for free software, consider that desktop computers are rapidly becoming less and less relevant to consumers at large, on average, yet they are also becoming one of the last holdouts of free software. Of the devices being produced and sold today, what fraction are free and what fraction are locked down? How do you expect that to change tomorrow?
Also, speaking of desktops, don't forget laptops.
Free software won. Yay! However, what about hardware, infrastructure, and services? Oops. All those things have been become increasingly centralized. Centralization has diminished our privacy, and therefore our liberty. Time to put restrictions on corporations so we can have liberty again.
-------------------------------------------------------
Now the only part I disagree with is the last part. Laws and regulations got us into this mess in the first place. These companies are huge because they can sue or prevent others from competing through laws and regulations. Guess who lobbies to create these laws in the first place? (It's not the little guy) The biggest problem is Intellectual Property (IP). Because of it we have DRM and many companies have very literal monopolies (enforced by government) on things. Apple has a patent on rounded rectangles for heaven's sake.
What we need is a decentralization of power, and a turn towards distributed systems. The best way to do that will be to eliminate IP. That will take some time, but we should do it gradually. By allowing people to "copy" it will create competition and weaken the monopoly-like position many of these companies hold. Power will fragment and decentralize. That should be the goal.
This simplistic view as a "property", which is a very familiar notion for most of us, confuses people into thinking that they could, and should be able to "own", for example, a joke, an idea for a business, or any kind of idea, the same way they can today own their car or their house.
The law is way more complicated than that, and by default, ideas can't be owned (and for that matter, can't be "stolen" either). I don't think we want this to change. However, it might be desirable to get this into peoples' mind.
It also lumps together many unrelated things. There is no big trouble with trademarks. Copyright itself isn't even a problem, the problem there is DRM. But software patents are unredeemable. They aren't all the same.
https://www.quora.com/Why-were-boat-hull-designs-specificall...
Each of these "intellectual properties" has its own special nuances and treatments, and often completely different laws. You have to demonstrate originality to copyright something, but you can trademark the most unoriginal things. You have to demonstrate that something has a function before you can patent it, but you can copyright the most useless things. You need to demonstrate that something really was created where you want to regionally designate it, but you don't need to prove anything to trademark it.
Lumping them all together is like saying programming, literature, mathematics, and theatre are all the same just because they all happen to have some sort of abstraction to them.
All "property" is government enforced monopolies, and much of it outside of IP (and especially much of the broader class of intangible personal property of which IP is itself as subclass) is also either temporary or conditional in nature.
Depends on the features of the parcel and the nature of the market for use of it.
And in the patent case it doesn't.
And then it covers all of them. The whole market. It's like if you owned a ranch house on a beach and that caused you to become the owner of every ranch house on every beach, and if someone built a new one somewhere else on some land that isn't yours then you would become the owner of it too. That's not how real property works.
And you're confusing the value of the market with control over it. It's possible to have a total monopoly on some useless junk nobody wants.
In theory that's the test, but it doesn't actually work. In practice market power isn't binary. There is always a substitute for anything if you jack the price up high enough. And a monopolist would jack the price right up to that point, so that increasing it any more would cost sales.
But the zero volume case is the divide by zero case anyway. A test isn't going to give you a yes or no, it's going to give you NaN. That doesn't mean there is no market power, it only means you can't tell without a buyer. And in the patent case, as soon as there is a buyer there is market power.
That's kind of the point. A patent by its nature has zero value without market power.
Contrast this with actual property. If you have wheat or copper, you have no market power, it's a pure commodity market, but people will still pay you something for it.
A Facebook clone wouldn't pull many users due to network effects. I think decentralization is opposed to network effects in this case.
The article mentions the somewhat current but certainly future problem of decisions being made by algorithms which "casually crush" users without any human being able to determine why it happened (and in many cases unable to fix it).
They could fix this problem by hiring more people and giving them more power to correct the system, but it will probably never be a big enough problem to affect the bottom line.
Increasing awareness of the problem and technical skill among users would probably cause users to become more autonomous and less like water. This is a long term possibility, but it strikes me as an unappealing fight. It’s like trying to convince an entire generation to take bitter medicine without any parents to assist. I’ll assume users won’t be getting better. Perhaps we just need to focus on building better ways to protect ourselves from the almighty algorithm, so there are options when the system fails. We can protect our data from online shopping sites by having nodes that process purchases for a large number of users and perhaps ship to a network of local points where pickup is by some type of PKI based system. Social networks seem like a lost cause. A return to blogs with lots of links rather than a replacement network may be the answer.
Here's the home page for joining Diaspora.[1]
Here's the home page for joining Urbit.[2]
Here's the home page for joining GNU Social.[3]
Any questions?
[1] https://joindiaspora.com/ [2] http://urbit.org/ [3] https://gnu.io/social/
Metcalfe's law is an impossible problem in theory, but not necessarily in practice.
For instance, one way for a new system to get around Metcalfe's law is to steal the network effect of the existing network. This is the same principle as in Tantek Celik's POSSE (publish on self, syndicate elsewhere) design, but a little more general.
Concretely, it's very hard to compete with Facebook, but relatively easy to let a user control their own Facebook account from their own general-purpose computer. Especially if you can get them to bring their own API key ("BYOK").
From controlling your own data in Facebook, you may move to mirroring it; from one-way mirroring, to two-way sync; from two-way sync, to discarding the silo. So it's not even necessary to replace Facebook in one impossible step; you can build a stepladder for users to migrate off gradually.
Of course, that this is possible doesn't make it easy!
I think this is dangerously wrong. It completely glosses over and overlooks the fact that economies of scale are real and larger organizations can solve larger problems.
The guy with the machine gun will win the karate tournament if the tournament has no rules. Rules are necessary to create a level playing field when power distributions are asymmetric.
You don't need laws on your side when you can just buy up your upstart competitors, or price them out of the market with loss leaders.
In this context, one of the few tools the community has to create a level playing field, is software licensing. In particular, *GPL style licenses tend to make things much fairer, by imposing rules on all parties that prevent one from profiting asymmetrically off the work of the others.
Open Source, of the permissive variety, does the opposite. Corporations can use the code as they wish and not give back to the community. Community efforts to compete are always at a disadvantage because anything good they create can be folded into the proprietary solutions. So closed, built on open, beats purely open.
It's a Catch-22 when the rules (laws written on paper) were what made the power distributions so greatly asymmetric in the first place.
This is quite obvious when studying tribal cultures as compared to civilized cultures. It's also worth noting the inherent distributed organizational design of tribal cultures as compared to the inherently centralized design of civilized cultures.
>Before our white brothers arrived to make us civilized men, we didn't have any kind of prison. Because of this, we didn't have any delinquents. Without a prison, there can't be no delinquents. We had no locks nor keys therefore among us there were no thieves. When someone was so poor that he couldn't afford a horse, a tent or a blanket, he would, in that case, receive it all as a gift. We were too uncivilized to give great importance to private property. We didn't know any kind of money and consequently, the value of a human being was not determined by his wealth. We had no written laws laid down, no lawyers, no politicians, therefore we were not able to cheat and swindle one another. We were really in bad shape before the white man arrived and I don't know how to explain how we were able to manage without these fundamental things that (so they tell us) are so necessary for a civilized society.
-Lame Deer
Pathological inequality is not.
>laws are there to enforce our human understanding of fairness against our human nature of selfishness and greed.
The fallacy of this statement is that laws are just words in paper which have no power to enforce itself.
Quis custodiet ipsos custodes?
And different guards guard each other. Balance of power etc
Sorry, but it didn't. Not the way we wanted it to, back in 1999.
It just won companies who use it on their servers or as a lower level component of their value added offerings (from Android phones and iOS -Mach, BSD etc-, to set top boxes).
And the main things those companies care for is that it's free (as in beer) and free (as in "lots of volunteers help improve their software they then wrap and sell as part of their commercial products for free").
But FOOS didn't won the consumers and end users -- those could not care less whether their Android device is based on FOSS Linux or not.
Besides, it's mostly closed/proprietary mobile apps they buy and use on it day in, day out. Plus closed (silo-ed) web services.
The commercialization of software has resulted in these walled gardens of proprietary software, closed data, closed formats, etc.
It's a sad day, for example, when a large percentage of the population actually believes that Facebook is the Internet.
I agree with the rest. Decentralization of services and usage of FOSS for them is critical for freedom as well. Consider what a major mess instant messaging still is. Despite all the years of innovation it's a horrible mix of non interoperable walled gardens (unlike e-mail). How can this mess be fixed and "next Facebook" be avoided exactly? Decentralized social networks exist, but they are still in infancy, and making them grow is not trivial.
But of course it goes beyond all that. More importantly, consider advancement of society towards some non too distant technological future. Do we want to see a grim cyberpunk like domination of governments+megacorporations meld which controls everyone's life through access to augmentations and technology of everyday things, or we want to preserve free society while still having advanced technology?
XMPP already exists. It's an IETF standard even. But how can the lock-in mentality be worked around exactly?
Making something new and better is good. But it doesn't seem to be the only issue.
A cathedral is primarily concerned with self preservation and it will be naive to ignore how money drives decisions in the real world. A lot of the freedom that got Linux here and Redhat itself to its billion dollar revenues are now being slowly plucked away to entrench Redhat's continued dominance but this is not Redhat's fault. Any organization that got that big would do the same and it's the open source world's failure to anticipate and account for the disproportionate influence something like this would wield.
Even today most Linux organizations are industry bodies with no voice for the users, and in many circles there is open contempt for users nevermind its their commitment though some pretty dismal software that got you in a position that you can choose to ignore them in the first place. A project without users has no reason to exist.
As for Android how is it Linux? You can't run Linux on your Android phones. The GPU, hardware and drivers is locked down so tightly it makes Microsoft and Intel look like Stallman's soulmate when compared to Arm and its vendor ecosystem. And Google too, Android was designed to work around the GPL. Using Android to beat the Linux drum is galling and self defeating.
What we have is thousands of companies benefiting from Open source to build multiple billion empires. 20 years later there is not a single resource that tell you all the companies using open source and how they support it or give back. There is no transparency, pressure or even the felt need to give back. The newer lot of developers do not seem to even care about GPL though that could just be the audience here. Gloating about winning in the context seems misplaced even if it were true. It was never about winning but about choice.
It could conceivably neutralize the forces that enable big government and big business.