entbit. by Niklas Metje Software engineering enthusiast from Cologne, Germany. Writing about DevOps, Cloud, Deno, Software Engineering, books and everything else that interests me. https://niklasmtj.de/ Write more notes 2025-10-07T00:00:00Z https://niklasmtj.de/blog/write-more-notes/ <p>Remember the problem you encountered month ago? That once in a life time error that took a day / week to sort out? Yeah it occured a second time. Did you take notes on how you fixed it in the first place? No? Have fun finding the solution again.</p> Why Deno's new sandboxes could let your app scale infinitely 2025-09-21T00:00:00Z https://niklasmtj.de/blog/infinite-scale-with-deno-sandboxes/ <p>An exciting new development has recently emerged in the Deno universe. The new <a href="https://jsr.io/@deno/sandbox">sandbox project</a>, which is currently in the alpha phase, allows any JavaScript code to be executed in an ephemeral environment. This means that user- or AI-generated code can be executed without the risk of malicious code being brought to the host system.</p> <p>It's a combination of technologies that makes my nerd heart beat faster: Deno and Firecracker VMs combined.</p> AI as a Sparring Partner: Manage Blog Post Marketing 2025-02-21T00:00:00Z https://niklasmtj.de/blog/ai-as-blog-post-marketing-partner/ <p>Over the last few days I have been building a tool that suggests possible titles, meta descriptions, a LinkedIn post and a newsletter issue based on my blog post files in Markdown. Personally, I want to focus on writing good blog posts that reflect my thoughts or work. As the content is more important to me than the 'marketing' around it, be it the LinkedIn post or the 'perfect' description of the article, I have considered using the tool to have this suggested by an AI model. My blog post is always used as the foundation, which is always attached to the prompt.</p> Effortless Internationalization in JavaScript with the Intl API 2025-02-07T00:00:00Z https://niklasmtj.de/blog/i18n-with-javascripts-intl-api/ <p>When creating apps and websites, we often need to display data in different languages. Be it currencies, speeds, times or dates. Sorting words in different languages or dynamically setting the singular and plural forms of a word are also such use cases. For this there is the <code>Intl</code> API in JavaScript, which in my opinion still gets far too little attention.</p> <p>In the past, I have written custom functions or used libraries to do the above in different languages.</p> <p>So let's take a look at some of the functions of the <code>Intl</code> API and try to understand why it can make our lives easier.</p> The End of Date Libraries? Exploring JavaScript's Built-in Temporal API 2025-01-05T00:00:00Z https://niklasmtj.de/blog/end-of-date-libraries-temporal-api/ <p>Working with date objects in Javascript can be quite a pain. That is why I usually use a library like <code>date-fns</code> for comparing, adding hours to my dates or working with dates and times in general.</p> <p>The <a href="https://tc39.es/">TC39</a>, which is the group of people who develop the definition of JavaScript, is working on the Temporal API. You can check out the proposal and documentation <a href="https://tc39.es/proposal-temporal/docs/">here</a>.</p> <p>With this, we no longer need date libraries, because the API itself is a breeze to work with.</p> Setting up PGlite in Deno 2024-09-06T00:00:00Z https://niklasmtj.de/blog/setting-up-pglite-in-deno/ <p>I recently tried <a href="https://pglite.dev/">PGlite</a> because I saw it trending on Hacker News. The idea is cool, having a built-in <a href="https://www.postgresql.org/">Postgres</a> database that can even run in the client's browser brings a lot of possibilities. Seeing WASM (Web Assembly) get more use cases is also exciting to see.</p> Using Environment Variables in Datadog Agent Configuration 2024-09-05T00:00:00Z https://niklasmtj.de/blog/use-environment-variables-in-datadog-agent-config/ <p>Hey there, 👋</p> <p>I needed to set up a Datadog agent to check remote Postgres instances as a regular container. All the documentation I found was about injecting secrets like passwords or hostnames via Kubernetes secrets. This seemed to be the only way to do it besides using Docker Swarm secrets. Since I had to set up a container definition for AWS ECS Fargate, neither of these options were available. So I wanted to see if I could use &quot;regular&quot; environment variables from which the agent could pull the secrets on startup.</p> Enhancing Web Accessibility: Or why I changed my website's font 2024-08-31T00:00:00Z https://niklasmtj.de/blog/enhancing-web-accessibility-with-atkinson-hyperlegible-font/ <p>As someone with visual impairment in one eye, I understand firsthand the challenges of navigating websites with less-than-perfect vision. That's why I recently made a significant change to my website: I switched to the Atkinson Hyperlegible Font.</p> Use the `gofumpt` formatter in Zed as Golang default formatter 2024-08-21T00:00:00Z https://niklasmtj.de/blog/use-gofumpt-formatter-in-zed-as-golang-default/ <p>I've been working more with Golang for a while now, so I set up my Zed editor to use <code>gofumpt</code> instead of <code>gofmt</code> as my default formatter.</p> Automa(tic|g)ally registering ECS task in your AWS Application Load Balancer 2024-07-26T00:00:00Z https://niklasmtj.de/blog/automate-ecs-task-registration-in-alb/ <p>Hey there, 👋! I needed to set up automatic registration of ECS tasks of a service in our load balancer. The previous setups were done by colleagues, but now I had the chance to do it myself. Since we're setting up everything via <a href="https://www.terraform.io/">Terraform</a> as Infrastructure as Code, the example below will be written in <code>hcl</code>, the format that Terraform uses to set up resources.</p>