Linux did take over the world, just not on the desktop. It was on servers and mobile, which now have more users than desktops or laptops (edit: servers via the web).
Technology gets its warts fixed when it grows along an explosive new market, especially if the market ends up being larger than the last.
Python is currently riding the data science wave, and that wave is growing. If that market expands to the point where large scale data-science type work wags the dog of VBA/excel, the clunkiness[1] will work itself out.
[1] - I don't actually understand what's clunky about Python in the context of the article. Seems like a reasonable direction in a complex market (reinsurance) driven by actuaries. I'd be surprised if newgrad actuaries/stats people aren't using Python?
Linux dominates the server world AND the entertainment device world (hello busybox & gstreamer!)
[1] Regarding clunkiness of Python: mostly it is the packages, installation, and 2.x vs 3.x nightmare that persists. Everyone seems to forget the initial pain getting the Python env to work, esp. when it comes to cython native compilation issues / arch wheels, unsupported packages, etc. The only issue I have with python is it is extremely challenging to make cross-platform deployments for single-executables. I've tried three different approaches and they were all trainwrecks. Once that is ironed out, I'll be switching from Electron to whatever Python offers.
but that discounts the tens of thousands of projects that are already out there that are in use and need conversion.
it'll take probably 3-5 years for it to really go away.
But I class this as a packaging issue more than a 2.7 vs 3.x issue: you see the same problems with (as a random example...) different versions of OpenCV - people not using virtual environments have problems even if they are all on 3.7.
When I think of the "2.x vs 3.x problems" I was thinking more of the language and core libray level incompatibilities.
The Catalina release notes[1] said they would remove it and I was sure they mentioned it again in this year’s WWDC but apparently it’s still included after all.
[1] “Scripting language runtimes such as Python, Ruby, and Perl are included in macOS for compatibility with legacy software. Future versions of macOS won’t include scripting language runtimes by default, and might require you to install additional packages. If your software depends on scripting languages, it’s recommended that you bundle the runtime within the app.”
I'm honestly not sad that it never happened.
It took over my desktop around ~1998 and I wonder if massive adoption of Linux on the desktop would have benefited me or been worse (from my perspective).
As it stands literally every single tool I want/need to do my job is already available for Linux and indeed many of those tools are simply better on Linux (docker on a mac is horrible, I have a work issued current gen macbook pro, I use it purely for testing docker set-ups and then it goes back in its case).
Its going to sound elitist but not dumbing down the platform for the average user is a benefit to me.
For things where data exploration and formulas should be in the foreground or where data and formulas should be strictly separated python (or a python/jupyter notebook) has tangible benefits (e.g. really good list syntax).
Pretty much all servers run on linux.
Linux also dominates smartphones in the form of Android phones.
Chrome OS is also linux, and it's market share is currently at around 6%.
I mean, other than desktops Linux pretty much is everywhere.
Not really.
See any Linux specific APIs on the NDK official APIs?
https://developer.android.com/ndk/guides/stable_apis
Android is a mix of Java and Kotlin based frameworks, ISO C and C++, POSIX subset and a couple of additional libraries.
Whatever kernel gets used is an implementation detail for Google and Android device makers.
Can be completely replaced in Android 12, and the eco-system would continue to work.
> Chrome OS is also linux, and it's market share is currently at around 6%.
Basically Android (already mentioned above) and Web stacks.
https://chromeos.dev/en/android-environment
https://chromeos.dev/en/web-environment
Ah, but it does expose Linux you say, https://chromeos.dev/en/linux
Indeed, except of the small detail that as shown on the Google IO talk, it is actually a design similar to WSL 2, running a second kernel on a hypervisor based environment.
The real kernel powering ChromeOS doesn't get exposed to userspace and can also be replaced at any time, if Google so desires.
In fact, in a near future Android and ChromeOS can be running on top of Fuchsia and most consumers wouldn't even notice.
Thank you, I appreciate it :)
Recurring annual costs (over 10 years) 3.) Contractor at $150 an hour = $300K annually 4.) Contractor PM at $50 an hour = $100K annually 5.) Information security compliance hoops, getting it to play nicely with the myriad of endpoint security tools, etc 6.) Ongoing maintenance and support (failed rollouts and upgrades, user desktop support, user training)
You just don't jump from "humans in Excel" to "CI/CD perfected pipeline" overnight, nor do you need it.
Excel shops still have costly expenses rewriting entire workflows/re-doing Excel files constantly as people come and go, it's not like there isn't already maintenance cost with the current method.
People who have used Python for some years seem to forget just how clunky it really is. I've been using Excel since 1990, and sure, it has its own warts, but Python is a very rudimentary tool compared to Excel.
Python is a machine shop. Excel is a car. It may be a lemon, but it's a functional car.
This is a great example of programmers not being able to see the forest for the trees. Reminds me of the "Once Linux gets a desktop it will take over the world" debate from circa 1997-today.