Development Environments
Keith VanderLinden
Calvin University
Infrastructure for ML Systems
Layers of infrastructure required to support ML systems:
- Development Environment
- ML Platform
- Resource Management
- Storage & Compute
From DMLS Figure 10-2; cf. SaaS-PaaS-IaaS.
Command-Line Interfaces
Command-Line Interfaces (CLIs) are text-based interfaces to computer systems that:
- were an early form of user interaction with computers.
- were largely superseded by more intuitive Graphical User Interfaces (GUIs).
- are still heavily used for system administration and scripting.
Examples: Bash for Linux and Windows Subsystem for Linux (WSL2), PowerShell for Windows, Zsh for OSx, …
Python
- Python is a high-level, general-purpose programming language.
- Python virtual environments bundle the libraries required for separate tasks in separable modules.
- The set of Python libraries for a virtual environment can be specified using
requirements.txt
.
Integrated Development Environments
Integrated Development Environments (IDEs) are software tools that integrate multiple development tools, including:
- Document editing and rendering
- Code development integration, e.g., programming, debugging, testing, …
- File management
- DVCS integration
- CLI integration
- LLM integration
Local Development Environment
See the live walkthrough.
![]()