Joe Mwangi
banner
joemwangi.bsky.social
Joe Mwangi
@joemwangi.bsky.social
Scientist and a researcher. Love programming (Java, C), specifically graphics programming. Nuclear energy, clean energy supporter. Movies enthusiast! Love cats and dogs!
Reposted by Joe Mwangi
Live UI coding with #JavaFX! 🎨

Implementing FXML and CSS hot reloading in FxmlKit. Edit, save, and see the results immediately. No more rebuild-restart loops!

It only takes one line of code to enable. 🚀

github.com/dlsc-softwar...
December 23, 2025 at 6:26 PM
Reposted by Joe Mwangi
Check out #FXMLKit. Another convention-over-configuration framework that removes boilerplate code for loading screens done in #FXML.

It is inspired by afterburner.fx but also supports JPro multi-user sessions and dependency injection for nested components.

github.com/dlsc-softwar...

#javafx
GitHub - dlsc-software-consulting-gmbh/FxmlKit: JavaFX FXML loader with convention-over-configuration. Auto-resolves FXML/CSS by class name, supports optional DI, and eliminates FXMLLoader boilerplate...
JavaFX FXML loader with convention-over-configuration. Auto-resolves FXML/CSS by class name, supports optional DI, and eliminates FXMLLoader boilerplate. - dlsc-software-consulting-gmbh/FxmlKit
github.com
December 5, 2025 at 3:29 PM
Java will provide 3 types of nullness types: nullable, non-null and unspecified (currently offered). Freedom of choice is key.
I don't know a single Java programmer who doesn't want non-nullable types, so I'm a bit skeptical here, and I'd also point out that Go failed resoundingly at making programmers not want generics :)
November 29, 2025 at 9:13 PM
First Look at Java Valhalla: Flattening and Memory Alignment of Value Objects. It was great looking at this. More to come on large scale projects. I think once they introduce controlled tearing, it's gonna be epic.

open.substack.com/pub/joemwang...
First Look at Java Valhalla: Flattening and Memory Alignment of Value Objects
"To Valhalla! Chrome and Shiny!" Mad Max: Fury Road (2015 film)
open.substack.com
November 3, 2025 at 8:55 PM
@tvaziri.com, is there any info on exact shots ILM worked on for the movie There Will Be Blood?
October 1, 2025 at 3:08 PM
Reposted by Joe Mwangi
This is a complete, valid #Java 25 app. It's powered by JEP 512: Compact Source Files and Instance Main Methods authored by Ron Pressler, Jim Laskey and @gavinbierman.bsky.social. More about JEP 512 👉 openjdk.org/jeps/512

#Java25 #JDK25
September 22, 2025 at 7:41 PM
Latest java release (Java 25) actually tries to address this. You don't even need to compile the source.
🍂 why tf does every language seemingly require an annoying setup if you're not using an IDE just let me run individual files i don't wanna manage build configs n shit 😭
September 25, 2025 at 7:24 PM
Reposted by Joe Mwangi
A timeless model for writing a research summary.

1/2
September 6, 2025 at 10:51 AM
Reposted by Joe Mwangi
Brincando com JMH: microbenchmarking em Java
java benchmark
computaria.gitlab.io
September 3, 2025 at 2:11 AM
Reposted by Joe Mwangi
Announcing openjdk-mobile.github.io

An initiative to collaborate on tools/expertise for real Java on Mobile

mail.openjdk.org/pipermail/mo...

Let's leverage the power, beauty and maintainability of OpenJDK to run Java apps on mobile!
Java on Mobile
openjdk-mobile.github.io
August 29, 2025 at 12:46 PM
The most evolutionary thing that might happen to Java: Witnesses. The ability to separate behaviour from the type. This could enable operator overloading, collection literals, type conversion, default value initialization, etc. Java is back.

youtu.be/Gz7Or9C0TpM?...
Growing the Java Language #JVMLS
YouTube video by Java
youtu.be
August 22, 2025 at 11:46 AM
Reposted by Joe Mwangi
Posting AI slope. People tend to think solar power is a holy grail to energy solution, which is far from it.
I love this creativity and technology. A solar powered train. I’d love to have that here in the United States. A great step forward for Australia.
August 19, 2025 at 8:19 PM
South Park is brutal 😂😂😂
South Park’s ratings have been setting records. The season 27 premiere delivered 6 million cross-platform viewers and had the show's biggest share in 25 years.
August 14, 2025 at 9:09 PM
Reposted by Joe Mwangi
Visualizing quaternions: An explorable video series (2018) | Discussion
Visualizing quaternions, an explorable video series
Explaining how quaternions, a four-dimensional number system, describe 3d rotation.
eater.net
August 13, 2025 at 2:20 AM
Reposted by Joe Mwangi
Here’s my ~30 hour playlist of VODs for Thinking with Types!
www.youtube.com/playlist?lis... #haskell
Book: Thinking with Types - YouTube
This playlist is me working through "Thinking with Types" by Sandy Maguire. Everything was streamed on my twitch originally (twitch.tv/chiroptical). Code is ...
www.youtube.com
August 13, 2025 at 1:47 AM
Reposted by Joe Mwangi
Optimizing a Math Expression Parser in Rust

Another fantastic long read about optimizing a rust written parser from 43s to less than a second. Less allocation, parallelization, SIMD, memory mapping, all optimization the things.
Optimizing a Math Expression Parser in Rust
Optimizing a math expression parser for speed and memory.
rpallas.xyz
July 16, 2025 at 12:56 PM
Reposted by Joe Mwangi
Slides for my #JVMLS talk on "Paths to support additional numeric types on the Java platform":
github.com/jddarcy/Spea...
github.com
August 5, 2025 at 6:17 PM
Reposted by Joe Mwangi
gonna start calling modern java 'javaml' now
November 10, 2024 at 11:25 PM
Reposted by Joe Mwangi
the rust playground has a really nice godbolt-like MIR/llvm-IR view (if you click on the "..." next to run)
play.rust-lang.org

otherwise, -Z dump-mir should also work i think? (rustc-dev-guide.rust-lang.org/mir/debuggin...)
Rust Playground
A browser interface to the Rust compiler to experiment with the language
play.rust-lang.org
August 7, 2025 at 9:41 PM
Reposted by Joe Mwangi
With pattern matching, all advantages of mutability are accessible to immutability too.
August 6, 2025 at 5:13 PM
Reposted by Joe Mwangi
We just launched Foursquare Spatial Desktop – a geospatial analysis tool powered by embedded DuckDB and built on sqlrooms.org. Everything runs locally: your data stays on your machine, no cloud needed. A modern reimagining of Kepler.gl. Mac only for now. More coming.
foursquare.com/products/spa...
July 31, 2025 at 10:39 AM
Reposted by Joe Mwangi
📦 JEP 507 delivered to JDK 25
Title: Primitive Types in Patterns, instanceof, and switch (Third Preview)
Type: feature
Component: spec / lang
Release: 25
See openjdk.org/jeps/507
July 22, 2025 at 8:55 PM