This is great aspect of it, but that doesn’t diminish that it feels so tedious to work with compared to Julia and Matlab. Some of that is just from trying to shoehorn Python as a scientific computing language, but I think it’s time to revisit whether Python should have first party support for vectorization, arrays in memory, and broadcasting as Julia and Matlab have.
I've never understood the "so tedious" argument of Python vs Matlab. Sure, having to import numpy and use np.array to create numpy arrays is a bit typing, but other than that I don't see major differences.
Given what inconsistent mess Matlab is aside from matrix manipulation, I take NumPy any day.
Where are these people who use Matlab properly? All I ever see in other people’s Matlab code is for loops. Their idea of speeding up their code is using parfor.
Obligatory licensing rant: you have to pay extra to use parfor, as I found out one day when the license server at work told me I couldn’t run somebody else’s code because we were out of licenses for that iteration construct. This is just Mathworks taking advantage of ignorant people who don’t understand what Matlab is to inflict more misery with their insane licensing scheme. It’s not just that it’s expensive, it’s that it’s weirdly unpredictable. I mean, come on, the code was slow and chock full of errors as it was. To have it randomly fail because the license server was out of parallel toolbox licenses is just insulting.
A file-based password manager ils something you have (the file) and something you know (the master password) provided you have a timeout on the password manager and a safe screensaver. (In reply to some comments below).
It does require some thought / hygiene but seems a fair compromise.
The author of the article, Philip Ball, wrote an excellent book on order almost 20 years ago: Critical Mass https://philipball.co.uk/critical-mass-how-one-thing-leads-t...
He also wrote many other interesting books but "Critical Mass" really reviews a lot concerning emerging phenomena in complex systems from the point of view of a condensed matter physicist.
As tmux is discussed: my setup is xterm + tmux with 'C-o' as the key binding. Conflicts with nothing I use and allows me to start screen while in tmux (don't ask :-O but sometimes tmux is local and I want a remote screen). The binding is also ok whether you use vi or emacs. What else could you want?
The macs I support in my private circle run very well without an antivirus. It is anecdata of course but about 15 years of it for several "lambda" users.
Besides the technical part, Fortran's community has evolved a lot as well since 5-10 years. See the community paper here: https://arxiv.org/abs/2203.15110
"The state of Fortran" (not an author myself)
To all who suggest nix or docker or whatever. Please consider that it should not be necessary in the first place. 20 years ago Apple advertised its laptops as "real Unix on your laptop" which rightly appealed to a lot of scientists
It is fair from the user to expect some stability here.
And it delivered - it is a real, as in "certified" unix. You are making here some assumptions about rate of updates, innovation and disruptions which have nothing to do with being a unix or unix-like and were never promised by apple as such.
I've done scientific work on a mac, and it was fine, now I am doing SWE work on a mac and it is fine, too. Such fragile setups would not survive most linux distro updates, the only advantage is that you could find a distro with a very low rate of innovation and thus a very long support window and call it day. But it is, obviously, not a viable choice for apple.
> But it is, obviously, not a viable choice for apple.
It's not obvious to me. Apple used to release 1 version of MacOS every 1.5-2.5 years[1]. Now it releases 1 every 11 months. And it's not like the recent versions have some groundbreaking innovations in them. Nobody cares about MacOS upgrades outside of worrying about breakage, or getting a recent enough XCode to target newer iPhones.
"groundbreaking innovation" is mostly "stuff I need" on HN. MacOS has a lot of groundbreaking innovation in it, alone the level of integration with Handoff between different devices is best in class. At the same time, apple is not living in a vacuum like a linux distro, but has to synchronize features between different device classes - it drives an ecosystem, not a macOS distribution.
>Nobody cares about MacOS upgrades
Speak for yourself. Many people do, for the rest, there is debian stable and RHEL.
Geeks who update everything every 15 minutes and actively follow tech news. Just like there exist people who buy a different set of clothes every season. It seems to me that in the past with the slower release cycle MacOS was more polished and people actually could differentiate between releases. Now most people won’t be even able to tell which one they’re using, and which release is more recent than another.
> for the rest, there is debian stable and RHEL.
Last time I checked RHEL is not an LTS version of MacOS.
Last time I checked no one promised and sold an LTS version of macos ever. If you are in a possession of such a contract I suggest to make a claim by apple.
NumPy is the lingua franca for storing and passing arrays in memory in Python.
Thank you NumPy!
reply