Recent Favourite Reads - Newsletter 11.09.2023-15.10.2023
Main
- JEP 457: Class-File API (Preview) with discussion session
12 min
Video content
authored by Brian Goetz;50 min
Finally, a new standard API in the field of class files manipulation. From the JEP, it looks like this will be a full-fledged replacement for ASM in many use cases and outside the JDK internals: it is no less low-level, but at the same time, the API is more functional and developer-friendly. As an additional plus, it seems that after broader adoption, we can expect faster updates to new versions of Java since updating some libraries will no longer be such a complete hell for their maintainers.
- Scaling Kafka to Support PayPal’s Data Growth ;
12 min
- Zero trust with Kafka ;
8 min
- Adding runtime benchmarks to the Rust compiler benchmark suite ;
20 min
- Java 21's pattern matching could actually convince me to touch Java again ;
25 min
I can’t help but recommend this article as a fairly comprehensive overview and application of new features of the latest versions of Java with a light touch on type theory, examples and an explanation of why it is needed. If you only read one article on this topic, it’d be better this one.
- JDK 21 Release Notes ;
30 min
- GraalVM for JDK 21 is here! 🚀 ;
7 min
- GitHub Actions could be so much better ;
11 min
- Text editing on mobile: the invisible problem with comments;
20 min
While reading, I felt something akin to learned helplessness: it’s true, I’ve never particularly liked typing on a smartphone, but at the same time, I have not even questioned myself about what exactly is wrong. Thus, this publication provides a walkthrough of why mobile typing has its current form, what problems it creates and how we can address them. The authors are incredibly right that such an overhaul of mobile typing is very unlikely soon. Still, the article itself demonstrates that there are people who are conducting analysis and trying to propose something in this area.
- UK air traffic control meltdown ;
30 min
- How CPython Implements and Uses Bloom Filters for String Processing ;
10 min
- 11 Principles for building and scaling feature flag systems ;
8 min
- 50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs ;
45 min
- Introducing Apache Flink on Confluent Cloud ;
8 min
- Load Balancing ;
10 min
- Lessons from debugging a tricky direct memory leak ;
7 min
- Level-up your Java Debugging Skills with on-demand Debugging ;
6 min
- Using JLink to create smaller Docker images for your Spring Boot Java application ;
6 min
- The Absolute Minimum Every Software Developer Must Know About Unicode in 2023 ;
14 min
- Failure Mitigation for Microservices: An Intro to Aperture ;
12 min
- Discussion: New Project: Babylon ;
3 min
- Problem Details for HTTP APIs - RFC 7807 is dead, long live RFC 9457 ;
9 min
In general, the changes regarding the deprecated RFC 7807 are perceived by me as rather minor, except for introducing the new registry of common problem type URIs. At the time of publication, there are only three entries in this registry, and I'm not sure whether it will remain in limited use, replenishing mainly from other RFCs, or, on the contrary, it may acquire too many common errors, making it difficult to pick the right one for a particular case.
- We built the fastest CI in the world. It failed. Here’s what we learned ;
18 min
- The joys of maintenance programming ;
6 min
- In a git repository, where do your files live? ;
7 min
- Draggable objects ;
20 min
- Python 3.12.0 Release Notes ;
6 min
- Python 3.12.0 from a supply chain security perspective ;
5 min
- Simple data pipeline powertools: sqlite, pandas, gnuplot and friends ;
6 min
- WASI support in Go ;
5 min
- How Agoda manages 1.8 trillion Events per day on Kafka ;
10 min
- Unpacking elixir: resilience ;
7 min
- Functional Transformation of Immutable Objects ;
10 min
- Tracing: structured logging, but better in every way with comments;
10 min
- Thoughtworks Technology Radar: Volume 29 ;
20 min
- Subtraction Is Functionally Complete ;
10 min
- Stop Using char in Java. And Code Points ;
8 min
- Curved Paths ;
15 min
- Your Organization Probably Doesn't Want To Improve Things with comments;
8 min
Misc
- Why Characters Write: First-person narrators and the stories they tell ;
9 min
- "Computer says guilty" - an introduction to the evidential presumption that computers are operating correctly ;
6 min
- The End of the Subscription Era is Coming ;
10 min
- The Tyranny of the Marginal User ;
5 min
- What the Science Actually Says About Unconscious Decision Making ;
22 min
- Flat origami is Turing Complete with related blog post
1 hour
;8 min
- Words that deserve wider use ;
1h 30 min
Interesting projects
- Linux kernel map;
- Building an economy simulator from scratch;
- Typst: A new markup-based typesetting system that is powerful and easy to learn (latex successor);
- Amazon Ion Specification;
- Paisa – Personal Finance Manager;
- JPL Open Source Rover Project;
- ClickHouse Keeper: A ZooKeeper alternative written in C++;
- java-stacksrc: Decorates stack traces with source code snippets.;
- pgroll - Zero-downtime, reversible, schema migrations for Postgres with introduction blog post;
- Aperture: an observability-driven load management platform designed for classifying, scheduling, and rate-limiting API traffic in cloud applications;
- AlmasB/FXGL: Java / JavaFX / Kotlin Game Library (Engine);
- Find my cat: open-source Cat Tracker;
- Calculate the difference and intersection of any two regexes;
- OpenMoji: Open source emojis for designers, developers and everyone else;
- Shrinkflation;
- HyperDX: An open source observability platform unifying session replays, logs, metrics, traces and errors;
- Typesense: Open Source alternative to Algolia + Pinecone and an Easier-to-Use alternative to ElasticSearch;
- Catala is a domain-specific language for deriving faithful-by-construction algorithms from legislative texts;
- Dictionary of Algorithms and Data Structures;
- Manuals Showcase: A showcase of unusual or interesting manuals;
- Whole Earth Index: A nearly-complete archive of Whole Earth publications;
- Comcast: Simulating shitty network connections, so you can build better systems;
- toxiproxy: A TCP proxy to simulate network and system conditions for chaos and resiliency testing;
- scalar: Beautiful API references from Swagger/OpenAPI files;
- fury: A blazing fast multi-language serialization framework powered by jit and zero-copy
There is a benchmark comparison of JVM serialization libraries including fury, protobuf, thrift, kryo and others.