Dazed & Confused https://blog.f12.no/wp/ Agile, Continuous Delivery and Programming Time to re-evaluate my relationship to databases https://blog.f12.no/wp/2025/10/13/time-to-re-evaluate-my-relationship-to-databases/ https://blog.f12.no/wp/2025/10/13/time-to-re-evaluate-my-relationship-to-databases/ Mon, 13 Oct 2025 07:34:00 +0000 Pun totally intended. 😜 TLDR; The database landscape often presents a false choice: you either use heavily normalized relational databases or document… Using Claude Code with GitHub Copilot: A Guide https://blog.f12.no/wp/2025/09/22/using-claude-code-with-github-copilot-a-guide/ https://blog.f12.no/wp/2025/09/22/using-claude-code-with-github-copilot-a-guide/ Mon, 22 Sep 2025 09:26:54 +0000 This setup works, but a bit complicated. I love Claude Code, but am using Opencode right now for a simpler path and less token usage. It is not exactly the… OpenTelemetry and Java agents at Javazone 2025 https://blog.f12.no/wp/2025/09/09/opentelemetry-and-java-agents-at-javazone-2025/ https://blog.f12.no/wp/2025/09/09/opentelemetry-and-java-agents-at-javazone-2025/ Tue, 09 Sep 2025 18:12:06 +0000 Last week I had the pleasure of talking at JavaZone. I told the story of how we gained some awesome insights in production by using the OpenTelemetry agents. A… My talk on KTor and HTMX at KotlinConf 2025 https://blog.f12.no/wp/2025/08/18/my-talk-on-ktor-and-htmx-at-kotlinconf-2025/ https://blog.f12.no/wp/2025/08/18/my-talk-on-ktor-and-htmx-at-kotlinconf-2025/ Mon, 18 Aug 2025 20:55:27 +0000 In May I had the honour of talking about KTor and HTMX at KotlinConf in Copenhagen. It was based on my previous articles on how to do SSE updates and KTor. It… A Continuous Delivery reading list https://blog.f12.no/wp/2025/01/14/a-continuous-delivery-reading-list/ https://blog.f12.no/wp/2025/01/14/a-continuous-delivery-reading-list/ Tue, 14 Jan 2025 14:42:31 +0000 Over time I have worked a lot with continuous delivery and tried to explain why it is such an important concept. When I was asked for a reading list, I was… HTMX + SSE: Easy updates of HTML state with no JavaScript https://blog.f12.no/wp/2024/11/11/htmx-sse-easy-updates-of-html-state-with-no-javascript/ https://blog.f12.no/wp/2024/11/11/htmx-sse-easy-updates-of-html-state-with-no-javascript/ Mon, 11 Nov 2024 23:02:24 +0000 TL;DR: Synchronised state between multiple browser windows. With plain HTML + HTMX (SSE in the background). And no JavaScript or page reloading! UPDATE (July… Loading environment variables in code: the simple way https://blog.f12.no/wp/2023/09/28/loading-environment-variables-the-simple-way/ https://blog.f12.no/wp/2023/09/28/loading-environment-variables-the-simple-way/ Thu, 28 Sep 2023 08:14:00 +0000 Read on for a solution to loading environment variables from a .env file. The code is for Kotlin, but should be easy to replicate in other stacks as well. No… Replacing legacy systems: Proxy to learn and control https://blog.f12.no/wp/2023/09/20/replacing-legacy-systems-proxy-to-learn-and-control/ https://blog.f12.no/wp/2023/09/20/replacing-legacy-systems-proxy-to-learn-and-control/ Wed, 20 Sep 2023 08:42:00 +0000 TL;DR – Create a custom proxy to make sure you know how the old system behaves and can transition off it in a controlled manner. A couple of weeks back I held… Full stack development with KTor and HTMX ❤️ https://blog.f12.no/wp/2023/08/30/full-stack-development-with-ktor-and-htmx-%e2%9d%a4%ef%b8%8f/ https://blog.f12.no/wp/2023/08/30/full-stack-development-with-ktor-and-htmx-%e2%9d%a4%ef%b8%8f/ Wed, 30 Aug 2023 16:54:58 +0000 Sometimes it feels like I have been yak shaving for the last 20 years. Well, not entirely. But things like Rules Engines, SOA, App Servers and debugging… Logback superpowers for better observability https://blog.f12.no/wp/2023/08/08/logback-superpowers-for-better-observability/ https://blog.f12.no/wp/2023/08/08/logback-superpowers-for-better-observability/ Tue, 08 Aug 2023 07:53:00 +0000 Logs are an essential tool for monitoring and observing system behavior in test and especially production. They provide a wealth of detailed information and… Reduced complexity with HTMX on the front end? https://blog.f12.no/wp/2023/08/02/reduced-complexity-with-htmx-on-the-front-end/ https://blog.f12.no/wp/2023/08/02/reduced-complexity-with-htmx-on-the-front-end/ Wed, 02 Aug 2023 08:57:00 +0000 I recently stumbled upon HTMX and found the concepts really interesting. Many front ends does not have to be a SPA, and I think HTMX can be a really simple and… Better syntax highlighting in Intellij IDEA https://blog.f12.no/wp/2023/07/24/better-syntax-highlighting-in-intellij-idea/ https://blog.f12.no/wp/2023/07/24/better-syntax-highlighting-in-intellij-idea/ Mon, 24 Jul 2023 14:04:48 +0000 Quick tip if you’re using Intellij IDEA and not every framework is supported: Add the annotations dependency. This enables IDEA to get information about… JUnit and ParameterResolver — Caching database connections in your tests https://blog.f12.no/wp/2023/07/17/junit-and-parameterresolver-caching-database-connections-in-your-tests/ https://blog.f12.no/wp/2023/07/17/junit-and-parameterresolver-caching-database-connections-in-your-tests/ Mon, 17 Jul 2023 17:37:42 +0000 This is a re-post of an original Medium article. As I am moving my content here I will re-post some content. We aim for fast tests, ideally completing all… It’s been a while… https://blog.f12.no/wp/2023/07/16/its-been-a-while/ https://blog.f12.no/wp/2023/07/16/its-been-a-while/ Sun, 16 Jul 2023 22:50:13 +0000 And I think maybe it’s time to bring things back here. If you by any chance are actually following this site you might want to check what I have been writing… Write awesome CLIs! https://blog.f12.no/wp/2017/05/03/write-cli/ https://blog.f12.no/wp/2017/05/03/write-cli/ Wed, 03 May 2017 10:27:07 +0000 It’s time to start writing kick ass CLIs instead of hacking scripts! 🙂 It’s a lot easier than you might think. If you’re impatient just scroll to the bottom… SSL to the people https://blog.f12.no/wp/2015/12/08/ssl-to-the-people/ https://blog.f12.no/wp/2015/12/08/ssl-to-the-people/ Tue, 08 Dec 2015 08:37:33 +0000 I have lost count of how many hours, days and even weeks I’ve wasted because of un-trusted self-signed/generated certificates in my time as a developer. Some… Microservices reading list – part II https://blog.f12.no/wp/2015/04/09/microservices-reading-list-part-ii/ https://blog.f12.no/wp/2015/04/09/microservices-reading-list-part-ii/ Thu, 09 Apr 2015 10:21:44 +0000 A little while ago I summarized some great articles and experiences with microservices. As it continues it’s travel along the hype cycle new excellent (and… Powerpoint presenters mode in VirtualBox https://blog.f12.no/wp/2015/01/16/powerpoint-presenters-mode-in-virtualbox/ https://blog.f12.no/wp/2015/01/16/powerpoint-presenters-mode-in-virtualbox/ Fri, 16 Jan 2015 13:56:45 +0000 After switching to Linux as my main operating system I was expecting problems. Even though it has come far, it’s not really your granny’s operating system. 😉 I… A kind of Microservices reading list https://blog.f12.no/wp/2014/09/12/a-kind-of-microservices-reading-list/ https://blog.f12.no/wp/2014/09/12/a-kind-of-microservices-reading-list/ Fri, 12 Sep 2014 06:06:21 +0000 I’ve been working with Microservices for the last couple of years. It was kind of an uncharted territory back when we started. But the attention on the net and… My favourite Android apps: 2014 update https://blog.f12.no/wp/2014/04/27/my-favourite-android-apps-2014-update/ https://blog.f12.no/wp/2014/04/27/my-favourite-android-apps-2014-update/ Sun, 27 Apr 2014 14:35:36 +0000 I thought I’d update my list of recommended applications. Let me know if there’s some missing! Quick note: I use only Nexus devices (direct from Google) so it… Speeding up development cycles with Docker https://blog.f12.no/wp/2013/09/16/speeding-up-development-cycles-with-docker/ https://blog.f12.no/wp/2013/09/16/speeding-up-development-cycles-with-docker/ Mon, 16 Sep 2013 15:20:24 +0000 When I started doing Puppet development I was looking for a nice way to do testing. Vagrant was the best option at the time. But when Docker surfaced, and I… Creating system docs in source control https://blog.f12.no/wp/2013/06/12/creating-system-docs-in-source-control/ https://blog.f12.no/wp/2013/06/12/creating-system-docs-in-source-control/ Wed, 12 Jun 2013 09:35:41 +0000 Wiki’s are a great technology. Well for some things. For documenting systems I am not convinced. Some problems: All the old stuff that piles up. Nobody ever… Juju in the cloud with charms https://blog.f12.no/wp/2013/05/27/juju-in-the-cloud-with-charms/ https://blog.f12.no/wp/2013/05/27/juju-in-the-cloud-with-charms/ Mon, 27 May 2013 15:17:13 +0000 I’m doing something of a tour of the in-house PaaS world at the moment. And in my quest I stumbled upon Juju, which at first seemed like a PaaS solution to me.… Setting up CloudFoundry v1 on AWS https://blog.f12.no/wp/2013/04/11/cloudfoundry-v1-setup/ https://blog.f12.no/wp/2013/04/11/cloudfoundry-v1-setup/ Thu, 11 Apr 2013 18:44:40 +0000 I have been looking into differnet in-house PaaS solutions lately. I´ll leave the reasons for choosing PaaS and the wider evaluation to a later post. I´ll just… Bash #4 – Quote function parameters https://blog.f12.no/wp/2012/06/20/bash-4-quote-function-parameters/ https://blog.f12.no/wp/2012/06/20/bash-4-quote-function-parameters/ Wed, 20 Jun 2012 20:43:57 +0000 I try to extract stuff into functions both for re-use and encapsulation. Coming from Java Bash itself leaves a lot to be desired in this area but that´s a… Bash #3 – Default values https://blog.f12.no/wp/2012/05/25/bash-3-default-values/ https://blog.f12.no/wp/2012/05/25/bash-3-default-values/ Fri, 25 May 2012 13:03:53 +0000 When handling parameters from the command line I usually want one or two parameters to have a default value. In Bash I can achieve this through:… Bash #2 https://blog.f12.no/wp/2012/05/23/bash-2/ https://blog.f12.no/wp/2012/05/23/bash-2/ Wed, 23 May 2012 08:33:07 +0000 Part of what I find really hard with Bash scripts is encapsulation and error handling. It all became a tiny bit better when I discovered how I can print the… Bash #1 https://blog.f12.no/wp/2012/05/21/bash-1/ https://blog.f12.no/wp/2012/05/21/bash-1/ Mon, 21 May 2012 22:03:10 +0000 I’m currently working on automating our deployment with Bash scripts. For a TDD loving Java programmer it can be quite hard to figure this all out, but I’m… Spotify tips and websites https://blog.f12.no/wp/2011/08/02/my-spotify-tips/ https://blog.f12.no/wp/2011/08/02/my-spotify-tips/ Tue, 02 Aug 2011 12:05:17 +0000 Spotify has been released in the US, and I´m really hoping for their success. I´ve been a proponent of Spotify since the very beginning, and cheer them on for… Recommended Android Applications https://blog.f12.no/wp/2010/08/06/redommended-android-applications/ https://blog.f12.no/wp/2010/08/06/redommended-android-applications/ Fri, 06 Aug 2010 08:13:47 +0000 So a lot has changed since I posted an update to my Essential Android Applications. Currently running Android 2.2 so be aware that some of these apps require…