> while commercial developers of immoral proprietary software have been required to license the toolkit under a commercial license.
I wish free software advocates would stop calling proprietary software immoral. If anything, free software underlies and has enables the locked in, sever based, surveillance monetizing world we live in.
Back when software ran on your machine, you defacto owned your data because it was on your machine. Now, because the data is not on your machine, you don’t own the data.
Selling proprietary software for money is a lot less immoral than using free software to sell user data for money, or using scale to run roughshod over regulations which seems how a lot of software engineers are ultimately paid these days.
> I wish free software advocates would stop calling proprietary software immoral.
I was very surprised by that sentence, because "immoral commercial software" is absolutely not a common term in FOSS circles, afaik. This is the first time I heard it. Most FOSS developers are employed by commercial companies and have no problem developing commercial software - in fact, most people decry the lack of commercial software on FOSS platforms. Please don't build it up into a strawman.
I suspect this formulation has something to do with this particular reporter being from China, where there is still a lingering link between morality and industrial production.
> I was very surprised by that sentence, because "immoral commercial software"
Being commercial is independent to being proprietary; there is a lot of non-commercial proprietary software and there is also some commercial free software. Regarding the immorality, it is definitely common to justify the necessity of free software on the grounds that proprietary software is immoral towards the users: they cannot know, verify, or control what the program does to them. In the writings of Richard Stallman you certainly find the notion that free software is a necessity precisely because proprietary software is unethical.
Man it's crazy how to this day even FOSS advocates will confuse proprietary and commercial. It's like confusing ethics and law, where at this point I have to assume the person I'm talking to still holds this false equivalence in their mind because it's so common and clearly not going away.
Stallman's position is pretty extreme. One can reasonably object to proprietary code in all sorts of domains, such as medical devices say, but it seems a bit much to say that all proprietary code is necessarily unethical.
The GameBoy used proprietary software. Was that unethical?
Stallman's position is not extreme. It is consistent and firm, but he tries to reach a reasonable compromise. In political parlance you could say that he's a reformist, not a radical. Notice that he argues that it is OK to use proprietary softare, for example for developing free software if it is the only option, or for communicating with other people that cannot use free software at the moment (e.g., zoom meetings). If that is the case, he urges you to at least tell your colleagues from time to time that there are other options and that you would prefer to use free software:
The linked text is very clear and cannot be construed at all as "extreme". At the same time, he holds that while we can reach temporary compromises, proprietary software is always unethical and that we should strive towards freer options.
> The linked text is very clear and cannot be construed at all as "extreme". At the same time, he holds that while we can reach temporary compromises, proprietary software is always unethical
Right, and that's exactly what I'm referring to. It's pretty extreme how categorically the FSF applies the term 'unethical'. I'm not saying Stallman is incapable of ever making compromises.
If Vim were proprietary, I probably wouldn't use it, but freeware isn't unethical.
On the point of Zoom meetings, the FSF have just begun offering a Jitsi service to all Associate Members of the FSF.
Even RMS, in the past, did not object to all proprietary code. For example games that are a work of art could in some ways be seen as something that might not be modifiable by the end use. He has changed his mind on a lot of topics over the years and I'm not 100% sure about his current thoughts on the matter, but he has definitely said that there are some things where it might not make sense to have software freedom.
However, with respect to the GamBoy itself, the issue is that when I buy a GameBoy, I am not able to inspect it, nor am I able to correct it if it is not not working properly. The GameBoy is not unethical in itself. It is forcing your customers to accept a "No user serviceable parts" license in terms of the software that is deemed unethical. Not being able to inspect the code to see what it is doing may have ramifications for the user -- perhaps not so obvious on a device that has no network, but it is where it starts.
One of the big problems with the Free Software movement, IMHO, is that it has been confused as being a software creation issue. It is not. It is 100% a consumer rights issue. One of the most important parts of free software is that if I did not give my software to you, then I have no responsibilities towards you at all. If I don't give you a binary, then I never have to give you source code. If you get the binary from somewhere else, I still don't have to give you source code -- the person who gave you the binary does.
This is about choosing a license that treats your customer well and about nothing else at all. For decades people have wittingly and unwittingly attempted to spin this as some frothing at the mouth religious issue. It is not. It is purely a consumer rights issue.
> It is forcing your customers to accept a "No user serviceable parts" license in terms of the software that is deemed unethical
Good point.
> Not being able to inspect the code to see what it is doing may have ramifications for the user -- perhaps not so obvious on a device that has no network, but it is where it starts.
Sure. This connects to data and privacy concerns.
> If I don't give you a binary, then I never have to give you source code.
True of the GPL, but not of the Affero GPL. Also, permissive Free Software licences like Apache impose no such requirements, but are still Free Software licences. Free Software isn't the same thing as copyleft. (Of course, if you distribute binaries but refuse to share the source, then what you are doing is no longer Free Software.)
> It is purely a consumer rights issue.
This makes for easy contrast with the Open Source movement, which is good, but I think it's a little misleading. As an analogy, the right-to-repair movement doesn't expect hardware companies to hand over their design documents, they're just seeking to end open hostility toward third-party repairs.
I fully appreciate Stallman's 4 Freedoms, including Freedom 1, the right to study software, but I'm not sure I'd quite call it a consumer rights matter. Payware proprietary software licenses prevent you from freely copying/distributing the software. Patents and design patents can do a similar thing with hardware. That's not really a consumer rights problem.
To put that another way, I can see the sense in treating Freedom 0 (freedom to run the program as you wish) and Freedom 1 (freedom to study how the program works) as consumer rights issues. I'm not convinced though that Freedom 2 (freedom to redistribute copies) and Freedom 3 (freedom to distribute copies of your modified versions) are consumer rights issues.
Just to be clear the Affero GPL only differs in that I would have to give you source code (edit: previously typed "software") if I supply a binary for you to use over a network. My point was really just that if I have not supplied a binary to you (and hence you are not my customer), then I don't need to do anything for you. This is frequently confused by people.
They are clearly consumer rights issues, to me. Whether you think they are important consumer rights issues is quite another matter ;-). Freedom 3, IMHO is definitely more important that Freedom 2. If you've managed to fix an issue, but are prevented from helping other people to fix the issue, I think it's problematic. As a consumer, I definitely value Freedom 2. Personally, I'm not sure I would consider it an ethical issue.
However, whether or not Freedom 2 is really an ethical issue, I think it's fairly straightforward to understand how people find Free software, as a whole, an ethical consumer rights issue. I'm not saying that everybody in the world is going to agree with the stance (and clearly many don't), but it's not much of a stretch to at least understand the position.
More edits for clarity. I should probably just go to sleep :-)
> if I have not supplied a binary to you (and hence you are not my customer), then I don't need to do anything for you. This is frequently confused by people.
The confusion is on your end. Section 3 of GPLv2 requires you make the source available to any third party, not just your customer (and GPLv3's provisions are similar).
There is exactly one set of circumstances that permit you to say "no" to any and all non-customers, and it involves not limiting the initial distribution to just binaries. That is, iff you provide binaries together with the source to the customer who's giving out copies of the binaries themselves, then it is their responsibility and not yours, and only in that instance are you allowed to turn down third-party requests for source. This would also hinge on having a customer who would be fine giving out copies of the binaries they received from you in step 1 but for some reason wants not to give out copies of the source code that they received with it.
That's a good point and I'm glad you mentioned it. However, one set of circumstances is enough :-) If you do not wish to distribute the source code to other third parties, you do not need to, as long as you distribute it to your customers. I definitely could have described that better.
I think I see where you're coming from, at some point it becomes a question of semantics.
> the Affero GPL only differs in that I would have to give you source code (edit: previously typed "software") if I supply a binary for you to use over a network
That doesn't sound right. You don't have to distribute a binary for the Affero GPL to require you to release your source. From the FSF:
> The GNU Affero General Public License is a modified version of the ordinary GNU GPL version 3. It has one added requirement: if you run a modified program on a server and let other users communicate with it there, your server must also allow them to download the source code corresponding to the modified version running there.
Yes, the "them" refers to the users. If you have users of a binary server, you must allow those users to download the source code. You do not need to allow anyone who is not a user to do so, though.
Edit (programmer needs sleep badly): Clearly it doesn't have to be a binary. It's any executable over a network. But you don't have to give the source cod to everyone, that's really my only point :-)
The point is that merely communicating with it (i.e. GET / HTTP/1.0) suffices to establish that requirement, even if you are not serving or providing a binary over the network as you previously said.
I agree with you. I didn't mean to imply that the binary must be served over the network -- merely that the server is used over the network. The point I was trying to convey is that you only have to provide the source code to the users of the server -- not everybody in the world.
Freedom 2 and 3 are limitations of your right of resale applied to software. Actual applications differ by jurisdiction, of course, but my point is that, by limiting a consumer right, they become a consumer-rights issue by definition.
Right of resale does not make sense for a lot of software.
Games that are only meant to be played once are a good example and can be compared to a ticket to the cinema. It does not make sense to allow to resell those games.
I don't think they are - you can always sell libre software. Whether anyone is willing to buy it is another question, but at no point is your right to resell abridged.
Yes, it was. The developers of any proprietary software have unjust power over its users, i.e. they could implement any anti-features they wanted and the users cannot not do anything about it. In this sense, the users do not own the device if it runs proprietary software.
Sure, you don't get to easily make any changes you wish, but even this has real upsides.
Modern consoles are able to offer a multiplayer experience free of the cheating that plagues many PC games. That's because they're bolted-down and deny users the freedom the modify the software. To the customer, that has real value.
I do not understand your argument. Today there are still competitions of gameboy games (and many other consoles) that have been emulated to death, where all the glitches and cheats are well-known, and there are hundreds of "mods". You can still participate in the "no-cheat" category, which is one of the most popular.
The fact that people can cheat, does not force you to cheat when playing. This is exactly the same thing in sports.
I was talking about online multiplayer against (untrusted) strangers. I should have been clearer about the online aspect.
In online PC gaming, cheating is a real problem, as people are able to modify the game to their advantage. This is next to impossible on modern consoles, and cheating is much less of a problem there.
I don't begrudge anyone who wants to opt-in to a designated cheat-based multiplayer session, of course, but it can be a real problem for 'ordinary' gamers.
That is a problem with the games and with the industry, not with the PC as a platform. Heck, if the console companies had invested in properly secure cheat-preventing solutions (i.e. better network protocols that don't leak info, cheat detection by packet analysis, better replay analysis and banning tools for server admins, decentralized trust/authentication systems, etc) then likely those could have been deployed on other platforms. It seems that nobody has been investing any money in that though, everything has instead been invested in making sure that the hardware is a walled garden. This approach might work temporarily for the individual manufacturer of a single console until it gets cracked and they have to manufacture a new one. But as you can see, it doesn't scale past that.
The more I observe the recent and not so recent developments in the OSS world e.g. the funding issues, acquisitions etc, the less extreme I think Stallman is.
> they cannot know, verify, or control what the program does to them
Do you want to force every company (not just software ones) to release the entire business details, processes, designs, contacts, experience... for every product they sell? Do you want to force every company (not just software ones) to give each customer an easy way to clone every product?
Because for software-only or design-only companies, that is what it means.
There are alternative means to make companies behave, like regulations, certifications, inspections, fines, contracts, etc. in every other field. Why software/design companies need to be different?
Dude, I don't want to force anybody to do anything. Even if it is unethical, nobody's saying that proprietary software should be illegal (except maybe when it is paid for by public resources, but this is another issue).
I'm just refusing to partake in the proliferation of proprietary software, by my acts, and by telling other people why they might consider to do so.
Then you are criticizing and boycotting the fair work of others without offering any way to improve the situation for everyone.
I don’t like closed software either and always prefer a open source product if it is good enough. But going to the point of calling "immoral" and "unethical" the work of other engineers who do sell their software as fairly as possible given the constraints of reality is a bit rude.
you can verify, modify a program without having access to processes, designs, contacts, etc. It's much harder without those but it's definitely possible. You're also aware that you can fix your own car, your fridge, your house if you ever want it. Those objects don't actively fight to stay un-repair-able (although the times are changing)
as far as cloning goes, I'm sure you're aware that there are many clones of your television, phone, etc. sold every day.
But in the end, it's a political choice. Either you agree with the fact that some people protect "their" idea (that they had by studying others' ideas), make profit out of it by keeping it a secret, that is, making sure it won't reach the greater part of mankind but only their customer base. Or you don't agree with that. RMS doesn't and he shows he can do it with an appropriate level of incoherence (notice that most free software, in turns, is written or proprietary hardware : just try to reverse engineer a CPU).
So it's not black and white. And if in some field there are rules, laws, etc. don't forget they were put in place also to protect commercial interest (in place of general interest). Software being new, it gives us (the idealists) an opportunity to propose another approach.
The purpose of the GNU system is to give users the freedom that proprietary software takes away from its users. Proprietary operating systems (like other proprietary programs) are an injustice, and we aim for a world in which they do not exist.
To improve the use of proprietary systems is a misguided goal. Our aim, rather, is to eliminate them. We include support for some proprietary systems in GNU Emacs in the hope that running Emacs on them will give users a taste of freedom and thus lead them to free themselves.
You misrepresented the quote. It's "commercial developers of immoral proprietary software", not "commercial software". That's a huge difference - commercial software isn't immoral and nobody says it is; proprietary one is and that was a consistent stance of FSF since the very beginning.
That particular phrase may not be common, but over the years I've come across plenty of free software proponents who absolutely do believe that proprietary software is immoral.
This belief is usually based on the imbalance between the developers and users, such that the developer is able to change the software in unexpected ways, backdoor the user machine via rootkit DRM, spy on users and collect telemetry without the users being aware of what exactly is being collected etc. In that sense, the sentiment isn't wrong.
This does not mean all proprietary software is like this, but the developer/user power imbalance is present in all proprietary software to a much greater extent than free* software.
*Free does not mean non-commercial, it's cool to want to get paid for software, including free software.
A more accurate term then would've been "potentially-immoral proprietary software". Though it doesn't roll off the tongue quite as well and its trolling factor is laughable, so I can see why it wasn't employed.
In my experience it's generally based on the Stallman concept of software freedom, in which the freedoms Free/Libre software is intended to respect are seen as rights, and the power that a proprietary software vendor wields over users is fundamentally unjust. This is the basic philosophy on which the Free/Libre software movement was founded, so it's not just a peripheral view. He outlines this pretty clearly here:
Your claim that free software enabled "...the locked in, sever based, surveillance monetizing world we live in" just doesn't seem valid.
Back when free software was still a new thing on college campuses, there were proprietary software vendors who owned and monetized a heck of a lot.
Whether Microsoft's Server CALs for IIS (yes, that was a thing) or Oracle or Hewlett-Packard or Packard-Bell or ATT, there were a lot of vendors monetizing on both the server and the desktop.
Yes, software running on my machine might have been my data but there were numerous cases of that very same proprietary software where the data files were inaccessible.
In short, you owned the machine and that was fine but you didn't have a license to the data format and that meant you were...well, locked in and monetized by that particular vendor.
I'm not really going to speak to the moral judgement you made about free software since free software or proprietary software can both be used for whatever immoral ends.
Oracle solely sells proprietary software that users can't own; AWS is proprietary software users can't own; Microsoft's suite is proprietary software users can't own: proprietary software is still causing the most harm, people who defend proprietary software are still acting incredibly stupid about it.
Like seriously, "seems how a lot of software engineers* are ultimately paid these data" (by proprietary companies). Google is a proprietary software company, so is Facebook, so is twitter. All companies that relentlessly abuse users.
Free software advocates meanwhile have a social network with a few hundred thousand active users, they've got privacy-respecting search engines, and have operating systems that don't spy on you.
Proprietary software caused the problems you're ranting about, and your comment reeks of "I work at a company that sells proprietary software and am trying desperately to pin my own sins on people releasing software making the world more free."
I'm nowhere near a free software extremist. Many of the people I find admirable release proprietary software. But your comment is ridiculous. Proprietary software is undeniably immoral.
* "Engineers" is the wrong term because software engineers don't exist.
I'm not saying they're right, but I think the point was that:
- GPL code can be used in a program you do not distribute
- Not distributing can be done by running it on a server instead of local machines
- Run on server almost always means users don't own data
It's missing a step, which is that the GPL code in the world was so important that people NEEDED to use it so much that they were willing to change the way they distribute (or don't) their software... that's a pretty tough claim to make out. What's the evidence for that?
I don’t understand your bit at the end but I just wanted to mention that the AGPL license was created by the FSF in 2002 to address this network loophole.
And recently made irrelevant by Amazon, who discovered how to defeat its purpose while fully respecting its terms (copy the code without any contributions back to the authors, so you don't get any sharing back; do all of the hard work of deployment logic in code you do not share, ensuring people can't really move to self-hosting if they want to patch the software in any way).
The AGPL is one of the strangest licenses to me, coming from a foundation that considers running code you can't read or modify as a violation of your human rights, but also making a license designed for software running on someone else's computer entirely, where you have no possibility of any amount of control.
That is not the purpose of the AGPL. If you were trying to use the AGPL as some kind of trojan horse to get access to someone's deployment code, then it should be no surprise that it didn't work. Perhaps your codebase is just hard to contribute to? Is it possible your company has not given enough incentive towards outside developers for them to contribute back? It doesn't even have to be money, it starts with making some mutually beneficial promises and then sticking to them.
In general I think it is wrong to try and characterize Amazon's developers as being some kind of strange beasts who have somehow figured out how to use open source better than everyone else. They are the same as every other corporate developer in that they'll always take the easiest and cheapest path to success.
The purpose of the AGPL as envisioned by Stallman is to give you as a user of the network-based software some of the same freedoms that you would have as a user of a local GPL program.
This would include the freedom to know what code is running,and the freedom to modify that code and run you own version. The ideal outcome of someone running an AGPL server would be that if you find a bug or if they decide to terminate the service, you can host your own version, so you are not locked in.
Unfortunately, it turns out that this freedom is very hard to actually guarantee, as the deployment and monitoring of a server can be as daunting as the actual application logic itself. This is somewhat similar to the case of releasing GPL code without the instructions for building that code, but probably far worse.
You seem to have assumed I am personally someone who was bitten by this, which is not the case. I am not even a firm believer in FLOSS values. I am just a by-stander observing how these things are used in practice as opposed to their ideals.
By the way, even Mongo's initial use of the AGPL was somewhat counter to the spirit of the thing - they also believed that the deployment part is going to be too hard for many companies, so they hoped that companies would come to them to pay for hosted deployments. If they were using the AGPL according to its spirit, they could have made their own deployment and monitoring scripts public and would have defeated Amazon's lock-in attempts that way (of course they could never do that, their whole purpose was to create that lock-in effect for themselves).
One of the most ridiculous things I've ever heard. Also a complete failure to understand the philosophy behind the success of FLOSS.
Generic problems that are widely shared with limited variations in functional need are successful FLOSS solutions or platforms.
Specific problems that are more nuanced and meet niche requirements are what works best in commercial software.
It philosophically makes no sense to call something immoral because a subset of entities are happy to pay for it to achieve their goals. Symbiotically most FLOSS is supported by these solutions which are often based on them.
> It philosophically makes no sense to call something immoral because a subset of entities are happy to pay for it to achieve their goals.
Paying or not paying has nothing to do with the immorality of proprietary software.
You can pay for software even if it is not proprietary.
I suggest you to watch any talk by Richard Stallman, if you want to understand why some people think proprietary software to be immoral. You might not agree, but for sure it is not something that "philosophically makes no sense".
>You can pay for software even if it is not proprietary
You can, hardly anyone does though. Donate buttons make a pittance. Nearly all the times I've given one I get back an almost embarrassingly grateful response because A. the amount I give is always a small fraction of the value I've gained and B. it's obviously a rare event for the receiver.
Donate button is not the only option though.
You don't have to publicly host binaries or sourcecode for your product - only make them available after payment (ardour for example requires payment to access pre-built binaries).
And offering paid support or development is not unheard of either.
My software interacts with other commercial software in a very loose way. It just calls the other software passing some arguments. The first thing you see appearing when that opens up is who it's licensed to. I've seen the same licensee's name appear numerous times. As I said I work in a niche and these guys have WhatsApp groups and the like and pass stuff around. A group of them formed a brand, just a common website really, and then tried to beat me down on support costs despite the fact that forming this group had zero effect on my workload,same number of shops, same separate workforces. They don't always activate Windows, I doubt if their MS Office is always legal, they skimp on general tech support and try to get me to do that for free cos if their network is down my software doesn't work properly so it's my problem.
One of them who's still my customer did try and pirate my software in a new shop and it was a few months before he had to come clean because it was obvious that support calls were coming from two locations over a hundred miles apart which had the same licence.
If these guys had the source code the first thing they'd do is hire someone in India and see if he could replace me.
That sounds like a real fun customer group (which I personally would try to get rid of asap).
And open source vs. closed source doesn't really drastically change anything here, since you could just charge support per installation (and they could try to lie about how many installations there are, etc.).
That's small businesses for you. Not all of them are like that by any means but enough are to be difficult to consider losing, income wise, with no guarantee I could replace them.
As I said, if they had the source code, I think they'd try and exploit some third world coder to both maintain and extend the product and say goodbye to me
Donate buttons are a joke when used for software. They never worked.
Now I see a different type of support in video streamers on Twitch or YouTube. Perhaps there is a way to apply this concept to software vendors...
> I suggest you to watch any talk by Richard Stallman, if you want to understand why some people think proprietary software to be immoral. You might not agree, but for sure it is not something that "philosophically makes no sense".
Yea, I've met Stallman, been to plenty of his talks and had this same discussion for the last 15-20 years. Thanks for the advice though.
> immorality of proprietary software.
I don't believe it is. Plenty of others accept a perfectly valid dual magisteria as I proposed. Even in the commonly cited logically incongruous value systems that redefine the baseline of ethics I think that view can be accommodated.
But the blanket statement that "proprietary software is immoral" is fundamentally broken
And that is why Desktop Linux will never happen, too much immoral software is required for it to ever happen.
Software engineers not only do exist on my home country, it is a professional title protected by law, not something that one calls themselves after a six week bootcamp.
I don't see how those two are connected in any way.
There exists plenty of proprietary software for linux as well - it's not like there is anything on the linux desktop platform that prevents this from existing?
Except that those communities are willing to pay for software.
Announce any "evil proprietary" software in places like HN, which should be about doing business to start with, and the top comments happen to be about forking, making FOSS clones and not paying a dime to evil overloards.
Qt being discussed here is a very good example, tons of comments on how not to pay Qt, switch to alternatives, and how much evil they are for wanting remuneration for their work.
Naturally companies then turn into the Apple, Google and Microsoft customer communities instead.
You are forgetting that so far qt is dual-licensed under GPL and commercial license so far. And there are a lot of FOSS projects that happen to use qt under the GPL so far.
And for those projects there really is no other option than forking Qt or switching to alternatives if they stop providing the GPL licensed version for future version, since it would turn the FOSS project into a commercial one.
You are essentially arguing that making software available for Linux as well increases the probability of FOSS clones.
I would argue the inverse, since the motivation to create a FOSS clone is much higher if such software doesn't exist at all for a given platform (since some people will just buy the software and be done with it).
Thus giving the maximum possible motivation for people to develop their own (FOSS or not) clones/implementations.
Bonus points for including actively hostile things like DRM or requiring license servers or hardware tokens to improve the user experience.
My users who pay me for my proprietary software also get support from me. Frequently I see pirated software on their machines. I have no doubt that they'd pay me nothing given the opportunity. That's owner operated small businesses for you. You seem to have some utopian ideal where everyone is a giver but that's not the real world.
The world doesn't owe you a business plan. If your business fundamentally relies on your users having no way to fix the bugs in the software you are selling them (which is what it means for software to be proprietary), then that is an immoral business.
SaaS model like GitLab but I read here yesterday that community edition != paid/enterprise edition.
GPL license for free use. Charge for commercial use like Qt ... but apperently this is not working well.
The paid/enterprise-only extensions are still immoral though? How do you completely eliminate immorality from your software/service, other than charging only for technical support and prioritized bugfix? (I take it that's you were concerned regarding community edition != paid/enterprise edition)
I don't think any of those models would work in the small business sector that I provide niche software for. The big open source projects supported by the likes of Facebook etc work because writing software is something Facebook do as an aid to their business rather than it being their business per se. So contributing to open source software is purely a way of reducing their own costs and maybe getting some kudos. If your fundamental business is writing software that you need to sell to people then making it open source makes as much sense as a corner shop operating on an honour system.
One of the key ones in that list is advertising supported software, which is in my opinion less moral than proprietary software. Android and Chrome fit squarely into that bucket.
Some people have a need for a product. Someone provides a solution under some terms.
Assuming the terms and prices are fair and no "bad practices" are going on (no excessive EULA/DRM, no ads, no enforced subscriptions, no online requirement, etc.), how is that immoral?
The world does not owe devs a business model, you are right. The same way, the world does not owe users a solution under whatever terms they want, either.
> Assuming the terms and prices are fair and no "bad practices" [...] no excessive EULA/DRM
I think there's an argument to be made that the work that compilers perform might as well be DRM. Granted, the obfuscating effect of source-to-binary translation is in most cases incidental to the compiler's main purpose, but it's an effect that can be felt nonetheless.
If there's a bug, the user can fix it only if the source code is available.
> It is like people going to the cinema expecting to be given all the details, including technical documents and whatnot about how the movie was made.
Well, movies do include credits, detailing who did what. From there, you could research what the "what" is and know more or less how the movie was made.
Disclaimer: I have no care either way between OSS or commercial software, beyond liking to contribute and support OSS projects, and working on proprietary applications (and being generally ok with it). So I'm replying not with an intent to proselytize; just thought I could address your points.
> Assuming the terms and prices are fair and no "bad practices" are going on (no excessive EULA/DRM, no ads, no enforced subscriptions, no online requirement, etc.), how is that immoral?
The point is that proprietary software is inherently that kind of bad practice - it means users can't fix bugs they encounter, or can't share their bugfixes. This is particularly vexing when the vendor also disclaims all warranties on the software, which is usual practice - reserving the right to sell something broken and unfixable.
Compare e.g. car right-to-repair laws that require manufacturers to make their repair manuals available.
Thanks for calling my way of living immoral and then not having the decency to answer my question to you about how do it in a way that would mean I could ensure I get paid for coding and not get stolen from.
I mean, I work on custom software that my clients use in-house; my clients always get full source code and I bill them for my time. But I doubt that's particularly relevant to your situation.
I don't know what would work for you. If you're doing in-person support for your users, that may well be a lot more valuable than the software itself. Maybe that's a viable business, or maybe it isn't. Again, the world doesn't owe you a business model. If you're selling shrink-wrapped software then my honest opinion is that that business is dying (with or without the open-source movement) and it's better to get out of it.
Software Freedom Conservancy folks have good explanations for this, check their video presentations for arguments. Tl;dr a pacemaker runs a software that could be fixed with an update, but you don't have the rights to do this, no one has, since the company is already out of business, so the patient is screwed. That's a drastic example but clearly shows why the proprietary software is immoral.
No, it does not show anything. You are picking an extreme example in a heavily regulated field and trying to prove a general point with it. It is the knife fallacy again.
If pacemakers really need software updates, then regulate that companies are required to provide the updates or release the code if unable to do so for any reason.
At this point no discussion can be had as it depends on a persons own beliefs which are rarely changed by fact or argument. This also skips over any nuance concerning the benefits, costs, and externalities of a particular subject.
Google and Microsoft are some of the biggest contributors to free software in the world. Free software is mostly a way for huge companies to cooperate on IP, at this moment, or roughly equivalent to shareware for smaller companies who want to give you a taste of the software before you have to commit to buying.
There are definitely many exceptions, such as Mozilla and GNU and others, but some of the highest profile software fall in either the first category (Linux, Clang, Kubernetes, Docker, MySQL, OpenJDK, PostgreSQL) or the second (old AGPL MongoDB, ElasticSearch, CentOS).
I agree somewhat. But you have to realize that developing and maintaining software is incredibly expensive and time consuming. I, for example, hate Android for spying on me all the time, but I realize that developing such a complicated operating system takes a lot of effort and Google isn't doing this out of altruism.
> Cloud services are not free software, whatever the license.
That depends on the cloud service in question. The "big three" (AWS, Azure, GCP) certainly are not, but there are a lot of small/niche hosters running Kubernetes, OpenStack and other FOSS cloud software.
Perhaps I was unclear. Cloud services are not free software, regardless of whether their infrastructure is based on free software. Anything you cannot modify is not free. It's slightly more free for the developers, who at least get some say it what runs on the cloud - it's not free in the slightest for the users, i.e. the people whose personal information is being harvested.
As far as I understand it, from the point of view of the FSF they are neither free nor non-free, since, according to their terms, the software is not being "distributed" (you are not running it in your own computer).
Do those small/niche hosts allow you to modify the code running on their site? Do they allow you to inspect the source code and acquire any patches they have developed? It's not free software.
That doesn't seem required for the 4 freedoms listed. Could you elaborate which of those requires the providers to run your modifications on their system?
> The freedom to study how the program works, and change it so it does your computing as you wish.
What part of that doesn't make sense? If the program is going to run on someone else's system then you'll need access to that system to be able to modify it to do your computing as you wish.
You can change it and run it as you wish on your hardware. There is no limitation on that. You are not required to run it on the host of someone else.
If you borrow my linux notebook for an hour and I don't give you access to chaning the software on it, doesn't change that linux is free software.
In the same way that free software distributers are not required to distribute your desired patches. They perform a service of distribution (or cloud providers: running the software)
But I think I get that you consider cloud services non-free outside of the pure software aspect. I think, though, that there's still meaningful distinction between providers running direct free software which you could essentially clone completely and run your own version and such that run closed versions, which do not allow that.
I have a hard time imagining how a host can let multiple customers exercise their freedom to modify the shared host software, each customer thereby wrecking the service for the other customers, or at least destroying the service level guarantees that presumably are being paid for.
With regard to the individual software each customer uses, often small/niche hosts do allow each customer to inspect and modify the software. That's kind of the point of cloud VM hosting, that you "have root" and can even modify your kernel if you wish.
This is a little nuanced. If we're talking about a cloud VM that you, personally, have root on, then indeed the software you choose to put on it can be considered free software (if you alone are the user). However, that software is not a service - the infrastructure that allows you to run it is the service (and obviously not free, although you're probably fine with that).
But that changes if you publish an interface to the software on your cloud machine, and allow others to use it. Now it's a "service" and that software is no longer free, because you have denied the four freedoms to its users.
Software as a service cannot be free software - it is a fundamental contradiction.
That nonsense again. You are explicitly encouraged to sell free software. Take it up with the English language that "free speech" does not mean I get radio advertisements for free.
> I wish free software advocates would stop calling proprietary software immoral.
Makes sense. I don't mind proprietary software as long as it doesn't exploit its users.
> If anything, free software underlies and has enables the locked in, sever based, surveillance monetizing world we live in.
Um, what? This is one of the most absurd statements I've seen this week. Whether a software is free or proprietary has absolutely nothing to do with the surveillance business. I fail to understand how you can demonize free software developers for enabling the surveillance economy or whatever when there are many, many proprietary software out there that's specifically developed for the sole purpose of spying on you. You might as well condemn hardware companies for selling computers because that also enables the surveillance economy too.
Free as in beer and free as in freedom debate again :).
Propriatery for me means closed source, not free (as in freedom). All the free applications that spy on you do not share their source code, therefore are in nature propriatery.
As far as I understand Qt considers to put a 12-month delay before opening up its source code.
I think this would be a zero-sum game for Qt in the long term. They will continue to milk their existing commercial userbase, but lose the support of the community.
> If anything, free software underlies and has enables the locked in, sever based, surveillance monetizing world we live in.
That doesn't sound right. There's an asymmetry here that you're ignoring. To use FSF-esque terminology:
Freedom-respecting software must be Free Software, and any software it relies on must be Free.
Surveillance technology can use Free Software, but can just as easily use proprietary solutions.
> Selling proprietary software for money is a lot less immoral than using free software to sell user data for money, or using scale to run roughshod over regulations
I would find it a bit hard to argue that the nature of free software has anything to do with this. Why couldn't all of this surveillance and the selling of user data have been based on proprietary software? You could maybe say it would be too expensive but really.... I am sure that if you want a billion licenses of something you could get a volume discount or otherwise write the necessary proprietary software yourself or buy from the least expensive party and so on.... Have we forgotten the economic principle that in an efficient market the price of a good approaches the marginal cost of producing one more instance of that good. The proprietary market may be a bit less efficient but as long as there are multiple parties who can offer the good the principle should work to a certain extent.
You can sell user data using free or proprietary software.
People call it immoral, in part because you can't modify it to tailor it to your needs, which I understand. When you buy a computer, you can repair or modify it.
No one has called it immoral because of the usage that was done of it (ie good or evil).
Sigh, here we go again. The top comment (rightfully) calling out a poorly thought out/worded sentence (or an incorrect statement) instead of discussing the real issue that the post is about.
There's nothing wrong with selling proprietary software. What really irritates me are companies like Redis who pretend to be open-source and start whining when other people (like Amazon) earn money from using their software.
I believe open-source is about altruism. It's not a business model to gain users and thereafter trick them or forcing them to pay.
There is absolutely nothing Free Software has been an obligatory enabler for SAAS.
Actually if you admit the existence of SAAS and regardless of its own issues, it using Free Software is still strictly better than it using only proprietary software.
And in regard to owning your own data thanks to proprietary software on your own devices, in practice this is just plainly false now: look at Windows 10 vs most Linux distro.
> Selling proprietary software for money is a lot less immoral than using free software to sell user data for money, or using scale to run roughshod over regulations which seems how a lot of software engineers are ultimately paid these days.
You imply that immorality cannot be avoided, so let's accept it. According to your reasoning, some people are killers so lets close prisons.
While I agree that proprietary software isn't necessarily immoral, I take objection with your premise.
The software used for collecting and selling user data is proprietary, all of it. This is because:
1. if it were developed as open source, in the open, people could inspect what it does
2. profiling user data is most often a company's core competency, the trade secret that they won't give away
If not, then please point out to free software packages I can use to collect and profile user data, because I have a business idea I'd like to try and no resources for software development.
Oh, do you mean those companies run their proprietary stuff on top of Linux? Well, if not Linux, it would have been Solaris, or Windows. The higher cost wouldn't have been much of a deterrence, in capitalism due to competition the cost does eventually come down.
>Selling proprietary software for money is a lot less immoral than using free software to sell user data for money
Except you're wrong, it's the fact we never got property rights and software became licensed to begin with. We should be living in a world where we had rights to source code and program ownership from the beginning. You don't seem to get Microsoft and big software companies benefited from 200 years of big media companies lobbying away the public domain and any rights to own works. Copyright was the back door to get rid of property rights from the public.
Software licensing is what lead us to this DRM dystopia, you can't have DRM if you own the bits you buy outright at point of purchase instead of "licensing them".
It's the software licensing model for the public where the public has no right to own the software it buys that's at the root of the madness. Not free software advocates.
The reality is we desperately needs property rights for consumers, I've watched for 20 years as the PC game industry stole PC games by client-server back ending them to take the files hostage on remote PC's...
Software as a service and DRM enabled by lack of property rights for the public is the real enemy of privacy and freedom buddy.
We should have had the right to own software like we own our clothes and houses. We can own our cars, houses and repair them, but we can't do that with software.
So huge swatches of human history are being kept in corporate vaults behind lock and key.
Companies like irdeto are pure scum in trying to game encrypt binaries. Don't get me started on mobile gacha games.
The whole software ecosystem is made on bad american IP law where the software buyer has no rights and all the cards are held by big tech companies.
Don't blame free software advocates. Blame lack of the public having any ownership rights over the software it buys.
We now live in a world where Microsoft can claim they "own" the files on my computer via American IP law magic and I don't really have a right to use my software and computer how I see fit because of bs IP laws written by american corporate lobbyists.
So whole swaths of video game and PC software history are being actively destroyed and done knowingly so.
Microsoft is planning to lock down the PC and, DRM like steam, origin, uplay, MMO's, client-server software is all about the end of freedom on the PC as an open platform.
Most notably, it contains a discussion about the feasibility of a fork (and even a name is discussed). What emerges from the discussion is that the OSS community around the Qt project is quite large even outside of KDE (I remember VLC being cited, for example), and that if efforts are united, it would be feasible. The KDE project could provide the necessary infrastructure for development, including CI (which would necessitate some startup work to change framework if I understood correctly) and distribution.
According to one coverage report the project sizes are 7 million lines for Qt vs. 1.2 million for GTK. If true, they are indeed much closer in size than I imagined -- I was sure it's at least one magnitude of difference in size if not even much more.
So why don't we start providing Qt binary version installers ourselves? Most Linux distros already do it, so we can focus on Windows and MacOS. Maybe some subdomain of kde.org?
The trouble of distributing Qt in binary format is the C++ non standard ABI problem. Qt has to be compiled for every possible compiler and many different versions of the same compiler, in order to avoid linking error. On Unices, most compilers, specially GCC and Clang, are using the Itanium ABI, but on Windows, compilers still have different ABIs, so linking against Qt shared libraries built with older versions of MSVC compiler may result in linking error. On Linux, there still the problem of implicit dependency on GlibC (GNU C Library), most applications built using newer versions of GlibC will not work on distributions using older versions of GlibC. It would be nice for Linux Desktop, if GlibC did not break the binary compatibility.
That said, the most suitable way to get Qt binaries for development may be using a C++ package manager such as Conan or Vcpkg which can cache the library compilation output and reuse it on many different projects without recompilation, unless the current compiler has an incompatible ABI.
Conan C++ package manager recipes can also provide pre-compiled binaries which reduces the compile time pain. Another interesting tool is the conan server which allow fetching conan recipes and pre-compiled binaries on the local network or across the internet.
In practice there are not so many. And e.g. on Windows I use an old VS compiler version and can then also use it with later VS versions (but not vice versa). Linux is also no issue because Qt is usually part of the distribution, i.e. there is no need to compile it as long as you depend on the standard version (not a custom one).
Personally I don't work with package managers, but prefer so setup and control the environment myself. It's not that difficult, and there is also Docker.
On Windows, MSVC does not provide guarantees that it will not keep the ABI on new releases. The drawback of using the Qt provided by the Linux distribution, is the reproducibility of the development environment as it is not possible to control the version of the Qt installed and also to have multiple Qt installations with different versions. As a result, the compilation of a Qt application may fail on different Linux distribution which uses a different and incompatible version of Qt. Docker can solve the reproduciblity of the development environment problem, but it still does not integrate well with development tools such as IDEs, building systems and so on.
The advantage of a package manager is the reuse of binary artifact on many projects and also the control over the library version. Conan package manager could be used for providing pre-compiled binary artifacts of Qt library. For instance, provides pre-compiled boost library and poco library for lots of different compilers, compiler versions and operating systems which saves one from building and installing those libraries.
Here it is from the KDE discussion [0], and from Qt themselves [1].
> But last week, the company suddenly informed both the KDE e.V. board and the KDE Free QT Foundation that the economic outlook caused by the Corona virus puts more pressure on them to increase short-term revenue. As a result, they are thinking about restricting ALL Qt releases to paid license holders for the first 12 months. They are aware that this would mean the end of contributions via Open Governance in practice. [0]
> Starting with Qt 5.15, long term support (LTS) will only be available to commercial customers. This means open-source users will receive patch-level releases of 5.15 until the next minor release will become available. [1]
It's not that difficult. I would recommend to use not the most recent OS and compiler version, otherwise you risk that only users having your or a later OS/compiler version can use it.
> It would be very unfortunate if free software users would have to remain vulnerable for a full year before they could have access to a newer version with a fix.
The last published version, even if its 12 months old, is and will be open source and free software, so it's up to the users and developers to keep it security updated. As with all free software. Is not as if Qt does not fix it nobody will. This is not closed software.
Open source developers can keep working on the last published version but what happens after 12 months? Try to resolve 12 months worth of merge conflicts, hard fork and stop taking any further improvements from qt company, stop making any changes except the simplest bugfixes?
Yes and it is working badly. Ecosystem is fragmented. Phone manufacturers are struggling to keep up. Phone support gets dropped quickly, code written by manufacturers for specific phones gets thrown out. Open source fork maintainers need to gather code not only from Google but also each phone manufacturer. Open source forks die. Open source fork support for running newer Android version than one provided by manufacturer is limited, only a few versions at best and only for most popular phones (because solving 12month merge conflicts is hard).
That's with Android which is somewhat self-contained system and changes in external interfaces wifi protocols, mobile networks take long time and are incremental. Once a new version of windows or macOS comes out waiting 12 months is a big deal.
I've not heard anything after the rumbles in April, but nothing seems to have changed, according to the website, so the 2015 agreement continues to be valid, afaik.
I think the latest public update on this is the following quote from "Welcome Meet Qt (Qt Virtual Tech Con 2020):
> Yes, of course Qt will remain open-source. I don't think anybody in our company is making any claims other than that and... let's be very practical: the only way we're going to have a big ecosystem going forward is to have open-source available. And we will have patch releases available for 5.15 until Qt 6.0 comes out and after that we will focus our efforts on 6.0. Having said that of course we will do the patch releases for our commercial only branch -- for our paying customers. But rest assured there's going to be a lot of different patch releases available for open-source and you'll always have the latest available. [1]
That sounds a bit vague :) I read into it that open source users get the latest patch release, as in 5.15.3 for example. But major/minor releases are first served to commercial users, like 6.0 and 6.1.
Nothing can really provide a "replacement" for any particular widget toolkit that will look+feel identical and support all the same widgets, but I'm a big fan of wXWidgets (nee wxWindows) for my personal projects: https://www.wxwidgets.org/
While I despise purity spirals, moral panics, and moral grandstanding with a great passion, I don't think that's what's going on here. It is at least mildly quaint. In this case it looks like the folks behind the website are into K-pop, and one of the very strange behaviors of K-pop fans is to post images and videos of their favorite kpop bands ... well, everywhere, often in violation of site ToSes. I'd honestly love to know more about why, because it gets mildly aggravating even if the images/videos themselves are very inoffensive.
Since this is their own website, I can't really be frustrated at all honestly. Still seems a little quaint, but I guess that's how a lot of 'ordinary' folks view those of us into Japanese otaku culture as well. Shrug.
Sorry, not my intention to imply they may be inciting a moral panic or grandstanding. The original poster (sorry to pick on you! you're fine!) didn't ask what's with all the K-pop stars on the page; they asked what's with all the women. This comment is already longer than theirs and it just read to me like somebody who generally wants to do the best thing for the most people and would appreciate some help with whether or not a particular thing is "okay" or "offensive". I feel that our natural (not always universal) human desire for inclusivity too often gets entangled with inhuman[1] entities (i.e. an online advertising marketplace) that can speak the language of our emotion but only to get us to click the correct buttons and delete the correct knowledge to make the numbers go up like we programmed it to.
I'm just weary of watching "sexist, or not sexist?" get asked about something until every shred of femininity has been deemed unacceptable and removed. Maybe just removing some photos[0] of women from our web pages. Maybe another group of work teammates stop inviting me to lunch or out on smoke breaks with them for fear of saying something offensive, losing their job, and seeing their name/address/SSN/rootpw dragged across Twitter during the Two Minutes Hate. Keep asking and it might eventually become Less Sexist to motion-capturing a real-life woman's face but then alter[@] her to not be so indecently-attractive for a major video game. Hopefully there's a farrier somewhere in this city who can explain this stuff to me.
The potential consequences for deemed-offensive speech are severe enough that risk avoidance becomes the only rational choice. All I can do is share how much and how many times this pattern has hurt me personally, hope enough other people feel similarly, and hope talking about it at all might help people feel more empowered and safe enough to make decisions about these topics and not have to defer to the inevitable lowest common denominator when we ask the machines.
Wai Lin (the biography and pictures) is a character from a Bond film - played by Michelle Yeoh, whose cover story was as a reporter for New China News Agency.
Maybe free software advocates should START by having a rational discussion with their partner organisations like qt to determine their intentions instead of starting an Internet dumpster fire flame war based on rumours. The qt company has said repeatedly they will support the open source community as they always have done. Maybe start by clarifying the situation with them before flying off the handle.
There are already a few forks from the past like CopperSpice, I think there is probably quite a good chance of a fork occuring if a major move happened.
All of them eventually die, because working for free on something like Qt never matches on feature parity, deployment targets or support levels Qt customers are used to.
I don't think it's really feasible to have a full fork. KDE people would probably be able to maintain the current features indefinitely, but probably not to undertake any big wave of innovation like Qt periodically has (the new 3d layer, QtQuick/QML, Qt4, etc).
Seems this will come up every few years again. I remember when I was part of the "Linux Interface Project" in the 90s, which started out as a bunch of fledgling Qt programmers trying to create some missing widgets. This was in the Qt 0.x days, where there was still a lot of "basic" functionality missing.
And because of licensing issues and delusions of grandeur about proper OO design (i.e. reading Taligent papers etc.), we decided to do our own stuff.
Others, including some German dude and his "Kool" desktop project were a lot more pragmatic.
Still seems the better approach, or otherwise we'd all be using the Hurd.
People should think as normal business, not as moral issue.
There will be tensions when business interests diverge. For open source people the interest is just few platforms: PC and Android and Apple. For Qt the direction is embedded and operating systems and customers that use embedded.
If no common ground is found you get only what you have agreed on contract. In this case GPLed code after 12 months. Open source people have to maintain security patches themselves. There are also companies working on KDE and Qt that can do it. Alternatively just fork the Qt (again) and go on your merry way.
IMHO the Qt company is simply using the corona-crisis as an excuse to jack-up prices. They would've done so in any case at some point.
The Qt company is very shortsighted since KDE has meant a lot for them in terms of legitimacy and valuable feedback. The KDE developers also made some important contributions, such as KHTML (the basis for WebKit and Chromium, used in billions of web browsers).
Why don't they apply this new license only to their Embedded and mobile versions? That's where the real money is being made by Qt anyway.
The Qt company decided to screw their most important quasi-customer, despite a long and useful partnership: far less important paying customers should expect the Qt company to take advantage of them too.
For some the risk could justify switching from Qt to other libraries or to a GPL fork of Qt, right now, before it's too late.
Established companies rarely fall for the "We can't pay you but you get exposure". I don't think paying customers care about KDE or open source. If you can give concrete examples showing something else, it would be interesting.
The way to make money in open source is to sell service attached to software, software development as QT does it where services is small component is just not generating enough money. That's why RedHat is owned by IBM and Canonical Ltd. has revenue only 2x of Qt despite large number of users.
If Qt hadn't been taken up by KDE some other UI framework (such as wxWidgets) could've had much larger user base thereby rendering Qt much less attractive to developers and undermining their business model.
I personally prefer wxWigets over Qt, but I'm a user of both.
Qt is not being paid in exposure by KDE. Qt was in large part built by KDE, and if the KDE folks decide they want to fork it and get an organized response they might quite literally kill the Qt foundation by outcompeting them at every turn.
Trolltech was doing quite alright before KDE was even an idea and they have gotten more money from Blackberry, Nokia, Jolla and Ubuntu failed attempts than from KDE.
They are the only viable alternative to WPF/Win32 on medical devices, automotive infotainment systems, factory automation dashboards, MCUs displays, ticketing machines,...
I bet that whatever KDE decides to do it will hardly affect Qt's profits.
First they have to make KDevelop match QtCreator, 3D Studio and Design Studio, then we'll see.
Sure, but the threat right now is a fork of Qt that would encompass commercial features and be developed by the KDE community, the free software community as well as companies such as Bosch, Autodesk and so on.
That is a big threat to the bottom line of Trolltech.
While Blackberry, Nokia and so on contributed a lot of money, KDE contributed a lot of the product and to the technical system. That poses a unique threat of replacement.
Open source contributions back to upstream Qt, which includes KDE, have been between 10% and 40% throughout the years, and they have always been on core libraries.
To think that such tiny contributions would scale up to replace what Qt offers today, including supporting devices that require NDAs is utopian.
Isn't this a good time for a new UI framework (e.g. Flutter) to conquer grounds. Especially if it would be possible to automatically translate large parts of the Qt UI to Flutter?
It’s a perennial problem with all major FOSS projects and KDE is massive, it’s basically a given. At the time I followed it a bit more closely, there was clearly a churn of developers very similar to what JWZ described, with constant rewrites of entire applications because nobody had the time and inclination to maintain old ones (maintaining other people’s code is hard). Yes, the associated entities do a lot of good work, but it’s never enough - and realistically, nowhere near enough to be responsible for the entire Qt library.
I myself would've contributed to GTK+, but... GTK is a tough project to contribute to. As many said, GTK has over the years turned from the Gimp Toolkit to a Gnome Toolkit, and with that comes all the pleasures of working with types like L.P, and other headstrong people.
The (unfortunate, I guess?) consequence is that GTK seems to move, slowly but surely, to a "niche" role. 10-15 years ago it used to be the natural choice for Linux GUI development -- people were still reticent about Qt, plus KDE 4 wasn't in a very good shape.
Nowadays, it's not so much the FOSS world's favourite toolkit as the toolkit that every newcomer uses because it's the one they're most likely to encounter first (via Ubuntu) and then ditches for Qt (or whatever else) as soon as they have to work with upstream or maintain their program for more than two or three years. The erosion isn't obvious because the largest players -- the likes of Canonical -- can throw enough volunteer (and sometimes money) at this problem and get to keep GTK-based programs working for everyone, not just the (ironically, very narrow) user base that Gnome cares about. But nothing lasts forever in tech.
There are still people doing amazing work with it. The folks at System76 with popOS are more or less at the design "forefront" (but they aren't doing that much with it, if we're being realistic), and the folks behind XFCE, Mate and Cinnamon somehow manage to "encapsulate" a toolkit developed by a rather hostile community in desktop environments that are nothing like that. But the writing has been on the wall among older developers for a few years now, and Qt's change of licensing -- if that ever were to happen -- wouldn't be enough to erase it IMHO.
I don't know if/don't think that Qt's licensing is an issue for most of the people who need to make cross-platform applications and reach out for Electron. Electron seems to be the default choice not just for FOSS projects, but also for commercial projects, which have no qualms using a toolkit that might go proprietary, and can get a commercial license if they need it (which most of them don't).
GTK, on the other hand, yeah, it hasn't been a good choice for cross-platform development for years now. The only platform it properly supports is Gnome.
I'm not sure I'd be down with it if every application become an Electron one. But the browser does have some significant benefits since the people who make the browser did all the heavy lifting for you.
Chromium started out using gtk2 and then switched to Aura? Do any projects use aura directly?
Expanding further on this, I can say that times since TOPAZ were all about GTK becoming more, and more of a RedHat toolkit, with all alienation of non-RedHat affiliated maintainers coming from that.
TOPAZ was essentially a "coup" made by 3 RedHat affiliated developers. They worked completely behind closed door, and then came with fait accompli almost overnight, saying that the buggy hell of Gnome Shell, and its hello world level was the GNOME 3.0, and we will be wrapping all 2.0 development.
It always come to a point where they first manage to alienate all worthy maintainers, and then complain that "nobody maintains this crap, and I now do what I want"
Yup. I did extremely minor work on gtk, pygtk, and dynamic bindings, and agree with you regarding the alienation. It was especially hard with the attitudes on the mailing list.
Are you involved in any toolkit stuff these days?
EDIT: hahah i'm getting trashed for my "yeah...yeahh..." comment above. sorry I wasn't clear about my agreement. :D
Avalonia is showing promise as a cross plattform UI kit and has an active and friendly community. The caveat is that it's based on dotnet core, which is a put off for some Linux users. Linux support is a priority in Avalonia and is not being shelved like previous efforts for cross platform UI support on .NET.
Has nothing to do with mono. Mono effectively died when Xamarin got acquihired by Microsoft. They shifted focus to providing OSX and Windows only tools for developing mobile apps with .NET, and mono development stalled, but parts got incorporated into dotnet directly.
Microsoft have been much more friendly to open source in recent years. dotnet core is now supported and up to date on Linux. You can develop on Linux with VSCode (Visual Studio is still Windows only) or JetBrains Rider. You can consider dotnet core to be uncoupled from Windows. There are still parts of the .net frameworks which are coupled to windows, but they can be avoided with libraries like Avalonia.
Although Visual Studio for Mac started as just a rebranded version from Xamarin Studio, nowadays it shares several key parts with Visual Studio proper, implemented in .NET Core and shared across macOS and Windows.
It was foolish of KDE to use commercial product as a base for their free desktop. They should've use wxUniversal (the self drawing version of wxWidgets).
Now, the only option they have left is to fork QT, which would put enormous pressure on them since it would require a lot of effort to maintain.
Hindsight is 20/20. Back when KDE was being developed, Trolltech offered free software license claiming "if you create free software; Qt is backed up by a professional organization which won't disappear tomorrow.". On the other hand, wxWindows (now wxWidgets), although having started much earlier in 1992, only had its first alpha in 1997, while KDE was already in development (starting in 1996), preparing for its first beta release. Surely that would be a good time to consider the alternative, you'd say, but why bother, since Qt also had a free license and had a whole company backing it, while wxWindows didn't. Without the foresight, who would you have placed your bet on?
I wish free software advocates would stop calling proprietary software immoral. If anything, free software underlies and has enables the locked in, sever based, surveillance monetizing world we live in.
Back when software ran on your machine, you defacto owned your data because it was on your machine. Now, because the data is not on your machine, you don’t own the data.
Selling proprietary software for money is a lot less immoral than using free software to sell user data for money, or using scale to run roughshod over regulations which seems how a lot of software engineers are ultimately paid these days.