Nice. Are those datalog-based?
03.08.2025 11:58 β π 0 π 0 π¬ 1 π 0@petevilter.me.bsky.social
Working on grid interconnection at Pearl Street Technologies. Prev databases and things at RelationalAI, Bubble, Cockroach. https://petevilter.me
Nice. Are those datalog-based?
03.08.2025 11:58 β π 0 π 0 π¬ 1 π 0React and TypeScript, with a REST API to a NodeJS backend where DuckDB is running.
My initial prompt to Claude was something like "I want to explore DuckDB data in a UI that looks like DataDog, with React and TypeScript" etc
and of course the classics, 'filter to this value' and 'sort asc/desc'.
I lose my mind when table UIs don't have 'filter to this value' π
you can also filter by clicking on the histograms, inspired by Datadog's log search UI
03.08.2025 04:43 β π 1 π 0 π¬ 1 π 0Used Claude Code to vibecode a UI for @duckdb.org in a few days. Here it is navigating foreign keys
03.08.2025 04:37 β π 2 π 0 π¬ 2 π 0are tarriffs going to send prices back up?
02.07.2025 19:16 β π 0 π 0 π¬ 0 π 0Datadog up next?
11.06.2025 01:34 β π 0 π 0 π¬ 0 π 0Grafana has one too grafana.com/blog/2025/05...
11.06.2025 01:34 β π 0 π 0 π¬ 1 π 0Neat to see LLMs ingesting observability data and generating explanations www.honeycomb.io/blog/its-the...
11.06.2025 01:34 β π 2 π 0 π¬ 1 π 0@peet.io I see you added support for taking profiles for JS a while ago: github.com/microsoft/vs... very cool!
Think there's a chance of getting this upstreamed to the main debug adapter protocol so other languages can implement it?
whoops, that lock implementation had a bug β forgot to set holder back to null, messing up next acquire. now fixed gist.github.com/vilterp/bf02...
26.05.2025 16:29 β π 0 π 0 π¬ 0 π 0whoops, repo is still private. source here gist.github.com/vilterp/bf02...
25.05.2025 01:19 β π 1 π 0 π¬ 0 π 0bank source here: github.com/vilterp/cons...
24.05.2025 23:42 β π 2 π 0 π¬ 1 π 0try here: dist-sys-simulator.netlify.app
24.05.2025 23:42 β π 2 π 0 π¬ 1 π 0If we make the client grab a lock around reading & writing the new balance, it's impossible to get a double spend:
the first client to acquire the lock wins; the next sees that there's not enough in the account.
Distributed systems should feel like physical puzzles we can manipulate!
As an example, I modeled a bank in my simulator.
Without a lock, there's a race condition: if the two clients' gets and puts of the balance are interleaved, the same money can be withdrawn twice.
I think the closest experience to what I'm looking for is Apple's Instruments or even the Chrome/Safari devtools, but a standardized protocol could really help the ecosystem flourish.
Tools like py-spy and memray have built fancy UIs for profile inspection, but each language/tool shouldn't have to.
Could also be interesting to attach to running servers in the cloud or continuous profiling services.
19.05.2025 23:02 β π 0 π 0 π¬ 1 π 0And VSCode would be free to visualize the data however it sees fit, e.g. in the debugger UI or by annotating source lines with a heatmap.
19.05.2025 23:02 β π 0 π 0 π¬ 1 π 0As with LSP and DAP, each language runtime would be free to do it its own way.
19.05.2025 23:02 β π 0 π 0 π¬ 1 π 0Different profile types, like CPU, memory allocation, contention, and blocking could be supported.
19.05.2025 23:02 β π 1 π 0 π¬ 1 π 0Under the hood, this could look like VSCode saying to the process "profile yourself please" over the debugger protocol, and getting a stream of stack frames in response, each tagged with a thread ID.
Perhaps it could use the OTel profiling standard as inspiration: github.com/open-telemet...
I wish @vscode.dev had richer & more standardized support for profiling; maybe a "Profiler Adapter Protocol" along the lines of the Debug Adapter Protocol and LSP.
When running a multithreaded program under the debugger, I want to see live CPU usage for each thread, and click to get a flame graph.
Each 'actor' is defined as a TypeScript function, which runs in the browser with simulated network latency. Messages can be 'sent' between them with async/await syntax.
13.04.2025 17:20 β π 2 π 0 π¬ 0 π 0It's hard to wrap your head around all the failure modes of a distributed system.
What if you could play with the sequence diagram of a run to see how it responds, and see if you can get it into a failure state?
dist-sys-simulator.netlify.app
Thank you! Curious what your vision looks like
05.03.2025 11:28 β π 1 π 0 π¬ 0 π 0Little script to make a flamegraph of a codebase by lines of code github.com/vilterp/cloc...
26.12.2024 16:08 β π 2 π 0 π¬ 0 π 0Transparent means that the order hasn't made it to the server yet.
25.11.2024 02:54 β π 1 π 0 π¬ 1 π 0Am I becoming a fintech person? π
Added a simulation of a commodity market to my distributed system simulator.
Clients submit buy and sell orders (blue/right and orange/left, respectively); the server uses DB triggers to execute a trade when there's a match.