Copy-On-Write (on Apr. 24, 2023, 2:36:48 p.m.)
Copy-On-Write
I talk about copy-on-write data structures, most specifically within the context of file systems. The idea does extend to databases, more generally, and some of the themes can even be observed in content-addressed systems, such as IPFS.

The basic [...]
Reddit Post (on Apr. 16, 2023, 9:35:27 p.m.)
Just wanted to make a small text update to draw attention to a post I made on Reddit to mention Cacophony.

This seems to be well-received but, unfortunately, isn't drawing as much conversation as I had hoped.

Still, nice to see that people are [...]
Memory usage (on Apr. 14, 2023, 10:49:56 a.m.)
Memory usage
I talk a little about memory usage in modern software and how a lack of concern around it has led to systems which are slow, can't scale down to smaller devices, and are often just incorrect.

Take this as a bit of technical rant from "an old GC guy".
Final decision on WebSocket state updates (on Apr. 13, 2023, 12:40:01 a.m.)
A follow-up to earlier decisions around using WebSockets to communicate.

In this audio clip, I talk about how the design did work out as well as the initial indications but there were a few other points I wanted to make.

First of all, I ended [...]
Notification Systems in Software Design (on Mar. 6, 2023, 3:13:03 p.m.)
Notification Systems in Software Design
I talk a little about my love-hate relationship with notification-based design patterns in application development, based on some recent ideas around Cacophony.

While these approaches seem to make the high-level responsibilities within the system [...]
Streams and Pipes (on Feb. 16, 2023, 2:42:51 p.m.)
Streams and Pipes
I was reminded of the very powerful and elegant concept of binary streams when resolving a memory problem caused in the network library under Cacophony, recently.

I talk about how data streams can move data in and out of a program without needing [...]
Dogfooding, self-hosted systems, and IPFS/Cacophony possibilities (on Jan. 20, 2023, 12:12:20 p.m.)
Dogfooding, self-hosted systems, and IPFS/Cacophony possibilities
I talk a little bit about the idea in software development of "eating your own dogfood" as well as the narrower idea of self-hosted systems (for example, building the version control system you use to manage the software you are building).

There [...]
Update on WebSocket-based streaming UI updates (on Jan. 11, 2023, 2:23:14 p.m.)
Update on WebSocket-based streaming UI updates
As an update from my last post about using WebSockets to stream updates to the front-end, instead of just using REST-based polling, I talk a bit about some observations made through this.

In general, this seems to lend itself to thinking about the [...]
Using WebSocket-backed event-based updates instead of REST polling (on Jan. 4, 2023, 2:08:07 p.m.)
Something I started playing with in Cacophony 2.0-pre5 was using WebSockets to send dynamic data updates to the front-end, instead of polling a REST end-point. Specifically, I did this for the status page as its changes of state weren't directly [...]
Fine-grained or coarse-grained parameter selection? (on Dec. 1, 2022, 2:50:40 p.m.)
Fine-grained or coarse-grained parameter selection?
Just a quick talk about the thought process behind the "StandardAccess" approach used in Cacophony 2.0 pre4. That is, using a coarse-grained locking and data abstraction instead of the more fine-grained approach previously being used.

Basically, I [...]
Technology versus product/service (on Sep. 10, 2022, 4:32:06 p.m.)
Technology versus product/service
We often hear companies talking about how their offering is "new technology" but how true is that, really? In this video, I talk about how this distinction is missing and that most of what is pitched as "new technology" is just a product or [...]
Blocking and Back-pressure (on Aug. 15, 2022, 6:31:56 p.m.)
Blocking and Back-pressure
A short bit of a ramble about a concern I sometimes see people make where they "don't want to block" while blocking is actually a pretty fundamental way that the system works. The concern isn't with blocking, so much as blocking in the wrong place.
The distinction between code and data (on Aug. 6, 2022, 4:37:22 p.m.)
The distinction between code and data
Just a quick one, mostly just to test out the new Cacophony 2.0-pre0 release (doing this with in-browser recording).

I talk about the difference between code and data or, more correctly, how they aren't as different as often thought and that the [...]
Programmable event stores (on Jun. 15, 2022, 7:59:42 p.m.)
Programmable event stores
While I am not someone who does much work in tradition web back-ends, this is idea I find interesting.

I talk a little bit about what an event store is and how that differs from a traditional database.

This involves discussions of some scalability [...]
Block Production on Public Blockchains and the Realities of CAP Theorem (on Jun. 5, 2022, 5:18:13 p.m.)
Block Production on Public Blockchains and the Realities of CAP Theorem
I talk about some concerns I have related the direction of the conversation around block production, related to proof-of-work and proof-of-stake systems.

Basically, I think that the discussion centres too strongly around environmentalism and energy [...]
Intro to my channel (on May 25, 2022, 10:28:18 p.m.)
Intro to my channel
As a way of further testing and dog-fooding Cacophony, I wanted to start a channel to bring up or discuss technical topics in a fairly ad-hoc way. This is just a quick intro to that idea.

(recorded a few weeks ago)