Lukas Werner https://lukaswerner.com A personal blog from Lukas Werner Your Computer Is Fast Enough https://lukaswerner.com/post/2026-03-03@computer-fast-enough /post/2026-03-03@computer-fast-enough Tue, 03 Mar 2026 00:00:00 GMT I often claim that self hosting is a great learning experience. I encourage almost anyone who is serious about building software to start a blog. Both because it is good to have a portfolio of work that you have published, but also because it can teach you so much about how to run software. I’ve been running my blog exclusively myself for a little over four years now. I’ve rewritten my site more times than I can count in the last 7 years. Sure I don’t have the biggest audience so I don’t need to deal with massive load practically ever, but I a friend of mine did switch from Fly.io to self-hosting and he does have a big audience. His site gets to the front page of Hacker News quite regularly. Soon after he went self hosted he got on the front page of Hacker News with a load of 5% CPU and 77% memory. Not too bad for getting the hug of death from the internet. A Love Letter to Self-Hosting https://lukaswerner.com/post/2026-02-13@self-hosting-letter /post/2026-02-13@self-hosting-letter Fri, 13 Feb 2026 00:00:00 GMT I’ve tried to put to paper why I love self-hosting; yet I’ve never been fully able to accurately describe what I love about it. Perhaps it is the digital sovereignty, or the rejection of living on the internet and renting my space, or perhaps it is a way of feeling closer to the software I use. Either way it is something that matters a great deal to me. Don't Sleep on the Fundamentals https://lukaswerner.com/post/2026-01-11@getting-over-deep-blue /post/2026-01-11@getting-over-deep-blue Sun, 11 Jan 2026 00:00:00 GMT A little under a year ago I published a post where I had gotten existential crisis about the future of software engineering. In the time since then I’ve continued to program, with and without AI on various projects. The time after I had that ‘Deep Blue’1 moment probably has taught me more about the future of the industry than that one shock. 6 Months of Going Light https://lukaswerner.com/post/2025-12-13@going-light /post/2025-12-13@going-light Sat, 13 Dec 2025 00:00:00 GMT I’ve been struggling with various forms of digital services addiction for years now. The earliest I can think of was when a first generation iPad first came to our house and I couldn’t get enough of stampylonghead Minecraft Xbox videos. That addiction morphed into wanting to learn as much as I could when I started using Google and Wikipedia. (Yes you can get addicted to Google.) A Neat Little Thing I Learned https://lukaswerner.com/post/2025-11-12@mark-context-windows /post/2025-11-12@mark-context-windows Wed, 12 Nov 2025 00:00:00 GMT I was working on adding a description generator for mark, my bookmark manager, recently. The way the existing implementation pulled descriptions was by grabbing the header’s description tag through meta[property="og:description"] or meta[name="description"] otherwise it falls back to the first paragraph tag. Unfortunately, this leads to some pretty flawed descriptions, looking at you the Verge. Why Software Quality Disappeared: Culture https://lukaswerner.com/post/2025-10-14@swe-qc-culture /post/2025-10-14@swe-qc-culture Tue, 14 Oct 2025 00:00:00 GMT In response to The Great Software Quality Collapse: How We Normalized Catastrophe: Heimweh https://lukaswerner.com/post/2025-09-20@Heimweh /post/2025-09-20@Heimweh Sat, 20 Sep 2025 00:00:00 GMT I have this feeling every time that I move someplace new. It is this sadness this, heimweh as the Germans call it. It translates to homesickness. However, this translation does a disservice to the feeling it prescribes. Directly translated it is ‘home pain’, the pain that you get when you are away from home. Tips for Students Considering Transferring https://lukaswerner.com/post/2025-09-19@College-Transfers /post/2025-09-19@College-Transfers Fri, 19 Sep 2025 00:00:00 GMT Transferring schools is a tough process, there can be emotional, financial, environmental, or academic challenges. However, sometimes it can feel that you are alone on that journey trying to weather a storm where you have a vague idea of where to go but not all the detailed maps you need to get there. What Is the Future of Software Engineers? https://lukaswerner.com/post/2025-06-10@Future-of-Software-Engineers /post/2025-06-10@Future-of-Software-Engineers Tue, 10 Jun 2025 00:00:00 GMT I recently tried my hand at these newfangled AI agent tools and color me impressed! I was given a very poorly instructed and vague jupyter notebook where I needed to implement some “basic” physics modeling of a skier going down various slopes. How the Car Pushed America Apart https://lukaswerner.com/post/2025-05-31@Urbanism-Essay /post/2025-05-31@Urbanism-Essay Sat, 31 May 2025 00:00:00 GMT If you live in America and need to complete some basic errands, say going to the grocery store and barber, chances are that you will get into your car to drive 10 to 20 minutes between each location. This is not some natural optimal solution but a state that we have worked towards often intentionally. Go HTTP Router Reference https://lukaswerner.com/post/2025-05-09@Go-Mux-Handler-Ref /post/2025-05-09@Go-Mux-Handler-Ref Fri, 09 May 2025 00:00:00 GMT I love using Go for HTTP services. In February 2024 the Go team released 1.22 which brought a new standard for routing in Go. Previously the standard way of doing HTTP routing was using the excellent gorilla/mux library. However in my quest to remove as many external dependencies from my code as possible I am now migrating to using the new routing system. My main issue is that the Go doc doesn’t really have much example code but rather is a definition of behaviors. This post is mainly as a reference for myself for common patterns in HTTP routing. I will also update this with other snippets as I find other common patterns. Quarterly No. 1 https://lukaswerner.com/post/2025-04-16@1st-Quarterly /post/2025-04-16@1st-Quarterly Wed, 16 Apr 2025 00:00:00 GMT I thought it might be fun to start making reviews of what has happened in each quarter for looking back’s sake. The reason it is based on quarters is I wanted to kinda jab at how financial reports come out every quarter but also how often some publications actually put out an issue. Native American Assimilation and Activism Week 10 Reflection https://lukaswerner.com/post/2025-03-13@NA-Wk10 /post/2025-03-13@NA-Wk10 Thu, 13 Mar 2025 00:00:00 GMT This is the last of a bi-weekly series that for my Native American Assimilation and Activism class. Every two weeks we make posts sharing what we learned in the class. Catching SEO Hype Cycles https://lukaswerner.com/post/2025-03-05@AVOID-SEO-PLS /post/2025-03-05@AVOID-SEO-PLS Wed, 05 Mar 2025 00:00:00 GMT This has been the second time my site has accidentally been caught by SEO hype. First it was the “famous” “go/any HTMX templ” stack and now it is “local-first apps.” Both of these bring in lots of traffic from readers who will show up once and never again. These readers only show up for the solution for their problem and if they don’t find it, they move on. Not only that but the search traffic from Google inevitably will die out too. Native American Assimilation and Activism Week 8 Reflection https://lukaswerner.com/post/2025-02-28@NA-Wk8 /post/2025-02-28@NA-Wk8 Fri, 28 Feb 2025 00:00:00 GMT This is the fourth in a bi-weekly series that for my Native American Assimilation and Activism class. Every two weeks we make posts sharing what we learned in the class. Love Affairs of Programming Languages https://lukaswerner.com/post/2025-02-14@Love-Affairs-of-Programming-Languages /post/2025-02-14@Love-Affairs-of-Programming-Languages Fri, 14 Feb 2025 00:00:00 GMT There are always new programming languages coming out. Get your new language features here. Get your new runtimes there. Yada yada yada. Always changing, always churning. Native American Assimilation and Activism Week 6 Reflection https://lukaswerner.com/post/2025-02-13@NA-Wk6 /post/2025-02-13@NA-Wk6 Thu, 13 Feb 2025 00:00:00 GMT This is the third in a bi-weekly series that for my Native American Assimilation and Activism class. Every two weeks we make posts sharing what we learned in the class. Shipping Gleam to Production https://lukaswerner.com/post/2025-02-10@Shipping-Gleam-To-Production /post/2025-02-10@Shipping-Gleam-To-Production Mon, 10 Feb 2025 00:00:00 GMT After attending a resume workshop I decided that I need to shorten some links. Instead of opting to use someone else’s link shortener I wanted something that felt more personal to me. Being Gleam curious I wanted to take it to the next level and ship something to production. After updating my Gleam version and reading more about their recent developer survey I saw that only 8% of respondents were using Gleam in production. In order to help encourage that number to go up I wanted to share my experience of shipping my URL shortener from mac to production. It is pretty cool to be using a language in the early days. Many of the best practices haven’t been invented yet. This really was the case with shipping to production, I saw almost no examples or instructions on how to ship this stuff. Native American Assimilation and Activism Week 4 Reflection https://lukaswerner.com/post/2025-01-30@NA-Wk4 /post/2025-01-30@NA-Wk4 Thu, 30 Jan 2025 00:00:00 GMT This is the second in a bi-weekly series that for my Native American Assimilation and Activism class. Every two weeks we make posts sharing what we learned in the class. The Value of Friendship https://lukaswerner.com/post/2025-01-20@DubHacks-Retro /post/2025-01-20@DubHacks-Retro Mon, 20 Jan 2025 00:00:00 GMT This is the second in a small series of posts where I’m publishing essays I’ve written but never got around to publishing. Native American Assimilation and Activism Week 2 Reflection https://lukaswerner.com/post/2025-01-16@NA-Wk2 /post/2025-01-16@NA-Wk2 Thu, 16 Jan 2025 00:00:00 GMT This is the first in a bi-weekly series that I will be publishing for my Native American Assimilation and Activism class. Every two weeks we make posts sharing what we learned in the class. Unfortunately, due to weather in England I was unable to make it back to the United States in time for the first lecture. Unplugging https://lukaswerner.com/post/2025-01-14@Unplugging /post/2025-01-14@Unplugging Tue, 14 Jan 2025 00:00:00 GMT This is the first in a small series of posts where I’m publishing essays I’ve written but never got around to publishing. Grammar Checking for email https://lukaswerner.com/post/2024-10-22@harper_plus_aerc /post/2024-10-22@harper_plus_aerc Tue, 22 Oct 2024 00:00:00 GMT I’m a pretty avid aerc user. If you’ve been reading this blog for a bit you probably seen how I got my personal email & school emails working in aerc. Local-First, Now and Always! https://lukaswerner.com/post/2024-08-13@Sqlite-Local-First /post/2024-08-13@Sqlite-Local-First Tue, 13 Aug 2024 00:00:00 GMT Local-First programming is a set of programming principles that describes how data is managed by a program. Local-First allows the developer to program to a local copy of the data and not worry about how data gets synced between the different user’s devices or different users. The idea built on a technology called Conflict Free Replicated Data Types (CRDTs). Using aerc-mail with Outlook https://lukaswerner.com/post/2024-07-08@aerc-outlook /post/2024-07-08@aerc-outlook Mon, 08 Jul 2024 00:00:00 GMT I am a college student in America where there are unfortunately only two email servers that universities use: Google Workplace Gmail and Microsoft Office 365. Up until this point I’ve used the Office suite without complaints. However, being an average terminal enjoyer, I recently started using a terminal based email client personal email. Building MY Kinesis Advantage2 https://lukaswerner.com/post/2024-06-21@Kinesis-Ergo-Build /post/2024-06-21@Kinesis-Ergo-Build Fri, 21 Jun 2024 00:00:00 GMT So recently I’ve been having more wrist pain typing on my keyboards and figured it was time to actually get a real ergonomic keyboard. After hearing good things from LTT and from the Primeagen… I ended up purchasing a Kinesis Advantage2 on eBay for around $220. First Time Hackathon Experience — A BlasterHacks Retrospective https://lukaswerner.com/post/2024-03-13@First-Time-Hackathon-Experience /post/2024-03-13@First-Time-Hackathon-Experience Wed, 13 Mar 2024 00:00:00 GMT BlasterHacks is the new annual hackathon hosted by the Colorado School of Mines' ACM chapter. This year was the inaugural year of this iteration of BlasterHacks; with over 50 people participating it could be considered a smaller hackathon but I would say it has the energy of 5 times that. HTMX is for everyone https://lukaswerner.com/post/2024-03-06@HTMX-Is-For-Everyone /post/2024-03-06@HTMX-Is-For-Everyone Wed, 06 Mar 2024 00:00:00 GMT HTMX is a technology that is platform agnostic. What sets photographers apart? https://lukaswerner.com/post/2024-01-15@Photographers-Style /post/2024-01-15@Photographers-Style Mon, 15 Jan 2024 00:00:00 GMT I recently saw a post from a friend of mine about things they hate being asked about being a photographer. A few things in particular irked me. An Exploratory Trip of templ, HTMX, and Go https://lukaswerner.com/post/2023-10-20@An-Exploratory-Trip-Of-Templ-HTMX-and-Go /post/2023-10-20@An-Exploratory-Trip-Of-Templ-HTMX-and-Go Fri, 20 Oct 2023 00:00:00 GMT So as of late I’ve been hearing more about these two technologies, templ and HTMX. My Productivity Framework https://lukaswerner.com/post/2023-09-08@My-Productivity-Framework /post/2023-09-08@My-Productivity-Framework Fri, 08 Sep 2023 00:00:00 GMT Starting college is an amazing experience. You get to participate so many different activities and different experiences. However, you still have classes and homework. So this post is just as much a reminder for myself to follow my own rules as it is to share what works for me so that you may benefit from it as well. The Cloud Is Overkill https://lukaswerner.com/post/2023-07-06@The-Cloud-Is-Overkill /post/2023-07-06@The-Cloud-Is-Overkill Thu, 06 Jul 2023 00:00:00 GMT A few months ago I started on a job that heavily utilizes cloud infrastructure. I went in head first into this “futuristic” cloud utopia. If LLMs Are Calculators for Words Where Does That Leave the Language Services Industry? https://lukaswerner.com/post/2023-05-08@LLMvsLSPs /post/2023-05-08@LLMvsLSPs Mon, 08 May 2023 00:00:00 GMT A few weeks ago I read a blog post from Simon Willison about how LLMs are calculators for words. I’ve been thinking about how I should plan for this new “normal” world, and what sorts of things will exist and wont in it. Why We Need a Metaverse Alternative https://lukaswerner.com/post/2022-10-15@WhyWeNeedAMetaverseAlternative /post/2022-10-15@WhyWeNeedAMetaverseAlternative Sat, 15 Oct 2022 00:00:00 GMT warning! opinions below