>>"This marks the largest single donation to the Foundation since its inception almost 15 years ago"
First, I'm extremely excited to see this announcement. FreeBSD is fantastic and extremely underrated.
Secondly though, isn't it sad to hear that in FreeBSD existence - this is the largest donation ever ... given that Yahoo use to run it's entire company on it, OS X is based on it, Juniper is based on it, Netflix deploys on it, NetApp, EMC, etc.
Side note: Tarsnap is listed at the same level as Juniper (2013) and VMware (2014); I have mixed feelings about that.
If you look at the donors listed in each category for 2008-2014 (why those years? Because that's what I scraped the website for) then Tarsnap comes after Anonymous (one or more people giving $250k+, $250k+, and $50k+), NetApp ($450k+), Cryptography Research ($250k+), Hudson River Trading ($250k+), Google ($180k+), LineRate ($150k+), NetFlix ($75k+), iXsystems ($70k+), Swisscom ($40k+), McAfee ($35k+), and John Baldwin ($30k+). And of course WhatsApp, who aren't on the donors list yet for some reason. Part of the reason that Tarsnap always looks like one of the largest donors is that Tarsnap's donation always arrives a few weeks into the new year, while other companies are faster and get their money in at the end of the previous year.
Not to say that Tarsnap doesn't contribute, of course; just that other companies contribute far more over the long run.
Sorry, I was afraid that remark would be misinterpreted.
As a long-time FreeBSD (and previous Tarsnap) user, I'm certainly appreciative of the fact that you donate to the Project (in addition to your other contributions). That's the "happy feeling".
The "disappointment feeling" comes from wishing that Juniper and VMware's donations were of an amount that would put them in a much higher category.
In other words, my thinking was along the lines of "These two [huge, public] companies are donating roughly as much as Colin himself is". (I realize that, technically, Tarsnap is the entity donating but the fact is that that would be extra money in your pocket otherwise.)
The "disappointment feeling" comes from wishing that Juniper and VMware's donations were of an amount that would put them in a much higher category.
Well, it would always be nice to see more and larger donations, but I wouldn't be too harsh on them. As far as I know, VMware doesn't use FreeBSD at all; and while Juniper certainly uses FreeBSD a great deal, they also contribute a lot of developer hours -- vastly more than I ever have.
An interesting bit of that is how small the cash donations are in absolute terms! Giant companies like NetApp and Google have now been out-donated by one individual person! A wealthy person, admittedly. But those companies' cumulative donations to the project over 7 years are surprisingly small, basically in the range of what you might expect one wealthy person to donate to a charity or university they support.
Given the cost of developers, perhaps that suggests that cash donations are not all that effective a method, and measuring contributions to FreeBSD is maybe better done in developer time? If you convert the donations to developer-years, companies like NetApp and Google have each donated an average of less than one developer per year over that period in the cash format. Surely there is some company that beats that threshold, if measured in developer-years?
An interesting bit of that is how small the cash donations are in absolute terms!
Keep in mind that those are lower bounds based on which "donation bracket" they fell into. I know there was at least one case where a company donated $200k (which fell into the $100-250k bracket).
measuring contributions to FreeBSD is maybe better done in developer time
Yes. But that's harder to measure, of course.
Also keep in mind that the FreeBSD Foundation != the FreeBSD Project; it is only in the past couple of years that the Foundation has had enough money to hire ongoing engineering staff. For a long time their budget went to project infrastructure and self-contained projects proposed by individual developers.
I don't know, NetApp has been a sponsor for as long as I can remember. If I were running the foundation, I'd probably be happy knowing every year I was getting over $100k from NetApp instead of a one-time thing. It's tough to budget off of one-off donations. Not that they'd complain, but you make it sound like none of those companies help at all.
Justin Gibbs of The FreeBSD Foundation has said exactly this, regular yearly donations are very important. The one time donations are great for building a war chest, but it is hard to forecast a cash flow without regular contribution.
Paying back into open source is part of Cost Of Good Sold, and companies that seem to have longevity are realizing this.
OSX is not based on it in the typical use of the word. Darwin is a hybrid that incorporates a lot from *BSD courtesy of its NeXtStep lineage. It doesn't use the FreeBSD kernel and it has a lot of Apple specific enhancements.
I think there's more to the relationship than you give credit for. Even FreeBSD's web pages list OSX as a descendant https://www.freebsd.org/projects/newbies.html and several man pages in osx list freebsd as origin for various facilities.
"Apple's Mac OS X is based in part on FreeBSD and includes a rich UNIX® foundation in addition to the proprietary Apple user interface"
And I am in no way dismissing the relationship. I am just pointing out that Darwin was based on NeXtStep but incorporates a LOT of *BSD technologies. I used OSX Beta 1 and it was pretty far from a FreeBSD based OS.
Agreed for sure! But it does look like additional FreeBSD stuff was added as nextstep turned into darwin/osx.
I found a couple of other articles, I didn't know Linus turned down the job offer from Steve Jobs before they hired that famous FreeBSD developer. It's funny to think how things might have turned out in an alternate reality :) http://www.wired.com/2013/08/jordan-hubbard/
It's also fascinating to try old versions of nextstep and rhapsody in virtual machines, you can really tell how osx traces straight back. Even the installer is so similar still, comparing nextstep 3 and yosemite (if you bring up the console window during its progress)
XNU really is a hybrid kernel. On the top level you see mostly FreeBSD which as you say brings in the VFS, networking, most of the userland and lots of other things you see in a POSIX conforming kernel. However, many things are actually nothing more than just shims down into the Mach part of the kernel, which brings the virtual memory, processes, thread model and other “low level” stuff. Processes for example can be worked with as if they were a FreeBSD flavoured process, but that will just call down into a shim which calls down into Mach. You can however also work with processes the Mach style, eg. through ports and mach_msg.
As an illustration, there was a program which would crash the system (kernel panic) by using Mach interfaces to create a new thread, and then have that thread use standard Unix interfaces. Apparently, the shims were not properly initialized.
I seem to remember OS X being based on BSD/386, part of the proof being a number of bugs in early OS X systems that had been fixed in BSD/386 before FreeBSD, OpenBSD and NetBSD forked. Almost as if OS X was fork that pre-dated the more famous distributions.
It was called Rhapsody then, and work had started on it even before the ink was dry on the NeXT acquisition.
The rebranding to OS X was largely cosmetic from the command-line userland and underlying OS architecture's points of view, despite what the tech media often claimed about it at the time. OS X ported "Carbon" Mac OS 9 APIs to the new operating system; the Rhapsody strategy was either "Yellow Box" (former OpenStep, now Cocoa) runtime, or run in an emulation environment.
If you read the commit messages you will often see a "Sponsored by:" line, and it's not uncommon to see those companies referenced, so they are supporting FreeBSD, just in the form of developer time. And I believe they also donate to the foundation as well.
Of those, only 9,244 commits [2] have the word "Sponsored" in their commit message; however, 3,486 were sponsored by "The FreeBSD Foundation" [3]. So only a net total of 5,758 commits were company sponsored.
Said another way, that means just 2.1% of all commits ever made to FreeBSD, in it's 21 year existence, were companies sponsoring and submitting patches.
So no, I think it's safe to say that FreeBSD is primarily run and operated by lone individuals who do it because they personally love FreeBSD.
OK, maybe "never" is a bit of a stretch. "Very rarely, even by people whom I knew were getting paid by their employers to spend 100% of their time working on FreeBSD"?
All commits are also not equal, just like not all LOC is equal. Very often I see folks with a lot of commit on github, when I look at the diff, it's 2 lines, 1 line. I'm the kind of person that will probably write 20 lines before I commit. I think companies are more likely to have done something bigger, tested it, used it for a while then committed, but individual developer could just commit on a line or two for say bug fixes. This is not to make an excuse for commercial entities, I still think they can do much more in helping projects, but if too much money flows into open source, it just will end up corrupting the community.
The sad reality is the most corporations are pure leechers, they never give anything back, for those companies open source is just a means of not paying for software.
I also have rarely seen much contributed back in my limited experience, especially outside of the "tech industry" proper. I've noticed the lack especially in "big engineering" (oil & gas, CAD, aeronautics, etc.), and recently also in "data toolkit" type markets like proprietary bioinformatics toolkits, data-mining toolkits, GIS packages, etc. I don't work there myself fwiw, but for various reasons have spent some time observing development practices. BSD-licensed code is included in tons of profitable proprietary products in those areas that have never contributed back a line to the original project. Much of the time they drag their feet on even giving any acknowledgment to the project they took the code from. Really they would prefer to pretend they invented it all themselves, 100% Custom Proprietary Solution, with no acknowledgement whatsoever. They do typically grudgingly make the legally required copyright acknowledgment, but in the "New BSD" variant of the BSD license that removed the traditional requirement for acknowledgment to be prominent, that's pretty easy to bury in fine print in the most obscure place you can concoct (a random .txt file on the install medium, or somewhere in the fine print at the end of a manual, are two popular options).
A plausible counterargument is that these types of companies wouldn't contribute back anyway: they just aren't interested. In that case the practical choice is between letting them free-ride off your code (BSD) or not letting them use it at all (GPL), because they aren't going to make a choice that involves contributing back, regardless of your license. In that case I can see people leaning towards BSD. But I'd personally lean towards GPL, because I think that, at least often, shutting these companies out of the ability to use open-source code would probably be a net win for society. But it's hard to prove that. And this probably depends significantly on your goals and the kind of software you write.
Like how Apple, Google, Intel, Nvidia etc. are exploiting the LLVM project? IMO, the need for GPL style restrictive licences isn't backed up by facts; more open licences encourage commercial use and open development.
There's a game I own that I'm only able to play on my computer because its developer accidentally used a GPLed audio library, and found their best course was to GPL the game engine. Internet volunteers then ported that engine to other platforms. So as an end user the GPL really has made things better for me than a BSD-style license would.
That doesn't do anything. Large corporations don't have to distribute your software for internal usage. It can reach hundreds of thousands of employees and still be internal.
In my experience companies just use other code or develop their own, so the original developer doesn't benefit directly anyway. So it doesn't matter which license he chooses.
One could argue that making a successful open source project makes the original developer "wanted" in terms of employment, paid support requests, paid consulting... And choosing leeching-friendly license helps in achieving that.
That is the express intent of the BSD/MIT license though. If the authors wanted to prevent people profiting from the software they would have released it under some other license.
Minor nerdrage here - the GPL says NOTHING about sale of source. It strictly is about release of source. You can sell systems with GPL in them for as much cash you desire to do. I've seen it done in extremely profitable situations, actually.
Roughly, look at any mobile software you use and look at the open source licenses. Note how much of that code gets pushed back into the rest of the world. For even more excitement, look at major non-tech companies and see how much they contribute back. In my idle memories, I think Walmart might be the only one I've personally seen... The GPL (or its stronger and younger sibling, the AGPL), contractually require release of source to the user.
When working for these companies, have you ever asked if you could contribute back? In the field of pharma, a lot of contributors to RDKit discovered that no one had ever asked before. It now has a lot of contributions from people who work in industry.
And don't fool yourself that GPL means companies cannot use it or include it in their products. Many do, even following the letter and spirit license agreement. As a quick example, OpenEye released openbabel under GPL; now their biggest competitor, Schrodinger, uses openbabel in products with the modifications released as a fork on github where the product is developed[1].
I've asked a couple of different employers whether I can release something as GPL. The answer has usually been "yeah, sure, just let me check with legal first". Months go by, I ask again, and I'm told "yeah, we'll get right on that". Never an outright no, just stalling until I gave up.
(Current employer has been better, and I've submitted a few improvements to libraries I use)
As I noted it's hard to prove, and sensitive to a lot of assumptions (not least, what kind of software we're talking about). I also don't know the entire range of businesses using BSD software without contributing back. It's possible some of them are friendly cuddly ones. :-)
Two guesses, though. 1. To a significant extent it's just reducing the cost structure of BigCorp IT spending, which [note: unproven] in most cases I suspect mainly benefits profit margins and capital investors, though it may to some extent benefit others as well. 2. A significant proportion of these products are backed by corporations who are aggressive users of the copyright and patent systems. The flipside of the developer freedom of the BSD license is that it leaves the developer full freedom to restrict the freedom of users by suing users who dare modify, reverse-engineer, or produce software similar to the software the company produces. The GPL, particularly GPLv3 with its patent clause, complicates the ability of a company to incorporate my software into code they plan wield as a weapon in IP lawsuits, whereas they can roll BSD-licensed code into their legal weapons mostly unhindered.
I'm not asking about proof, I am asking about your personal subjective opinion. Your post doesn't appear to address the question at all, it appears to be justifications for why you want to "punish" corporate software companies. I want to know how do you think preventing people from using free software benefits society at large?
Also, your post contains a very common myth: "the BSD license is that it leaves the developer full freedom to restrict the freedom of users". It does no such thing. The only thing the BSD license restricts is your ability to use the code without including the license like it says.
I thought that was what I was answering. Imo it's harmful for society at large because: 1. all else equal, helping to shift the proportion of returns that go to capital vs. labor is negative for society; and 2. assisting companies in building products that they will use as a basis for IP lawsuits is negative for society.
Also: you've simply restated my "myth" to say something that to me seems equivalent. The BSD license allows companies to take my code, and build it into software packages which they subsequently use as a basis for patent and copyright lawsuits. That is, one "freedom" the BSD license does not restrict is a developer's "freedom" to file copyright and patent lawsuits against users of the software. I do not believe that is a valuable freedom, and do not want to assist with that behavior. I am fine with people using my code to build other products, as long as they agree not to sue downstream users for violating their patents, violating the DMCA, and similar things. The GPL is an imperfect hack to try to meet that criteria, but imo it's often better than nothing.
It is possible they could do all that without my assistance anyway, of course. They could build things entirely from scratch and then sue users of the software. But I don't want to help make it easier.
But your very first words clearly state otherwise: "As I noted it's hard to prove".
>Imo it's harmful for society at large because: 1. all else equal, helping to shift the proportion of returns that go to capital vs. labor is negative for society; and 2. assisting companies in building products that they will use as a basis for IP lawsuits is negative for society.
This does not answer the question, it simply makes more. Why do you think those things are negative for society. And why do you think they are related to the question at hand, much less a direct result of the use of free software?
>you've simply restated my "myth" to say something that to me seems equivalent
No. You restated it. I did nothing of the sort.
>The BSD license allows companies to take my code, and build it into software packages which they subsequently use as a basis for patent and copyright lawsuits
So does the GPL. You are very mistaken if you believe that free software can remove people's right to sue others. Both in the sense that you can not remove people's right to sue and in the sense that if you could, that would not be free in any sense of the word.
>That is, one "freedom" the BSD license does not restrict is a developer's "freedom" to file copyright and patent lawsuits against users of the software.
There is no "developer" vs "user". They are the same thing. That is one of the fundamental facts the GPL was conceived on. You are creating a non-existent category of people who you feel should not have freedoms. Neither the BSD license or its cousins (MIT, ISC, etc) nor the GPL in any version makes any such arbitrary distinction between "developers" and "users".
>The GPL is an imperfect hack to try to meet that criteria
No it is not. You are both grossly misrepresenting the GPL, and attacking free software. This behavior is expected from people who oppose free software, it is appalling from people who purport to support it.
>They could build things entirely from scratch and then sue users of the software. But I don't want to help make it easier.
This only explains why you choose to not write free software. That is not what I asked about. I would like to know why you think free software is a negative for society. How did society lose out by apple using free software in its operating system? How did society lose out by the billions of devices out there running openssh?
Your post is rather rambling and hyperbolic, so I'll stick to just the part about free software and users.
I suggest reading the FSF's explanation of why the GPL exists. One of the reasons is: because free software means that downstream users have the right to use and modify software. That is a freedom. The right to keep other people from using and modifying software is, by contrast, not a legitimate freedom. Invoking copyright and patent law are two common ways people attempt to use the legal system to restrict other people's use of their own computers.
The GPL attempts to disarm such attack routes by requiring you to pass on, to all subsequent downstream users, the same right to use and modify the software that you yourself received. The BSD license by contrast, allows you to sue downstream users who modify the software for copyright infringement, because you didn't grant them a license. For example, OSX is built on FreeBSD, which is free software. But because it's BSD-licensed, Apple can prohibit me from distributing modified versions of OSX, and can invoke the DMCA to prevent me from reverse-engineering it in certain ways. That's a "freedom" the BSD license allows Apple to retain, to use the power of the state to restrict my freedom.
My post is very direct and clear, and contains absolutely no hyperbole. Rather than make up nonsense to try to dismiss what I said, if you feel you can not respond without further embarrassing yourself then simply opt not to. The fact that you have yet to answer my very simple direct question, and instead want to try to weasel more FUD against free software in is quite telling. But now I have a new question. Since BSD licensed code is so bad for society, I assume you don't use openssh, or X Windows, or apache, or nginx, or any of the other massively important BSD licensed software millions of people benefit from?
>I suggest reading the FSF's explanation of why the GPL exists.
I suggest you try to be less condescending when trying to convince people to buy into your lies.
>The right to keep other people from using and modifying software is, by contrast, not a legitimate freedom.
Words have meaning. They still have the meaning even if you do not like it. Freedom means freedom. Not "only freedoms I approve of". Your statement is every bit as absurd as people claiming the freedom to prevent others from entering your home is not a "legitimate freedom".
>The GPL attempts to disarm such attack routes by requiring you to pass on, to all subsequent downstream users, the same right to use and modify the software that you yourself received
No, it passes down an obligation, not a right. Not a freedom.
>The BSD license by contrast, allows you to sue downstream users who modify the software for copyright infringement
No, the BSD license does not prevent you from suing people who modify your code. You have no ability to sue people for modifying the BSD licensed code. You are resorting to the oldest and most obviously incorrect FUD technique, one which even RMS has requested GPL fanatics refrain from repeating. My code that uses BSD licensed code is not the BSD licensed code I used. Nothing done to my code has any effect on the BSD licensed code. It can not be "made closed" or any such nonsense.
>But because it's BSD-licensed, Apple can prohibit me from distributing modified versions of OSX, and can invoke the DMCA to prevent me from reverse-engineering it in certain ways.
That would still be true if they did not use BSD licensed code. That's the point. Nothing is lost here. The only thing that changed is instead of apple writing code, they used existing code which due to age and examination is almost certainly of higher quality than anything apple could have produced in such a short time span. So users of apple software got better software, and nobody lost out on anything. Hardly seems a negative to society.
>That's a "freedom" the BSD license allows Apple to retain, to use the power of the state to restrict my freedom.
Apple is not restricting your freedom. The government is, via copyright law. You feel so entitled to other people's work that you conflate "someone did not grant me additional rights above and beyond those I already have" with "someone is restricting my freedom".
> Apple is not restricting your freedom. The government is, via copyright law.
When a person or company makes use of a legal process to restrict someone's freedom, I think it's fair to blame both the law and the person using it. You don't get a free pass on unethical actions just because they are currently legal in a particular jurisdiction.
> You feel so entitled to other people's work
I feel entitled only to freedom to use my own personal property without restriction. If I purchase a computer, I own it and can do whatever I want with it. If I buy a MacBook Pro, I can legitimately open it up, modify it, replace components, modify the installed operating system or software, etc., etc. I can also share photographs, schematics, disassemblies, and anything else I want to document this process. It's my computer. If you, Apple, or anyone else tries to get the government to stop me from doing so, you are in the wrong, even if you try to dress up your intrusion on my personal property with made-up terms like "intellectual property", EULAs, and whatever other bullshit they come up with.
I do think it would be preferable to simply repeal "intellectual property" laws rather than have to try to use things like the GPL to work around them. In that world, the BSD license would be fully free, too. But licensing software as GPL is something I can do easily as an individual, while getting stupid laws repealed is considerably more difficult, so it's the pragmatic workaround for now.
>When a person or company makes use of a legal process to restrict someone's freedom, I think it's fair to blame both the law and the person using it
They are not. You are still pretending things are backwards. They are not doing anything to you, they are simply not giving you privileges.
>You don't get a free pass on unethical actions
You have not made an argument to support the notion that "selling software" is an unethical action.
>If I purchase a computer, I own it and can do whatever I want with it. If I buy a MacBook Pro, I can legitimately open it up, modify it, replace components, modify the installed operating system or software, etc., etc. I can also share photographs, schematics, disassemblies, and anything else I want to document this process. It's my computer.
None of that is even remotely relevant. You are free to do those things. They have nothing to do with BSD licensed software. It is hard to see your red herrings get further and further from any sense of relevancy and still believe you are not being deliberately dishonest.
>I do think it would be preferable to simply repeal "intellectual property" laws rather than have to try to use things like the GPL to work around them
The GPL does not work around them. The GPL requires copyright law to achieve its impositions. Without copyright law, people would simply not give you the source and there would be nothing you could do about it.
Apple is doing far more than simply not giving me the source. I'd be fine with that. I have no problem simply disassembling the binaries that are on my Macbook, modifying them as I please, and distributing my new versions. I don't need source code to do that. I've already purchased a computer, which means that I own the computer and what's inside of it. That's all I claim ownership of. But I can't legally modify the binaries on my computer, because Apple claims some fairy-tale "intellectual property" right to prohibit me from distributing binaries which are "derived from" their binaries in some weird viral sense. I don't think that is justified.
Again, nothing you said has anything to do with the BSD license. You are demonstrating precisely why the huge backlash against the GPL is getting so big. If you want the GPL to maintain relevance, stop attacking free software with lies and FUD. You just keep driving more and more people away from the GPL.
WebKit, llvm, are pretty important in that they altered the fundamental of present day by being so openly used. It's apples ehm to oranges at that level, but what has Google contributes of the likes?
Android sadly is not OSS, just like OSX isn't, even though it's obviously based on it. Chromium was V8 and WebKit, and so depended on WebKit. The rest are obviously not fundamental pieces of technology.
Apple did the absolute minimum with WebKit source (occasional tarball dumps) until a KHTML developer's rant shamed them into being a bit better. LLVM has become a valuable project but I think mostly by luck; Apple contributed some funding to it because they didn't want to make the patent promises they would need to to distribute GCC. Neither of these is a new project that was developed by Apple and then released, in contrast to mda's list.
Easy. Android (Open Source, while the source is not always released right after a new version is out), running on most Smartphones over the world. Pretty big contribution I'd say, especially in a world turning Mobile-First. Chromium. Go. I'd say their contributions are far from negligible.
Yahoo was the poster child of FreeBSD usage, but a few years ago they moved their servers to linux.
There was public bits of info here and there at the time, but there's not much left online it seems.
It's a bit of a catch 22 situation though: if mega-corps did contribute large amounts to the project, there would be suspicions raised that they are "influencing" the project. There is often an expression of disappointment when people learn that Google is a significant donor for Mozilla.
If you run a mega-corp and are interested in donating to FreeBSD, please go right ahead. We can figure out how to deal with suspicions about influence later. ;-)
Personally, I do not believe that money magically makes software better. Some of the best code I have ever seen was written by "academics" who received little to nothing for writing it.
The OS X userland and some other parts are derived from FreeBSD. One of the project initiators (Jordan Hubbard[1]) went to Apple and ported it for the initial version of OS X. He now left.
> The BSD portion of the OS X kernel is derived primarily from FreeBSD, a version of 4.4BSD that offers advanced networking, performance, security, and compatibility features.
While donations from corporations is great, my hope is that developers will jump on the micro-payment bandwagon. If every developer who uses FreeBSD in one capacity or another donated $1 per month, the FreeBSD Foundation would likely never need to ask for donations again.
I currently do quarterly donations to FreeBSD Foundation and Apache Foundation, and some hand-picked developers in the technologies I use regularly, whom I would consider indispensable in the open source community. While it's not $1M, if everyone were doing it, none of those groups would depend on corporate donations.
I have even thought of a project that I may bring to life one day, if enough interest exists. Find the most indispensable members of the open source community and put crowdfunding efforts together to buy them out. In other words, put enough money on the table that they won't need to work for 1,2,3 years at a time. Working tirelessly on open source projects is something these people have already proven they love to do, and will almost certainly continue if suddenly they came across a windfall like this.
My guess is these kinds of things have been attempted, but for one reason or another have never really gained the support they would need.
Given that the freeBSD foundation receives approx. $400,00-500,000 in donations from less than 20 corps/individuals... I think rather a lot of developers would have to donate :) Are there 42,000 FreeBSD developers willing to contribute?
$1 per month is an incredibly trivial number. Less trivial is how difficult it is to set up payment in this fashion. If getting payment was as simple as convincing developers that it was worth $1 per month, I'm sure you could get to $1m per year (many would do much better than $1 per month).
That is alot of developers using FreeBSD, but my ideal scenario is where these groups don't rely on corporations or just a few wealthy people for donations.
Also I wouldn't necessarily advocate letting corporations off the hook. If every corporation / small business / organization who uses FreeBSD in their infrastructure also contributed $1/month I think this would easily put them over the top. I think developers should be just as active with advocating to the companies they work for to also do micro-payments to open source projects / foundations they depend on for their infrastructure.
Nice move. I think it is awesome when folks do that.
Has anyone thought what an 'opensource' endowment might look like? I'm thinking an endowment manager and a policy for distributing 2% of the endowment annually to folks who contribute and against costs (like hosting repos and mailing lists etc.) The thought being you end up with some "project" with a $100M - $250M endowment and it operates 'in perpetuity' on a budget of $2 - $5M annually.
in my opinion, (although the counter-argument is clear), the reason to donate to the FOS movement in the short term instead of long term endowments is because it feels like we are at a critical turning point in the history of technology with respect to its role as an equalizer or a way for the powerful to become more powerful. A large push now is worth more than a small push every year for infinity.
just remember though that interest rates are currently 0%, even the 10y treasury bond is only marginally above 2%, so giving away 2% a year at least for the near to medium term assumes capital growth in riskier forms (equities, more donations) well above distribution levels. This is why explicit payments on a recurring basis are more important than ever, even more so than the (certainly still brilliant) 1m donation. Endownments that have been used to payout ratios of the order you mention have relied for most of the past 50 years on long term treasury yields (30y) well above 5%. We're now nudging 3% for the first time since the dawn of the computer era. Tough times.
I don't know about the US, but Canadian universities spend 3.5-4% of their endowments annually and expect this to preserve the real (inflation-adjusted) value of the endowments. So they're expecting between 5.6% and 6.1% nominal annual return over the long term.
Nobody ever invests an entire endowment in bonds; even aside from the lower rate of return, the inflation risk is much too dangerous.
Every time I spend some time in BSD land I'm pleasantly surprised with how well-designed, featureful, and well documented everything is.
For dedicated server systems that developers don't access, it's pretty much perfect. I kind of wish that the developer world had standardized on that rather than GNU/Linux, though perhaps if there was a wider pool of developers, the BSDs wouldn't be so clean and straightforward.
For dedicated server systems that developers don't access, it's pretty much perfect.
While this is mildly off-topic, I'm mildly frustrated that there doesn't seem to be any BSD equivalent to hosts like Digital Ocean and Linode. The closest I've been able to find in recent searches is RootBSD, and its specs are... well, pretty sad for a VPS in 2014. Are there technical reasons that make this difficult to do with FreeBSD? I know you can't use a Linux-specific VM solution like KVM, but is there no BSD equivalent, or no VPS provider with a more OS-agnostic solution?
I've had a lot of luck getting bleeding edge Arch linux kernels running on DigitalOcean using kexec to essentially turn the kernel DO gives you into a bootloader. It should theoretically be possible to get FreeBSD running in a similar manner, but it would obviously not be officially supported.
If you're looking for other hosting providers, EC2 does have FreeBSD images available.
The hardware should theoretically be fine. kexec calls "shutdown" prior to executing the new kernel and some linux distros use kexec for fast reboots. Additionally, you can replace your /sbin/init with a shell script which calls kexec instead of actually calling init, which would probably avoid initializing some hardware altogether.
It's actually possible to boot grub4dos via kexec, however it doesn't work out of the box in digital ocean. I'm not sure how to format code on HN so here's a proof-of-concept on pastebin: http://pastebin.com/5jcvG2N9
A kexec bootloader also exists, called petitboot, but I've never used it to boot anything other than linux, though scanning google, it looks like people may have used it to successfully boot FreeBSD on the PS3 or OpenWRT compatible routers.
Petitboot can be found here: https://www.kernel.org/pub/linux/kernel/people/geoff/petitbo...
I have tried many, many (perhaps hundreds) of low-end VPS over the years, and the top of the pile is most definitely Ramnode. Digital Ocean is also good, if you can get past the hard limit of one IPv4 address per instance.
If you mean that you're looking for a VPS provider that offers FreeBSD images, they are out there. In addition to the ones already mentioned in this thread:
Vultr.com[0] offers FreeBSD VPS from $5/month. I've used these guys, and have been very happy with the offering.
Atlantic.net[1] offers FreeBSD VPS from $0.99/month.
The BSD equivalent is Bhyve[1] which was only added to a release version of BSD this year. There is also very little in the way of tooling to make this easy to use.
FreeBSD is available as an EC2 AMI.
For what it's worth, Nearly Free Speech[2] offers jailed hosting on FreeBSD and has recently improved their ability to handle persistent processes.
It seems like only smaller VPS services offer first-class support for BSD. There's a few out there besides RootBSD. ARP Networks [0] is one; it's got pretty reasonable rates.
I can vouch for arp networks. I started off using their VPS services (kvm), running both linux and FreeBSD; but now use their dedicated services. Very knowledgable people behind this and a pretty active irc channel on freenode (#arpnetworks).
The Australian equivalent of Digital Ocean, Binary Lane[1] has "BYO ISO" support for FreeBSD VMs - it is not in the list of easy installs, but there is detailed documentation[2] in their support area on how to install it, and they host a local mirror of the FreeBSD install ISO.
Their features and prices are very competitive with Digital Ocean, which is a nice change for an Australian ISP.
I've not had any issues, so I have no first-hand experience, but they seem pretty active on forums such as Whirlpool. In doing my research there were good reports of them on various hosting forums too.
Yes, I saw their price rise - they warned about this a few weeks ago in their newsletter, and they blamed this on supply constraints on IPv4 addresses. The price rise did not effect existing VPSs, and will not effect those who go IPv6 only, when they implement that option.
Yeah, I'm hoping more VPS providers have the option like EC2 does for assigning IPs, because honestly if you have the need for multiple machines most of the time you need a private network over a public IP (database servers, etc).
A few providers have started doing this, but more need to do this as it would cut down on the wasted ipv4 addresses that they have in "stock".
> perhaps if there was a wider pool of developers, the BSDs wouldn't be so clean and straightforward.
That's exactly how I feel about it. You never want too many cooks in the kitchen. They have all they need for a very successful server system already.
Right now I'm just hoping for some sort of BSD-based desktop environment∗. Doesn't have to be a Windows/OSX/GNOME/KDE killer, just something functional. I suspect the usage of Linux GUI environments is going to become increasingly volatile in the future with so much Linux-only tech being pushed in as dependencies to absolutely everything these days.
(∗ I don't mean something like Lumina, I mean from the display server up. Xorg is moving to Wayland/Weston, GTK3 is pretty much becoming GNOME-only, which is becoming systemd only. I'd like to see a new BSD-style lightweight, modular, minimal display server, widget toolkit, and desktop. Run the whole thing on either VESA or barebones EGL.)
In general, pretty great on FreeBSD. You have nVidia binary blob 32-bit and 64-bit drivers. The OpenGL performance equals Linux and Windows. The blobs aren't available for the other BSDs. There's some trouble at the moment due to the move to KMS and the new VT, with a new Xorg and new AMD/Intel drivers for it. Some consternation over when/if nVidia will release FreeBSD/KMS drivers. Supposedly the Intel driver is a bit behind, but nobody's running Intel video for graphics performance. Nouveau isn't available due to KMS breakage.
But to me, the focus should not be on trying to run the latest games. Linux isn't replacing Windows for gaming, so there's no chance FreeBSD is going to.
I'm running a 2560x1600 display on VESA, and after a few MTRR tweaks, it's more than fast enough (I can push over 100 full frames per second), even for watching video and playing 2D games. The only thing missing is Vsync support in the protocol. And what I get in return is never seeing another graphics driver crashing my entire system (because we're still stuck with monolithic kernels running video card drivers in ring 0 in 2014.)
I would say, get a nice desktop up using only a frame buffer with maximum bandwidth possible. Then if people want to run an EGL context, they can render 3D stuff to a buffer, and blit that into a window, or do a fullscreen EGL app that controls the display. But that should be entirely optional and only used where needed. The BSDs are server OSes, so I think this is acceptable to favor stability over performance.
The best part would be that this could run on (top of, if necessary) any system. Windows, OS X, DOS, Haiku, Minix, you name it. If you could write pixels to a screen, you could run the display server.
How does that work? For long I've lamented the fact that VESA/VBE caps at some not-particularly-high 4:3 resolution. Also, the lack of DMA & vsync...
Having a simple way to drive modern displays at a reasonable speed would be nice. The complexity of the accelerated graphics stack is depressing... and I don't really want or need it. Hell, I didn't need it ten or twenty years ago, so why now.
> For long I've lamented the fact that VESA/VBE caps at some not-particularly-high 4:3 resolution.
The official VESA modes are all 4:3 (and 5:4 for 1280x1024). But most video cards have non-standard modes. These modes are usually just more 4:3 variants or really low-res 16:9 (1366x768, gee thanks!)
By some miracle, my PNY GTX 760 OC 2GB card had a 2560x1600x16bpp custom mode. No 32bpp mode, but in this case I'll take half the bandwidth requirements (twice the speed) for the extra color anyway.
The way this works behind the scenes is that the VESA VBE is part of the VBIOS image. This BIOS contains 16-bit instructions that poke the video card into video modes based on a table. Nowadays, 64-bit OSes just emulate the VBIOS instructions to set the video mode. Yet unfortunately none of them are proactive enough to let you specify your own modified VBIOS file to use in substitute (like you can with EDID)
Some people have had luck hacking the VBIOS and adding in their monitor modes, and flashing it back to the card. However, gaining that write access can be difficult, and often times these files are now compressed and/or encrypted.
> Having a simple way to drive modern displays at a reasonable speed would be nice.
God yes. I am so sick of the ridiculous complexity of everything these days. I miss the ease of working with serial, PS2, gamepad ports, SB16 cards, and VESA. Nowadays you need a team of 40 engineers to support the 10 USB variants (UHCI, EHCI, OHCI, XHCI, etc) just to poll a damned keyboard.
This stuff really cripples the chances for any hobbyists to ever come up with a new, breakaway, successful OS. I doubt Linux would ever take off if it had to start in today's SecureBoot / long-mode / SATA / RAID / USB3 / Wifi / binary-blob-graphics world.
A simple frame buffer with page flipping or Vsync really is enough to do pretty much anything 2D-based you'd want to. And at the rate CPUs are gaining cores, I suspect we could even pull of some really rudimentary software 3D rendering, too (not MESA, that tries too hard to emulate and is ungodly slow.)
> And at the rate CPUs are gaining cores, I suspect we could even pull of some really rudimentary software 3D rendering
Indeed we can; we could long ago. I think of that when I play games like Doom and Quake (which is often). They look awesome, they were software rendered. And to think that the effort on software renderers was more or less abandoned around when Unreal came out in 1998 -- that was pretty much the last FPS engine to have an advanced software mode (which looked amazing), and it worked for me back then since I didn't have a 3D accelerator. Where would we be at if that effort had continued for the next 16 years?
I can't speak on GL or AMD drivers but both Intel and Nvidia (graphics hardware) work great on FreeBSD and have native drivers. I don't run X on any of the other BSDs so I can't comment on those either (although I believe Nvidia is also well-supported on OpenBSD).
There is no nvidia binary driver, and no nouveau port. You only have the ancient nv driver, which is just a frame buffer. And an absolutely horrible one at that. It is at least 20x slower than pure VESA. I don't know how that's possible, but it's too ridiculous to make up. If I drag a window across the screen, it takes about five seconds for the system to catch up on the redraws.
OpenBSD also lacks the memcontrol utility, so you can't tweak MTRR (write-combine caching) for VESA (which increased my video bandwidth rate from 200MiB/s to 1,200MiB/s), unless you write your own C program to use the kernel API for doing that.
Even then, the real problem is that finding a video card that has your native widescreen VESA resolution is like winning the lottery. I managed to find a 2560x1600 card for my primary system, but I've yet to ever find a card that has a 1920x1080 VESA mode for my secondary PC.
I would phrase it the other way around, Nvidia support for OpenBSD is very, very sad.
The OpenBSD project refuses to include binary "blobs," and Nvidia just simply don't provide open-source drivers for their cards. There's been some indication recently they may be changing their stance on that, so we can hope.
All that said, the BSDs, and OpenBSD in particular do not have ultimate video performance as a goal. While OpenBSD is certainly usable as a desktop or laptop OS (I use it) you are best to stick with Intel or AMD graphics adapters. FreeBSD might arguably be a "better" desktop OS but I prefer OpenBSD's focus on consistency, security, stability, and documentation.
> I would phrase it the other way around, Nvidia support for OpenBSD is very, very sad.
Sure, in the case of the nvidia binary-blob driver, that's very fair. It's the same net effect to the end user, though. nvidia+OpenBSD is an instant failure.
You can also blame nouveau relying on Linux KMS functionality, but I would like to see OpenBSD try a bit harder to run nouveau, given how ridiculously poor nv is. Really, nv is actually worse than nothing. I'd sooner run in VGA 640x480x16-color mode. It's that bad.
> All that said, the BSDs, and OpenBSD in particular do not have ultimate video performance as a goal.
I don't want ultimate performance to run Crysis (whatever # they are up to now) or Star Citizen or whatever is popular amongst gamers today.
I want a frame buffer that will let me drag a window across the screen without deadlocking my system for 5-10 seconds. I appreciate their pain with these damned video card manufacturers, but I don't think my request is unreasonable, either.
> you are best to stick with Intel or AMD graphics adapters
AMD drivers are absolute shit on every other OS, so I don't expect them to be reliable under OpenBSD. And unfortunately, Intel won't sell PCIe cards. I really, really, really wish they would.
After writing my previous comment I debated installing OpenBSD on a spare laptop I have here (that has an Nvidia card in it) but you saved me the trouble and disappointment. Thanks.
OpenBSD was doing (surprising to me) a tremendous amount of work w/ accelerated gfx over the past few years.
My personal NetBSD experience has been that (on a laptop) my ATI Radeon was supported (back in the day) and currently, we've been experiencing "near misses" with accelerated gfx w/ Intel integrated (ie: i915) GPUs. NetBSD -current (7.99.1) is currently (on my Lenovo Thinkpad t420) unstably supporting accelerated graphics. I'm hoping this effort stabilizes and sticks around.
There are proprietary and open source drivers for nvidia, ati, and intel. I've used the proprietary nvidia drivers in the past with freebsd, currently use the open source ones with freebsd. For nvidia, the quality is on par with linux, some niggling things every now and then and scares about upgrading, but overall good with some tuning/tweaking. I can't do HD video though currently, but I don't really care. I use fvwm2 for my WM.
Hopefully. I don't get the feeling there's a strong desire in the Wayland camp to support non-Linux. I mean, I don't think they're actively hostile like the systemd team, but at the same time, they don't seem as committed to cross-platform support as the XFree86/Xorg teams were.
I am not an expert here, and I would be happy to be wrong. But I'd rather be proactive in planning for an eventuality where Linux software becomes just too difficult to port to the BSDs anymore.
>It's always intriguing to me how critical the BSDs and BSD programmers are to the Linux ecosystem, even though their user base is fairly small.
Edit: "critical to". My mistake.
Why? Do you think popularity reflects quality?
It is immediately evident to me that the popular BSDs (or at least FreeBSD and OpenBSD) are of vastly superior quality (both in terms of design and code) to Linux. I understand why people use Linux instead (it's generally for the same reasons corporate environments use Windows: legacy, large userbase, and familiarity), but it is definitely the case that by all my metrics, the BSD programmers have every right to be critical.
I think you might have misunderstood the GP (or I misunderstood your reply). The GP comment was saying that the BSD programmers are critical _to_ the linux ecosystem, not that they are critical _of_ the linux ecosystem.
Quite a bit of critical software comes from BSD, such as OpenSSH. During the era of OpenSSL vulnerabilities, a lot of people/companies realized how much they depend on software like that and how little (nothing) they pay for it and began to... actually pay for it, or at least contribute developer time to it.
"Last week, I donated one million dollars to the FreeBSD Foundation, which supports the open source operating system that has helped millions of programmers pursue their passions and bring their ideas to life.
I’m actually one of those people. I started using FreeBSD in the late 90s, when I didn’t have much money and was living in government housing. In a way, FreeBSD helped lift me out of poverty – one of the main reasons I got a job at Yahoo! is because they were using FreeBSD, and it was my operating system of choice. Years later, when Brian and I set out to build WhatsApp, we used FreeBSD to keep our servers running. We still do.
I’m announcing this donation to shine a light on the good work being done by the FreeBSD Foundation, with the hope that others will also help move this project forward. We’ll all benefit if FreeBSD can continue to give people the same opportunity it gave me – if it can lift more immigrant kids out of poverty, and help more startups build something successful, and even transformative."
A great example to others who have success because of open source. It should be a common thing that once you find the coveted golden parachute in the sprawling game of life, you give a percentage back to OSS as a tradition to others on the adventure.
Isn't the expression "golden parachute" typically reserved for excessive payouts when an employee gets fired/made redundant/laid off/etc? As far as I know Jan Koum still works as CEO for WhatsApp, so this isn't from a "golden parachute" payment.
Yes it is but it is also used for acquisitions where the money is so big that the person suddenly never has to worry about anything ever again related to money, a golden parachute. Typically though most acquisitions founders/co-founders will leave after their couple years of vesting as with new money they have more opportunities, doesn't always happen but usually. The recent Facebook buys of Oculus and WhatsApp may be different and more like Amazon's Zappos and Twitch acquisitions.
Here I was using it more as a game item that you get so much money from a successful product that you don't really have to worry about anything again. I usually hear it with technology acquisitions and founders leaving later after the money than with termination as there are only golden parachutes for failure in the financial industry.
I should have said funding or freedom, as the funding from WhatsApp sale now gives Jan Koum the freedom to work on many ideas and support important projects like BSD.
(However, what can they really do with that money? Operating systems aren't the sexiest of free software projects to work on, so I would be tempted to think that manpower is FreeBSDs biggest limiter.)
The Foundation's financials are open, so you can see how the money has been used in the past. The short version is that our 2014 budget was on track to spend about half that amount (i.e., approaching half a million) on funded project development, through permanent staff and development contracts. The other portion goes into supporting conferences, hardware purchases for the FreeBSD cluster, and staff time to support the FreeBSD project.
Keep in mind that this donation won't be spent in one year; we'll be able to find qualified uses for this money.
> funded project development, through permanent staff and development contracts
Somewhat of an aside, how do you guys manage the relationship between volunteers and paid work? Mixing the two has a historically poor track record in the open source community (eg. Dunc Tank, etc. etc.)
emaste may be able to give an "official foundation answer" for this question, but from what I've seen the Foundation employees do the work which everybody agrees is important but nobody wants to do -- like haswell video acceleration and release engineering.
You can find their last two budget reports on the foundation's website. This looks like a huge cash injection and if they put it aside it will pretty much double their assets.
I don't know their hosting costs or if they have any need for more. But that money (or the investment returns) could be well spent on marketing for the project.
To date the FreeBSD Project has benefited from the generosity of a number of users of FreeBSD who donate data center space and connectivity. Some examples are Yahoo!, NYI, ISC, and Sentex.
The point about the need for and value of marketing is well taken; Anne Dickison joined the Foundation as Marketing Director earlier this year.
Companies like Facebook, Google should give 100$ to each employee to donate, will be petty cash for them, but will reach many project the company is really benefiting from.
Looks like the mantle has passed from Yahoo! being FreeBSD's biggest advocate and sponsor (not in direct cash donations, but employing their maintainers) to WhatsApp. Nice to see the Y! alumni are keeping the tradition alive.
It's good to see any large company remembering the important software their company is built on. I don't know if companies like Yahoo or Google could have ever been started without free and open source software.
>> "This marks the largest single donation to the Foundation since its inception almost 15 years ago"
Al though it is awesome that they have received this donation but it is such a shame it took 15 years to get a $1M donation for such a great work they are doing.. and on the other side silly small apps get millions of funding which go in total waste and those apps might be using FreeBSD for their production servers or development
Netflix does contribute, in addition to money paid to the foundation, they also have quite a few developers working on FreeBSD almost full time. You can see lots of commits with 'Sponsored by: Netflix'. nginx and Yandex also do a lot of commits.
There are lots of comments on how sad it is that nobody donates to the FreeBSD foundation.
Part of the blame lies with the foundation itself - they don't know how to ask! Fundraising is a full time, yet unsexy job...and very few people do it well. The key thing is to be top of mind by asking frequently and nicely.
Personally, when the time comes, I default towards Wikipedia because Jimmy Wales does a great job of asking. This is a problem not just with FreeBSD, but many others like OpenSSL,etc. If nothing else, I wish these guys just run a yearly kickstarter just for outreach.
What will they do with that huge amount of much money?
Personally: I hope they make an UI to FreeBSD on par with OS X, because it already seems to be so stable that no change except security fixes is neccessary in my naïve eyes ☺
"With this donation, and the generosity of all those who have donated this year, we have shattered our 2014, million dollar fundraising goal! But this does not mean we can stop our fundraising efforts. Only by increasing the size and diversity of our donor pool can we ensure a stable and consistent funding stream to support the FreeBSD project."
Is this very, very dry humor?
edit:
So nobody thinks that there's anything funny about reaching a million dollar fundraising goal, but noting that they might want to expand the size and diversity of the donor pool in future after getting a million dollar donation from a single person.
Of course they reached the goal, and of course they might want to raise the size of the donor pool it took to reach the goal [one person] and the diversity [the donors that put them over the top all have the same Social Security number.]
Feel free to interpret the comment as "why donate to them, they just got a million dollars" or whatever bizarre impression people are getting, but if I meant that, I would have just said that.
The downvotes suggest that it's not obvious to other people.
FreeBSD get a huge donation. They let people know about this - it's a great piece of publicity. But that carries a risk. Some people will think that FreeBSD doesn't need any more donations because of this single huge donation, so FreeBSD needs to talk about the importance of regular donations from a broad group of supporters, not just huge donations from a tiny group or purely corporate donations.
I fail to see how any of that could possibly be part of some humorous comment.
>>"This marks the largest single donation to the Foundation since its inception almost 15 years ago"
First, I'm extremely excited to see this announcement. FreeBSD is fantastic and extremely underrated.
Secondly though, isn't it sad to hear that in FreeBSD existence - this is the largest donation ever ... given that Yahoo use to run it's entire company on it, OS X is based on it, Juniper is based on it, Netflix deploys on it, NetApp, EMC, etc.
Edit: typo