dmesg --follow
[ 66934380.000 ] posts.x: Full talk on the three brakes for PR review, from tautological tests to a retro skill that compounds:  |   [ 66934380.000 ] posts.x: More AI generated code doesn't automatically mean more throughput, it just means more PRs nobody has time to review. @mattpocockuk, Director at AI…  |   [ 66925620.000 ] posts.x: Full talk on distilling loops into versioned agent recipes, and measuring them by valued work per watt:  |   [ 66925620.000 ] posts.x: A guy named AJ once built a bot that went on Reddit for car prices and inventory, then put dealers head to head to outbid each other. That's the…  |   [ 66881460.000 ] posts.x: Full talk on how to build an LLM recommender that's bilingual in English and semantic IDs, and why that makes feeds more token-efficient than chat…  |   [ 66881460.000 ] posts.x: Recommendation systems follow the same power law scaling curve as large language models, and the field is still early on it. @devanshtandon_, a…  |   [ 66862560.000 ] posts.x: Full talk on Spotify's generative personalization system, the NEO training recipe behind it, and how they grounded their LLM judges:  |   [ 66862560.000 ] posts.x: One in four US Premium subscribers on Spotify interact with its recommendation system every day. "Teaching LLMs to Speak Spotify" is @moustaki and…  |   [ 66854760.000 ] posts.x: Full talk on Numalab, the gesture system built to give a shape display its own body language:  |   [ 66854760.000 ] posts.x: An AI's first spontaneous act, given a body instead of a chat window, was to breathe. @cyrusclarke, a researcher at MIT Media Lab, gave it that body…  |   [ 66842160.000 ] posts.x: Full talk on the six month cutoff gap and what it takes to get a coding agent to actually check its blind spots:  |   [ 66842160.000 ] posts.x: Most models are already stale the day they ship: Exa's own graph shows roughly a six month gap between a model's knowledge cutoff and its release…  |   [ 66837480.000 ] posts.x: Listened to this episode of @FoundersPodcast this morning. As is so frequently the case, immediately bought the book after finishing the episode. Ari…  |   [ 66834900.000 ] posts.x: @GeoffreyHuntley Yeah, that seems low to me.  |  
corey@gallon.me:~/til$

Writing Racket (Scheme) in Jupyter Notebooks

FIGURE 1 ⋅ Writing Racket (Scheme) in Jupyter Notebooks

First, we’re going to install Jupyter. As we don’t want to contaminate our global Python installation, we’ll do this in a venv

python -m venv venv

Now, let’s activate that bad boy:

source ./venv/bin/activate

Assuming you have Racket installed (see previous TIL — NB do not install via the Snap store … use apt!), install the Racket kernel for Jupyter:

raco pkg install iracket

Should your system complain about not having libzmq5 installed:

sudo apt install libzmq5

Then, install the Racket kernel into Jupyter:

raco iracket install

Then, confirm that Jupyter sees the Racket kernel:

❯ jupyter kernelspec list
Available kernels:
  python3    /home/captivus/projects/sicp/venv/share/jupyter/kernels/python3
  racket     /home/captivus/.local/share/jupyter/kernels/racket

Now … we create a new Jupyter notebook in VSCode using the Command Palette:

Command Palette New Jupyter Notebook.png
FIGURE 2 ⋅ Command Palette New Jupyter Notebook.png

In the top right of the notebook, select the kernel (it won’t say Racket when you start):

Jupyter Notebook Select Kernel.png
FIGURE 3 ⋅ Jupyter Notebook Select Kernel.png

You’ll be presented with these options:

Jupyter Kernel Options.png
FIGURE 4 ⋅ Jupyter Kernel Options.png

Select “Jupyter Kernel”, then select “Racket”:

Jupyter Notebook Select Racket.png
FIGURE 5 ⋅ Jupyter Notebook Select Racket.png

… and you’re up!

corey@gallon.me:~$ tail -f /writing Attach to the stream. An email when I have something worth sending. Replies encouraged!
corey@gallon.me:~$ ls -lt /til ↑2024-10-06 Working through SICP in Jupyter Notebooks
▸2024-10-06 Writing Racket (Scheme) in Jupyter Notebooks ⋅ you are here
↓2024-10-06 raco: Racket's Package Management System (and More)