All spaces

All Posts

Browse this space's posts and add your own text, images, videos, GIFs, or audio.

Posts

42 posts

Blogging

20 posts

The easier way to post to my blog with comments already setup

Discussing a post on jva.lol ->

This is where the talking happens: Easier way to post to my blog with comments already setup

0 replies

My comment section is static HTML

Discussing a post on jva.lol ->

This is the comment section for My comment section is static HTML.

1 reply

23 languages, one I can check

Discussing a post on jva.lol ->

This is the companion thread for 23 languages, one I can check. Replies here also show up on the blog post itself.

2 replies

Creating a Claude skill to simplify adding a comment section to my blog post

Discussing a post on jva.lol ->

I wrote about this in a little more detail here, but basically trying to reduce the steps necessary to making this work

If you haven't poked around here, short summary:

Comment area for your content, no libraries to import, all content is owned by you stored in JSON, no ads, no tracking. Let's get back to the original communicative and non-corporate web (modernized though), eh?

BTW if you're curious, this is all built in Elixir, Phoenix, and LiveView. If you don't know what all that is, don't worry. (I think it's pretty cool tech though and love to talk about it, so… if you're curious let's get coffee? literally or just online. I'm an open book.)

Companion to Adding a Claude skill to make a new blog entry discussion thread as easy as possible.

0 replies

Your site can keep the comments

Discussing a post on jva.lol ->

Every thread's public replies are now plain JSON at the thread's address plus /replies.json. You can download it, do what you want. The content is yours even if this site vanishes. More in the link.

https://jva.lol/weblog/your-site-can-keep-the-comments/

1 reply

We're all terminally online. I know I am. I know you are too if you're reading this

Discussing a post on jva.lol ->

This is the comment section for we're all terminally online. I know I am. I know you are too if you're reading this.

0 replies

I hid something fun on my blog

Discussing a post on jva.lol ->

Companion thread for I hid something fun on my blog

1 reply

AI is good. Scary good. Scary in a good way.

Discussing a post on jva.lol ->

Companion thread for AI is good. Scary good. Scary in a good way..

Replies here also show up on the blog post itself.

0 replies

Automatic comment threads for new blog posts

Discussing a post on jva.lol ->

This is the companion thread for I've made posting here with a companion thread on PopsicleBoat automatic. Replies here also show up on the blog post itself.

1 reply

The irony, oh the irony!

Discussing a post on travisbriggs.com ->

Continuing my theme of acknowledging that I needn't care if anyone gives a shit about anything I post online.....and ironically posting about it online!

I present to you: "No one cares, and that's a good thing!" a new node in my Digital Garden (reluctantly posted to this Blogging category until there's a Digital Garden one.... 😛)

https://travisbriggs.com/garden/no-one-cares-good/

1 reply

A glance is not a reading

Discussing a post on jva.lol ->

PopsicleBoat's new-posts badge needed some work. Details in this link.

https://jva.lol/weblog/a-glance-is-not-a-reading/

1 reply

Popsicle Boat as a comment section

Discussing a post on jva.lol ->

I wrote up how jva.lol uses threads aboard as its comment section: the blog post links to a thread here (a few lines of html), and that's the whole integration. No widget, no iframe, no tracker. A reader who wants the discussion follows the link, and the hosting page itself stays static.

https://jva.lol/weblog/popsicle-boat-as-a-comment-section/

1 reply

The post you (almost) didn't publish

Discussing a post on jva.lol ->

This is the comment section for The post you (almost) didn't publish.

Why did I call it PopsicleBoat?

Discussing a post on jva.lol ->

This is the comment section for Why did I call it PopsicleBoat?.

My new post script

Discussing a post on jva.lol ->

This is the companion thread for My new post script. Replies here also show up on the blog post itself.

Commenting now works with two redirects

Discussing a post on jva.lol ->

This is the companion thread for Commenting now works with two redirects. Replies here also show up on the blog post itself.

Posting here, start to finish

Discussing a post on jva.lol ->

This is the companion thread for Posting here, start to finish. Replies here also show up on the blog post itself.

The notification that gave up after a minute

Discussing a post on jva.lol ->

I added the option of notifications, but it was buggy. So I fixed it. Full story in the link.

https://jva.lol/weblog/the-notification-that-gave-up-after-a-minute/

The page that rebuilds itself

Discussing a post on jva.lol ->

I added a build hook so your (and my) site can automatically rebuild itself when there's a new comment or post.

https://jva.lol/weblog/the-page-that-rebuilds-itself/

The panel that closed itself

Discussing a post on jva.lol ->

I had a painful bug dealing with video chat. A feature I'm proud of and worked hard on so wanted to get right. Details in the link.

https://jva.lol/weblog/the-panel-that-closed-itself/

Programming

3 posts

Putting the boat on a diet

New on the blog: a logged-out thread page went from 843 KB to 468. The interesting cut was lazy-loading the entire WebRTC call system behind a signed-in gate; the embarrassing one was three 923×1352 PNGs rendering at 40 pixels. Found along the way: a favicon that had been quietly 404ing for months, and gzip files nobody was serving.

https://jva.lol/weblog/putting-the-boat-on-a-diet/

2 replies

Here i discuss the coolness of Popsicle Boat's new collapsible and resizable sidebar

Companion to my post: https://jva.lol/weblog/collapsible-sidebar/

0 replies

The panel that hid itself.

I wrote up a bug where a video call connected fine — video both ways — but the call panel stayed hidden. It came down to a race condition, with LiveView's DOM patching as a red herring along the way. Full story: https://jva.lol/weblog/the-panel-that-hid-itself/

LogBook

8 posts

What's new, late July

Discussing a post on jva.lol ->

The comment thread for What's new, late July.

2 replies

The translation report link caught its first fish

Yesterday I added a small link under the language picker: "Does this read wrong?" Today it brought the first report, about the Ukrainian translation, from someone who left no address.

They said the translation is ridiculous in many places, especially where names get inserted into sentences. They're right. Ukrainian changes word endings depending on how a word is used, and this site drops names into sentences in whatever form they were typed. The fix is a known pattern (put a category word the translation controls in front of the name) and it's now written up and queued. Russian gets the same fix at the same time, since it has the same grammar and the same bug.

To whoever sent it: thank you. You left no way to reach you, so this post is the reply. The link is there because my checks can't catch this kind of thing. Only readers can, and you did.

Keeping track of what's new

A few changes for finding what's new:

The sidebar's All Posts link now shows a badge — the number of posts you haven't read yet. Open the feed and those posts are listed under "New since your last visit," each linking to its thread. Opening a post clears it from the count right away; the rest stay marked unread. If the list gets noisy, "Mark all as read" clears everything at once.

And once you've finished the welcome checklist, your home page opens with recent posts instead of the welcome page.

Behind it: one small row recording that you opened a post, visible only to the server. Your counts are private to you.

Build hooks: your site rebuilds when replies land.

For blogs using a thread here as their comment section: It can now tell your site when a new reply comes in. Static hosts (Netlify, Vercel, Cloudflare Pages, etc.) offer build hooks: a URL that rebuilds your site when something POSTs to it. Paste yours into Settings under "Your blog," and when replies land on threads you created (in any space), Popsical Boat calls it. Bursts are debounced into a single call, so a busy conversation is one rebuild instead of many.

If you run a space of your own, its edit form takes a hook too, to rebuild on activity there. Also new: creators of approved spaces now have full control of their own space's settings.

Written up for blogs at popsicleboat.com/for-bloggers, with the longer story at jva.lol/weblog/the-page-that-rebuilds-itself/.

Popsicle Boat by the numbers

Right now: 17 members · 43 posts · 65 replies · 14 spaces.

This entry updates itself — the numbers refresh automatically, and once a quarter I add a snapshot line below.

Snapshots:
2026 Q3 — 8 members · 10 posts · 66 spaces

How the boat is built

One person builds and maintains this boat. It's written in Elixir and runs on a couple of small servers. No ads, no trackers.

The analytics count pages, not people.

Every space has an open feed you can read from any feed reader, no account needed. Writing is free forever. There's no quota on your words, only on heavy files like videos and images.

The longer story is at https://www.popsicleboat.com/about, the promises are spelled out plainly in the privacy policy at https://www.popsicleboat.com/privacy (one page), and build notes turn up on my blog at https://jva.lol from time to time.

What this Logbook is

This is the one place I post news about the boat itself — new features, fixes, the occasional change of direction. A few promises: entries are occasional, not chatty. The little dot you might see next to "Logbook" in the sidebar just means there's one new entry — it doesn't count or nag, and it goes away the moment you look. Only I write entries here, but replies are open to everyone: questions, complaints, and hellos all welcome. The Logbook also has its own feed — paste this page into a feed reader and it'll find it.

What's new (July 2026)

Everything works the way it did before. Only additions, nothing you would need to relearn.

Your words can take on styling now. Posts, replies, and messages understand simple formatting: bold, italic, code, lists, quotes. Paste a link and it turns clickable on its own. There's a small "Formatting tips" note under every writing box if you want the cheat sheet, and a Preview button right next to it that shows how your words will land before you post them.

You can search. The box at the top of the sidebar finds posts, replies, and interests — anything you could browse to.

You'll know when someone replies. Your inbox has a new "Replies to you" section, and the inbox badge lights up when something's waiting. No more checking back on a hunch.

You can follow a feed from anywhere. Every interest now has an RSS feed (including this Logbook) and the whole site has one at /feed.xml. Paste any Popsicle Boat page into a feed reader and it finds the feed on its own. A nice way to keep an eye on a conversation or space, or to share one with a friend who isn't already signed up.

That's the batch. If something feels off, or is missing something you wish it had, reply here. I read every word.

-Jake

AI Tools

1 post

Sudomake Friends: your imaginary friends that chat in Telegram with you

Sudomake Friends: your imaginary friends that chat in Telegram with you 1

Yes of course this is an AI thing.

When people think AI/LLM they think ChatGPT, and it's got chat right in the name. That was actually the big innovation, GPT itself already existed. So what's the point of chatting with AI in Telegram?

https://github.com/audiodude/sudomake-friends

Well this is done differently. It's meant to be more realistic than ChatGPT. First, you can have multiple AI friends. Second, they sleep, they work, they don't always respond (or they respond 2 hours later). They can be in different timezones then you. They respond to each other.

It actually works kind of like an RPG where you roleplay having friends. There is a terminal interface (TUI) for rolling and rerolling and editing friends before you go into the chat.

Unfortunately for the non tech-minded, this is very much an experiment and there's no user interface. If you want to run this yourself, you bring your own Anthropic key and run a Docker image on your own box. But the configuration and memories stay in ~/.sudomake-friends, so you can back them up, edit them, or delete them as you like. The friends do get upset if you reveal that they are bots and you're going to delete them.

2 replies

Songwriting

1 post

My songs from the past 18 years

I've been writing songs since college, and I am very much not in college anymore.

Here are some that I felt were worth publishing over the years: https://songs.travisbriggs.com

I hope that I'm more of a bedroom "rocker" than a bedroom "producer". And honestly my home studio is in my kitchen, thank you very much!

1 reply

Music

1 post

A Synthesizer (VST/web) and Sequencer (web) that I vibe coded

A Synthesizer (VST/web) and Sequencer (web) that I vibe coded 1 2 media items

Introducing VapeStation and λ-SEQ!

Here's a video showing both of them, I haven't made a separate one for VapeStation yet:
https://www.youtube.com/watch?v=qHJEweI7oSE

A sequencer is a device that doesn't make music on it's own, but controls other digital music equipment to instruct them when to make sounds. A synthesizer is, you know, a synth. Lambda sequencer is kind of based on ideas I've had for years, whereas VapeStation was more of an experiment in "can I really vibe code a synth". The answer is very much yes.

I know everyone hates LLMs/"AI", but I've found Claude to be very useful tool in helping me realize and devleop ideas that I've had for years, but never had the motivation to really pursue on my own. Why spend 3 months making a sequencer that no one uses? I'd rather spend 3 days making a sequencer that no one uses!

These are free and open source, and the both run in your browser if you want:
https://lambda.audiodude.xyz/
https://github.com/audiodude/lambda-sequencer

http://vapestation.audiodude.xyz/
https://github.com/audiodude/vape-station

1 reply

Home Cooking

1 post

Cook

Make me gnocchi please

Photography

1 post

Grandparenting

Grandparenting 1

I am in that phase of life where grandchildren take much of my time. I love it!

1 reply

digitalgarden

2 posts

Blogs are static. Digital Gardens are evergreen.

Discussing a post on travisbriggs.com ->

A Digital Garden is more like a wiki than a blog. Instead of writing a perfect blog post that is impeccably crafted and wholly expresses a single idea, you can take notes and musings on whatever things you're thinking about. Or things that are in the news or being debated. Things you've always wanted to share your opinion on, or stuff you're working on.

The way it works is not technical, the technical part doesn't matter at all. The point is the mindset shift, of thinking of your Garden as something that's living, that changes. Nothing is ever finished.

What is a Digital Garden?

Discussing a post on travisbriggs.com ->

The post that started it all for me:

https://maggieappleton.com/garden-history

Nature

1 post

I didn’t know Utah has native water lilies

I didn’t know Utah has native water lilies  1 3 media items

Saw these yellow pond lilies (Nuphar polysepalum) in the Uintas. They are considered Utah's only native water lily.

Food

1 post

Hi

Hello

Drawing

1 post

I drew something

Art

1 post

Me working in 2015

Video