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!
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
Reposted by Joe Mwangi
💡 Did you know GitHub has a built-in kanban board?

It's called GitHub projects. Each card = an issue on a repo, and you can track as many repos as you want. You can also make boards private or public. Cool way to pretend your 50 dead side projects aren't actually dead!
July 25, 2025 at 11:29 AM
Reposted by Joe Mwangi
Let’s do virtual threads. Java did it right.
July 16, 2025 at 3:28 PM