I don't like notebooks

I don’t like notebooks. That was the title of the youtube video the algorithims had suggest me to watch. How could one not like using Jupyter Notebooks? This was how I learnt to program in python and how I worked through an online deep learning course (fast.ai). What was even more interesting, was that what sparked the speakers to present the talk was from a twitter fued with the primary teacher of fast.ai (Jeremey Howard). Also the speaker (Joel Grus) was presenting at JupyterCon, an event for people who love notebooks. Kudos to the organizers for willing to invite someone like Joel, to challenge their point of view, and Joel for presenting a pretty entertaining talk.

As I began watching the talk, I realised that Joel had some points that related to me. Specifically picking up software engineering practices. As I know work in a developer, and am more involved putting things into production, I realise that some of the bad habits have crept into my workflow, and made things more difficult than they need to be.

There is a section in the talk where Joel goes into his workflow using Visual Studio Code and Ipython. While I used to work with Visual Studio Code (until recently), I switched back to Spacemacs. Within Spacemacs, it is possible to have an interactive Ipython REPL, where you can send regions/buffers to the REPL.

One thing I have noticed so far with this workflow is that encourgaes me to develop scripts, and I feel I am more inclined to write tests for the code immediately. It also allows me to think about the structure of my code and develop in a modular method. In addition, I still haven’t lost the flexibility to prototype, and experiment, by using the REPL.

Another unexpected benefit is that right now I am working from home an using Citrix to remote into my work computer. Unfortunately to use ALT + TAB with Citrix requires changing some registry tinkering. Using Spacemacs I can genereally run everything I need on just the one window/screen, and avoid using the mouse.