Open sourcing drivers would definitely go miles in helping to improve Linux's optimization and power efficiency as a whole. Unfortunately, though, until the majority of software is written to be bespoke to Linux, we're always going to be at a disadvantage. One day...
DNAmaster10
I think the other difficulty would be the requirement of knowing both Linux and Windows through-and-through to ensure the code you're writing is leveraging all the os-specific advantages. But yes, it's definitely an interesting hypothetical.
Yes, I probably should have rephrased that as "are often more efficient" rather than implying that this is always the case. I do think, and I mentioned this somewhere else, though, that it's quite a hard comparison to make. I'd probably make the argument that if the driver itself was the issue, making the driver open-source would likely (and that's a "likely" going off an assumption which I can't back up) be more efficient.
Generally speaking, my point does still apply for fully open-source software which has been developed specifically for Linux. Unfortunately, we won't be seeing much mainstream Linux-bespoke software for a while, at least not until the year of the Linux desktop finally arrives.
I completely agree with what you're saying, though.
You're right in saying that. I might be wrong, but I'm fairly sure Parkinson's Law of Data Processing is the name for this concept?
Yes, massively. At least with current data, I don't imagine it would even be possible to measure this on a large scale, especially given the variation in what a computer is actually trying to do. I think it's made even harder by the fact that software is often targetted at Windows or OSX rather than Linux, so even benchmarking software is near impossible unless you're writing software which is able to leverage the specific unique features of Linux which make it more opimized.
You probably could, but reasonably there's not enough data out there to do this.
Still, I'll mention that even with an AMD CPU and GPU, Linux does often lack support or configuration off-the-bat, to massively varying degrees. The well-known example of this is with Nvidia's propriety GPU drivers, which historically have been a massive issue, and will probably continue to be for a while even with Nvidia exposing more of its source code with its GPU drivers.
The kind of support which I'm referring to, though, extends beyond this in many ways. One thing I didn't mention, for example, is software support for linux. Many linux ports fail to leverage the full potential of Linux, either because the developers don't know how to, or because they don't care to. I recently read a dev blog for Factorio relating to this issue. The developer spoke about a very specific optimization which can be applied to Linux when saving games, which, in short, allowed for games to be saved concurrently, improving performance. Using this feature requires programming specifically for linux. While Proton offers incredible gaming support on Linux today, this sort of thing is not something which Proton can magically make work on its own.
The same sort of idea often extends out into other areas of software and hardware. Applications which have been directly ported to Linux without much consideration often fail to implement these sorts of additional features and optimizations.
The issue of hardware is, indeed, slightly different. One key thing which is often overlooked by people when assessing this sort of thing is the optimizations and tweaks applied by the hardware manufacturers and vendors themselves. These tweaks are often highly specific to the hardware they're used for, and usually the vendors will only apply them to work with Windows, or the operating system which the laptop or computer ships with. Going back to the driver issue, the same thing applies. GPU manufacturers will often release high-quality drivers aimed specifically at Windows, offering optimizations which specifically benefit Windows. There's almost zero incentive for these companies to release the same, or on-par drivers for Linux, due to its smaller market share.
What this means, is that a much larger amount of work needs to be done by the Linux community to create or improve drivers for specific hardware. Drivers which will work off-the-bat with Windows will not work at all with Linux, and companies which offer Linux alternatives for their drivers often invest significantly more time on their Windows-counterparts. This is only complicated by the fact that many hardware manufacturers keep their driver source-code highly secretive, so trying to program one or alter an existing one for linux is significantly more difficult.
AMD, as you mentioned, is often much better than alternatives such as Nvidia when it comes to releasing these "secrets" or source code, which makes developing AMD drivers for Linux significantly easier, allowing driver developers to apply many more optimizations than they would otherwise be able to.
In conclusion, then, the only way this can truly be fixed is if these companies choose to support Linux as much as they do Windows, which unfortunately won't truly happen until there's some sort of monetary incentive (ie Linux having a majority market share).
Exactly. Climate change we have the chance to mitigate, and very possibly prevent / reverse. The heat death on the other hand is not only just a theory as to how the universe might end, but also something that would likely be completely out of our control, assuming that humans even survive a fraction of the time until then. Most likely, there'll be something else that kills us first.
You do realize that the heat death of the universe would only likely take place in literally trillions and trillions and trillions of years time? Climate change is happening now.
Generally I'm not against w3 schools for quickly checking the syntax of something or how to use a specific method, but I always try stay clear of their larger code examples.
I was learning PHP a couple years back for some hobby side projects I was working on. They provide some code here about how to connect to an SQL database. I ended up using this code for almost a year on some publicly hosted sites.
The code they provided isn't secure, though. It can output database errors to the client, and give away information about your database which a random user shouldn't have access to.
Additionally, the beginning few pages for their SQL insertion examples doesn't mention anywhere that you should be using prepared statements. There is a page slightly further down, but for the average person learning the language, there's no reason for them not to just copy parts the extremely insecure code and use it in their projects.
W3 schools imo is great for quickly checking up on something, but generally it's probably better to avoid their examples and look up the language standards somewhere else.
Yeah, I was super gutted when I found out. Apparently it did use to work in the past when they used to serve the ads from different servers, but not any more, unfortunately. It's not completely pointless to install, though. It provides some great software out the box to monitor internet traffic on your network, and I'm pretty sure that in some cases it can speed up your internet by acting as a self-hosted DNS server.
The reason UBlock works, is because it has direct access to the HTML, CSS and JavaScript sent to you. It can alter the web page directly. UBlock scans all the web pages you load, and automatically removes anything it recognizes as an ad. There's a lot more to it than just that, and it's a really clever tool, but essentially what it does is directly alter the code of the web page. Unfortunately, this isn't really possible to do from another device on your network. I did look into somehow setting up a device which scans all incoming traffic like Ublock does, and then removes adverts similarly, but this isn't really possible since HTTPS traffic is encrypted. Any attempt at removing the encryption would likely result in a heap of issues to using various services, and you'll likely get constant warnings on your browser about a page being insecure e.t.c.
Second Fedora workstation. Spent almost an entire year distro hopping to find a distro that worked out the box with my laptops touch screen. Fedora has been the one - super polished too!
That's good to hear!