Google, Meta and Microsoft would have to compete on demand, i.e. users of the chat product. Not saying they won't manage, but I don't think the competition is about ad tech infrastructure as much as it is about eyeballs.
It might take Microsoft's Bing share, but Google and Meta pioneered the application of slot machine variable-reward mechanics to Facebook, Instagram and Youtube, so it would take a lot more than competing on demand to challenge them.
Agreed. If you "create demand", it usually just means people are spending on the thing you provide, and consequently less on something else. Ultimately it goes back to a few basic needs, something like Maslow's hierarchy of needs.
And then there's followup needs, such as "if I need to get somewhere to have a social life, I have a need for transportation following from that". A long chain of such follow-up needs gives us agile consultants and what not, but one can usually follow it back to the source need by following the money.
Startup folks like to highlight how they "create value", they added something to the world that wasn't there before and they get to collect the cash for it.
But assuming that population growth will eventually stagnate, I find it hard to not ultimately see it all as a zero sum game. Limited people with limited time and money, that's limited demand. What companies ultimately do, is fight for each other for that. And when the winners emerge and the dust settles, supply can go down to meet the demand.
It's not a zero sum game. Think, an agronomist visits a farm, instructs to cut a certain plant for the animals to eat at a certain height instead of whenever, the plant then provides more food for the animals to eat exclusively due to that, no other input in the system, now the animals are cheaper to feed, so more profit to the farmer and cheaper food to people.
It would be if demand was limited. Let's assume the people already have enough food, and the population is not growing - that was my premise. Through innovation, one farmer can grow more than all the others.
Since there already was enough food, the market is saturated, so it would effectively reduce the price of all food. This would change the ratio so that the farmer who grows more gets more money in total, and every other farmer gets a bit less.
As long as there is any sort of growth involved - more people, more appetite, whatever, it would be value creation. But without growth, it's not.
At least not in the economical sense. Saving resources and effort that goes into producing things is great for society, on paper. But with the economic system that got us this far, we have no real mechanism for distributing the gains. So we get over supplying producers fighting over limited demand.
The world is several orders of magnitude more complex than that example, of course. But that's the basic idea.
That said, I'm not exactly an economist, and considering it's a bleak opinion to hold, I'd like to learn something based on which I could change it.
What's wrong with Minecraft? I'm not exactly a Microsoft fan, but am pretty impressed with how little control they have so far exerted over Java Edition, they even made modding easier recently by removing obfuscation. You can run your own server as much as you want with no fees, obligations or anything. And unless the kids know a server address, they can't easily join some third party server with weird stuff going on. Not that I ever heard of one of those, but I'm sure they must exist.
As others have said there's a big difference between the Minecraft "we" (the tech community growing up on Beta versions of Minecraft) know and the Minecraft of today.
The subsequent versions also developed the game mechanics a lot to turn it into something closer to an RPG than the early, bare-bones sandbox game with minimal, well-understood mechanics and the rest purely up to the players' creativity.
There's nowadays an abundance of Pay-to-Win servers with custom mechanics to enable that, and I'm sure a lot of unsavory people preying on children. The social media (YouTube/etc) community around it has exploded too in a way I don't recall it before (I used to be into Minecraft videos back in the ~2012 era, and what I see nowadays grosses me out in comparison).
Java Minecraft (the old version, moddable, self-hostable) and Bedrock Minecraft (windows/console only, no self-hosted servers) are quite different.
The sad thing is that Bedrock is super simple. You can get it on any tablet, pay like 5-6€ a month to Microsoft for a "realm" and you can play with 3-4 friends online. They can join even if they don't pay, any mobile device, console or windows PC will work.
With Java you need someone to host the server or pay for hosting, then you need to give the address to your friends and have them connect. Then you need to worry about whitelists, because there are multiple services scanning for open Minecraft servers and people WILL come in and fuck your world up (happened to me).
It really does, by any definition I've ever heard. I suppose the authoritative one would be [1].
A common "trick" for commercial open source software is to use a copyleft license, which restricts redistribution as part of commercial products, and to offer a paid license to get around that.
> Many people believe that the spirit of the GNU Project is that you should not charge money for distributing copies of software, or that you should charge as little as possible—just enough to cover the cost. This is a misunderstanding.
> Actually, we encourage people who redistribute free software to charge as much as they wish or can. If a license does not permit users to make copies and sell them, it is a nonfree license.
> > Actually, we encourage people who redistribute free software to charge as much as they wish or can. If a license does not permit users to make copies and sell them, it is a nonfree license.
This is interesting. If it had a limitation on reselling or a non-commercial / non-compete clause, it'd be almost perfect.
Today lots of companies come in and take open source software and "steal" the profits. (You could argue that theft is invalid since the license allows for this.) This makes it hard for the authors to build a durable business. Certainly difficult to build into a large-scale company.
Open source needs a better mechanism for authors to make money with what they create while still enabling user freedom to do what they want with the software - modify, reuse, publish changes, etc.
"Open core" is one strategy, but it feels like stepping around limitations in the license. Just spelling out "we want to make money in a defensible way" and giving user freedoms seems like a step in the right direction. More companies would probably opt to share their code if this happened.
Fascinating, from skimming that, it does indeed appear that it would be within the GNU philosophy to distribute source code solely in exchange for payment. Doesn't cover a case where the source code is _already_ distributed though, then it's free to run.
And even if the source code was only distributed to paying customers, that'd likely be a temporary situation. A relevant quote:
"With free software, users don't have to pay the distribution fee in order to use the software. They can copy the program from a friend who has a copy, or with the help of a friend who has network access."
I do read the GPLv3 such that if someone _does_ buy the code in any fashion, you must provide the source code to them for free. Relevant excerpt from section 6:
"[...] give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge."
But yeah, no obligation to provide the source code for free to non-customers, fair point. Just no ability to stop customers from sharing it with non-customers. Does make sense.
Nothing in that "authoritative" definition says you cannot charge for binaries, for example. It's talking mainly about source code itself. Something you just publish the source for but charge for anything else, would be fair game and still "open source" by that definition.
I was responding to parent's question though: "Can you call it open source if you need a subscription license to run / edit the code?"
I'd say no. If you have the code in front of you, it shouldn't require a license to run. Even if the whole point of the open source software is to interact with a proprietary piece of software or service, you could still run it for free, it probably just wouldn't have much utility.
Fully agree, luckily I don't maintain projects on GitHub anymore, but it used to be challenging long before LLMs. I had one fairly questionable contribution from someone who asked me to please merge it because their professor tasked them to build out a GitHub profile. I kinda see where the professor was coming from, but that wasn't the way. The contributor didn't really care about the project or improving it, they cared about doing what they were told, and the quality of the code and conversation followed from that.
There's many other kinds of questionable contributions. In my experience, the best ones are from people who actively use the thing, somewhat actively engage in the community (well, tickets), and try to improve the software for themselves or others. From my experience, GitHub encourages the bad kind, and the minor barriers to entry posed by almost any other contribution method largely deters them. As sad as that may be.
Data hiding is just one of the concepts of OOP. Polymorphism is another one.
How that's implemented is another question. You can do OOP in plain C, several libraries kinda did that, like GTK. Other languages tried to support these concepts with less boilerplate, giving rise to classes and such. But OOP is not about language features, it's fundamentally a way of designing software.
Polymorphism is trivial in C and even less restrictive than in other OOP-first languages. The reason why GTK (actually GObject) is so overengineered is not due to classes, but because it allows to create classes and types at runtime.
Exactly, and to my knowledge the receiving party needs to pay profit tax on them. It's called a donation, but technically more of a pay-what-you-want model. Several businesses do that.
reply