RSSAmplifier

Blog

(untitled)

Mihai Safta's blog - toughts about computing

blog.mihaisafta.comRSS feed ↗10 posts

Latest posts

LCARS Raylib app - offline voice recognition & UI editing

LCARS voice recognition & UI editing This is the continuation in the series of LCARS app development: LCARS Elbow LCARS Frame LCARS Text Editor In the last post I built a text editor from scratch for the Captain’s-log use-case. This time I added three things to it: speech recognition, so you can dictate into the log instead of typing it out; proper cursor editing, so you can insert and…

LCARS text editor

LCARS Text editor in Raylib This is the continuation in the series of LCARS app development: LCARS Elbow LCARS Frame This time I focused on implementing a text editor from scratch in Raylib. This is for something like the personal log / Captain’s log use-case. Works better in the full screen version available here Features Mouse over text area to allow editing text Insert text - only at the…

Raylib LCARS Frame

LCARS frame in Raylib Continuation from last post about designing the LCARS elbow. I continued with making the full frame and add some interactivity to it. Full screen version available here Github Code Repo

Raylib LCARS Elbow designer

LCARS Elbow designer in Raylib Just a fun little project for designing LCARS elbows. Click ’d’ key for debug view. Code: https://github.com/saftacatalinmihai/lcars/blob/main/lcars.c

Software Architecture Horror Story

This is a tale of software architecture decision-making in large companies. The setup As part of my job as a software architect, I had to design a solution which involved the integration between 2 systems: let’s call them A and B. They were part of a new instant payment processing flow that was beeing developed. System B had a legacy integration mechanism that was no longer supported at the…

Computer

🖖 Re-Creating Star Trek’s LCARS Computer With Modern LLMs A hands-on experiment in autonomous tool-building agents 1 · Why LCARS? For decades science-fiction fans have watched Star Trek officers converse with a ship-wide computer LCARS (“Library Computer Access/Retrieval System”). LCARS could: answer arbitrary questions by searching internal databases; execute real-world actions…

Visual Stream Processing System

Add I&rsquo;ve added a new tldraw tool called Stream Component (left-most icon: </> in the toolbar, shortcut key S). You can click or draw a rectangle to add a stream component to the canvas. The component is not initialized at first - you need to select the component type from the drop-down menu. This UI will be improved to allow more discoverability, show descriptions of components, etc. After…

7 Essential Tech Talks Every Developer Should Watch

Whether you&rsquo;re a seasoned developer or just starting your coding journey, these seven talks are packed with insights that will challenge and inspire you. In the rapidly evolving world of software development, it&rsquo;s easy to get lost in the sea of new languages, frameworks, and techniques. But as I journeyed through my career as a developer, I found that revisiting seminal talks from…

Pure Functional Stream processing in Scala [2]

In the last post, we saw how to combine pure functions running in IO and Akka streams using .mapAsync and .unsafeToFuture val source: Source[String, NotUsed] = ??? val sink: Sink[Int, NotUsed] = ??? def pureFunction[F[_]](s: String): F[Int] = ??? source .mapAsync(parallelism = 8)(m => pureFunction[IO](m).unsafeToFuture()) .runWith(sink) In order to make it easier to work with IO in Akka Streams,…

Pure Functional Stream processing in Scala [1]

In Scala you can write pure functional code, similar to Haskell or other pure functional languages, but you’re not obligated to. Wikipedia categories Scala as an impure Functional language. FP purists view this as a weakness of Scala, but others view the option of “cheating” pureness as an acceptable choice sometimes. Even if you can do everything purely, it’s sometimes a lot easier to think about…