Sign in

jsmp

@jsmp.bsky.social
10 followers 70 following 31 posts

A secret C practitioner, FreeBSD aficionado, cloud admirer (the real ones), and artist wannabe.

PostsRepliesMedia
jsmp @jsmp.bsky.social · 01/10/2026
A major milestone this last weekend for my hobby os 😁. aster can now compile and run a C programs entirely on-system (using a port of llvm/clang), and take it a step further by building a C++ UI application using Petal, Aster’s native UI toolkit.
Aster OS running in QEMU, showing its desktop with Text Edit and Terminal windows. Text Edit contains a small C “Hello from C on Aster” program, while the Terminal shows Aster’s Clang 22.1.8 compiler targeting x86_64-unknown-aster, followed by the program being compiled and successfully executed. A dock at the bottom provides shortcuts to Apps, Files, Terminal, and Text Edit.Aster OS running in QEMU, demonstrating a C++ Petal application. Text Edit shows the CounterView source code using reactive state and a declarative VStack, while the running “Petal Counter Demo” displays the current count and an Increment button. A terminal below shows the application being built and installed into /apps/counter-demo.app, with the running app also visible in the desktop dock.
011
jsmp @jsmp.bsky.social · 27/09/2026
Most companies using AI today are paying the same agent to build their “innovative” products. They ship similar products with similar bad taste and flaws. The code was never the painful part it was deferring it and thinking on what is worth building. AI reduced the cost of bad ideas.
100
jsmp @jsmp.bsky.social · 19/09/2026
“Can we get a vector editor?” “We have one at home.” The vector editor at home: editing its own icons. Glass Edit is built with Aster’s UI toolkit and also runs on macOS. Here it’s editing Aster’s vector icons and cursors.
Glass Edit editing its own icon set, showing the align-top icon open on the canvas. The interface includes a layer hierarchy on the left, vector editing canvas in the center, and shape, fill, stroke, and alignment controls in the inspector on the right.Glass Edit editing Aster’s cursor.glass file. The arrow cursor is selected on the vector canvas, with other system cursors listed on the left and the cursor’s path points and geometry shown in the Path inspector on the right.
010
jsmp @jsmp.bsky.social · 18/09/2026
Petal, Aster’s new C++ widget library and application framework. The demo app showcases some of its basic widgets and features (which also means Aster now supports C++ 😅)
001
jsmp @jsmp.bsky.social · 18/09/2026
Added a few minor improvements to the UI widgets, as well as to the workspace itself, including multi-user session management with login, logout, and shutdown. A sessiond process owns and manages each session and its associated resources. There was also some work on SMP support along the way.
A retro-style Aster OS login window running in QEMU. The centered dialog has a blue title bar labeled “Log In,” a watercolor floral banner, and a torn-paper edge above the login form. Below it are “Welcome back,” username and password fields, a “Shut Down…” button, and a disabled “Log In” button. The desktop background is light blue, with styling reminiscent of classic late-1990s/early-2000s operating systemsAster OS desktop running in QEMU, showing a retro-inspired graphical interface. A terminal window in the foreground displays the ainfo system-information command alongside a colorful Aster flower logo and details about the OS, kernel, CPU, memory, disk, and running processes. Behind it, a text editor contains a shell script. A menu bar spans the top of the desktop, while a small centered dock at the bottom provides Apps, Files, Terminal, and Text Edit shortcuts.Aster OS desktop running in QEMU with a retro-style interface. A terminal window displays process information from the ps command, with a text editor open behind it. Centered over the terminal is a “Confirm Session Action” dialog asking, “Are you sure you want to log out now?” with Cancel and Log Out buttons. A small dock at the bottom provides shortcuts for Apps, Files, Terminal, and Text Edit.Aster OS shutting down inside QEMU. Against a black background, a centered retro-style dialog says the system is shutting down and asks the user to wait while applications are terminated. The status reads “Closing applications…” above a turquoise animated progress bar.
010
jsmp @jsmp.bsky.social · 05/08/2026
If you happen to be building a libc for your OS and using Clang, PSA: LLVM offers one, so you can focus on the glue with the OS and leave wchar, cos, strrchr, and all those seemingly endless functions alone. Learned that the hard way. github.com/llvm/llvm-pr...
github.com
llvm-project/libc at main · llvm/llvm-project
The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. - llvm/llvm-project
100
jsmp @jsmp.bsky.social · 04/08/2026
Tried porting Clang to Aster. Turns out C++ has an impressive talent for documenting everything my OS doesn’t implement yet. I’ll tell you all about it… later this decade. 😅
100
jsmp @jsmp.bsky.social · 02/08/2026
For me, the menu bar as a UX is incredible for discovering what an app can do. That's why DOS Edit was so approachable. For Aster Terminal Editor, ESC toggles a similar menu bar, with mouse support (works on macOS too).
Screenshot of the Aster operating system running in QEMU. A terminal editor window is open, displaying a psh script with syntax highlighting, including comments, variables, strings, functions, and structured values. A classic menu bar is visible at the top of the desktop, while a small dock with Files and Terminal icons sits in the bottom-left corner. The editor shows line numbers, a status bar, and a scrollbar, giving the interface a retro workstation feel.Screenshot of a terminal-based code editor running in a macOS window, editing the threes.psh sample script. The editor displays syntax-highlighted psh code with line numbers, a status bar showing the file path and encoding, and a help bar listing keyboard shortcuts such as save, quit, menu, and pipe. The dark theme and minimal interface focus attention on the code while providing a classic terminal editing experience.Screenshot of a terminal-based code editor running in a macOS window with a classic menu bar visible. The View menu is open, showing options for line numbers, word wrap, and syntax highlighting, with a submenu listing formats such as Auto, PSH, PSL, RC, Key = Value, and ASCII Plist. Behind the menus, a syntax-highlighted psh script is visible, while the status bar and help bar remain displayed at the bottom of the editor.Screenshot of a terminal-based code editor running in a macOS window with the Format menu open. A Transform submenu is expanded, offering text transformations such as uppercase, lowercase, snake_case, camelCase, and Pipe…, which sends the current selection to a shell command. Behind the menus, a block of psh code is selected, demonstrating the editor's ability to process selected text through external commands.
011
jsmp @jsmp.bsky.social · 25/07/2026
Went to draft an article using raise (a SSG written in C), and had forgotten it can display a QR code for opening the served pages on my iPhone. It brought back the struggle of getting the QR code rendering right, which I'd completely forgotten. Unfortunately, also how ugly that particular code is.
Terminal window showing the raise serve --bind-all --qr command serving a static website from a local _build directory. The output warns that --bind-all exposes the server on all network interfaces, then lists the local URL (http://localhost:9090), the LAN URL (http://192.168.1.204:9090), and displays a large QR code that encodes the network address for quick access from another device.
110
Reposted by jsmp
Cabel Sasser @cabel.panic.com · 07/06/2026
Here's an easter egg in the new Lego Batman that I think all of you will REALLY appreciate. It's so good, I had to make a video.
116123393969
jsmp @jsmp.bsky.social · 16/07/2026
One nice aspect of building a POSIX-oriented operating system is that many of its components can stand on their own. psh, Aster's shell, builds and runs on macOS, making it easy to iterate on new features and continuously refine the user experience.
Screenshot of the psh terminal running on macOS. The terminal demonstrates array support by creating an array [1, 2, 3, 4], formatting it with fmt, and iterating over its elements with a for loop to print each value. The shell features syntax highlighting with a dark theme and displays the aster % prompt.Screenshot of three.psh, a sample game written in psh, running in the psh terminal on macOS. The game displays a 4×4 grid with numbered tiles (2, 4, 8, and a highlighted 16), along with the player's score, move count, and name. Instructions at the bottom explain how to move using the arrow keys or WASD and press q to save and quit, demonstrating that psh can be used to build interactive terminal applications.
101
jsmp @jsmp.bsky.social · 01/07/2026
You often hear people talk about how they used X to build Y, how great or painful X was, and how it changed the way they think. How often do you hear that nowadays with AI? Most people don't even know which algorithms are being used or what their limitations are until they run into one.
110
jsmp @jsmp.bsky.social · 23/05/2026
Aster’s terminal app (term) now has much better xterm compatibility and proper PTY handling across the system (gettty, PTYs, and major libc support). Also landed an early workspace/window compositor layer. #osdev #toyOS
Screenshot of the operating system running inside QEMU. The desktop has a light blue background with two overlapping terminal windows using a classic dark theme and silver-blue title bars. The terminals display xterm compatibility tests, process listings, and PTY device information. A small terminal launcher icon appears in the bottom-left corner. The UI is minimalist and retro-inspired.
100
jsmp @jsmp.bsky.social · 25/04/2026
You know, you must take things serious when Elfs start to carry a Sword, Xword and even Sxword.
100
jsmp @jsmp.bsky.social · 08/04/2026
kottke.org/26/04/004868...
kottke.org
“I have a feeling that everyone likes using AI tools to try ...
“I have a feeling that everyone likes using AI tools to try doing someone else’s profession. They’re much less keen when someone else uses it for their professi
000
jsmp @jsmp.bsky.social · 24/03/2026
Curious how I was just thinking on how hard it is to make friends nowadays and found this, and yes give a call to your good friends! They probably need it joeprevite.com/friendship-r...
joeprevite.com
Overcoming the Friendship Recession
My thoughts on the friendship recession and what I'm doing to maintain friendships.
001
Reposted by jsmp
Natalia Panferova @natpanferova.bsky.social · 24/03/2026
My new #SwiftUI book is finally out 🎉 I wrote "The SwiftUI Way" for developers who feel like they are fighting the framework as projects grow in complexity. The book will help you align your code with SwiftUI's internal expectations to avoid common pitfalls: books.nilcoalescing.com/the-swiftui-...
books.nilcoalescing.com
The SwiftUI Way
A field guide to SwiftUI patterns and anti-patterns
105512
Reposted by jsmp
Dani Roxo @daniroxo.bsky.social · 10/09/2025
0245
jsmp @jsmp.bsky.social · 10/09/2025
The ideia that a machine had no pleasure in creating an artwork to me is pale in contrast to the fact that a human did not spent years honing the skills needed to understand and express oneself. A style is not only a perspective but also the sum of creative ways to deal with our own limitations.
120
Reposted by jsmp
antirez @antirez.bsky.social · 10/03/2025
My passion for small (hopefully) educational programs is still intact. Reinforcement Learning in Tic Tac Toe in less than 400 lines of C code. github.com/antirez/ttt-rl
5466