jens.dev
Blog
Projects
Things I built, broke, or figured out the hard way. Lately: Rust, self-hosting and local LLMs.
2026
Nov 7
An epaper picture frame, revisited
Sep 20
Anonymous Git pull requests
Sep 11
Git as universal storage
Aug 6
gguf-runner as a Rust library
Jul 19
Everlock, from the little desk where I work
Jun 30
Splitting Rust builds and tests on Codeberg
Jun 28
Shipping CPU-optimized Rust binaries in container images
Jun 10
When Let's Encrypt Is Valid but GitHub Actions Still Rejects It
Mar 26
TurboQuant in gguf-runner: roughly half the memory at nearly the same speed
Mar 15
Building containers on Codeberg
Mar 8
gguf-runner updates: vision support, releases, and many small improvements
Feb 17
gguf-runner: a minimal GGUF CLI
2025
Aug 8
Letting an LLM Review Our Pull Requests (So You Don’t Have To)
2024
Aug 25
An epaper picture frame
Jul 10
A Special Purpose HTTP Proxy in Rust
2023
Jun 5
Scaling BusinessWorks in Kubernetes
Jun 5
Getting Started with Kubernetes
Apr 20
A HTTP Server-Timing Header for axum
Apr 15
A Solar Powered GitHub Runner
Feb 27
Reaping some benefits of containerization
Feb 27
Containerizing a BusinessWorks Stack
Feb 27
The Classic BusinessWorks Stack
Feb 27
Modernizing a Classic Tibco stack
2022
May 22
Write a KEDA external Scaler for Oracle in Rust
2021
Feb 13
How to access Azure Key Vault in Rust
2020
Sep 15
A hello world kubernetes operator in Rust
Aug 9
Containerizing TIBCO BusinessWorks 5
2019
Apr 12
Retrieve the API key name in AWS API Gateway
2018
Jan 10
Implementing DynamoDB triggers (streams) using CloudFormation
2017
Dec 10
Using parameters through multiple nested CloudFormation stacks
Sep 13
Integrate API Gateway with SNS using CloudFormation
Aug 24
Integrate API Gateway with Kinesis Firehose using CloudFormation
Jun 24
visualizing a cloudformation template
Jun 18
extending cloudformation with custom resources
Jun 15
how the web component slot system works
Jun 14
how web component attributes work
Jun 3
writing a hello world web component
May 9
hosting a Cloudfront site with S3 and API Gateway
Mar 27
migrating a mongodb to AWS Athena
Feb 28
a serverless cron in AWS CloudFormation
Feb 19
Publish an S3 Event to Lambda through SNS
Jan 5
generate a self signed certificate with AWS Lambda
2016
Dec 16
converting CSV to ORC with Apache NiFi
Nov 23
invoking java gc through bash
Nov 11
auto-confirming a newly created Cognito user
Oct 16
installing the nchan module for nginx on a gentoo based system
Jul 21
[njams] find engines with replay recording disabled
Jul 14
Java SPI - a simple hello world service
Jun 26
connecting nodejs to Tibco EMS
Jun 21
get oracle allocation sizes part 2
Jun 17
schemaless schema validation in TIBCO BusinessWorks
Mar 10
embed a github commit log into markdown
Mar 8
authenticate with the bondora API manually
2015
Dec 21
building an API on top of another page
Dec 16
the serverless API
Oct 10
FormDataHandler implements com.sun.net.httpserver.HttpHandler
Oct 4
ant task to show content of a jar file
Sep 26
[njams] getting the client version of all engines
Sep 17
[njams] getting a daily success/error rate per deployed service
Sep 16
[njams] how the njams_t_monitor_main status works
Sep 15
calculating percentiles in oracle
Sep 4
[mule] flowVars not visible in parent flow
Aug 4
generate a random uuid in bash
Jul 16
add a network delay in linux
Jul 11
query index usage statistics in oracle
Jun 28
debugging a java application with an interactive shell
Jun 27
add jar to the classpath at runtime in jjs (the hacky way)
Jun 27
query clob settings in oracle
Jun 27
get table and index allocation size in oracle
Jun 26
detect whether ASSM is managing your tablespace
Jun 25
getting monthly throughput stats of a TIBCO EMS instance
Jun 24
reset the TIBCO EMS statistics
Jun 17
get the most visited url from an access log through a single line of bash
Jun 14
extract the UUIDv1 encapsulated timestamp within an oracle select
Jun 13
doing objects in jjs
Jun 12
read the content of a file in one line in jjs
Jun 11
print something to the console in jjs
Jun 6
using jjs under osx
2014
Jan 3
new project - celero.io
2010
Oct 23
BusinessEvents 4: using Scorecards in a clustered environment
Feb 26
URL encode / decode in JavaScript
Jan 4
tracking virtual links with google analytics
2009
Dec 8
handling a few thousand simultaneous connections in TIBCO BusinessWorks
Oct 13
TIBCO Designer Panel too small
Sep 23
searching for hash strings in postgres
Sep 5
init script for the TIBCO Administrator
Aug 17
adding IP-restriction to BusinessWorks processes
Aug 8
cloud-the-web - my new web project
Jul 31
shell-tools.net version2
Jul 15
installing GLUEscript on debian squeeze 64bit
Jun 25
why sub-selects can be faster than inner joins
Jun 9
get hostname from url as stored procedure in plpgsql
Jun 5
extracting information from websites through xslt
May 28
writing Unicode characters to Oracle with TIBCO BusinessWorks
May 8
gnome 3.0, just my two cents
Apr 24
TIBCO Designer with external memory window
Apr 22
improve TIBCO Designer tester performance under linux
Apr 9
what’s the sitch
Feb 24
installing TIBCO TRA 5.6 on a debian 64bit
Feb 6
copy a table across databases via dblink
Feb 3
bringing the yahoo finance stream to the shell
Feb 1
Moving Windows Part2
Jan 14
Streaming editor improved
2008
Dec 10
Moving Windows remotely with .NET
Dec 2
use yahoo finance streaming api
Nov 16
Tibco EMS with database backend (postgresql)
Oct 3
generate random timestamps in mysql
Sep 22
tunnel your imap over ssh
Sep 21
Hello World!