| Thank you. I’m really excited about it. Using a different CPU architecture is always exciting. :) Using Mac is like driving an Audi S8. Comfortable, smooth, powerful. However, it's not your hand tuned Impreza which can read your mind while going above 200Km/h. Even an Intel MacBook pro can go a long time on battery (I have a personal Mid2014, configured all-out). I've developed some system-abusing scientific code on it and, it really delivers. The trick for me is, I can make a Mac dev machine without modifying it with homebrew, et. al. I install a Linux VM to VMWare, give it a static IP, install all required tools, servers and services on it. On the macOS side, I use Eclipse for IDE and use clang/llvm for compiling (since I also aim to code which behaves same on both gcc and llvm). I develop on macOS and interface it with Linux VM via network if it's absolutely necessary. Linux VM also hosts some heavy tooling like LaTeX which cannot be installed/updated on macOS very cleanly (I know macTeX. It doesn't play nice with newer macOS, due to Apple's locks on the OS). Then everything becomes transparent for me. Pull -> Develop -> Push in either direction. Eclipse already syncs itself via oomph and cloud. Code is portable, environment is same. It also ensures code compatibility, allows me to see compiler effects and run tests on many platforms. As aforementioned, it also inspires me to write better software. My code carries Apple's sensible defaults and it-works mentality with Linux's flexibility options. This approach allowed me to create a series of utilities for a project in limbo. These small no-setup utilities saved a lot of labor and ultimately saved the project. So yes, apple is a walled garden and it's not optimal but, they do a lot of right things. We can selectively carry them to more open platforms to make them better. Similarly, open platforms' flexibility can be carried to some macOS applications so, the environment better accommodates power users out of the box. Homebrew and other tools are nice but, I don't like to shoehorn stuff which doesn't fit natively into an ecosystem. |
I’ve been using LaTeX from /opt/local with zero integration issue, even on Big Sur. What are the issues you’re alluding to?
Otherwise, I agree with your take in general, except that I do everything you do in a Linux VM directly in macOS. I develop and run my codes on a Linux workstation and an iMac, and going back and forth improves the codes a lot. Performance and usability issues are spotted much earlier.
I much prefer Macports’ approach than Homebrew’s. It is nicely self-contained in /opt/local, does not break when a system library is updated, and the file system layout is much saner. Just update your environment in zshrc and you get all the benefits whilst not changing anything for all the stuff that you don’t run in a terminal.