Hacker News new | past | comments | ask | show | jobs | submit login

> I get angry about not being able to do anything about anything. And this is my way of trying to do something about it. It's the best I can do.

This attitude is gold, and it's what changes the whole world.

What you said about the misery of "news" resonates with me. In psyops we call it "sapping". Propaganda designed to demoralise, dispirit and corrode resistance used to come from our enemies. The classic example was Lord Haw-Haw [0]. Today our own mainstream news channels and technology giants seem determined to keep the population in perpetual hopeless anxiety.

As you do, I find the discourse around tech to be a pit of dismissiveness, avoidance, denial, resignation, and learned-helplessness. I've been doing a lot of interviewing people lately, and careful sentiment analysis. The results are horrifying. The very word "tech" is becoming synonymous with "Resistance is futile".

To stand up and do something, anything, not because you hope for success, but as an example, and for your own sanity, is the most positive and human of responses.

[0] https://en.wikipedia.org/wiki/Lord_Haw-Haw




> As you do, I find the discourse around tech to be a pit of dismissiveness, avoidance, denial, resignation, and learned-helplessness

I have a whole tirade on this, but I completely agree. It seemed while going through college that the whole prescriptivism and general attitudes in tech are built in such a way so as to discourage certain mindsets which the industry DESPERATELY needs, and my hypothesis is that not having representation of those mindsets across the board has contributed to a much of the degradation of UX over time (along with collective laziness of course; low level languages being more work to use, much as I enjoy high level conveniences myself).


An unfortunately large subset of too-comfortable tech workers have decreed the right way is to: never reinvent the wheel, always import, and avoid 'the hard stuff'.

The sad bit? They're well compensated for this learned inability, so arguably they made the truly smart choice here.

To the blessed few who reject this apathy and continue building new innovations? I salute you o7


An unfortunately large subset of tech workers have decreed the right way is to always reinvent the wheel, never import, and avoid 'reading documentation'. The worst bit? They're very well compensated for it, so arguably they made the true smart choice here. To the blessed few who reject NIH syndrome and use existing solutions? I salute you!


Both extremes are, of course, faulty.


You got me this time, fragmede. :)


I am guilty of both, naturally :)


> An unfortunately large subset of too-comfortable tech workers have decreed the right way is to: never reinvent the wheel, always import, and avoid 'the hard stuff'.

But these are obvious lessons, don't you think?

If your goal is to launch a product or deliver a feature, why on earth are you going to waste time, say, writing a message broker from scratch or an improved Redis clone or a fork of nginx that supports some feature? Is that where your value-added lies or what will get you to launch faster? No. That's stuff you can easily live without.


>> As you do, I find the discourse around tech to be a pit of dismissiveness, avoidance, denial, resignation, and learned-helplessness.

Do you think this is why people are abandoning the GPL license in favor of MIT/BSD? Something about the fight the GPL aims to win being a hopeless fantasy? In the face of the sentiment you and OP express, I'd think GPL usage would be widespread.


I think a lot of distaste towards GPL comes from devs with corporate day jobs who feel frustrated that anything GPL licensed is functionally off-limits at work because there’s no way legal would approve of using it, and certainly would not approve of open sourcing whatever project is built with the GPL thing. I can see where such an individual might think to themselves, “I don’t want to put other devs in my position in the same pickle, so I’m licensing my thing as MIT/BSD”.


Absolutely. I'm personally a big fan of the GPL but I've felt that way before as well. When there's a great library that I want to use but it's GPL and the program I'm writing is IP, the request/proposal is dead on arrival. From that dev's perspective there's not much difference between an extant but GPLed library and a non-existent library.

That said, I do wish people would be a little more nuanced about it. IMHO (generally speaking) make libraries permissive, make applications GPL


Right, corporate lawyers are ideological activists trying to kill GPL. But the campaign to denigrate the ideological activists on the other side is much more successful.


> Right, corporate lawyers are ideological activists trying to kill GPL.

This is a pretty cynical "assume the worst" outlook, and it badly violates Occam's Razor. I think a much more likely reason that corporate lawyers disapprove of the GPL is that one of their main jobs (in some cases their entire job) is to protect the company's IP, and the GPL is a huge threat to IP. Any lawyer who didn't advise avoiding the GPL would be negligent. I personally love the GPL and encourage its use whenever possible, but I avoid it in decisions for my employers and customers because of the risks. I think generally speaking the risks are not nearly as serious as most people I think, but they do exist (otherwise the copyleft philosophy of the GPL would be pointless!)


I've seen too many cases, recent example comes to mind is apple switching from bash to zsh, that are done not for technical or even business reason but ideological.


As a developer my problem with the GPL is that it's less free than other licenses. It's an interesting legal hack, but it can only succeed in its goals by boiling the ocean. I just want to write things, and sometimes making money involves not publishing all of your source code. Having to choose between options and idealism limits the popularity of GPL projects.


Isn't that kind of the point?

The purpose of GPL and Free Software (which it has actually had resounding success in) is to develop a free commons which will stay free and not be exploited.

It's not for you to exploit to make a buck, and if that excludes your project, that's fine.

There are lots of things I would never consider free-licensing, but I think people badly miss the point of free software because they are stuck thinking only in terms of their own needs and personal benefit.

Again, if you don't want to use or contribute to free software, that is perfectly reasonable. But just bear in mind that the Linux kernel and GCC are incredibly valuable tools which are firmly in the commons and will remain free, and which you have benefited enormously from the use and free availability of.


  It's not for you to exploit to make a buck
Of course it is... That’s what Google does, that’s what all companies who are large enough to know how to work around the GPL do. Every company who uses it on their own servers without telling you, or even compiles and distributes it hoping that no one notices, does. And when they do, they sometimes contribute resources back to the project, which helps it to thrive.

The GPL is very ideological, and there’s nothing wrong with that but you can see the cost of that right here: where someone pointing out there is a hidden cost is shamed for doing so. Given the chance of contributing code or community to two similar projects, I prefer the one that’s more about building than it is about contracts.


I'm simply explaining the point of GPL. Being able to work around the point doesn't mean it's not the point.

Do you really think it's fine and good for Google to take work explicitly intended by its authors to preserve free computing and work around the licensing to make money without preserving the intent and purpose of its license?

Shaming would be much stronger. I even pointed out that participating in it is totally elective and I personally would not in many cases.

Framing it in terms of your own cost/benefit is missing the point, though, and there is a meaningful and valuable purpose to it outside of maximizing your personal benefit in the moment of choosing a particular library.


The GPL is not required for such a commons to flourish. Most Rust projects are published under a permissive license, and that scene is flourishing just fine. I think that open source software as a whole, not the GPL specifically, is what has enabled the flourishing you mention. It seems to me that in the counterfactual world where Linus chose to use the BSD license for his kernel, Linux would thrive just as much as it does today.


The reason we have custom roms on android phones, is because of Linux's copyleft license: Phone vendors are required to publish their kernel modifications shipped with their devices. This already reduces e-waste by lowering the purchases of new phones, when old ones are perfectly functional. Thus, copyleft helped the environment


To me this is also an example of how the GPL fails. The requirement for phone vendors to publish their Linux source trees does in part enable custom ROMs, but vendors still have found ways around the license in the form of proprietary kernel modules. This gives these phones a shelf life: after the latest OS version requires a kernel newer than the one the proprietary modules are shipped with, and efforts to write shims (which are always error-prone and hacky) start to fail, the phone can't even get updated versions of the custom ROM.


It's not GPL's fault, but greedy vendors which don't want to open source their drivers.


I don’t like hypothetical counterfactuals but of course it is your choice to use them. It is hard to meaningfully compare recent programs, rust or otherwise, with established behemoths like Linux, gcc, Emacs, etc, that did the heavy lifting and allowed the playing field to remain even over multiple decades. If gcc did not exist it is not clear at all how a hypothetical computerized world would develop.


The point of copyleft is to protect the continued existence and welfare of such a commons. I'm not even necessarily saying it is the only way to achieve a healthy free commons, I'm simply explaining what GPL is for.

That said, do you think it is in fact protecting the user from exploitation, or promoting the health of a free commons, to use "free" software in nonfree products which do not provide their source code to the user nor guarantee the user's ability to study, extend, and modify the software that they are using?

I think the argument for Free Software is at the very least strong and good. There can be other approaches to solving the problems FSF wants to solve, too, but it is a totally valid and non-debatably historically useful position at the very least.


>> As a developer my problem with the GPL is that it's less free than other licenses.

The freedom to deny other people the freedom you are enjoying is not compatible with the notion of freedom. It's hypocrisy.

That's not to say there is no place for MIT/BSD licenses, but it is not with general application software or libraries used to build such.


The fundamental problem I have with the GPL, and I think is echoed elsewhere here, is that the GPL is not about my code. It is trying to force my will on other people’s code. It is inherently less free because it is trying to exert dominance over things I do not own and have never been involved in. In theory, a 10 liner GPL Python script could infect an org with 20 millions lines of closed source code and try to dictate the licensing of those 20 million lines.

To me that is just wrong.


Unfortunately you've fallen victim to years of anti-GPL propaganda and FUD. A 10-liner GPL Python script is not going to "infect" an org with 20 million lines of closed source code. Suggesting that it's possible, even "in theory", is absurd.

Yes, you need to be careful when you integrate GPL and LGPL code into your proprietary code base, and in some cases you just cannot do it. But so what? You are not entitled to use of that code. If you can't use it because of its license, then that's life: move on and find something else that you can use, or write it yourself.

And you also seem to think that if you screw up, and do depend on a GPL library (for example) in a proprietary code base, then you're required to give away the source for your 20 million proprietary lines of code. But that's not the case. There are many different remedies possible. One (common) remedy might be to cease distribution of the infringing code, remove the GPL component, replace it with something else, and re-release.

I think there are very few copyright owners who release their code under the GPL who would immediately push for the remedy to be your company releasing all of their proprietary code under the GPL. At least certainly not at first contact, if the company is capable of acknowledging their mistake and working in good faith to correct it. And even if a copyright owner did decide to push for this, it is ultimately up to a court to decide, and it seems vanishingly unlikely that a court would order that remedy, especially if the company was offering less-extreme, good-faith options.

> It is trying to force my will on other people’s code

I just wanted to call this out specifically, because, again: absurd. Please look at it from the default state: you do not get to use someone else's code at all. That's what copyright law says, in the absence of another agreement. Even if you have the source code to my library (or whatever), you cannot use it in your product unless I have given you a license to do so.

If you are considering using someone else's code in your project, one of the first things you should do is look at the license. If you see GPL, and don't want to abide by the terms of that license, you move on and find something else. That code is not trying to "force its will" on you. You are free to use it and follow its licensing terms, or move on. You are no poorer because that code is there, as you are not entitled to use it without a license anyway.


  Unfortunately you've fallen victim to years of anti-GPL propaganda and FUD. A 10-liner GPL Python script is not going to "infect" an org with 20 million lines of closed source code. Suggesting that it's possible, even "in theory", is absurd.
Unfortunately, intention is not how law works. The GPL is a legal contract, and how much of a company's IP will come under it will be determined by a judge after lots of expensive litigation. If a suit is filed they will pick apart every line in the license, subpoena every change that was made in every version that someone could claim "was distributed" (available at a public URL?), every email that was tangentially sent, every bug that was filed, every document written, etc, just to determine the extent of what is covered. If that sounds excessive and you haven't heard of it happening, that's because no one wants to go through this and would rather settle than spending the money and effort on defending themselves. To understand the potential, look at https://en.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_....

The GPL purposely weaponizes source code in a way that other open source licenses do not, and personally I would rather hope that people decide on their own to release their changes than invite the lawyers into my code. Using code licensed this way is okay for projects that are already 100% GPL or aren't worth owning.


"Yes, you need to be careful when you integrate GPL and LGPL code into your proprietary code base, and in some cases you just cannot do it. But so what? You are not entitled to use of that code. If you can't use it because of its license, then that's life: move on and find something else that you can use, or write it yourself."

Yeah, apparently people moved on and the GPL is loosing significance.


Is it, though? I really don't think it has. There's still plenty of GPL-licensed software out there; most of the software I run on my laptop is still GPL, for example (the main notable exception being Firefox).

I think perhaps there's just a lot more open source out there these days than there was 10 years ago. A good amount of it was started by or sponsored by corporations, and sadly those types of entities are less likely to use the GPL.

But that's fine, no skin off anyone else's back.


Ok, I also have no hard data at hand, but in my impression the vast majority of projects even started by individuals today do not use the GPL, but rather MIT or alike. Me too, because I do not like the concept of copyleft. I like the intention behind it, a world with open source as standard - but I just think the way towards this, is by convincing people step by step and proofing that they can also make money with open source and not trying to force them to open source.


IANAL but I don't think your example is accurate. Unless you expanded that 20 line python script into your 20 million line application, the GPL is not going to cross over and infect your other code. It would mean that if you are distributing that python script to users then you have to include the source for it (not usually a problem with python, but it is for other languages).


From the GPL 2.0 license:

“You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License”.

That is pretty clear. If you distribute software that contains a GPL component, the whole lot is considered GPL. Whether the GPL is 20 lines or a million is irrelevant.

This is why the GPL and similar licenses are called viral. They infect other people’s code and try to impose license terms on it.

This is also why licenses like LGPL were created, to try to be a little more reasonable. But that seems to have failed almost completely.


The GPL started when RMS wanted to fix his printer and Xerox said "No."


So are printer drivers GPL licensed these days or did the GPL fail?


Speaking as a GPL/"Free" software partisan, we failed. Although I don't like it, I think it's pretty clear. Most people have no idea what the GPL is, even most people who have heard of it don't seem to understand what it was trying to accomplish.

The farmers fighting for the "right to repair" their own tractors are the front of the battle now.


> I just want to write things, and sometimes making money involves not publishing all of your source code.

I've made lots of money and I publish every piece of code I've ever written to do it.

What you are describing must have been written by someone who does not believe in software freedoms.

Software freedom is an ideology, not a license. If you license part of your software as free software but not other parts of your software, you do not believe in software freedoms for the users of that software.

It's sort of like a factory that only uses slave labor for one step of production. Does that factory operator believe in human rights if their line is 90% respectful of the dignity of mankind?


  What you are describing must have been written by someone who does not believe in software freedoms.
That seems to be a common sentiment, that preferring non-GPL projects is about exploitation, and I don’t think it makes any sense. The GPL is a contact that takes away some rights of the people using it, and that makes everyone freer? I understand the goal of wanting users to have rights that they would not otherwise have, but binding every developer in the hope of eventually binding multinational organizations seems like an awfully high price to pay.

  I've made lots of money and I publish every piece of code I've ever written to do it.
If only this were the common case. I once asked Stallman if he had any ideas on how we might make that more common, and all he said was it wasn’t his problem. I agree that it’s not his problem, but the prevailing solution seems to be to avoid the GPL. I think that many people would love to hear your thoughts on it.


> The GPL is a contact that takes away some rights of the people using it, and that makes everyone freer?

It is not that simple. The GPL "takes away" some rights of the distributor of the software (their ability to restrict redistribution for example), but grants rights to the end user (the ability to modify and redistribute) of the software.

It's all perspective. As the developer the GPL may feel limiting, but as a user it is liberating.


I don't think you've really clarified anything. It is a trade: ensuring greater freedoms for the end user by adding restrictions -- by definition "not freedom" -- to developers/distributors.

I'm not saying that's a bad trade off to make, but it is absolutely a fact that the GPL takes away some rights. Or, since it is a copyright license, where the default in copyright is you get no rights, you might instead say it does not give all possible rights. I think it's important to recognize that sometimes "the greater good" comes at a price.


> it is absolutely a fact that the GPL takes away some rights.

Expressing it like you did is misleading. One man's freedom is another man's restriction. It's two sides of the same coin.

It is absolutely a fact that laws against murder take away some rights. Suddenly you are not allowed to kill other people. You do not have that "freedom" anymore. Flipside is that others now have the freedom to walk around without fearing that they can lawfully be killed by others. You pay for granting one "new" freedom by removing another, opposing freedom.

The GPL grants new rights for a party by restricting rights of another party. Just like all licenses do.


> I've made lots of money and I publish every piece of code I've ever written to do it.

I'm curious to know what your personal method is. Consulting, paid support, proprietary dual-licensing maybe? There are indeed many ways to make money and still publish code as FOSS; the tricky thing, as always, is to work out which way is the right one for you.


For most people, a pile of software is not nearly enough. They need help of every sort to use it effectively.


But you allowing yourself to not provide me with the code makes me less free, so you are the problematic one in this situation.

GPL's freedom is not about you as a dev, it's about me as a user.


Yeah, it strikes me a bit like, this will be hyperbole, complaining about forbidding slavery reduces freedom because you are not allowed to have slaves.


The difference is that nobody is harmed in the scenario where someone makes a closed source product with permissively licensed code. The original project is still there and still just as usable. Everyone still has the same freedoms as they did previously.


> The difference is that nobody is harmed in the scenario where someone makes a closed source product with permissively licensed code.

This is not true. What is harmed (and has effectively been destroyed) is the market to make money from selling libraries.

Many might be too young to remember, but it used to be that one could make a nice living selling libraries to companies.

In 1990 (just to pick a year) when BigCo Inc was developing a software project and needed library foo, they generally had two choices: build it internally or purchase one for money from a third party. This meant there was a nice market for small software houses to sell all kinds of libraries to BigCo.

Imagine for a moment a world where all open source is GPL. BigCo wouldn't touch the GPL libraries so they still either build or buy and we (developers) can continue to make money from our work.

Unfortunately it is no longer possible to make money from libraries because anything BigCo wants can be had for free in a BSD/MIT license so they get to take all the volunteer work, profit from it and give nothing back.


Yes, if you jeep your code closes then society is losing because everyone relies on you for everything. It's not about being usable, it's about being in control.


If that "someone" is backed by a large corporation whose goal is to extinguish the utility of the existing project, they might hire away some of the contributors and add features at a pace that the original project just can't keep up with.

While that's certainly capitalism at its finest, I don't think that's a good outcome for the user base as a whole, or of the community.


> As a developer my problem with the GPL is that it's less free than other licenses.

This is true for you, now. But that's not to say it does not increase freedom over time, over a couple of generations of software enhancements.


> I just want to write things, and sometimes making money involves not publishing all of your source code.

This is why I do both. I copyleft some projects. Others, I don't. It all depends on the balance of needs.

Although, for me, the issue isn't releasing source code at all. That's orthogonal to the issue of whether or not to use an open source license. I have yet to release software, open source or otherwise, where I haven't made the source available. For my non-OSS projects, that source is only available to people who have purchased the software, though.


I have the same problem with GPL, specifically in that as far as I can tell it doesn't give one the freedom of making a living out of making software as a product. I'd love to be proven wrong and find out that there are practical, viable ways to develop new GPL software and be paid strictly for doing this. However, what I tend to hear is that people don’t get paid for this, but rather for customizing that software (once it’s made) for individual clients, or setting up that software on a server and charging for access to that service. The few that do get paid directly for writing new GPL software seem to be funded by a patron who doesn't care about the software's direct commercial viability, either out of principle (e.g. the FSF and GNU) or because the software is a loss leader that bolsters the patron's primary business (e.g. Google and the Android codebase.)

To put it another way, as a software developer I would personally like to make a living analogously to how a successful book’s author makes a living. Such an author can make a living primarily or even exclusively from writing each book, not from giving away the book for free and making custom versions of that book for individual readers, or by offering and charging for live, public readings of the book, or by asking for voluntary donations from those that download the book, or by selling merchandise related to the book.

I personally want to make a living making software products, not services. GPL doesn’t seem to offer me a way to do this.


> I personally want to make a living making software products, not services. GPL doesn’t seem to offer me a way to do this.

It's exactly the opposite!

If you want to make a living making software, you make it GPL. Any corporation that wants it will need to pay you for a commercially licensed version they can use (it's your code, you can license it in as many ways as you want). The hobbyists can use the free GPL version and the companies can pay you for your work. Win-win.

If you make your software BSD/MIT licenses you can't make any money, every corporation that wants it just takes it for free so you can't make a living out of it. You could try selling support but if your library is great and easy to use, not much money in that.

Unfortunately for you (and me) even if you make a really awesome library and license it as described above, you still can't make a living because there are other similar libraries with MIT/BSD license and the corporations will use those (even if they are inferior to yours) to avoid paying you. Thus, the market for selling software like this has been eliminated and we're stuck selling subscription services.


Dual licensing becomes very difficult once there is more than one person writing code, and that includes submitting bug fixes. Once this happens you need to track down every contributor and have them sign licensing terms. It's long, difficult, expensive, and you might prefer to rewrite the whole thing again. https://en.wikipedia.org/wiki/Contributor_License_Agreement


You might be surprised. Unless you are dealing with clients that have been burned by software licensing, or have attorneys knowledgeable in software patent/licensing law, you could charge clients for building software and release it as GPL. You then also provide the setup of that software, which you can include in the total cost. There is lots of GPL software out there, but not many people that understand how to setup or support that software. It is very possible to make a good living off the setup and support of GPL and other open source software.

If you don't feel right for open sourcing software you wrote for someone else, you could always offer your client a discount to let you open source the software. There are quite a few companies that now make their money supporting open source software, even when they aren't writing it themselves. I've done this myself, and I think it's a lucrative business model that still gives everyone involved freedom.


> I personally want to make a living making software products, not services. GPL doesn’t seem to offer me a way to do this.

These two things are pretty unrelated.

For Android apps, a common model to have a paid version in the play store and still publish the source code on github with GPL. Here the GPL actively protects you against somebody coming, doing some minor modifications and then pushing their own paid-for version to the app store while not publishing the source code (which they could easily do with other licenses).


That’s the thing: the GPL isn’t there for you, the developer. The GPL exists to ensure freedoms for the user and it does this by requiring responsibilities of the developer.

This creates an interesting and important second-order effect that allows it to accomplish its goals without needing to boil the ocean by ensuring every user has the same ability to develop the same software, blurring and reducing the line between user and developer, creator and consumer. Practical considerations often prevent the expression of this effect but the opportunity doesn’t even exist in most other situations, particularly when you get to web services.

I didn’t reply to the important issue of money, the fundamental developer problem, because I’ve never been in a situation to sell my own code: my own projects have zero to do with my rent work.


I think opinions around software licenses are limited to us hackers, and the actively code-publishing subset of us, moreover.

From my POV the GPL certainly seems alive and well, and the ideology of the Free Software movement remains sound and strong.

What I'm alluding to is the wider public. In <podcast-i-dare-not-mention> we literally walked around town interviewing young and old. Soon as I can, I'll share the results in a HN submission.


> Soon as I can, I'll share the results in a HN submission.

Please do!


Copyleft was a good idea, but its real world utility is a lot less than anyone would like.

I once inherited a GPL project, but I couldn't muster any community interest in working with it. Plugin authors would have been compelled to use GPL and no one seemed interested. We had to burn the project to the ground and start over with a new MIT licensed project. Now there's a flourishing community of plugin authors working with it.

GPL being a viral license is the core problem, I think. I get the intent behind that clause, but developers tend to not enjoy being mandated to like that.

I don't think GPL is bad, but it's not exactly pleasant either.


Why would plugins have to also be GPL? The whole point of plugins is (typically) to allow distribution separately. IANAL but it would seem to me that unless you distribute your "plugin" as a statically linked binary that includes the main app, then the GPL would be irrelevant. If I'm wrong I'd love to be informed


I don't know if you are wrong or right. But to be sure, I just stay away from copyleft as it seems safer ... see the point?

Most people want to write software, not worry about licences. MIT seems easier, so people use it. For commercial as well as pure hobby projects.


According to the GPL FAQ, there aren't different license requirements for static linking vs dynamic linking. (The reason you can link glibc, stdc++, etc., which are licensed under the GPL, is because they carve out a "GCC runtime library exception" for such libraries, allowing one to choose a different license anyway).

The FAQ also says that if "establish intimate communication by sharing complex data structures, or shipping complex data structures back and forth," then the that is essentially the same thing as dynamic linking, and so the GPL applies to your program as well.

Link to the FAQ: https://www.gnu.org/licenses/gpl-faq.en.html

The relevant FAQ questions:

----

> Does the GPL have different requirements for statically vs dynamically linked modules with a covered work? (#GPLStaticVsDynamic)

> No. Linking a GPL covered work statically or dynamically with other modules is making a combined work based on the GPL covered work. Thus, the terms and conditions of the GNU General Public License cover the whole combination.

----

> When is a program and its plug-ins considered a single combined program? (#GPLPlugins)

>It depends on how the main program invokes its plug-ins. If the main program uses fork and exec to invoke plug-ins, and they establish intimate communication by sharing complex data structures, or shipping complex data structures back and forth, that can make them one single combined program. A main program that uses simple fork and exec to invoke plug-ins and does not establish intimate communication between them results in the plug-ins being a separate program.

> If the main program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single combined program, which must be treated as an extension of both the main program and the plug-ins. If the main program dynamically links plug-ins, but the communication between them is limited to invoking the ‘main’ function of the plug-in with some options and waiting for it to return, that is a borderline case.

> Using shared memory to communicate with complex data structures is pretty much equivalent to dynamic linking.

----

> Where can I learn more about the GCC Runtime Library Exception? (#LibGCCException)

> The GCC Runtime Library Exception covers libgcc, libstdc++, libfortran, libgomp, libdecnumber, and other libraries distributed with GCC. The exception is meant to allow people to distribute programs compiled with GCC under terms of their choice, even when parts of these libraries are included in the executable as part of the compilation process. To learn more, please read our FAQ about the GCC Runtime Library Exception (https://www.gnu.org/licenses/gcc-exception-faq.html).


The FAQ is just the FSF's wishful thinking, and not a legal document.

If your program can fork and exec another GPL-ed program, and exchange complex data structures with it, that is neither here nor there.

All that matters is whether or not you are redistributing the program, and if so, whether that is in accordance with its license, which restricts the manners of redistribution.

If you are not shipping that program, but your own GPL-incompatible program needs it (your program cannot be used unless the user has an installation of the GPLed program) then you're likely in infringing waters, because it could be seen as redistribution anyway. Though it you aren't physically redistributing the GPLed program on the same medium, redistribution of that GPLed program, carried out by someone somehow, has to take place for your program to work. It's as if you are redistributing it "by proxy". If the user doesn't have that program, you have to instruct the user on how to obtain it, thereby turning that user into an agent of redistribution, acting on your behalf.

But if you ship another program which is drop-in compatible with that the GPLed one, which allows your main program to run, then in all likelihood the GPL doesn't have a leg to stand on against you.

If you don't redistribute a GPLed program, in any manner, whether directly or "by proxy", you cannot be infringing on its license.

A GPLed program being combined with yours by the user, in their installation, has nothing to do with you, if that combining isn't a condition of your program being able to usefully execute. That is not redistribution but use, which the GPL does not restrict.


I don't think that's the fault of the license, its the fault of the world going in a less free direction.


That doesn't really add up. The core problem of GPL is that it's viral and takes away freedom from downstream developers in favor of upstream freedom.


I don't use the GPL (and never have) because, like another poster said, it is less free. When I put work out there for someone to do what they wish with it, I don't think I should then say "oh unless you do xyz, I don't approve of that". That strikes me as hypocritical, and so I don't do it. I don't harp on anyone who uses the GPL, they gotta do what they think is right. But for me, the GPL was never a good choice for software licensing.

And before anyone says "someone can make a closed fork of your code and then charge for it", I am aware of this. I also don't see the problem. My goals when sharing code are to share my work and help others by doing so. If some company uses my work to profit, I still have accomplished my goals. Moreover, others can still download my original code if they wish and reap the same benefits as the for-profit company did. This is a great outcome. Everyone benefits, nobody is harmed. While this scenario is often used as an argument that permissive licenses are bad, I think it is a very poor argument indeed.


You're only looking at it from the perspective of the developer. The GPL freedoms are for the end user, not the dev.


I choose MIT as my default license, because I don't like it when the license is longer and/or harder to understand than the program itself. Simplicity is underrated in software development; there's so much you can do with less.


To me the biggest problem with GPL is compatibility. The majority of coding effort is commercial and will be for the foreseeable future. If the frameworks are GPL then the commercial interfaces will likely be incompatible with free software. Thankfully they are mostly BSD so commercial software works on free software systems and vice versa.

For user-facing software, GPL is fine, but fewer people actually want to write that.


It’s unfortunate that the message discussing enemies was flagged. Maybe it needed to be said in a better way?

The US government is undeniably often working against the best interests of its citizens.

Corporations, corporate news, and advertisers are also working against our best interests. Im not sure any mindful and reasonable person would refute this.

However I will be charitable in saying that I don’t think they’re making us hopelessly anxious to subjugate us. They’re doing it because it’s profitable


I didn't flag/mod the comment, but I think it errs towards conspiracy theories.

I'm not American, and I understand the American government does evil things sometimes, but it also does a lot of good things for its citizens. It builds roads, keeps the skies clear, funds education, health systems, sues tech giants when they go too far, tries to manage the speculation/money markets, etc. To say "undeniably often working against the best interests of its citizens" is very hyperbolic. Most would probably argue that the government does not do enough, even conservatives (ex: controlling abortion or bathrooms, not that I agree).

The news are also not there to demoralize you, not as a primary objective. Anxiety and negative news do sell ads. I find public radio such as NPR do a wonderful job of balancing point of views, giving the facts, and provide some hope by explaining the underlying issues and possible solutions. Where I live, public radio is the only non-ragebait media that constantly puts pressures on whatever government is in power, and explains various points of views (while admittedly being more centrist editorially, angering both hard-left and hard-right).

I totally agree however with doing whatever it is you are good at, and that's a way to work towards improving the world.


> it also does a lot of good things for its citizens.

> It builds roads

At insane costs and timelines while also lining the pockets of the politically connected

> keeps the skies clear

60% of power generation in the US is fossil fuels, which is horrible compared to any european country

> funds education

Much less so than any country in Europe, and the cost of education is sky-high

> health systems

Which is terrible compared to any European country, while also being the most expensive and some of the least accessible in the world for advanced countries

> sues tech giants when they go too far

Barely. And the revolving door of regulatory capture is a major problem

> tries to manage the speculation/money markets

Again, less so than many countries. Also the US is $33 trillion in debt

The bottom line is: no public healthcare for most, extremely expensive medical costs, extremely expensive education costs, extremely expensive infrastructure costs, horrible use of fossil fuels, and horrific workers' rights.


As I said, most would probably say the government does not do enough. My point was just that the comment could be seen as erring towards conspiracy theories, because it's quite common to hear "the government is against you". Maybe it was not op's intent.


Think about what kind of life our grand- or grand-grandparents had. They went from horse-drawn carriages and muddy streets, to modern cars on roads in their lifetime. Even us older neckbeards went from 8-bit computers to modern PCs on modern networks.

But I feel like this progress has reached the end of the S-curve and there is a feeling of bitterness and disappointment slowly seeping into our collective conscious, whether we realize it or not. The other things about propaganda and modern news I think are more side effects.


I understand the feeling. It could definitely be said for browsers (from Netscape to IE, to Firefox and now what might feel like a giant kludge). It could be said for cars (more expensive to own, complicated to fix, only to be stuck in traffic).

I don't think it's a conspiracy though. Certain things do reach saturation, or end of the S-curve, and sometimes society moves on to something else. I now use my old bike mostly instead of my expensive car, sometimes freezing my ass in winter, and I'm getting old and have kids. I could be bitter, but I'm actually quite happy that I can safely cycle in my city now.

(I know, I'm offtopic, though I do wish the downvote brigade would provide more useful feedback)


Looking at progress can't be attributed to the system of government. It's possible something like communism would have had us even further along.


Perhaps part of the situation is that with all the magnificent technology available, it is hard not for governments to do good for the citizens, even accidentally. After all, even if you were the most corrupt and self-centered individual to hold the title of 'President', you'd still probably order a road be built anyway, and that road will still improve citizens' lives at least on an economical level.


> [0]: https://en.wikipedia.org/wiki/Lord_Haw-Haw

Honestly, my biggest takeaway from this article is that the guy was hanged for treason against a country he wasn’t even a citizen of…


It is terrifying to me how strong the public desire for retribution is. Despite over five years of conflict, the history books show that there will still many who wanted more bloodshed to 'get even'. As what might be considered an even greater tragedy, there were loyal members of the various French resistance groups who were summarily executed for their 'involvement' in Nazi or Vichy institutions, when in fact they were spying for the French against those very institutions.


For me it's a bit like the whole "woke-ism" thing.

The vast majority of people enjoy each other and don't subscribe to the vitriol that comes from both sides. In that manner, the internet is a bit of an echo chamber where if you get all of your impressions of the world from it, you'd think people were constantly at each others throats.

The news is the same way, they report negativity, so it has a real tendency to make you start thinking of the world in such a negative way.

That's not to say there aren't real threats out there, but the vast majority of people are just trying to get through their day.

This happens to police officers too, most of their interactions with people are negative due to the nature of their work, over time that starts being their default position towards people. I'll never forget the time I walked into a bakery and decided to get a cupcake for the police officer sitting in his car outside the shop (he was blocking the alley, unsure why). The change in his face from defensiveness to pure joy when I walked up to this vehicle was easily worth the money spent.


from the "assume ignorance before maliciousness" standpoint, a lot of the impression you speak of is just a fact of us humans reporting on the (perceived) more critical news, (perhaps also maybe the more profitable news) - but is more (in my opinion) a natural result of the news having limited time/bandwidth to report on a near-infinite content production source (the world)

A side effect (and the end result) is that we all end up having poor [Bayesian priors](https://en.m.wikipedia.org/wiki/Prior_probability) in our heads - this disproportionate reporting practice at large impacts our understanding of the world, as you describe. And I bet there's a feedback loop: the more skewed our model of the world, the more we will produce/consume skewed content.

I think this is not something you can ever truly do completely away with because of the many factors that it arises from, not limited to our psychological biases that tend us towards liking or interacting with certain form of content more than others... but certainly there should be more controls.


There's a positive aspect to employing police officers to be present even when there is no tangible risk of crime or danger.

Where I live, it's extremely unusual to ever see a 'bobby on the beat', so when I recently visited a city with thirty or more police officers with riot vans congregated at the docks, ironically I felt slightly uncomfortable - what mortal danger could be present around the corner to justify so much police attention? It turned out to just be a big football match, so there was not such a huge danger after all and the police would no doubt be able to diffuse any disturbance immediately.

If there had been no police around, it would never have occurred to me that there was a risk, even though I would have been tangibly less safe without their presence.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: