Development Environment
Setting up a predictable development environment.
Integrated Development Environment (IDE)
An IDE provides the following features:
- Autocompletion
- Automatically formats code
- Checks if code is syntactically correct
-
Warnings about styles and types
-
VS Code : Recommended
- PyCharm : Plug and play
- Neovim : Configurable, complicated
- 'distributions' : nvchad, astrovim, lazyvim
Be sure to install the appropriate plugins for python/R language support.
Windows vs Mac vs Linux
NOTE: Windows users: Please install windows subsystem for linux (WSL)
Differences in operating system affect the tools available on each.
Linux and Mac have a lot in common, as both originated from Unix. Windows however is quite different.
- | Linux | Mac | Windows |
---|---|---|---|
Security | root user (sudo ) |
root user (sudo ) |
Admin privileges (Run as administrator) |
Paths | /usr/home/john/... |
/Users/john/... |
C:\... |
Console | terminal (bash/fish ) |
terminal (bash ) |
powershell |
Package manager | apt (debian) |
brew |
. |
Configuration | Environment variables | Environment variables | Registry |
Upon installing WSL, the table looks like this:
- | Linux | Mac | Windows |
---|---|---|---|
Security | root user (sudo ) |
root user (sudo ) |
root user (sudo ) |
Paths | /usr/home/john/... |
/Users/john/... |
/usr/home/john/... |
Console | terminal (bash/fish ) |
terminal (bash/fish ) |
terminal (bash/fish ) |
Package manager | apt (debian) |
brew |
scoop |
Configuration | Environment variables | Environment variables | Environment variables |
Thus, it is highly recommended that WSL be used, as this allows use of standardized scripts.
For a deeper look, the typical architecture of a laptop/desktop computer is:
TODO