In-Hub, LLM + Sonic Pi, dash of docker-compose

  • General Status:
    • Went into the Hub
    • Worked in the morning on Human Essentials a bit, but quickly switched to chatting with folks locally
    • Paired with SL to set up some docker-compose fun
    • Paired with SW on trying to mash up LLM (datasette) with Sonic PI! We ... didn't get it to work. But SW says they got something going via a CLI interface to Sonic!
  • Nerd Snipe:
    • When I was chatting with SL yesterday I realized that my Unison Powered Backups can error out without me knowing
    • Well I've always KNOWN this, but I ignore it because it works pretty much all the time. Still ... it had failed the night before...
    • So I made a wrapper that will do a system notification when it fails
    • Now I've got it running hourly. When it works it pops up a "backup complete" notification that goes away after a few seconds, and when it fails it pops up a "BACKUP FAILED" that won't go away until I click
    • Now I have to decide what I want it to tell me about no-internet situations. hm.
    • I just noticed that my original writeup of this backup structure was written in 2006!!!! That's pretty good sustainability on a backup solution :)
  • Alloy+LLM+Rails Project:
    • RC has a tiny "community cluster", which has to machines with small GPUs!
    • I got access to that yesterday, so I played with that a bit on the token-tree, got it working! Def faster than the local CPU. I wouldn't be surprised if a mac Mx processor was similar

In-Hub, LLM Club, Mediapipe, Coffee Project, docker-compose

  • General Status:
    • Went into the hub! So great to see and interact IRL
    • Applied LLM Club we played with a large JSON dataset; works pretty easy to use the ChatGPT UI and upload the whole file, but we didn't find an obvious way to do the same thing on the API. Maybe something with their Assistants concept
    • I went over to Coffee Project, pretty delicious
    • Played with Mediapipe, android AI/media lib from Google, with JH. But the bleeding edge software was ... not working
    • Showed SL some of how I set up thelackthereof.org with docker-compose, including nginx running in docker with the rest of it
    • I worked on some Human Essentials, really need to wrap that :)
  • Nerd Snipe:
    • TIL: I am using Alacritty, and you can apparently hit ctrl+shift+b to search backwards up through your scrollback!
    • I upgraded Nuxt to the latest for my static site ... and it now (correctly) gets mad about some internal broken links. But I couldn't find/fix them all so I turned that safety feature off hah
  • Alloy+LLM+Rails Project:

Website updates to break insulation, bit of Human Essentials

  • General Status:
    • I think I'll go Virtual today and go into the Hub tomorrow (though I keep going back and forth)
    • Decided to beak my own insulation a bit, cross-posted all of these checkins to my own website
    • We went to a few bookstores over the weekend! I got Adrian Tchaikovsky, Eyes of the Void, Book II of The Final Architects Series. Betsy told me years and years ago to check out Tchaikovsky and boy was she right! I'm chewing through the catalog. Beth isn't into him as much, so YMMV
    • I know I'm feeling better because I'm feeling very wordy today haha
    • Also picked up Patrick house, Nineteen Ways of Looking at Consciousness and Daniel C. Dennett, I've Been Thinking
    • Both are interesting. Thinking about consciousness, Agency, all that is a thing I enjoy. Dennett is often too aggressive, but I'm strongly aligned with his core ideas
    • Today I need to do a bit more on Human Essentials too. Had a good meeting with the team yesterday and there are only a few small things to get done on Dashboard for it to be mergeable
  • Nerd Snipe:
    • Backdating blog entries and adding tags wasn't easy. So I updated my new-blog command wrapper with a few new options :)
    • I'm using the Commander CLI helper along with ts-node for this. So my script starts with #!/usr/bin/env ts-node and contains Typescript
    • I can never remember where my blog command really lives, but vim $(which blog) works great :)
    • At some point recently I upgraded to Taskwarrior 3.0 which includes having to do an export of tasks from the old version BEFORE you install the new version. I got that taken care of before my OS does it for me
    • I started to help the Taskwarrior peeps out by making a perl script that translates their legacy .data format directly into JSON so you could do the extract even after the upgrade .... but my data is migrated now and works fine so I lost momentum
    • On my blog, I might make a few more formatting tweaks. I will at some point use NuxtImage to render the thumbnails for things .... right now it is actually the full sized image downloaded and then scaled by the browser. People have a lot of bandwidth now, right? They're not that big anyway
  • Alloy+LLM+Rails Project:
    • Still no direct reply from the maintainers, but I'm going to keep jamming

A week spent coughing, writing Java, and watching Andor. First World Problems hah. Not bad in the scheme of things! :)

  • General Status:
    • I was Virtual all week -- fighting a cough and feeling intermittently icky :( . MUCH BETTER NOW!!! Beautiful day.
      • Watched the eclipse from here in NYC. Was OK. Maybe I'll do totality next time :)
    • FEELINGS -- Because of that it was a pretty tough week, really feeling both not getting the value of all the human connections I'd like and also feeling the reality of being at the half-way point for the 6-week batch
    • Watched a few more episodes of Andor. I haven't watched any of the other Star Wars series shows, but got recommended this one by a random YouTube video and I like it. I only have a few more episodes left for the season
    • It was Beth's Birthday on Tuesday; I had dinner reservations and desert lined up ... but we called it off since I was feeling icky. BUT! We rescheduled to Saturday and had a lovely time! We are the same age yet again!
    • Here it is Sunday 2024-04-14 and I am feeling much much better. Skipping our weekly weight-training workout though to not push myself backwards
    • During the week I did attend a few things, and loved them all! I think y'all are great
    • Really one of my rare complaints is the double-edge sword of a curated community -- the insulation is dividing people in my life; like even these posts to zulip feel better to write than the public blog, and I'm not going to link to individuals on the public blog. In another week one of my bestest friends is visiting from Portland OR, and without special permission I can't bring them over to the hub. Heck I can't bring my spouse by when we happen to be nearby later today. I get it, I like it, I agree with it, and yet ... I feel that separation of insiders and outsiders. Eh.
  • Nerd Snipe:
    • I was upset that on Tuesday at a zoom meeting I had a coughing fit while screen sharing and that my desktop zoom ... wouldn't let me mute myself or stop sharing! GARRR
    • So. I think I got it. The solution: stop using the desktop zoom client. Turns out you can use the browser just like I do all the time with google meet. BYE BYE DESKTOP ZOOM
    • It seems to work better now. I still have my internet drop now and then, which has something to do with where I am physically when remote here (switching wifi APs or something), but I can tether and then all is good
    • Still doing some mild tweaks to Sway, the latest is that I got swaymonad running, which controls some initial window-placement settings to make them more like xmonad. Looks like I'll probably fork/tweak it to my liking
    • And THAT thing uses Nix! So...
    • I got Nix running (on top of my existing Ubuntu, not as a whole install)
    • Just now I was listening to a podcast (Ship It! Episode 99: From Kubernetes to Nix) and ... now am going to try to do MORE NIX, maybe inflict it upon my work people eventually. MUAHAHAHA
  • Alloy+LLM+Rails Project:
    • Well. I learned some more Alloy!
    • I also was trying to play with different ways of interfacing with Alloy, knowing that the CLI is very limited
    • BUT they are prepping for a v6.1 which actually has some good CLI tooling! Like you can use it without the GUI, export JSON, even get an interactive console mode!
    • Very cool
    • But it doesn't work
    • As in the current dev branch is in need of some bug-fixes and QA for release. Also I think this is both a "soon" release and one that has been in progress for a year. Maybe I can help!
    • So ... I'm now up to 8 open PRs against various branches and have reached out to the maintainers to do some coordination :)
    • As I mentioned in my message to the developers ... as another open-source maintainer, I know that contributors can be well-intentioned but often come around, talk up some ideas, and disappear. Or worse, submit an un-mergeable PR and disappear. So I'm trying very hard to not do that. Each one of those is very small, like one or a few lines, easy to verify, and I think immediately mergeable
    • I have noticed there are, unsurprisingly some gaps in the unit tests, so I'm going to make some CLI-specific tests next week
    • Also this is Java! It's interesting how my position here has shifted over years ... at one point I was so frustrated with all-things-java that I swore it off. But I've matured or something and also realized that I LOVE ALL PROGRAMMING!!
    • I should note that I've also sworn off mmmmmm Databases and Javascript, but here I am 20 years later and both are close to my heart :)
    • Anyway. When it comes to the usual project-existential issues during my batch, this is clearly a good foundation; if I can help get this tool itself to be updated and integratable then I'll feel pretty pretty good

Virtual errands, GPU token generation. Oh right, Alloy

Token tree 3x3 cat sat on the

  • General Status:
    • Virtual today
    • Mostly doing some errands and general reading
    • Hung out with J some, looking at LLM stuff and showing a GPU cloud executor
  • Alloy+LLM+Rails Project:
    • I'm giving local-intel-gpu one more last chance
    • ... I got it working on an A100 and it was a lot faster! But like... 10x, not instant
    • I generated a large tree but it had some unescaped character that I haven't found yet so I don't have the actual rendered graphviz
    • I remembered to turn off the rented instance :)
    • I started going back and updating Alloy knowledge, esp around time-domain which was added since I learned it
    • Next I need to start doing real Alloy models of things I think about or systems I use, and start improving the tooling around that
    • I'm starting to think about Alloy tooling, both direct and LLM; like in addition to Rails in/out I'm thinking of PlantUML in/out. A lot of Alloy users report using it as a thinking tool. I use PlantUML as a thinking tool. So ...

Pairing, unicode tokens, graphviz bling

Unicode token tree with Chinese

  • General Status:
    • Starting to get into the hub-vibe a bit more, love it. Starting to actually remember individuals better! I'm so bad with names, but will keep asking over and over until I get it :)
    • I got to show the token-tree thing to a few individuals and then presented at the big session, very fun
    • Still having wayland/sway + zoom issues :( . Weird color inversion, floating-vs-non-floating-windows, etc. But I'm sticking with it. Hard to switch after like 15 years of xmonad (and like 25 years of X11 heh), but it's at like 99.9% so can't stop now
    • Shout out again to O who helped me sort out some caching issues that was slowing down CPU token generation. Making it fast-enough has been really helpful
    • Will be Virtual RC tomorrow (Friday), gotta do some errands and prep for a friend-visit over the weekend
  • Alloy+LLM+Rails Project:
    • Working on wrapping up token-visualization
    • Paired with Q, sorted out some escaping and unicode things
    • Added a bit of bling shadows and scaling (styling SVG with CSS is fun!)
    • Got incremental streaming of updates, background threading of the processing, and interruptability
    • Going to now switch over to Alloy; do some tutorials and toy models, build a few by-hand models of real world apps (Human Essentials Rails)
    • Somewhat of a pure-research project, so I'll go with where it takes me. But I am feeling the time-pressure a bit, and am hungry for artifacts to show off in the end. We'll see what comes next :)

Applied LLM Demos; basic token output visualization with graphviz

Basic token tree

  • General Status:
    • At the hub today!
    • Delighted to keep meeting and chatting with people, went to lunch and all that
    • I organized an Applied LLM meetup -- there were demos that were DELIGHTFUL! A lovely enthusiastic group :)
  • Nerd Snipe:
    • Flipped my bluetooth mouse (which I hadn't used since switching to Sway) to left-handed
    • My conference room presenting connection on this laptop has thrown me; Sway/Wayland won't let you have merged screens and the jabber speaker/mic doesn't output any sound for me! I need to do a more controlled practice run, the one I did wasn't good enough
  • Alloy+LLM+Rails Project:
    • I got initial graphviz output!
    • I then decided that it was too slow to generate, so started to get my intel GPU to work
    • I ran into this exact same issue and gave up
    • Then I started figuring out how to spend money renting someone else's computer
    • ... now I have to be careful. I spent $4.50 pretty quickly. I have a budget for this, but I want to spend that on actual computation instead of forgetting to turn something off and letting it run all night or all weekend for now gain
    • Unfortunately the output didn't work for my first larger run; the nodes in graphviz didn't have the full path and overwrote each other
    • Also I think that the local one can go a lot faster if I don't fully reset it every time; there are savepoints and some other things that might work
    • Still -- it's close to being GUI-able!

Lunch table with Humans!

  • General Status:
    • Morning
      • I find updating the week indicator on this checkin is already upsetting
      • I'm heading into The Hub today!
      • Going to see if I can do some IRL pairing
      • I need to work on some Human Essentials today, Wednesday is a stakeholder meeting
    • Evening
      • I had a delightful time sitting at the lunch table and chat chat chatting with peeps
      • HCI session was very interesting, with lots of discussion on Agency (which of course I'm very into)
      • Failed to do any IRL pairing, will try harder tomorrow!
  • Nerd Snipe:
    • Played with sov a bit, might use it to visualize virtual desktops. But maybe not
  • Alloy+LLM+Rails Project:
    • I might want to actually really look at LangChain
    • I have all the tools for a tree-of-tokens working (albeit slowly), so now working on traversing that to turn it into some visualizations

Llamas, Pythons, Coffee, and Sway

Part I - Morning

  • Morning Status:
    • I feel pretty great today, but going to be Virtual anyway. Got some errands to run
    • I've got llama-cpp-python up and running, so I'm going to work on a back-end for it
    • I'll likely solicit pairing once I get it a bit further, especially for some visuals

Fuzzy brained, but starting to figure this thing out.

  • Morning Status:
    • Feeling a bit fuzzy brained ... I had a cold like 2 weeks ago and hope it's not coming back or getting a new one. I don't think I have allergies. Still. I was face-to-face with a LOT of people yesterday. So while I'm feeling only very slight off, I'm going Virtual today to see how it progresses.
  • General Status:
    • Felt much better as the day went! Maybe I'm fine?
    • Did my first coffee-chat, it was lovely
    • I might start doing some Pomodoros tomorrow
    • The presentations were delightful!
    • I also went to a manager-roundtable which was helpful for some work-stuff
  • Alloy+LLM+Rails Project:
    • Worked on some Alloy fundamentals and resources
    • Watched and made notes on an inspirational video, wrote a blog post on it
    • Slight tangent, but started poking at low-level local LLM setup to work on my next-token visualization exploration
    • I'm trying out python with llama-cpp-python as an easy and capable approach
    • I have it working enough to do some completions
    • Next I am going to work on doing token level interactive tokens, and then I'll find someone to help me visualize with d3 or something to give a hands-on feel for next-token generation
    • That is (a) fun, and (b) might lead to some insights in some of my other studies here
  • Nerd Snipes:

In The Hub

  • General Status:
    • I watched an interview with some musician once and found it inspirational. She said that she does her creation in waves. First is the intake wave -- she breathes in music, ideas, walks in nature, feelings. Then is the creation wave -- she breathes out experiments, refinements, practice, create. Breathe in consume, breathe out create. Breathe in. Breathe out.
    • Today I visited The Hub! Got a tour, met a ton of people!
    • I'm thinking of starting two meetups/clubs:
      • Formal Methods Club (Alloy, TLA+, Program correctness, etc)
      • LLM Club (applied Large Language Models, openAI/similar API, running local models, etc)
    • Made a flower and a wreath of flowers and a wreath of wreaths of ... at Creative Coding session
    • Did a little more on Human Essentials, gotta get this LONG overdue Dashboard PR out
    • Tomorrow I'm going to brush up on my Alloy and do some by-hand extraction of models from codebases, probably Human Essentials to start with
    • I'm planning on coming in to the Hub basically every weekday
  • Nerd Snipes:
    • I realized that I can still run rofi and dunst, so even more the-same-as-before
    • The yubikey enable/disable broke, but I figured out a new way
      • At boot, chmod 666 /sys/bus/usb/devices/3-1/authorized which happens to be where I have it plugged in
      • Disable (or 1 to enable) with echo 0 > /sys/bus/usb/devices/3-1/authorized

Pairing, Merging

  • General Status:
    • Attended the Pairing Workshop! Paired in RubyLand
    • Spent some time merging PRs for Human Essentials
    • Attended ML-applied and then AI/ML safety and interpretability meetings
      • Definite overlap with my interests/projects, though some of the plan there is to go intensely and deeply on some curriculum; I think I'll track but not directly participate
    • On-site tomorrow, I'm psyched :)
  • Nerd Snipes:
    • Spent some more time in sway. Messing with keybindings and multi-monitor setup. Alllll coming together now! I think I'm switched over. Except for some weird things in Zoom. hmmmmm.
    • My fonts are small, esp in firefox. Annoying. So I googled and learned that I can try setting layout.css.devPixelsPerPx to something bigger. I go in there... and it is set to 0.75!!! I changed it to the default and everything is already much better haha

First day of RC!

  • General Status:
    • First day of RC! Virtual today (everyone)
    • Participated in the two onboarding meetings, starting to get a feel for my new friends. TONS of inspirational people and ideas, lots of things to share and explore :)
    • I'm looking to getting IRL on Wednesday
    • Also looking forward to Creative Coding exercises and .... just doing some whimsical things!
  • Nerd Snipe: Every 6 months or so I try to switch from xmonad to wayland+sway. Yesterday I tried again and actually made a ton of progress and I think crossed over the usability line. The biggest thing that I kept having issues with was screen-sharing, but I think I found the right incantation at last. So .... now the tricky bit where I have like 15 years of xmonad gradual adaptations that I've done and I have to decide which to keep, which to abandon .... and also how nerd-sniped I am willing to be for working on those adaptations :)
  • Alloy+LLM+Rails Project: I have been pre-gaming a bit, so have a large zotero backlog of interesting papers to read through and take some notes on. I also am going to work through a few Alloy experiments to both get my fingers remembering how it works and also learn the new temporal logic stuff they added recently. Next up I want to manually extract some alloy models from code-bases to think out the different types of models (DB Schema, API, Rails Models, etc) and maybe use that to build up some examples for The Machine (LLMs).
  • Good: For the Human Essentials project, I have several open tickets. I'm going to spend the last hour of the day (now) working on that!
  • Ideas/Other:
    • Formal Methods interest group?
    • LLM interest group?
    • Several people were interested in doing some Good; Once I'm settled in I'll declare open invite for pairing on Human Essentials and see what I can join others on. I really want to get Github Codespaces set up for easier onboarding, hmmm

Packing up for my 6-week batch at the Recurse Center.

Blooming trees and forking path in Kalorama Park Blooming trees and forking path in Kalorama Park

Home

Sharing some thoughts on my Recurse Center project, exploring how to bring Alloy or similar tools into the Day Job.

Robot opening a jar


I'm attending a 6-week retreat at Recurse Center! This will go from March 25 - May 3. So ... gotta get set up!

A robot making lists

The Basics