Escaping from Anaconda's Stranglehold on macOS

Anaconda on macOS and shell configuration

  • Many commenters note Anaconda on macOS aggressively modifies shell startup files (.zshrc, PATH, even shadowing tools like lipo) and auto‑activates the base environment.
  • This confuses beginners who later install “official” Python and find that python3 still runs Anaconda’s version.
  • The article’s GUI-based workaround (renaming .zshrc in Finder) is seen by some as elegant and reversible for non‑CLI users; others call it overcomplicated and “insane” compared to a one‑line shell command or simply editing out the conda init line.
  • Some stress that auto‑activation can be disabled (conda config --set auto_activate_base false), but beginners rarely know this.

Licensing and institutional backlash

  • Anaconda’s newer licensing terms for institutions are widely criticized as ambiguous and “dark pattern”–like, especially around universities with >200 employees.
  • Some organizations report being approached in a hostile, “you’re in legal trouble” way and are now purging Anaconda despite liking the product.
  • Others note that Miniconda/Miniforge with conda‑forge channels avoid most licensing issues.

Virtual environments vs direct installs

  • Strong disagreement over the article’s line that avoiding virtual environments is a benefit.
  • Many argue beginners are precisely the ones who must learn venv/conda, otherwise they break global installs or can’t manage multiple projects.
  • Others counter that venvs, pyenv vs virtualenv vs conda, etc. are already a confusing mess; for novices doing a single course, direct installs into a dedicated user‑level Python may be simpler.

Teaching beginners: CLI, GUIs, and scope

  • Split between “teach shell, filesystem, PATH from day one” and “don’t front‑load everything; let students focus on Python and hide infrastructure via GUIs/IDEs.”
  • Some report non‑CS students can grasp basic CLI in under an hour; others say many modern students lack even file/folder concepts and are intimidated by terminals.
  • Suggested teaching environments include: VS Code with built‑in venv support, IDLE, Docker/containers, hosted web notebooks, or institutionally managed Nix-based setups.

Alternatives and broader ecosystem

  • Alternatives mentioned: Miniforge/conda‑forge, pixi, MacPorts, Homebrew + pip/venv, pyenv + poetry, uv, mise, Nix/Guix, Docker/Podman.
  • Conda is defended as a cross‑platform, multi‑language package manager that handles C/Fortran/ABI issues well, especially for scientific computing, though some find it slow or fragile.
  • Many comments broaden into frustration that Python packaging/environments remain notoriously complex compared to R, MATLAB, or Julia, with references to the “XKCD Python environment” comic and calls for a more unified, Rust‑/Cargo‑like model.