Benki β†’ Bookmarks

β‡  previous page next page β‡’

A Kubernetes admission control endpoint. Easy to deploy and configure.

I use it for mutating admission control in order to patch resources deployed by Helm charts or operators.

Model–View–Intent for Kotlin Multiplatform. Works well with Jetpack Compose and Compose for Desktop. Supports time-travel debugging.

One highlight that I am looking forward to watching the recording of is Matias Piipari: Canonical-distributed Deb and Snap packaging of the Swift toolchain for Linux. I’m curious what level of support there will be.

Related: The YouTube channel of the conference.

Lazy dynamic constants for Java. Implemented as dynamic constant pool entries.

Given that a significant part of the startup time of a typical Java application is taken up by class initialization, I wonder if this could be used for good effect when declaring the ubiquitous Logger instance and such.

A more verbose alternative that works without this is:

private static Logger logger() {
  class Statics {
    static final Logger logger = Logger.getLogger(Parent.class);
  }

  return Statics.logger;
}

As the Dycon README points out, this alternative (which is a variant of the initialization-on-demand holder idiom) incurs overhead in the form of an additional class object, so it has its drawbacks. Still, you may prefer it because it does not involve bytecode trickery.

β‡  previous page next page β‡’