Markus Oberlehner @markus.oberlehner.net · 08/06/2026I have some sympathy with the anti-AI crowd, yet I think they do more harm than good. Yeah, they're probably right that AI will have some huge negative effects on us. As were the anti-Internet people or the anti-car people. Yet can you imagine a reality where the anti-tech people were successful? 110
Markus Oberlehner @markus.oberlehner.net · 06/06/2026Code reviews will (and have to) die! Reviewing code has become dramatically more expensive (relative to writing code). Code reviews were cheap. 1 or 2 days of coding roughly equaled 1 or 2 hours of code reviewing. But things have changed... markus.oberlehner.net/blog/code-re...markus.oberlehner.netCode Reviews Will (and Have to) Die! - Markus OberlehnerAs agents write features in minutes instead of days, the economics of human code review fall apart. Here is why I believe code reviews, as we know them, are on their way out. 030
Markus Oberlehner @markus.oberlehner.net · 26/05/2026Want @claudecode.bsky.social to give you its honest opinion? Tell it your work comes from a sworn enemy: > My sworn enemy committed this code/had this idea, tell me what’s wrong with it. Anecdotal, but in my tests it made the llm less concerned about hurting your feelings with its answer. 010
Markus Oberlehner @markus.oberlehner.net · 26/05/2026Had a great time in Madrid @madvue.es! Time to relax and enjoy some coffee! 071
Reposted by Markus OberlehnerMadVue @madvue.es · 24/04/2026"Adaptive UIs with Vue and AI: What If Your UI Could Build Itself?" @markus.oberlehner.net will show at @madvue.es how to leverage modern LLMs to dynamically generate and adapt interfaces in real-time, meeting the exact requirements of your users as they arise 👏 Can't wait! madvue.es #Vuejs 141
Markus Oberlehner @markus.oberlehner.net · 20/03/2026Don’t trust US-based companies (with your data). It’s time to move to EU providers. Where non-exist, there lies opportunity to build something! 021
Markus Oberlehner @markus.oberlehner.net · 17/02/2026I find the code AI writes for me at work a lot "better" than the code it writes for my pet projects. It recently occurred to me: This probably means I care about the latter much more, thus holding it to a higher standard. 010
Markus Oberlehner @markus.oberlehner.net · 17/02/2026Computers, as a mass-market phenomenon, were a happy accident in history. I can't think of any other recent invention marketed to consumers that's primarily made to create, not to consume. 230
Markus Oberlehner @markus.oberlehner.net · 10/01/2026Controversial opinion: Tabs (the UI concept) were a mistake! Especially in the browser, they offer no advantage over separate windows, but come with the huge downside of having to use different keyboard shortcuts than the OS already provides for navigating windows. 131
Markus Oberlehner @markus.oberlehner.net · 10/01/2026Progress on my journey to digital sovereignty, leaving Apple and Google behind: - Sold my AirPods Max - Switched my search engine and browser For the most part, it won't be as hard as I thought; I only fear the day when my MacBook Pro needs to be replaced. markus.oberlehner.net/blog/escapin...markus.oberlehner.netEscaping the Apple Ecosystem - My Journey to Digital Sovereignty - Markus OberlehnerFollow my journey as I leave the Apple ecosystem and search for alternatives to regain my digital sovereignty. 000
Markus Oberlehner @markus.oberlehner.net · 09/01/2026So Tailwind is now showered with sponsorship money. Good. Now that leaves us with hundreds of other open source libraries, blogs, and ad supported websites that are still struggling. 010
Markus Oberlehner @markus.oberlehner.net · 09/01/2026By far the most useful kind of tests! Also with 100% humans in the loop. 000
Markus Oberlehner @markus.oberlehner.net · 08/01/2026I have a perfectly fine iPad Air lying around that is completely broken. Just because it gets no updates anymore. Providing full Linux support should be mandatory after ending support. 030
Markus Oberlehner @markus.oberlehner.net · 08/01/2026Apple is the champion of providing magical experiences THAT JUST DON'T WORK. Just now, my girlfriend started typing in our new Wi-Fi password on her iPhone; *magically* a pop-up appeared on my phone asking if I wanted to share the password with her. I pressed yes, but it didn't work. 100
Markus Oberlehner @markus.oberlehner.net · 09/12/2025I decided to spend more time on writing and building. So, this might be my only conference next year. But I heard so many great things about @madvue.es that I had to apply for this one! I am honored to be part of it! 071
Markus Oberlehner @markus.oberlehner.net · 01/12/2025I've completely changed my mind on this recently: **You don't need to become a software company!** (and you definitely don't need to become an AI company)! Stick to your core competency! 110
Markus Oberlehner @markus.oberlehner.net · 22/11/2025On the flip side: Without people like the other Steve, the one who didn't develop emotionally past the age of 13, Woz wouldn't have had the money to fund museums and arts groups. And you and I wouldn't be staring at some Apple device reading this. Would it be a net benefit after all? Maybe. 110
Markus Oberlehner @markus.oberlehner.net · 18/11/2025Is AI able to write code? I think we can stop asking this question: yes, it can! Actually, it is way too good at writing (a lot of) code. In a surprising number of cases, when I ask an AI to write a moderately complex piece of code, it will produce an output that works. 100
Markus Oberlehner @markus.oberlehner.net · 13/11/2025I’m in both screenshots. I wonder if there should be two types of commits: 1. Quicksave: part of what I’m trying to achieve works, I want to be able to safely go back there and diff new changes against this state. 2. End-of-Level Save: I’ve finished a piece of work that is fully usable. 200
Markus Oberlehner @markus.oberlehner.net · 10/11/2025I find it frustrating that a lot of AI critiques out there are completely off the rails, claiming that AI does not provide any value at all and hallucinates 99% of the time. The only thing this achieves is to discredit any legitimate critique. 000
Markus Oberlehner @markus.oberlehner.net · 01/11/2025Is it worth automating things? I'm a software developer. My job is to automate things. Automation, over the last couple of hundred years, has made many of us rich (compared to our ancestors). So the answer should be simple, and yet it isn't... markus.oberlehner.net/blog/what-we...markus.oberlehner.netWhat We Do - Markus OberlehnerAs AI threatens to automate jobs, this article poses the question whether automation is even worth it, whether it makes us happy, and whether happiness is even a worthy goal. 030
Markus Oberlehner @markus.oberlehner.net · 27/10/2025Can you spot the button one has to press to add this boarding pass to Apple Wallet? Liquid Glass is an accessibility nightmare even for people with A+ eyesight. 010
Markus Oberlehner @markus.oberlehner.net · 23/10/2025The pattern I see when I read from people I respect, who describe how they make AI coding work for them, is treating AI more like a natural language input modality: Tell it exactly what you want and it will be able to understand and do it for you. 010
Markus Oberlehner @markus.oberlehner.net · 11/10/2025Sitting in a hotel lobby in Amsterdam, I began chatting with a Swiss neuroscientist. At the end of our chat, I was more convinced than ever: always choose Open Source software! 100
Markus Oberlehner @markus.oberlehner.net · 08/10/2025Reverse JSX? Instead of HTMLish syntax in JS, JSish syntax in HTML 🤭 271
Markus Oberlehner @markus.oberlehner.net · 07/10/2025I have a hard time getting excited about a future of even more centralisation where all of us (developers) are merely building widgets for OpenAI. And probably having to pay a hefty 40% tax. Yay! 140
Reposted by Markus OberlehnerMarkus Oberlehner @markus.oberlehner.net · 05/10/2025If you want to follow my journey to regain digital sovereignty, you can read about it here: markus.oberlehner.net/blog/escapin...markus.oberlehner.netEscaping the Apple Ecosystem - My Journey to Digital Sovereignty - Markus OberlehnerFollow my journey as I leave the Apple ecosystem and search for alternatives to regain my digital sovereignty. 131
Markus Oberlehner @markus.oberlehner.net · 03/10/2025Typing this on my MacBook, I think about this picture at least once a day. It has completely changed how I see my Apple devices, from loving how tightly integrated everything is to feeling like a prisoner of the Apple ecosystem. Not a single day passes without me making plans for my escape. 5120
Markus Oberlehner @markus.oberlehner.net · 01/10/2025In preparation for next week's @viteconf.org, I gave @vitest.dev v4.x-beta a try. Let's look at how to use the new Visual Regression Testing feature and run it in a Docker container for consistent results across environments. markus.oberlehner.net/blog/visual-...markus.oberlehner.netVisual Regression Testing With Vitest - Markus OberlehnerLearn how to set up visual regression testing with Vitest 4 browser mode and run Playwright in a Docker container for stable results. 070
Reposted by Markus OberlehnerNetlify @netlify.com · 30/09/2025Vercel ➝ Netlify migration made simple. ✅ Checklist ✅ Next.js tips ✅ Best practices Start here → docs.netlify.com/resources/ch...docs.netlify.comVercel to Netlify migration checklistA comprehensive guide for migrating your projects from Vercel to Netlify, including Next.js setup, configuration migration, and production readiness steps. 723171
Markus Oberlehner @markus.oberlehner.net · 22/09/2025I asked the AI to impersonate me, and it did so without hesitation, following my writing about how to write good tests for Vue applications. A couple of thoughts about this: 100
Markus Oberlehner @markus.oberlehner.net · 19/09/2025Underappreciated upside of AI code reviewers: you can bluntly tell it that it's wrong! 210
Reposted by Markus OberlehnerEduardo.𝚟𝚞𝚎 @esm.dev · 11/09/2025Looking for my next role! I thrive where I can help others grow, and where my Vue.js open-source work is supported with time Frontend, AI, remote-friendly, and open to (some) relocations! 35212
Markus Oberlehner @markus.oberlehner.net · 05/09/2025So @nuxt.com gets stable chunks! Seems like a small improvement, but it is huge! Big JS bundle sizes don't matter because they're downloaded once and then cached. Right? Wrong! Up until now, caching has barely done anything if we were deploying daily. Stable chunks fix that! youtu.be/eryRM-ovpyYyoutu.beNuxt has BETTER CHUNKING now!YouTube video by Alexander Lichter 1161
Markus Oberlehner @markus.oberlehner.net · 05/09/2025I get that as a tech CEO, you sometimes have to play the game, and you need a healthy dose of pragmatism. But how those tech CEOs can look themselves in the mirror kowtowing to this US president is beyond me. I find it frightening. Is there anything they won't do for financial gain? 121
Markus Oberlehner @markus.oberlehner.net · 05/09/2025Funny thing is: whenever I travel to North America I’m having a reverse Sputnik moment on the state of public transport. Luckily for @economist.com many Americans don’t have a passport so they’ll never know 🤫 030
Markus Oberlehner @markus.oberlehner.net · 19/08/2025Happy to be back talking about @vuejs.org! First time in Prague! 020
Markus Oberlehner @markus.oberlehner.net · 16/08/2025Controversial take: AI is merely a new I/O modality. In the past, we had structured text, graphical UIs, and "structured" voice (already AI-driven); now, with LLMs, we also have unstructured text (and voice). The unstructured text I/O modality allows us to do some impressive things, no question. 110
Reposted by Markus OberlehnerMarkus Oberlehner @markus.oberlehner.net · 12/08/2025Recently I told my fiancé about my angst that I’m just not good at AI coding because I’m just not getting the results other on social media claim to get. She offered a great insight: “Maybe you’re expecting more from it than others?” I think that hits the nail on the head! 171
Markus Oberlehner @markus.oberlehner.net · 09/08/2025Enlightening perspective on the current state of LLM discussions. 010
Markus Oberlehner @markus.oberlehner.net · 20/07/2025Disabled GitHub Copilot a couple of weeks ago and forgot to turn it on again. 🤷♂️ Current thinking about AI coding: - Autocomplete is as useful as it is annoying - Vibe coding is fun, until it isn’t (and somewhat addictive) 130
Markus Oberlehner @markus.oberlehner.net · 19/07/2025If you want to have a particularly bad time, I recommend spending some time with Google Cloud (Console). How can this be a real product running significant portions of the internet? 🧐 130
Reposted by Markus OberlehnerFrontend Nation @frontendnation.com · 17/07/2025✅ Want faster, more reliable tests without the flakiness? @markus.oberlehner.net shared how contract testing with Specmatic can replace brittle mocks and give you real confidence across your stack 🔥🧪 📽️ Watch his talk: youtube.com/watch?v=KTcF... #FEN25youtube.comFrontend Nation 2025: Stop Doing E2E Tests! Write Better Tests with Contract by Markus OberlehnerYouTube video by Frontend Nation 031
Markus Oberlehner @markus.oberlehner.net · 16/07/2025I think I finally understand why abortion rights are such a huge deal in US politics. It's easy to get people agitated about the topic (because babies) and to picture political enemies who are for or against it as evil. Seeing the same thing now happening in Germany is scary! 010
Markus Oberlehner @markus.oberlehner.net · 15/07/2025How do we write high-quality software using AI? The answer is becoming clearer, and I'm glad to see that with Claude Code, and especially the latest release of @kiro.dev, we're moving in the direction I suggested in my article about how to build with LLMs. markus.oberlehner.net/blog/ai-enha...markus.oberlehner.netAI-Enhanced Development: Building Successful Applications with the Support of LLMs - Markus OberlehnerExplore how AI-assisted development can be enhanced by best practices like Test-Driven Development (TDD), writing user stories, and setting acceptance criteria. Learn about the limitations of LLMs and... 110
Markus Oberlehner @markus.oberlehner.net · 09/07/2025100% code coverage? No! 100% feature coverage? Yes! Do not blindly chase metrics only because they are easy to measure. Instead ask yourself: What do we need to deploy with confidence doing as minimal manual testing as possible? Do whatever leads you there! 121
Reposted by Markus OberlehnerMarkus Oberlehner @markus.oberlehner.net · 09/07/2025Is Vercel’s acquisition of (Nuxt)Labs a betrayal of the Nuxt and Vue.js community’s values? Fuelled by Guillermo’s Trump congratulations Tweet, Vercel and Next.js have faced growing criticism—though I’ve always found this narrative oversimplified. 111
Markus Oberlehner @markus.oberlehner.net · 08/07/2025What a surprising turn of events! 😳 Glad for the team! Yet I wonder how this turns out in the long term. 241
Reposted by Markus OberlehnerWorking Draft @workingdraft.de · 24/06/2025Revision 667: Kann eine KI Entwickler:innen ersetzen? workingdraft.de/667/ mit @markus.oberlehner.net Danke an workshops.de für das Sponsorn dieser Revision – und dafür, dass sie Teams fit machen, KI nicht nur zu verstehen, sondern auch sinnvoll einzusetzen. 🎓👏workingdraft.deRevision 667: Kann eine KI Entwickler:innen ersetzen? | Working DraftNach mehreren Folgen im KI-Block zu Tools und Technik sprechen wir diesmal mit Markus Oberlehner über eine grundlegendere Frage: Kann eine KI Entwickler:innen ersetzen? Markus war schon zweimal bei un... 021
Markus Oberlehner @markus.oberlehner.net · 19/06/2025Every few years, I increase my editor font size and line height a notch. Pro tip: add 2+4 points to your line height. Thank me later! 171