- Renovate for everything
-
In my earlier post about moving from Kotlin Scripting to Python, I mentioned several reasons:
- Separating the content from the script
- Kotlin Scripting is an unloved child of JetBrains
- Renovate cannot update Kotlin Scripting files
I was wrong on the third point. Here’s my mea culpa.
First things first, Renovate does indeed manages Kotlin Scripting files - since 2022.
Even better, Renovate can manage any type of file. Thanks to Max Andersen for the tip.
- OpenTelemetry Sampling update
-
OpenTelemetry users could not safely configure independent probability sampling policies in a distributed system, as the specification did not cover how to achieve consistency. This feature, the ability to configure unequal-probability sampling policies within a trace and still expect complete traces, is something users expect; it lets service owners configure independent limits on the volume of tracing data collected in a system.
- Migrating to Hetzner
-
It’s not easy to do a strictly apples-to-apples comparison between cloud providers since they tend to differ in features (technical or contractual, e.g. SLAs), but an easy point of comparison is our monthly bill:
AWS and DigitalOcean Hetzner $559.36
$132.96 (-76%)
- Best practices to kill your team proactivity
-
Teams stop proposing ideas because because they realize nothing ever changes. A leader’s job isn’t just to welcome enthusiasm, but to channel it: guide when needed, recognize it when it matters, and above all, never let it die in silence.
You, as a leader, don’t have to say yes to everything. But every no can either kill or nurture: it all depends on how you say it.
- Let’s write a macro in Rust - Part 1
-
In this article, I will try to share some of that excitement with you while using Rust’s macro system. Will this be the most practical and useful macro you can write? Absolutely not. I only hope to show you some possibilities of this powerful tool.
- Axum Backend Series: Models, Migration, DTOs and Repository Pattern
-
The series is interesting, but in this one, I learned:
- How to implement the repository pattern
- That
sqlxoffers migration, as in Flyway
- Hosted Control Planes and Bare Metal: What, Why, and How
-
I have left this field, but I find it still interesting. I think it’s still in flux, and I’m happy to let it stabilize a bit before investing in one approach or another.
- The Declarative configuration journey: Why it took 5 years to ignore health check endpoints in tracing
-
I honestly liked the parameterization by environment variables a lot, but I understand other usages mandate for a more structured approach. Alternatively, Hazelcast derives environment variable names from a structured schema.
- SQL Anti-Patterns You Should Avoid
-
- Mishandling Excessive Case When Statements
- Using Functions on Indexed Columns
- Using SELECT * In Views
- Overusing DISTINCT to “Fix” Duplicates
- Excessive View Layer Stacking
- Nested Subqueries That Do Too Much
- You’re Wasting Time in Java Without These 10 Libraries
-
- Project Lombok: just say no.
- MapStruct: could be useful, depending on your context. If you DTO just map your entities one-to-one, there’s another issue.
- JUnit 5 & Mockito: hard to disagree
- SLF4J with Logback: ten years ago, this was indeed a must. However, with Log4J2, I need to re-assess.
- Apache Commons Lang & Google Guava: it depends.
The language has caught up with most of what these libraries provide.
Worse, for one or two classes, you might be better to code them yourself.
A counter-example: I recently brought in Guava for
Multimap. - Jackson: yes
- Hibernate Validator: I must admit I hardly used it. I wonder if annotations are the right approach, instead of regular code.
- Spring Framework: do I need to say more?
- Apache HttpClient / OkHttp:
OkHttp is pretty good.
However, if you use the Spring framework,
RestClientis a way to go. - Liquibase or Flyway: at least one of them is mandatory if you’re serious about your schemas.
- Build Your Own Database
-
Interactions are pretty cool!
- API Pagination: Techniques, Real-World Applications And Best Practices
-
The post compares two pagination approaches: limit-offset pagination and cursor-based pagination.
- The /llms.txt file
-
A proposal to standardise on using an /llms.txt file to provide information to help LLMs use a website at inference time.
- Announcing the Swift SDK for Android
-
That’s a pretty cool announcement! So far, only Kotlin developers could develop for both Android and iOS. I’m really curious to understand how this change is going to affect the landscape.
Besides, it might increase the reach of Swift, which I believe is quite limited at the moment, while Kotlin benefits from a deep Spring Boot integration.
- Awesome, tiny crates!
-
- Non-empty collections
- Derive aliases
- Grouped asserts
- Configuration aliases
- Struct patching
- Ranged integers
- Easy and fun extension traits
- Bounded vector
- Implement
Displayfrom documentation comments - Ergonomic multi-line string literals
- Floating-point numbers that behave
- Format iterator of strings
- Générer une doc moderne avec Docusaurus
-
Vous devez écrire, maintenir et publier une documentation sur votre produit ? Dans ce billet, nous allons voir comment nous appuyer sur le générateur de sites statiques Docusaurus.