Websites are sandboxed to hell and back. When it works (which is not always) a website cant break out of the browser and mess with your PC.
But these HTML as faux-native apps can. The Node.js runtime has all the same access any native app has, can write and read from your file system, hook to arbitrary dll/dylib/.so libs, network card access, and beyond.
No, they're web apps, hosted on servers run in a sandboxed "browser" on your local machine. You're not running a node server on your own machine.
So how is it Apple (and even Microsoft back with Windows Phone) manages to get updates out to all their handsets on all the carriers at once?
The same way Google gets updates out to all their handsets?
No, they don't. Despite a variety of models across an array of carriers globally Apple manages to get their updates out to everybody at the same time, Google's updates even to the phones they themselves market as Google phones are staggered depending on what phone, what region and what carrier you are on.
Free as in freedom doesn't really click when it comes to software. What does it mean for software to be "free"? What can software do when it is free to do whatever it wants?
It can do whatever the users can make it do, and they can distribute the results, too — because no one is in control of those results. Therefore, the software has been freed from interference. This has the most positive ramifications for the user.
That's why it should be called Freedom Software, that way you removal this "free as in freedom, not free as in free beer" confusion altogether.
Unfortunately using copyright to protect free software is a lot like using a Jackal to guard the hens.
Using copyright to protect free software is genius because most of the problems with software are caused by copyright. If software copyrights were to be abolished, then we would scarcely need it.
No, you're confusing gratis with libre. Eliminating copyright might result in a lot more freeware (because of the removal of the restriction on redistribution of compiled binary software) but it doesn't suddenly mean anybody can get access to the code used to build those binaries. You would end up with a permissive (BSD, Apache) environment rather than a restrictive (GPL) environment, people would be free to make modifications and distribute those without the accompanying source code in the same way proprietary software vendors do now except without the monetary cost.
The only hurdle right now is that the speech-to-text is done server-side ("in the cloud"). That is by design, and at least partially to aid in lock in (prevents the devices from being used without their service).
The main reason for doing that is the ability to learn from the interactions to not only improve the speech recognition but also about understanding the intent of the language so you don't just have a canned set of speech commands to say. Sure, as you said the speech recognition component of basic commands is relatively easy (insofar as it has been done many times for a long time) and can be done on device but the understanding of the intent and range of language used to express that intent is the more complicated piece. There's a very important difference between working what you said (speech-to-text) and what you meant.
Congratulations to being technically correct and completely irrelevant and missing the point at the same time.
Well you said: You're completely forgetting about the absolutely enormous amount of servers running Linux which are owned by gigantic customers like Google and Facebook.
That just demonstrates you don't really understand how these companies work with the Linux kernel, they aren't sitting around with vulnerable servers waiting for maintainers bickering over patches to resolve the issues and get it into the next mainline release. They are patching their kernels themselves.
More to the point, if you actually read what was written Linus didn't tell Intel to "fuck off" at all, in fact it's the opposite, he is engaging with them to get them to help produce patches to the kernel to fix the issue. I'm not sure which part of what he wrote lead you to your understanding but this is what many people misunderstand about Linus: just because he uses foul-mouthed language doesn't mean he wants these people to "fuck off" or is totalitarian in his view, the result is always a compromise even if you think just because he uses naughty language that means he is a dictator and always gets his way. You would also see a big part of his rant was his confusion of IBRS and IBPB, but that's ok because that confusion got resolved because, despite your assertion, nobody is telling anybody to "fuck off".
And you're completely forgetting about the fact that Linux is open source, free software. Whether these changes are accepted into the kernel or not is largely irrelevant for companies like Google and Facebook who can just apply the changes as a patch if they decide to. Both of those companies have many Linux kernel developers and do their own custom kernel modifications anyway so it's pretty trivial. That's the great thing about free software.
A completely meaningless name is better than Free for software that is free to use to the fullest? I strongly disagree, and if we disagree that much we may as well drop it.
As I said, prefixing something like software to which people generally ascribe a monetary cost with the word "free" generally implies it is free of that monetary cost. If you want to convey something other than that then quite obviously to avoid confusion you should use another term.
I suggested something like "copyleft-compatible" but for some reason you seem completely unable to disconnect from "GPL-compatible" despite me pointing out multiple times that they are not only *not* the same thing but I never used the latter term. Just like a product name you want uniqueness such that people who don't know what it is will ask what it is rather than just making the generally quite safe assumption that the use of a term like 'free' in that context is free of monetary cost.
You're being deliberately disingenuous if you say you really believe the best term for this is free software when that means restricted, closed-source, proprietary, patented software that is free of charge and can also mean software that is free of restriction and what it means just depends on who you talk to. i.e. free software is really a meaningless term because it can mean so many different and contradictory things. You can *say* that you believe that if you like but clearly you aren't being honest. Hey Windows 10 was free software for quite a while there, all those free software advocates should have been pretty happy about that.
You didn't say "compatible with the GPL". You said "copyleft-compatible". Not all Free software is GPL-compatible, and I didn't bother looking up other copyleft licenses to see if said Free Software is compatible with them.
I haven't found anything that isn't, but I know not all free software is GPL-compatible which is why I explicitly used the term copyleft-compatible rather than GPL-compatible so I still don't understand your fixation on GPL-compatible when you're the only one who has said that.
Yes, pretty much ANYTHING is better, Glabloyfil Software would have been a better choice because at least people wouldn't have any reasonable understanding of what that might mean and aren't going to confuse it with the common usage of a term.
Not all Free Software is compatible with the GPL.
I didn't say "compatible with the GPL", even just trying to explain things you're getting confused but at least you're starting to see the problem, free software is just about anything from proprietary closed source applications that you don't pay for, to web-based applications that run on other corporations' servers that you don't pay for to GPL-licensed software to permissively licensed software and the latter 2 you may or may not be paying for in some capacity.
The client does these calculations when it works out whether to show the other players on screen, no fundamental reason why the server can't do the same thing in parallel.
So how do you know to render a shadow or a reflection if you don't know what is casting the shadow or reflecting? In order to do that you need the player's location despite the fact that the player might be obstructed by something. Thus the hack can then immediately point out where that player is. And of course it is prohibitive to do all your rendering from every player's view on the server just to determine whether environmental effects have had an influence and that's before you even begin to consider the spatial audio processing side of things that needs the location where shots have come from for bullets whizzing by or for players' footsteps or vehicle engines and other noises.
You are think of something like raycasting against mesh geometry. That's not how it's done.
Yes that's what I'm pointing out, but then what you go on to describe is not visibility testing, it's the way physics engines work which is much more coarse grained that what you need for visibility testing.
Windows would be part of the geometry. You know where they are.
Same goes for doors that are shut/open/blown off.
Yes but it isn't a simple bounding box of the geometry, it's more complex as is the actual intersection testing itself, it's not a simple line test. As I mentioned in another post you have the environmental effects of the player that while they may be obstructed they may cast a shadow or be reflected and spotting these things is part of the skill of the game, as is the positional audio not just of footsteps and vehicle engines but of bullets whizzing by where you have both a graphical hook and an audio one to process with which, again, you can use hacks to eliminate the need for the skill in determining where it came from so while the players' locations are indeed needed for many things even eliminating the player location isn't going to do that much in terms of cheating.
But the servers still need to stop sending everyone's location to every player
You very often have to do that, just because you don't have line of sight with a player's body doesn't mean that player's position won't have an impact on the game. The local system needs to know players' positions and velocity for all manner of things from rendering reflections to positional audio. Even if you don't send the locations the the player effect the world in ways that allow you to determine their location - the art of gameplay is the human having to do that and not using software tools/hacks to do it for them - for example if the local system needs to produce the visual and audio effect of bullets whizzing by it's going to be reasonably easy to deduce the origin of the shots.
But it has nothing to do with Bitcoin, which at this point is no longer a currency, but just pure speculation and gambling.
It never really worked as a currency, nobody priced things in bitcoin because it was far too volatile, instead anybody accepting bitcoin either priced things in fiat currencies and specified "equivalent in bitcoin" or used an intermediary to convert bitcoin to fiat currencies so they didn't have to hold bitcoin.
Then such software is copyleft-compatible. It's a poor choice to try to lump it all together using a term that has a pretty reasonably assumed meaning already, i.e. something that traditionally comes with a monetary cost being designated as Free generally (yes there are exceptions) means it comes without that monetary cost. So apps that don't cost money are indeed free software.
The definition of Free Software is clarified by the memorable phrase "Free as in speech, not as in beer."
Except the vast majority have never heard such a phrase (at least not applied to software), hence the confusion, not to mention that the side-effect of free software (as in free speech) also being free of charge adding to that confusion. So when you say "free as in speech, not as in beer" that's not really true, the removal of restriction means it's almost always both those things, just to make it a little more confusing for people.
Lots of people have been trying to come up with meaningful and unambiguous words for lots of things. It's not always possible.
But obviously the need to explain this term all the time proves that of all the possible choices it was a poor choice.
Visibilty testing server side is very straight forward it's not a hard problem. You just need basic representation of geometry via bounds and test for line intersection.
Well no, that's a naive oversimplification that won't actually work in the real game. You do have things like windows so you can't just do the bounds of geometry. You also have to consider environmental effects like reflections and fog/smoke. It also isn't just a simple test for line intersection, the player's positions are not just an infinitesimally small point in space, they have mass (and that varies significantly if they are in a vehicle or not). That's a significant load on the server to do this for all the players against all the other players.
There's a difference between Open Source as "software where you can look at the source" and "software with an OSI-approved license". That's caused a lot of confusion over the years.
Instead of being called "Open Source" they should have used a term that cannot be conflated with something that already exists, in general what the OSI defines as Open Source is a subset of what most people would consider Open Source. It's worse on the Free Software side - as AC above points out - which most people would indeed view as free apps or apps that you don't have to pay anything for. Instead they should have used a term like Copyleft Software which at least is going to prompt people to ask what it is rather than having to clarify that Free Software means something different to you than it does to them.
Look at several domains of computers: free software makes up the vast majority of operating systems for servers, mainframes, and smartphones.
I think you'll find those are all made up of a combination of free and non-free software. A lot (probably the majority) of embedded systems use Linux too but they also interact with a whole bunch of non-free software and services to provide functionality to users.
Nothing in particular an Android phone wouldn't suffice for. Switching just means going through the hassle of downloading all the Android versions of the applications, setting up various accounts, somehow transferring SMS/MMS/iMessage messages across, etc...
If the iPhone devolves further into a form over function annoyance from a usability perspective then I would consider going through the hassle to switch.
There's the transaction fee paid to the network for any transaction on the network and then obviously the exchange takes a cut if you want to convert BTC into some other currency.
The problem is that miners get incentivized by a combination of 2 things, the first is the transaction fees and the second is the block reward. The latter is getting lower and lower as we approach the limit on the number of bitcoins so the transaction fees increase to compensate for that and to keep miners participating in the network.
The title and heading of that page is: Security Bulletin: NVIDIA Driver Security Updates for CPU Speculative Side Channel Vulnerabilities
CPU, not GPU. It goes on to say: We believe our GPU hardware is immune to the reported security issue. As for our driver software, we are providing updates to help mitigate the CPU security issue.
Except laptop computers shipping with (and warranted to run) GNU/Linux tend to demand a higher price than laptop computers shipping with (and warranted to run) Windows, despite GNU/Linux's smaller royalty per copy than Windows. What in the free market makes this happen?
Linux is not free of cost, economies of scale means dedicated Linux machines have a higher support cost and a higher cost of testing the machines. This is already well known.
Websites are sandboxed to hell and back. When it works (which is not always) a website cant break out of the browser and mess with your PC.
But these HTML as faux-native apps can. The Node.js runtime has all the same access any native app has, can write and read from your file system, hook to arbitrary dll/dylib/.so libs, network card access, and beyond.
No, they're web apps, hosted on servers run in a sandboxed "browser" on your local machine. You're not running a node server on your own machine.
and that PWAs are hosted on the developer's server, so can be updated directly from there
I can't imagine any way that these apps would be compromised by hackers... not a single one!
How is that different to any website or webapp?
So how is it Apple (and even Microsoft back with Windows Phone) manages to get updates out to all their handsets on all the carriers at once?
The same way Google gets updates out to all their handsets?
No, they don't. Despite a variety of models across an array of carriers globally Apple manages to get their updates out to everybody at the same time, Google's updates even to the phones they themselves market as Google phones are staggered depending on what phone, what region and what carrier you are on.
So how is it Apple (and even Microsoft back with Windows Phone) manages to get updates out to all their handsets on all the carriers at once?
Free as in freedom doesn't really click when it comes to software. What does it mean for software to be "free"? What can software do when it is free to do whatever it wants?
It can do whatever the users can make it do, and they can distribute the results, too — because no one is in control of those results. Therefore, the software has been freed from interference. This has the most positive ramifications for the user.
That's why it should be called Freedom Software, that way you removal this "free as in freedom, not free as in free beer" confusion altogether.
Unfortunately using copyright to protect free software is a lot like using a Jackal to guard the hens.
Using copyright to protect free software is genius because most of the problems with software are caused by copyright. If software copyrights were to be abolished, then we would scarcely need it.
No, you're confusing gratis with libre. Eliminating copyright might result in a lot more freeware (because of the removal of the restriction on redistribution of compiled binary software) but it doesn't suddenly mean anybody can get access to the code used to build those binaries. You would end up with a permissive (BSD, Apache) environment rather than a restrictive (GPL) environment, people would be free to make modifications and distribute those without the accompanying source code in the same way proprietary software vendors do now except without the monetary cost.
The only hurdle right now is that the speech-to-text is done server-side ("in the cloud"). That is by design, and at least partially to aid in lock in (prevents the devices from being used without their service).
The main reason for doing that is the ability to learn from the interactions to not only improve the speech recognition but also about understanding the intent of the language so you don't just have a canned set of speech commands to say. Sure, as you said the speech recognition component of basic commands is relatively easy (insofar as it has been done many times for a long time) and can be done on device but the understanding of the intent and range of language used to express that intent is the more complicated piece. There's a very important difference between working what you said (speech-to-text) and what you meant.
Congratulations to being technically correct and completely irrelevant and missing the point at the same time.
Well you said:
You're completely forgetting about the absolutely enormous amount of servers running Linux which are owned by gigantic customers like Google and Facebook.
That just demonstrates you don't really understand how these companies work with the Linux kernel, they aren't sitting around with vulnerable servers waiting for maintainers bickering over patches to resolve the issues and get it into the next mainline release. They are patching their kernels themselves.
More to the point, if you actually read what was written Linus didn't tell Intel to "fuck off" at all, in fact it's the opposite, he is engaging with them to get them to help produce patches to the kernel to fix the issue. I'm not sure which part of what he wrote lead you to your understanding but this is what many people misunderstand about Linus: just because he uses foul-mouthed language doesn't mean he wants these people to "fuck off" or is totalitarian in his view, the result is always a compromise even if you think just because he uses naughty language that means he is a dictator and always gets his way. You would also see a big part of his rant was his confusion of IBRS and IBPB, but that's ok because that confusion got resolved because, despite your assertion, nobody is telling anybody to "fuck off".
And you're completely forgetting about the fact that Linux is open source, free software. Whether these changes are accepted into the kernel or not is largely irrelevant for companies like Google and Facebook who can just apply the changes as a patch if they decide to. Both of those companies have many Linux kernel developers and do their own custom kernel modifications anyway so it's pretty trivial. That's the great thing about free software.
A completely meaningless name is better than Free for software that is free to use to the fullest? I strongly disagree, and if we disagree that much we may as well drop it.
As I said, prefixing something like software to which people generally ascribe a monetary cost with the word "free" generally implies it is free of that monetary cost. If you want to convey something other than that then quite obviously to avoid confusion you should use another term.
I suggested something like "copyleft-compatible" but for some reason you seem completely unable to disconnect from "GPL-compatible" despite me pointing out multiple times that they are not only *not* the same thing but I never used the latter term. Just like a product name you want uniqueness such that people who don't know what it is will ask what it is rather than just making the generally quite safe assumption that the use of a term like 'free' in that context is free of monetary cost.
You're being deliberately disingenuous if you say you really believe the best term for this is free software when that means restricted, closed-source, proprietary, patented software that is free of charge and can also mean software that is free of restriction and what it means just depends on who you talk to. i.e. free software is really a meaningless term because it can mean so many different and contradictory things. You can *say* that you believe that if you like but clearly you aren't being honest. Hey Windows 10 was free software for quite a while there, all those free software advocates should have been pretty happy about that.
You didn't say "compatible with the GPL". You said "copyleft-compatible". Not all Free software is GPL-compatible, and I didn't bother looking up other copyleft licenses to see if said Free Software is compatible with them.
I haven't found anything that isn't, but I know not all free software is GPL-compatible which is why I explicitly used the term copyleft-compatible rather than GPL-compatible so I still don't understand your fixation on GPL-compatible when you're the only one who has said that.
Was there a better one?
Yes, pretty much ANYTHING is better, Glabloyfil Software would have been a better choice because at least people wouldn't have any reasonable understanding of what that might mean and aren't going to confuse it with the common usage of a term.
Not all Free Software is compatible with the GPL.
I didn't say "compatible with the GPL", even just trying to explain things you're getting confused but at least you're starting to see the problem, free software is just about anything from proprietary closed source applications that you don't pay for, to web-based applications that run on other corporations' servers that you don't pay for to GPL-licensed software to permissively licensed software and the latter 2 you may or may not be paying for in some capacity.
The client does these calculations when it works out whether to show the other players on screen, no fundamental reason why the server can't do the same thing in parallel.
So how do you know to render a shadow or a reflection if you don't know what is casting the shadow or reflecting? In order to do that you need the player's location despite the fact that the player might be obstructed by something. Thus the hack can then immediately point out where that player is. And of course it is prohibitive to do all your rendering from every player's view on the server just to determine whether environmental effects have had an influence and that's before you even begin to consider the spatial audio processing side of things that needs the location where shots have come from for bullets whizzing by or for players' footsteps or vehicle engines and other noises.
You are think of something like raycasting against mesh geometry. That's not how it's done.
Yes that's what I'm pointing out, but then what you go on to describe is not visibility testing, it's the way physics engines work which is much more coarse grained that what you need for visibility testing.
Windows would be part of the geometry. You know where they are. Same goes for doors that are shut/open/blown off.
Yes but it isn't a simple bounding box of the geometry, it's more complex as is the actual intersection testing itself, it's not a simple line test. As I mentioned in another post you have the environmental effects of the player that while they may be obstructed they may cast a shadow or be reflected and spotting these things is part of the skill of the game, as is the positional audio not just of footsteps and vehicle engines but of bullets whizzing by where you have both a graphical hook and an audio one to process with which, again, you can use hacks to eliminate the need for the skill in determining where it came from so while the players' locations are indeed needed for many things even eliminating the player location isn't going to do that much in terms of cheating.
But the servers still need to stop sending everyone's location to every player
You very often have to do that, just because you don't have line of sight with a player's body doesn't mean that player's position won't have an impact on the game. The local system needs to know players' positions and velocity for all manner of things from rendering reflections to positional audio. Even if you don't send the locations the the player effect the world in ways that allow you to determine their location - the art of gameplay is the human having to do that and not using software tools/hacks to do it for them - for example if the local system needs to produce the visual and audio effect of bullets whizzing by it's going to be reasonably easy to deduce the origin of the shots.
But it has nothing to do with Bitcoin, which at this point is no longer a currency, but just pure speculation and gambling.
It never really worked as a currency, nobody priced things in bitcoin because it was far too volatile, instead anybody accepting bitcoin either priced things in fiat currencies and specified "equivalent in bitcoin" or used an intermediary to convert bitcoin to fiat currencies so they didn't have to hold bitcoin.
Not all Free Software is copylefted.
Then such software is copyleft-compatible. It's a poor choice to try to lump it all together using a term that has a pretty reasonably assumed meaning already, i.e. something that traditionally comes with a monetary cost being designated as Free generally (yes there are exceptions) means it comes without that monetary cost. So apps that don't cost money are indeed free software.
The definition of Free Software is clarified by the memorable phrase "Free as in speech, not as in beer."
Except the vast majority have never heard such a phrase (at least not applied to software), hence the confusion, not to mention that the side-effect of free software (as in free speech) also being free of charge adding to that confusion. So when you say "free as in speech, not as in beer" that's not really true, the removal of restriction means it's almost always both those things, just to make it a little more confusing for people.
Lots of people have been trying to come up with meaningful and unambiguous words for lots of things. It's not always possible.
But obviously the need to explain this term all the time proves that of all the possible choices it was a poor choice.
Visibilty testing server side is very straight forward it's not a hard problem. You just need basic representation of geometry via bounds and test for line intersection.
Well no, that's a naive oversimplification that won't actually work in the real game. You do have things like windows so you can't just do the bounds of geometry. You also have to consider environmental effects like reflections and fog/smoke. It also isn't just a simple test for line intersection, the player's positions are not just an infinitesimally small point in space, they have mass (and that varies significantly if they are in a vehicle or not). That's a significant load on the server to do this for all the players against all the other players.
As we move closer to all the tokens being mined the fees have to increase to keep people participating in the network.
There's a difference between Open Source as "software where you can look at the source" and "software with an OSI-approved license". That's caused a lot of confusion over the years.
Instead of being called "Open Source" they should have used a term that cannot be conflated with something that already exists, in general what the OSI defines as Open Source is a subset of what most people would consider Open Source. It's worse on the Free Software side - as AC above points out - which most people would indeed view as free apps or apps that you don't have to pay anything for. Instead they should have used a term like Copyleft Software which at least is going to prompt people to ask what it is rather than having to clarify that Free Software means something different to you than it does to them.
Look at several domains of computers: free software makes up the vast majority of operating systems for servers, mainframes, and smartphones.
I think you'll find those are all made up of a combination of free and non-free software. A lot (probably the majority) of embedded systems use Linux too but they also interact with a whole bunch of non-free software and services to provide functionality to users.
Nothing in particular an Android phone wouldn't suffice for. Switching just means going through the hassle of downloading all the Android versions of the applications, setting up various accounts, somehow transferring SMS/MMS/iMessage messages across, etc...
If the iPhone devolves further into a form over function annoyance from a usability perspective then I would consider going through the hassle to switch.
There's the transaction fee paid to the network for any transaction on the network and then obviously the exchange takes a cut if you want to convert BTC into some other currency.
The problem is that miners get incentivized by a combination of 2 things, the first is the transaction fees and the second is the block reward. The latter is getting lower and lower as we approach the limit on the number of bitcoins so the transaction fees increase to compensate for that and to keep miners participating in the network.
The title and heading of that page is:
Security Bulletin: NVIDIA Driver Security Updates for CPU Speculative Side Channel Vulnerabilities
CPU, not GPU. It goes on to say:
We believe our GPU hardware is immune to the reported security issue. As for our driver software, we are providing updates to help mitigate the CPU security issue.
Except laptop computers shipping with (and warranted to run) GNU/Linux tend to demand a higher price than laptop computers shipping with (and warranted to run) Windows, despite GNU/Linux's smaller royalty per copy than Windows. What in the free market makes this happen?
Linux is not free of cost, economies of scale means dedicated Linux machines have a higher support cost and a higher cost of testing the machines. This is already well known.