174 karma · joined April 3, 2019
Also some guitar, synth, beer brewing and other random obsessions.
[ my public key: https://keybase.io/chthonicdaemon; my proof: https://keybase.io/chthonicdaemon/sigs/cv30E-O3iqFFk4iStynruy-GsTYQqXcpmvU8JrOtDqc ]
I think that in all the notebook solutions I've seen that allow this, a culture emerges where the "final result" is put at the top so that you can find it easily and interact with it as a user. The actual development process involves writing stuff top down and then re-ordering it for use.
Smaller and more recent: iTerm has deep tmux support. Just do `tmux -CC` to start your session or `tmux -CC a` to attach to it and you don't have to memorise all the tmux commands.
In my case, I usually cd to the project directory, activate the associated environment, then do one of the following to work on a notebook in one of my projects, `jupyter lab`, `pycharm .`, or `code .` and go from there. In all of these cases, I get the ability to open notebooks that make use of this environment, either in the actual Jupyter lab interface, or in the tool's notebook interface (pycharm or vs code). All of these options make it pretty effortless to use the kernel associated with the environment - it's either automatically selected or it's the default in the dropdown.
By this time I must admit that the random note playing is just an activity that I enjoy improving at independently, while I do think it's also making it easier for me to pick up new pieces quickly.
In the case of playing a random piece of music, if you don't know it, again, how do you know how well you've done? I've been contemplating a similar thing with my repertoire playing, choosing a random bar for revision or learning via Anki.
Another thing - it sounded like you already played your instrument well, but wanted sight read, when you were doing this learning. So perhaps you already had a lot of the phrases in your fingers so to speak and this was just allowing you to connect the notation to what you already knew how to play. Do you think this would have worked well in my case where I could play a different instrument but didn't have any mechanical memory of chord shapes, arpeggios and so on in my fingers?
I have gone through various phases in how it feels to play these random notes. Right at the beginning there is obviously the mechanical skill of just being able to put your fingers in the right place. This is less pronounced on piano than guitar, since single notes on the piano are obviously pretty easy for anyone. But when I switched to chords, I definitely felt the feeling I remember from learning the guitar, where the campfire chord shapes seemed to be just impossible to achieve with my fingers.
Keep in mind that this is not the only thing I'm doing to learn - I am also learning pieces, playing arpeggios and scales and studying music theory. Lately I've been gaining speed on the random notes by identifying runs and reading ahead a bit like you're describing.
I am quite proficient at guitar, played in a band and did a lot of pop music playing where you're handed a lyric sheet with chords and you have to just play. I can do that pretty much without prep. I can also "sight read" tablature for reasonably simple finger picking for novel songs quite a bit faster than I am able to do it on piano at the moment. I could never quite get there for traditional notation although I tried. I struggled to improve because once I knew the piece, I could play it without reading the music. So I would laboriously figure out the fingerings, then just play the piece from memory once I had done that. This was all happening in the early 1990s so I also didn't have the glut of music we would have now. Tablature was much more available for the pieces I wante to learn than traditional notation. I guess there is a mode where you force yourself to only learn new pieces all the time, but I found that pretty frustrating coming from zero.
I'm finding with piano, now that I have the notes in my fingers, that first step is much less frustrating and I can focus on building the mechanical dexterity to execute the phrases and remember the music.
I believe this is solving the common complaint that you can't just email a jupyter notebook, since it doesn't capture the dependencies.
Playing with other people also highlights other perhaps unexpected skills. I played in a band for a while and I still retain the skill of reading chords off other player's hands. You also need to be able to respond to someone just shouting "OK, let's go to C minor" in ways that only matter in that context. When you're listening or sight reading, you don't need names.
More recently though, consider that LLMs are terrible at emitting binary files, but amazing at emitting text. I can have a GPT spit out a nice diagram in Mermaid, or create calendar entries from a photo of an event program in ical format.
What chat interfaces have over CLIs is good robustness. You can word your request in lots of different ways and get a useful answer.
pydoc -b is also very useful as a standard lib reference when you're not connected to the internet and you can live with the quite interesting default color scheme.