Here is a list of technologies/tools that I have found quite enabling (in addition to what has already been covered):
1. Earlier use of VMs and now Docker containers -- It was around 2004 that I got introduced to VMware tools to create, configure and run VMs. Life was never the same after that. No more fretting about installing pre-beta software for the fear of hosing my perfectly working system. There was a time when I had multiple servers running VMWare hypervisor, each running multiple systems. Then around 2014 I switched to using Docker containers for similar purposes and haven't had a need to use VMs.
2. Jupyter notebooks/pandas/plotly -- Can't imagine how one can explore data without this.
3. SQLite -- Perfect for writing unit tests for code that deals with SQL databases.
1. Earlier use of VMs and now Docker containers -- It was around 2004 that I got introduced to VMware tools to create, configure and run VMs. Life was never the same after that. No more fretting about installing pre-beta software for the fear of hosing my perfectly working system. There was a time when I had multiple servers running VMWare hypervisor, each running multiple systems. Then around 2014 I switched to using Docker containers for similar purposes and haven't had a need to use VMs.
2. Jupyter notebooks/pandas/plotly -- Can't imagine how one can explore data without this.
3. SQLite -- Perfect for writing unit tests for code that deals with SQL databases.