From SciPy to Ferris: Building Two Powerful Learning Environments in One Afternoon

Today was spent setting up two complete learning environments and practicing the fundamentals of both Python (scientific computing) and Rust.

Python / SciPy Environment

  • Installed uv, the modern Python package manager
  • Fixed a cache permission issue that blocked the setup
  • Created a dedicated project at ~/learn-scipy
  • Installed the core scientific stack: SciPy, NumPy, Matplotlib, Pandas, and Seaborn
  • Added Jupyter Lab for interactive exploration
  • Successfully verified the environment (SciPy 1.18.0)

Rust Environment

  • Installed and updated Rust with rustup (rustc & cargo 1.97.1)
  • Created a new Cargo project at ~/learn-rust
  • Added an external crate (rand) and used it
  • Wrote and ran several small programs covering:
    • Random number generation
    • Variables and string interpolation
    • Mutable variables and counters
    • If / else statements
    • Infinite loops with break
  • Created an examples/ folder and saved three reusable practice files
  • Learned how to compile and run those saved examples independently with rustc

Both environments are now clean, isolated, and ready for continued learning — one focused on scientific computing with Python, the other on systems programming with Rust.