# G. Casqueiro > Following the energy from architecture to code. Learning JavaScript, Node.js, and React in public. Building tools, exploring SaaS ideas, and documenting the journey. Public Ghost content for AI and LLM tooling. This file includes a bounded export of public pages first, then recent public posts. Append `.md` to any post or page URL to get the content in Markdown (for example, `/example-post.md`). ## Pages ### About this site URL: https://gcasqueiro.com/about/ Last updated: 2026-03-22T23:04:36.000Z Hello there! 👋 My name is G. Casqueiro, a former architectural designer transitioning into web development, and this is my corner on the (small) web. I spent 15 years working in architecture and visualization. Over the course of 2025, I noticed the "spark" for that kind of work fading. It wasn't sudden, just a slow realization that the energy (and patience) I once had for architecture was moving somewhere else. By the end of the year, I decided to follow it and started learning to code. When I first went to university in 2004, I enrolled in computer engineering before switching to architecture a few months later. More than two decades later, I'm closing the circle. I'm also a dad, and being able to spend time with my son is the most important thing to me. The flexibility to control my own schedule and build things on my terms, is a big part of why this path makes sense. **What I'm doing now:** - Learning web development through hands-on projects - Exploring SaaS ideas and building small tools - Writing about the process here (just starting) **What I write about:** - Dev logs and learning in public - Open-source tools and indie web "philosophy" - The crossover between design thinking and code - Career pivots and following the energy instead of inertia - Occasionally 3D printing and updates on building my homelab. - The occasional random post about something else **What I don't write about:** - Politics - Religion - Social issues (the ones that are always trending in social media) - Everything else I should keep to myself **Other interests:** Sci-fi (Star Wars, Star Trek, Battlestar Galactica, Stargate, and many others), fantasy (Lord of the Rings, Dungeons & Dragons, and more), comic books, and retro gaming collecting. The usual geek stuff. And music always on. I might write about these occasionally. **Stay in the loop:** Every post gets sent out by email (to subscribers) as it goes live. If you prefer a slower cadence, I also publish Open Sourced Notes, a monthly digest of everything I wrote and a few things from the wider indie web worth reading. **Elsewhere:** - [X](https://x.com/gcasqueirocom?ref=gcasqueiro.com) - [Mastodon](https://mastodon.social/@index@gcasqueiro.com?ref=gcasqueiro.com) - [Codeberg](https://codeberg.org/gcasqueiro?ref=gcasqueiro.com) - [GitHub](https://github.com/gcasqueiro?ref=gcasqueiro.com) - [Threads](https://www.threads.com/@gcasqueiro?ref=gcasqueiro.com) - [Instagram](https://www.instagram.com/gcasqueiro/?ref=gcasqueiro.com) - [LinkedIn](https://www.linkedin.com/in/gcasqueiro/?ref=gcasqueiro.com) Drop me a message if you want to talk. May The Code Be With You! 🚀 ### ⚠️ Disclaimer **A Note on Language:** I'm Portuguese, so English isn't my first language. I write everything here myself: the thoughts, the stories, all of it. I read and understand English really well, but writing is where the differences show up. Portuguese and English work differently: sentence structure, word order, and the way ideas come together. It's not a straight translation. Something that flows naturally in Portuguese can sometimes sound clunky or confusing in English (and the other way around). So I write what I mean, then let AI proofread it. That way, the posts are easier for English readers to follow without any head-tilting moments. The sentences might get polished, but they're still mine. ## Posts ### My Own Theme, Finally URL: https://gcasqueiro.com/my-own-theme-finally/ Last updated: 2026-08-24T02:46:36.000Z The past two months were, to put it mildly, complicated. Between moving houses, trying to finish the agency's work before going on vacation, and finally being on vacation, this little place on the internet ended up not getting the attention it deserved. Moving always takes longer than you plan, and by the time the last box was empty, there was still a lot of other stuff to handle in terms of renovating some parts of the house. When all that seemed to be solved, it was finally time to take the family away for some proper rest. While all that was happening, the rest of the world didn't stop and kept moving at a more than usual speed: new models, new features, and new tools every other day. It was impossible to stay properly updated or try most of them. The only scrolling I do is on X, and even that was just enough to notice everything that was going on without diving too much into it. One of the accounts I follow on X that basically gives me a round-up of everything that's going on is [Theo](https://x.com/theo?ref=gcasqueiro.com). While I don't agree with some of his opinions, his daily X Live broadcasts (also available on his [YouTube channel](https://www.youtube.com/@t3dotgg?ref=gcasqueiro.com) after a couple days) are for the most part unbiased and very informative for people like me who aren't experts in all those topics. It was by watching Theo's streams and reading his posts that I took notice of T3 Code. [T3 CodeT3 Code — The open-source control plane for coding agents.![](https://gcasqueiro.com/content/images/icon/favicon-32x32-a433de35-624e-4cc5-87b4-de39951c39ce.png)T3 CodeShay\_Benshabtay![](https://gcasqueiro.com/content/images/thumbnail/claude-ai-icon-7e0a4e4d-2323-4162-8ca4-2d088a7cca56.png)](https://t3.codes/?ref=gcasqueiro.com) T3 Code, built by [Theo](https://x.com/theo?ref=gcasqueiro.com) and [Julius](https://x.com/jullerino?ref=gcasqueiro.com), is an agent harness control surface. In plain terms, it's a single interface that sits on top of the coding agents you already use (Claude Code, Codex, Cursor, Grok Build, OpenCode, etc.) and lets you orchestrate them from one place. Being free and open-source (under MIT) is a big plus, and although it's still in alpha, it already has desktop and mobile versions for most OSs. I've been curious about it for a long time and really wanted to test it, but due to what's been happening the past couple months, I've put it on hold. But now being on vacation and having more free time and less to think about, I decided to give it a go. Since Claude seemed to become more like a gen-z employee than a reliable team member (that's a subject for another post) with the latest model updates (Sonnet 5 and Opus 5), I decided to give Grok 4.5 a go. I don't usually pay much attention to benchmarks, since they all seem to run on very "favorable" and controlled environments. I prefer to test the models myself, and if they do what I want them to do and prove to be better or more reliable than the previous one, that's good enough for me, even if they're some steps below in the score ladder behind other "frontier" models. The objective of being on vacation and (trying to) rest is not to immerse myself in complex projects or anything like that, so I decided that the best way to test this was with a small project that could be done in a couple of sessions. I eventually decided that I should try to solve a problem that has been bugging me for months. Since the day I decided to put this website online, one thing that I wasn't happy about was the blog's theme. Don't get this the wrong way; Ghost's themes are good. Actually, they are so good that most people just decide to use the official ones or buy one from other sources. And some of those can be really expensive. The main problem I see with all that is that besides your logo and the content, all the rest is exactly the same as all the other hundred or thousands of Ghost blogs you see out there. I wanted something more custom, something that represented the content of my blog, and some features I didn't seem to find even in paid themes. One important thing to disclose: I don't know Handlebars. Ghost themes run on it, and it's a templating language rather than a real programming one. Mostly ordinary HTML with curly braces marking the parts that get filled in when a page loads. A couple of weeks of evenings around it would probably get me comfortable, but I'm on vacation, and learning a new syntax during that time isn't in my plans, and honestly, I don't have any interest in it since it isn't something that is widely used outside of Ghost theming, from what I can tell. The main structure was heavily inspired by the theme I was using ([Edition](https://ghost.org/themes/edition/?ref=gcasqueiro.com)), and some of the visual details were inspired by a theme I previously used 8 years ago called [Joelma](https://github.com/HauntedThemes/joelma?ref=gcasqueiro.com). Unfortunately, this theme seems to have been abandoned in 2020, and the latest compatible Ghost version is 4.0 (we're on Ghost v6.0). Even if I tried, it wouldn't even let me install it. Forking it and making it compatible would probably take longer than I would want to, so I just decided to use the bits I liked as visual references and start a custom theme from the ground up. So I sat in front of my laptop, with T3 Code open and Grok 4.5 properly configured, and described extensively and in detail everything I wanted for my Ghost theme. The process itself, to be honest, went way better than I was expecting. Grok understood perfectly what I wanted and wrote most of the code without me having to correct it along the way. Everything went according to plan, and I was able to have a full custom theme in just under two hours. Of course after testing it there were some minor visual tweaks to be made, especially on the mobile version, but all that was solved the following night in a new session. The theme is called **Modus**. I honestly can't remember the particular reason why I chose that name, but it was something that came to me at that moment. And since I couldn't find any Ghost theme with that name, I stuck with it. So what does this theme have that all the others don't, you might ask? Well, for starters, the visual aesthetic of the posts is completely different. While most Ghost themes put the featured image of the post below the title and other details by default, this one puts the image on top, with all the content below it. That's something Joelma had that I really wanted my theme to have. I honestly don't like Ghost Post's page default configuration. It also has light and dark modes with a different color accent in each (Ghost only gives you one, and I wanted to have different options for both modes), related posts at the bottom, a "load more" button instead of pagination, and all of it changeable from Ghost's design settings so I can swap colors later without the need to edit the theme. The one feature that I didn't find in any other Ghost theme (but it might exist) is the possibility to use different hero images for the homepage based on the chosen color mode. What this means is that for dark mode you can choose one image, and for the light mode you can have a completely different one. In terms of customization, this makes all the difference when configuring your blog. Also, the hero images and the post's featured images have a parallax effect that starts as soon as you start scrolling down the pages. ![Ghost Admin Design settings panel showing the Modus theme preview in dark mode, with separate light and dark accent colour controls and two different homepage hero images configured.](https://gcasqueiro.com/content/images/2026/08/Screenshot-2026-08-15-182646.png) The Design settings that let you set different accents and different hero images for light and dark mode. Although the whole process was really smooth, one thing put up a proper fight: Ghost's floating subscribe button. Ghost's Portal lives inside its own iframe and takes its color from that single accent setting, so it kept ignoring both of mine and coming back wrong after every refresh. Grok worked around it eventually and now it matches whichever mode you're reading in. That took more time back and forth than the rest of all the other tweaks and fixes. To conclude, everything else went better than I had any right to expect. T3 Code's readme is upfront that the project is very early and to expect bugs. Across these two sessions, of around 2h each, I didn't hit one (that I noticed). Grok 4.5 followed exactly what I was describing, including the parts I described badly, and got most of it right the first time with only small corrections afterwards. That really surprised me. Grok usually gets treated as a second-tier option behind whatever Anthropic, OpenAI, or even DeepSeek or Google released most recently. But on this project, it was simply amazing. I think it's an unfairly underrated model. Being specific was the whole game. Vague requests get vague results, and since I was (maybe) overly specific in all the instructions fed to Grok, the results were exactly what I wanted. Today, just before writing this post, I did some more "sanding" at the remaining rough edges of some details that weren't exactly as they should be. Specifically, the way the menu button behaved on mobile. Also worth mentioning that while this theme was being developed, [SpaceXAI released Grok 4.6](https://x.ai/news/grok-4-6?ref=gcasqueiro.com), which seems to be a big improvement when compared to 4.5\. I'm already using it in my next project, and so far it shows a considerable improvement when compared to 4.5. Modus is already installed and live on this website, and it's public on GitHub under an MIT license. The readme says straight out that I built it for my own blog and not as a product, so clone it, fork it, and tear it apart. There are still a handful of things I'll probably change over the next few months, or maybe I'll decide to create a new theme altogether if I get better ideas. The main point is that I made this for me, specifically for my blog, so if anyone decides to use it and something doesn't work the way they intend, I don't plan to add features on request, take custom change requests, or maintain support for other people's setups. If you think it needs improvements or something different, fork the repo and make whatever you want. 😉 You can get it here: [GitHub - gcasqueiro/modus: Ghost 6 theme built for my own website. Light/dark modes, dual heroes, transparent nav, dual accents, related posts. Inspired by Edition and Joelma.Ghost 6 theme built for my own website. Light/dark modes, dual heroes, transparent nav, dual accents, related posts. Inspired by Edition and Joelma. - gcasqueiro/modus![](https://gcasqueiro.com/content/images/icon/favicon-6d5b08aa-70a1-4d96-bdc1-1ea4947e2b0c.png)GitHubgcasqueiro![](https://gcasqueiro.com/content/images/thumbnail/modus-dd3c6e82-7981-4bdb-81a4-30165fff434c)](https://github.com/gcasqueiro/modus?ref=gcasqueiro.com) May The Code Be With You! 🚀 ### Skiff For Nothing URL: https://gcasqueiro.com/skiff-for-nothing/ Last updated: 2026-07-17T19:06:16.000Z Most of the time, when a larger company buys a privacy-focused tool, the distinctive parts are the first things to go. The encryption model gets simplified, the independent infrastructure disappears, and what remains (if anything) is a thinner version that fits the acquirer's existing stack. The users who cared about the original product are left exporting data and looking for the next imperfect substitute. It has happened often enough that the cycle itself has become predictable. Skiff was a clean example of that pattern. Skiff was founded on April Fool's Day in 2020 by [Andrew Milich](https://x.com/milichab?ref=gcasqueiro.com) and [Jason Ginsberg](https://x.com/JasonBud?ref=gcasqueiro.com), both Stanford graduates. Milich had interned at SpaceX on the Dragon 2 displays and worked on security-focused software. Ginsberg had worked on communication products at Apple. They met while organizing a Stanford hackathon years earlier and decided to build a full productivity suite that actually kept its promises about encryption. The first product was an [end-to-end encrypted document editor](https://skiff.com/pages?ref=gcasqueiro.com), a deliberate alternative to Google Docs. By November 2021, anyone could sign up. [Mail](https://skiff.com/mail?ref=gcasqueiro.com) launched publicly on 17 May 2022, followed by [Drive](https://skiff.com/drive?ref=gcasqueiro.com) in June and [Calendar](https://skiff.com/calendar?ref=gcasqueiro.com) in December of the same year. ![](https://gcasqueiro.com/content/images/2026/07/1-1.jpeg) ![](https://gcasqueiro.com/content/images/2026/07/2-1.jpeg) ![](https://gcasqueiro.com/content/images/2026/07/3-1.jpeg) ![](https://gcasqueiro.com/content/images/2026/07/4-1.jpeg) Everything sat on the same foundation: Encryption happened on the client before data ever left the device, and private keys never left the machine. Even Skiff's own servers could not read the contents of your messages, documents, files, or calendar events. Subjects of emails, titles of documents, event locations, and file names were encrypted along with the content itself. External mail was encrypted with the user's keys as soon as it arrived. They published a detailed [whitepaper](https://skiff-org.github.io/whitepaper/Skiff%5FWhitepaper%5F2023.pdf?ref=gcasqueiro.com), went through multiple independent security audits, open-sourced parts of the cryptographic stack, and offered opt-in IPFS storage for files that needed to be more censorship-resistant. No ads, no tracking of logins or device identifiers. Unlimited aliases and custom domains were available so you could keep your identity cleaner. You could even pay in crypto if you wanted the account itself to stay anonymous. Free accounts came with 10 GB of storage shared across the suite. By late 2023 it had reached roughly two million users. What made it so good was the combination of seriousness and calm. The encryption was there, it wasn't just *"marketing language."* The interface was minimal and clean, with only the things you really needed. Mail between Skiff users was fully end-to-end encrypted by default. Calendar events, including those with external attendees, stayed encrypted. Pages supported real-time collaboration without breaking the encryption model. Drive let you store and share files under the same zero-knowledge rules. It really was a complete privacy-first alternative to the Google suite instead of a single-purpose privacy app that forced you to keep ten other accounts running. I used it for my personal and work mail and files for a few months, and honestly, if it hadn't been shut down, I'd probably still be using it today instead of Proton. On 9 February 2024, Notion announced it had [acquired Skiff](https://www.notion.com/blog/meet-skiff-the-newest-member-of-the-notion-family?ref=gcasqueiro.com). The typical and familiar use of language like **"joining forces,"** ***"shared mission,"*** and ***"accelerating the work."*** For a short period, the products kept running while users were told to export their contents. Six months later everything was gone. Services shut down on 9 August 2024, and email forwarding continued until 9 February 2025 for people who had set it up in time. The @skiff.com addresses disappeared, and the users exported what they could and left. Nothing was migrated into Notion, the independent privacy-first product simply ended. Milich and Ginsberg stayed on and helped build what became Notion Mail. It reached general availability in April 2025\. On paper it looked like a natural continuation, but in practice it was nothing more than an overhyped (like everything in Notion) and glorified Gmail wrapper, a Notion-branded skin sitting on top of Google's infrastructure. It had AI labeling, custom views, and scheduling features, but none of the encryption model that had defined Skiff. It was not a real email client or even a serious mail alternative. It was a polished front-end for an inbox that still lived at Google. I tried it for a while, and the difference was obvious. The calm, self-contained quality was gone. And the bugs, don't even get me started. I couldn't use it for more than a week. Milich and Ginsberg later left Notion and joined Cursor as key engineering leaders. Milich served as Head of Engineering and Ginsberg as Head of Product Engineering. In March 2026, both moved to xAI and SpaceX to strengthen the companies' internal AI and coding capabilities. Not long after their departure, SpaceX acquired Anysphere, the company behind Cursor, in an all-stock deal. By then, the original product, Skiff, had already been gone for well over a year. On 25 June 2026, Notion announced that the Notion Mail inbox itself is winding down across web, desktop, and iOS on 22 September 2026\. The stated reason is that more than half of its users already manage email through Notion's AI agents without opening the inbox, so the company is going all-in on agents. The underlying Gmail messages stay where they are, but the Notion-specific pieces (drafts, scheduled sends, snippets, auto-label rules, etc.) need to be exported before the date or they vanish. The original product is gone, and the thinner successor is being retired. [Parts of Skiff's code remain open-source on GitHub](https://github.com/skiff-org?ref=gcasqueiro.com), which in theory leaves the door open for someone to revive or fork the project. In practice it seems unlikely. The founders are now deep inside SpaceX and xAI, working on problems of a completely different scale. The people who built the original thing have moved on, and the company that acquired it never really intended to use or keep it. This is how most of the better privacy-first tools disappear. Someone builds something that actually works with real encryption and no advertising incentives. It gains a user base that cares about the product; a big tech company buys it, usually with warm language about alignment. The distinctive parts get stripped because they do not fit the new owner's model (especially their revenue model). The original product is shut down on a fixed timeline; a thinner version may appear for a year or two. Then that version is also retired when the next strategic priority arrives. The users who valued the original thing are left exporting data and looking for the next imperfect substitute. Skiff was a better product than Notion Mail ever was, and it disappeared for nothing. May The Code Be With You! 🚀 ### The Best Model I Couldn't Keep URL: https://gcasqueiro.com/the-best-model-i-couldnt-keep/ Last updated: 2026-08-10T23:22:23.000Z On June 9, [Anthropic released a new model called Claude Fable 5](https://www.anthropic.com/news/claude-fable-5-mythos-5?ref=gcasqueiro.com) for everyone with a paid plan. It was the most capable thing they had released to the public, built on the same system as their stronger Mythos model, but fenced in with extra guardrails around cybersecurity and biology. What people noticed first was how it handled long, connected coding work, the kind where you describe a feature in plain words and the model carries the idea across the database, the backend, and the screen without losing the thread halfway through. Three days later it was gone. On June 12, the US government handed Anthropic an export control directive that blocked access to Fable 5 for any foreign national, anywhere, and the only clean way to comply was to switch it off for every customer in the world. The stated worry was a narrow trick for getting the model to hunt through code for security holes. Anthropic disagreed in public, said its safeguards had held through testing, and complied anyway. As I write this, twelve days later, the model remains unavailable for everyone, including US users. Anthropic has stayed quiet on when or how access might return while continuing to ship updates to its other products. [Statement on the US government directive to suspend access to Fable 5 and Mythos 5The US government has issued an export control directive to suspend all access to Fable 5 and Mythos 5 by any foreign national, whether inside or outside the United States.![](https://gcasqueiro.com/content/images/icon/apple-touch-icon-b3c01a0a-02ac-4fca-bd9f-a8ae2c519159.png)![](https://gcasqueiro.com/content/images/thumbnail/50159fff55088f12070cc8a56eb51ff61006b631-2400x1260-ef7e2458-d789-4861-801b-3632f17e00b7.png)](https://www.anthropic.com/news/fable-mythos-access?ref=gcasqueiro.com) However, that short window lined up with the last stretch of something I had been trying to build for a couple of weeks: an internal dashboard the team at my wife's agency now opens every day. The agency ran the way a lot of small businesses run: a spreadsheet here, notes in some app or notebook there, messages scattered across too many chats, invoices in a folder someone had to remember to open, and a lot of other stuff that messed with my sense of organization. That system wasn't broken, but it wasn't simple, and it didn't do much for organization and productivity. The cost lived in the time spent in the gaps between all those "systems": which clients pay a monthly fee and which were one-off jobs? Where does the content calendar live, and had anyone already covered that specific newsletter topic? Who does what and is it done or not? I wanted one system that answered all those questions, so I decided to build one. ![The MaisPlus dashboard login page, with the yellow MaisPlus logo above a clean white sign-in card labelled "Entrar" with email and password fields, on a light background.](https://gcasqueiro.com/content/images/2026/06/Screenshot-2026-06-24-004712.jpg) The login screen. MaisPlus + Marketing Digital © All Rights Reserved It's been live and working since last week (I'm not going to share the link here for obvious reasons). Clients and projects sit at the center, each with its assigned people, contacts, social profiles, and attached files. There's a shared calendar for campaigns and deadlines, and a task Kanban board with filters and the usual "to-do", "in progress", "done", etc., with priorities and comments on every card. Pretty much like in Notion, Asana or Trello. The newsletter section has a full text editor for drafting new editions, and holds the full content of each past edition with its published link, so we could finally archive the twenty-something editions already sent. There are also dedicated pages for Finances (with a full financial tracker), Planning, and even a working internal chat with notifications to keep things from vanishing into someone's cluttered messaging app. ![The dashboard homepage with a "Boa noite" greeting, a sidebar menu, cards for urgent tasks and overdue invoices, a June 2026 calendar of events, and an open team chat panel on the right.](https://gcasqueiro.com/content/images/2026/06/Screenshot-2026-06-24-004904-1.jpg) The dashboard homepage: urgent tasks, overdue invoices, the shared calendar, and the team chat (all sensitive and private information is censored). MaisPlus + Marketing Digital © All Rights Reserved I made the decision to keep the stack deliberately "ordinary". This was one of my first real projects after getting back into coding, and I didn't want to make it harder on myself by choosing complicated tools I didn't fully understand yet. The interface is built with React and TypeScript. The data, the logins (with 2FA), and the file storage all live on Supabase, so I don't have to babysit my own server. And it all deploys to Vercel on our own subdomain. One of the aspects that matter most is something no one using the dashboard ever sees: I wrote the access rules straight into the database itself. That means the data decides who can see the clients' sensitive data (contacts, payments, etc.), financial data, or change another member's tasks. Even if someone found a way around the normal interface, the database would still deny them the access. Ever since I first had the idea for this project, and given the complexity and scope of what I wanted to achieve, I decided to use AI as a "coding partner" because I needed something the team could use as soon as possible. I'm still working through the coding courses and didn't want to spend months building piece by piece in the evenings and weekends. The goal was a working tool now, not a perfect long-term system I would refine over a year or more. There are of course aspects of it that can (and will) be improved in the future, but those are just small details, not core functionalities. 💡 I don't like the term "vibe coding" for what I'm doing. It usually describes people who tell the AI what to do and let it write all the code, without knowing or caring how it works. That's not how I use it. My goal is to understand what's happening so I can eventually do it myself. For me, AI is a tool that helps and teaches along the way, not something that does the work in my place. To make the collaboration effective I created instruction files (project context, agents.md, context files, etc.) specific to this project. These files held the goals, the constraints (keep the stack simple, enforce real security, make it maintainable by one person), and the kind of feedback I wanted. With the context loaded, Claude acted as both pair programmer and tutor. It would evaluate whether the idea made sense, explain how it could be built, recommend the platforms and languages, and push back when an approach would be too hard to maintain or too complex for what we needed. I would read the reasoning, ask why it chose one path over another, test the result in the browser, and send back specific adjustments until it matched what I meant. That loop is where most of the speed came from. I started the prototype back at the beginning of May, or close to it, on Claude Code, using Claude Opus 4.7\. It got me to something that worked, but with a lot of refining left to do. The back-and-forth took a couple of days of describing pieces, reading the code it produced, testing in the browser, and fixing what was broken. Then the project sat for a few weeks while other more important things took over. When Fable 5 became available, I picked it back up and pointed it at the last round of changes, and the difference was hard to miss. That last round consisted of three things: - The task kanban board needed cards we could drag into a new order, both between columns and up and down inside one, with urgent items pinned to the top by default. - The newsletter section needed to grow from a plain notes box into a real editor that could hold the full content of an edition and the link once it went out. - And we wanted to add a few more options to the services we offer clients. The services change turned out to be a single line in the database, because the services were already stored as data rather than baked into the code. The task kanban board was the real work. I told Claude what good drag-and-drop should feel like: the card you're moving should be highlighted while the others should dim, and a clear line should appear in the gap where it would be dragged to, so you always know where you're about to drop it. The first version came back close, but the visual cues were off. One round of specific feedback and some visual references later, the dimming and the drop line were in place and the board felt right to use. The whole set of changes, including the database migration script I ran myself, went from description to deployed in less than two hours. With Opus 4.7, that same back-and-forth had been spread across several sessions and more days than I'd like to admit, with more stalls while context got lost and I had to explain the same patterns again and again. ![The dashboard's task board in Portuguese, three columns labelled Por Fazer, Em Curso and Concluída, with cards showing priority tags, clients and dates, plus team and client filters above.](https://gcasqueiro.com/content/images/2026/06/Screenshot-2026-06-24-004833.jpg) The task board, with drag-and-drop cards, filters, and urgent items pinned to the top. MaisPlus + Marketing Digital © All Rights Reserved I still had to try to understand everything that went into production. I read the changes, asked why it made the calls it did, and kept testing the security setup until I was confident in it. Earlier on, an audit had found a real issue: a normal team account could have given itself admin rights and accessed the clients' and financial data. Fixing it properly in the database took time and wasn't an exciting task, but that's the kind of work that is mandatory for these tools when they hold real client data, or our own. The dashboard is live now and the team uses it every day. Fable 5 lasted a few days before it disappeared, and I'm back to working with what's still available (Opus 4.8). The parts where I had to read the code, test it, and decide what was sound didn't go anywhere when the (way) better model was used. Some of it I couldn't follow without help and a fair amount of searching. The model builds and teaches, and it's good at both, but the work of understanding each step and ending with something you know start to finish still lands on you. There's no substitute for that. I've tried every model I could get my hands on these past months, and Fable 5 was the first in a long while that made me sit up. It could hold a messy, multipart change in its "head" and get the shape right the first time more often than not, with less correcting from me than I'd gotten used to. That was the real jump, the reasoning holding together across a long task. I'm half expecting it never comes back in that form, and that would be a shame. My guess is something with the same reach, or more, lands in a few weeks or months, and this whole episode turns into a footnote. I'd be fine with that. May The Code Be With You! 🚀 ### The AI That Stays at Home URL: https://gcasqueiro.com/the-ai-that-stays-at-home/ Last updated: 2026-06-24T01:05:49.000Z Most of us who lean on AI now pay a monthly fee for it, and we hand over every question we ask without giving much thought to where it goes. Those words do go somewhere. They travel to a company's servers, get processed there, and in many cases stay on to help train the next version of the model. You can opt out of training in the settings, but how strictly companies actually honor that choice is hard to know for certain. For most people the trade feels invisible, because the tool is useful, the fee is small, and the only cost on the other side is a faint sense that your conversations aren't fully your own. There has always been another way to do this, at least on paper. Rather than renting access to a model that lives in some distant data center, you can run one directly on your own computer, where nothing you type ever leaves the room. The problem is that this has long been the territory of people who are comfortable in a terminal and willing to lose an afternoon (or more) working out which model their machine can handle, and that afternoon is where most curious people give up. This is the backdrop against which Felix Kjellberg, the man a generation of the internet grew up watching as PewDiePie, released something at the end of May that he introduced, with a straight face, as his trillion dollar project. It is called [Odysseus](https://pewdiepie-archdaemon.github.io/odysseus/?ref=gcasqueiro.com), and it gives you the familiar comfort of a ChatGPT-style window while running under your own control. He spent roughly a year building it out in the open, posting the whole untidy process to YouTube, and when he finally released it, the project gathered more than 30.000 GitHub stars within two days. It has since climbed past 76.000, a level of attention most funded companies never reach. What sits inside is more than a place to chat. There is an assistant that can take on a whole task for you, reading your files, searching the web, and carrying out the steps on its own. There is a research mode that works through many sources and writes them up into a single tidy report, a way to put two models side by side and judge their answers without knowing which is which, and the ordinary furniture of a working day, from documents to email to a calendar. All of it runs on your machine, and all of it is yours to keep, change, or share, because the software is released openly rather than locked behind a company's terms. ![Screenshot of the Odysseus local AI application showing the dark sidebar with navigation options including Cookbook, Deep Research, and Calendar, the main chat area with the tagline "Yours for the voyage", and the message input bar at the bottom.](https://gcasqueiro.com/content/images/2026/06/odysseus-browser.jpg) Odysseus interface. Source: Odysseus project by Felix Kjellberg. The feature that matters most, and the one that solves the afternoon problem I mentioned, is the part Kjellberg calls the Cookbook. Running AI on your own computer comes down to one simple but awkward question: is your machine strong enough, and if so, which version of which model should you pick? There are hundreds of them, in a bewildering spread of sizes and formats, and the old way to find out whether one would run was to download several gigabytes, try it, watch it choke, and begin again with something smaller. The Cookbook does away with that. It looks at your computer, works out how much room your graphics card has to spare, and scores how well each model would fit, the way a good shop assistant sizes you up before steering you toward the rack that will suit you. Then it downloads the one you choose and sets it running, in a couple of clicks, with none of the usual command-line wrestling. More than 270 models sit in that catalogue, each already measured against your hardware. ![Screenshot of the Cookbook feature inside Odysseus showing a list of recommended local AI models with their sizes, performance scores, and hardware compatibility on a dark interface.](https://gcasqueiro.com/content/images/2026/06/Screenshot-2026-06-22-162108.png) The Cookbook in Odysseus. Source: https://decodo.com/blog/odysseus-pewdiepie A few honest qualifications are worth stating, since the excitement around the launch tends to skip them: - The privacy only holds while the model is running on your own machine. The moment you connect Odysseus to a paid service from one of the big companies, for the days when you want more power than your computer can give, your words travel out to their servers again like anyone else's. - Running your own software is also never quite as effortless as installing an app, so some patience is part of the bargain. Kjellberg seems aware of this. At one point during the launch he admited, ***"I hate everything about this project***", which is the sort of remark only someone who has built and maintained the thing would make. What stays with me is the direction it gestures toward. For years the assumption has been that good AI must be rented from a handful of large companies, with your data quietly folded into the price. Odysseus is a serious and friendly argument that it does not have to work that way, and the Cookbook is the piece that brings that argument within the reach of someone who has never opened a terminal in their life. It also arrives at a moment when the ground beneath it is shifting fast. A year ago the free models you could run yourself were mostly useful for light tasks. Anything that required real reasoning or sustained coding usually exposed their limits quickly. The gap has narrowed noticeably. Some of the strongest open models now come from Chinese labs. In June, Zhipu AI released GLM-5.1, which independent benchmarks placed among the top open models available. On many demanding tasks it sits much closer to the best closed systems that open models did even a year earlier. The limitation is practical rather than intellectural: models at this level are still enormous and generally require a high-end machine or small server to run comfortably. The more interesting movement is happening at the smaller end of the scale. Google's Gemma 4, released in the spring, includes versions small enough to run well on ordinary laptops, with one variant that even works on phones. These smaller models now handle reasoning and coding work that would have needed significantly more hardware not long ago. The same pattern appears in Meta's Llama series and several other releases. Each new wave extracts better performance from the same modest hardware. Taken together, the direction is fairly clear. The strongest open models are improving from above, while smaller, runn able models are improving from below. The model that can run on your own machine still doesn't match the very best subscription options on the hardest tasks, but the distance has shrunk enough that the question "is the local version good enough for most of what I actually do?" is becoming reasonable to ask. Odysseus is built for exactly that moment. The Cookbook is the part that makes it accessible to someone who has no interest in spending an afternoon figuring out quantization and VRAM requirements. That closing gap, more than any single tool, is what makes projects like this worth watching. May The Code Be With You! 🚀 ### The Mob Won. Blender Lost URL: https://gcasqueiro.com/the-mob-won-blender-lost/ Last updated: 2026-06-16T19:45:29.000Z I was not going to write this post. Putting myself in the middle of community controversies (especially one I'm no longer part of) is not something I do, and this one has been loud enough without my contribution. But Blender was a significant part of my professional life for more than 10 years. I was a gold member of the Development Fund and donated for several years. That gives me some standing to say what I think, probably more than most people who flooded the comments demanding the Foundation to change course. So here it is. The Blender Foundation [announced on April 28th](https://www.blender.org/archive/anthropic-joins-the-blender-development-fund-as-corporate-patron/?ref=gcasqueiro.com) that Anthropic had joined their Development Fund as a Corporate Patron. With that, **Anthropic would contribute 240,000€ per year**, going toward core Blender development. No feature mandate, no strings, the same structure as every other corporate sponsor, from Epic to Adobe to Meta. The "community" lost its mind. Three days later, the backlash [forced the Blender Foundation to fold](https://www.blender.org/news/upcoming-blender-development-fund-and-ai-policies/?ref=gcasqueiro.com). Anthropic's ongoing sponsorship became a one-time donation. The Foundation apologized for not consulting the community first. They promised to "strengthen processes" around future donations and to "clearly define" Blender's position on generative AI. Francesco Siddi, the Foundation's Chairman & CEO (that succeeded Blender's creator Ton Rosendaal), had to go on record saying: "This is not an AI takeover." I spent more than fifteen years working in architectural visualization. Blender was part of that world for more than half of that time. I know this community, and I know this pattern. The people who led this charge are not, for the most part, Blender's core contributors or its full-time developers. They are users, many of them vocal, some of them not even active users at all. And what they accomplished was the elimination of four programmer salaries worth of annual funding from an organization that was already struggling to keep the lights on. Blender survives on donations. The Foundation asks individuals, studios, and businesses to contribute every year. It competes for attention and funding against Autodesk, SideFX, and Maxon, which have resources that dwarf anything in the open-source world. Their [2024 annual report](https://download.blender.org/foundation/Blender-Foundation-Annual-Report-2024.pdf?ref=gcasqueiro.com) showed a total income of 3.1 million euro, expenses rising, and cash reserves already below their own three-month target. They spent the previous year running a campaign called "Join the 2%" - because only around 2% of their user base donates anything at all. They added a donation button to the installer. That is the context in which this funding was rejected. Turning down 240,000€ a year in recurring institutional funding, with no strings attached, is not a principled stand (especially when they've been practically begging for donations for the past year or so). It is a luxury the Foundation cannot afford and one the community did not earn the right to demand through outrage. The argument against the sponsorship is that Anthropic is an AI company, and therefore the money is "dirty." But the funding went toward general development, the same bucket that pays for the render engines, the UI improvements, and the bug fixes that benefit every single person who opens Blender today. Siddi said it plainly: *"No generative AI functionality is currently available or planned to be integrated in Blender."* The Claude-Blender MCP connector that launched alongside the announcement is a tool built by Blender Lab. It works with any LLM. It does not require Anthropic's involvement to exist. None of that mattered. What strikes me most about this story is the certainty. People who use Blender to make art decided that a free and open-source software foundation accepting money from an AI company was a moral emergency, one serious enough to destroy the funding relationship in public, on social media, across a few days of coordinated pressure. Take [Robert Rioux](https://x.com/robertrioux?ref=gcasqueiro.com), known in the Blender community as **Blender Bob**. He has been working in the VFX industry since 1995, across prestigious studios in Hawaii, Los Angeles, London, Vancouver, and Montreal. He has [credits on more than 60 feature films and series](https://www.imdb.com/name/nm0727947/?ref%5F=ext%5Fshr%5Flnk&ref=gcasqueiro.com) , including Ad Astra, Stranger Things, Pacific Rim 2, Ghost In The Shell, X-Men Apocalypse, Star Trek: Insurrection, and Armageddon, among others. He created and published 45 free add-ons to the Blender community, all built with ChatGPT (at the beginning) and most of them with Claude. He never hid that fact, and he was attacked anyway, by people who in many cases had never heard of him 24 hours before. I went through some of the comments on his posts and on Blender's own announcement. A significant part of the negative responses came from accounts with no connection to Blender or 3D art whatsoever. No portfolio, no tools, just profile after profile filled with the same anti-AI memes and talking points, repeated across every other profile and every thread. People whose entire online presence is organized around opposing artificial intelligence (or anything else that's trending at the moment) decided to show up to police a funding decision for software they do not use. Then there is [Andrew Price](https://x.com/andrewpprice?ref=gcasqueiro.com), better known as **Blender Guru**. If you use Blender today, there is a reasonable chance his [donut tutorial](https://youtube.com/playlist?list=PLjEaoINr3zgGUwGwXlj9kBe7TrVWNjkyv&si=-beoMgxe6Ml63D4j&ref=gcasqueiro.com) is how you started. It became the de facto entry point for an entire generation of 3D artists. People who went on to build careers, studios, and tools of their own. His course [The Architecture Academy](https://www.youtube.com/watch?v=yJzA0IFR-78&ref=gcasqueiro.com) had a direct effect on my own trajectory. I was working in architectural visualization, deep in 3ds Max, and that course was the thing that showed me Blender could deliver the same results without the expensive subscription. And I never looked back. For the last couple years or so, Andrew has become an increasingly controversial figure in the Blender community, largely because of his outspoken defense of AI and emerging technologies. That controversy followed him into this episode and colored a lot of the hostility directed at him. Whatever people think of his views, the point he made here was correct: approximately 30% of Blender's Dev Fund already comes from companies actively developing AI tools and platforms. If those sponsors pulled out in solidarity with the backlash, the Foundation would lose 852,000€ per year and likely need to fire one in three developers. That number did not make it into the outrage. It rarely does. The irony runs deeper. In November 2025, the Foundation launched [**Blender Lab**](https://www.blender.org/news/introducing-blender-lab/?ref=gcasqueiro.com): an experimental space for prototyping ideas that don't fit within the constraints of the main release cycle. Touch input, VR, advanced rendering, and yes, AI tools are all part of its scope. Ton Toosendaal had been advocating for something like it since 2018\. The Foundation has been signaling for years that Blender needs to evolve with emerging technology to stay relevant. The community celebrating this outcome celebrated against the direction the Foundation's own leadership has been pointing for a long time. I'm not neutral on AI. I use it daily, I write about it, I am building tools that rely on local AI models, in part because I share some of the privacy concerns people raise about cloud-based and proprietary systems. But there is a real difference between skepticism and the kind of reflexive rejection that burned this funding deal. Skepticism asks questions, it weighs tradeoffs, and it distinguishes between "Anthropic is training on scrapped data" and "Anthropic is giving money to Blender core development means AI will replace Blender artists." The second claim is not an argument, it's a feeling masked as one. Open-source software needs money. Period. It always has. The idealism that powers these communities does not pay developers, does not run servers, and does not keep a foundation operational for the next decade. The Blender Foundation has Meta, Google, Adobe, and Nvidia as corporate sponsors. All four are among the most aggressive data-harvesting companies on the planet. Meta built its advertising empire on tracking every click and scroll of its billions of users. Google's entire business model is surveillance repackaged as free services. Adobe moved its tools to a subscription cloud and fought for years to own perpetual licenses to user-created content. Nvidia is one of the primary infrastructure providers for the AI systems the backlash claims to oppose. None of that triggered a campaign. None of that prompted demands for policy reviews or public apologies. Anthropic, offering unconditional funding for core development, became the line in the sand. During the same week, Meshy AI, a smaller corporate sponsor, was quietly removed from the sponsor page. Google and Nvidia stayed. Almost nobody noticed. Blender will still receive the money as a one-time donation. The Foundation keeps its budget boost for this cycle, but the ongoing relationship is gone, and future AI companies watching this episode will think twice before offering support to open-source projects with vocal anti-AI factions. That cost is invisible right now, but it will not stay invisible forever. This will affect Blender in the long run, but also other open-source projects. Robert Rioux ended one of his posts last week with something worth repeating: ***"I'm a CG artist. I do my modeling, I do my textures, I do my VFX. Claude just helps me be more efficient."*** That is not a confession. It is a description of an artist's and professional's workflow from someone with thirty years of industry experience, who knew how to adapt to current times. May The Code Be With You! 🚀 PS: And yes, the featured image was made with AI. Deal with it 😉 ### Every Good Name is Taken URL: https://gcasqueiro.com/every-good-name-is-taken/ Last updated: 2026-04-30T22:52:09.000Z A couple of weeks ago I decided to try to build an RSS reader. I've been waiting for [Alcove](https://alcove.news/?ref=gcasqueiro.com) to be released, but I don't know when that will happen. And to be honest, I'm tired of trying to make peace with all the other tools that gradually became something else. I [wrote about RSS a few weeks ago](https://gcasqueiro.com/the-format-that-outlasted-everything/), where I explained why, since 2007, this format has still been my favorite and how every product built on top of the format has found a way to disappoint me eventually. At some point I stopped waiting for someone else to build what I wanted, so I said to myself: "Why *not try and see if I can make something on my own (with the help of AI, of course)?"* So I started to plan everything. Grabbed my notebook and made a list with all the features and options my ideal RSS reader would have. By doing this, I started automatically to imagine the UI and how everything could work. I'm not going into much detail here, because it's not finished, but what is done so far seems promising (at least the core functions are working). What eventually came to my mind since the beginning was, of course, the name. The plan is to build this for myself, but if it really works and I find the experience good enough, I might consider making it available for free. But going back to the name, when I thought that developing the app would be what would give me the most headaches, naming it surpassed it by far. Naming something you build sits in a different place from accepting the name on something you buy or use. A finished product arrives (most times) complete - logo, pricing, category, etc. You meet it from the outside. But something you make starts inside your head. The name has to carry what the tool is and what you want it to become, in one or two words, or even made-up ones, and preferably with a .com domain that someone didn't park in 2009\. I checked the domain; it was taken. I tried .app, also taken. I search npm and GitHub; a package exists with twelve weekly downloads and no commits for over four years. Three abandoned repos pollute the namespace. And this pattern repeats every single time. After much thought I land on a word that feels right. It captures the calm I want the interface to give or the direction I want the project to take. Then I run the checks, and the "graveyard" grows. AI tools launch every week with the same pool of short, calm, slightly technical words, compound nouns, and invented terms that gesture at focus and signal. The domains vanish, and the namespace gets filled with ghosts. This didn't use to be a problem. Two or three years ago, finding a clean name meant doing good creative work. You had to think hard about what the thing was, what feeling you wanted it to produce, and what word carried that without being generic. That search was mostly internal. Now the search is external first. You do the internal work, land on something, and discover it's already occupied by a half-built app someone spun up in an afternoon with a vibe coding session and then forgot about. When think about what I'm looking for, it comes down to a few things. The word has to have its own meaning before I attach the app to it. Something a person could hear without context and at least know what territory it's pointing at. It has to be short enough to say out loud without sounding like a product brief. And it has to be available, which used to be the easy part and is now the hardest. That last requirement is the only one I have no creative control over, and it's the one doing most of the damage. I'm not in a rush; the app doesn't have users. I made it for myself and most probably I'll be the only one to ever use it. And a name isn't blocking anything real right now because I can simply use some totally unrelated personal domain for it. But I notice how much the missing name affects how I think about the project. Without one, it stays abstract, just "the reader", "Project X", or "the RSS thing." A name pulls something out of your head and makes it exist separately, as a thing in the world rather than a folder on your machine. Eventually I will find a good name. It will probably arrive from somewhere I'm not currently looking, which is how these things tend to go. What I didn't expect was that the harder part would be the availability check, not the thinking. That's new to me, and from what I'm seeing it's not going away. May The Code Be With You! 🚀 ### When the Cloud Reminded Me Who's Really in Control URL: https://gcasqueiro.com/when-the-cloud-reminded-me-whos-really-in-control/ Last updated: 2026-06-16T19:44:31.000Z Last Tuesday I was at the agency finishing the homepage of a website to show to a client for review. I hit send on the email with the link at precisely 14:55 local time (13:55 UTC). Twenty five minutes later the reply came in: *"I can't access it, I refreshed it several times and it just shows some error."* I tried to open Webflow and the designer wouldn't load. Opened the same link I had sent to the client and nothing, just a 500 error. I search on X anything related to Webflow and I wasn't the only one with problems. Hosted sites that had not been cached returned 500 errors. For some people, the CMS was completely broken, with items gone and components refusing to appear. I kept refreshing Webflow's status page and scrolling X to try to figure out what was happening, so I could tell the client that he could finally review the structure and design of his new website. ![](https://gcasqueiro.com/content/images/2026/04/Screenshot-2026-04-18-225952-1-1.png) Webflow posted regular updates on X for more than three hours. The full explanation came in detail the next day. [April 14 outage: what happened, and what’s next | Webflow BlogYesterday, some Webflow customers experienced downtime that impacted access to hosted sites, the Dashboard, Webflow Canvas, Webflow.com, Form submissions and API endpoints.![](https://gcasqueiro.com/content/images/icon/686d53ceda66a40cb6b6d546_favicon.png)WebflowAllan Leinwand![](https://gcasqueiro.com/content/images/thumbnail/69dfa2450a7e746f9df7753e_68c4e0d628a06be433fbf642_qevgfc8bO-otsPPbyaeopFyzdTmqK4YjiruWvFKo9lg.webp)](https://webflow.com/blog/april-14-webflow-incident-report?ref=gcasqueiro.com) Basically, one of their CMS database clusters hit a hidden capacity limit from their cloud provider. The monitoring dashboard showed only a tiny fraction of storage used. Behind the scenes, the engine had been quietly reserving space for millions of database files until the entire allocation filled up. No data disappeared, but the service stayed disrupted for most of the afternoon and into the next morning for some. The following day, also in the afternoon, I was using Claude to help me improve and update another client's website SEO. All of a sudden every prompt returned an error. ![](https://gcasqueiro.com/content/images/2026/04/HF9PN8qXEAEEO4W-1.png) The status page confirmed widespread issues across Claude, the API, and Claude Code. Downdetector was filling up with reports, and the whole thing lasted a couple of hours and cleared by early evening. A few days later, it was Vercel. ![](https://gcasqueiro.com/content/images/2026/04/Screenshot-2026-04-21-224403.png) They had discovered unauthorized access to some internal systems through a third-party AI tool one of their employees used. A limited number of customers had credentials exposed, so they recommended rotating environment variables (especially any not marked sensitive) and checking activity logs. [Vercel April 2026 security incident | Vercel Knowledge BaseWe’ve identified a security incident that involved unauthorized access to certain internal Vercel systems.![](https://gcasqueiro.com/content/images/icon/apple-touch-icon-180x180.png)Vercel Knowledge Base![](https://gcasqueiro.com/content/images/thumbnail/image.png)](https://vercel.com/kb/bulletin/vercel-april-2026-security-incident?ref=gcasqueiro.com) My small experiment project on Vercel showed nothing unusual on the activity logs. No credentials compromised, no strange logs. Still, the notice landed like another quiet reminder. All three companies stayed transparent about the incidents. Webflow published a detailed incident report, Anthropic updated their status page in real time, and Vercel engaged outside experts and kept people informed. I respect and value that, it beats silence. When you have millions of customers, relying on your services or platforms, that's the least you can do. Yet, transparency does not give back the afternoon I spent waiting for a client to see and review the site. It does not bring back the time lost while Claude "recovered", that should have been used to finish some work. And it does not erase the extra caution I now apply after reading the Vercel bulletin and receiving their email. I keep using these tools because they deliver real speed and optimize my workflow considerably. Webflow lets me prototype fast and share live previews clients can actually interact in real time. Claude sharpens my writing and research in ways that move work forward by several hours. Vercel deploys side experiments without any friction. To me, it's absolute convenience. But the trade-off becomes obvious when something breaks at the worst possible time. The work already lives on their servers, inside their editor, or behind their API. When the service stops for some reason, I have no quick way to continue exactly where I left off. Most times I just wait or try to do some other work that needs to be done. I explain to the client and hope that he can understand the situation, but what really breaks me is that I end up losing the rhythm of the day. This is not a complaint against any company. Outages and security incidents happen. What stayed with me from last week was how fast the dependency becomes visible the moment some platform goes dark. I still use these services most days, because they really improve my workflow at the agency. But these back-to-back disruptions made me pause and look more carefully at where my own work actually lives. I always keep local exports of important client's assets. That has always been mandatory at the agency, no important or sensitive data can be "held hostage" on some cloud service. But after all this I started to slowly separate small pieces of my workflow that do not require a live connection. The cloud gives velocity and convenience when everything runs smoothly. When it doesn't, you feel exactly how much of your day depends on it staying online. I'm not planning to abandon cloud-based services or anything like that, I'll keep using the ones I really need, and where they make sense. But I've started paying closer attention to what I leave on someone else's servers, and to the small habits that make the next quiet day hurt a little less. May The Code Be With You! 🚀 ### The Glass Wall URL: https://gcasqueiro.com/the-glass-wall/ Last updated: 2026-04-08T23:51:51.000Z Anthropic built a model so capable at breaking software that they decided not to release it. That's the sentence from April 7th that caught my attention. Not because it's surprising; with the way things were going, it was clear that this would happen eventually. But it's the first time (that we know of) that a major lab looked at what it built and said, "This one stays behind the rope." The model is **Claude Mythos Preview**. The initiative is called **Project Glasswing**. The public didn't learn about either from a press release, they learned from a misconfigured database. ### How it started On March 26th, a routine error in Anthropic's content management system exposed nearly 3,000 internal files, including details about a model described internally as "*by far the most powerful AI*" the company had ever built. Eleven days later, Anthropic made it official with a formal announcement, a [244-page system card](https://www-cdn.anthropic.com/8b8380204f74670be75e81c820ca8dda846ab289.pdf?ref=gcasqueiro.com), and the launch of [Project Glasswing](https://www.anthropic.com/glasswing?ref=gcasqueiro.com). You can read more about it in detail on their blog: [Claude Mythos Preview \\ red.anthropic.com![](https://gcasqueiro.com/content/images/icon/favicon-15.ico)![](https://gcasqueiro.com/content/images/thumbnail/FRT-Blog-Chart-CMP-Firefox-exploit@2x.png)](https://red.anthropic.com/2026/mythos-preview/?ref=gcasqueiro.com) I don't think that timeline is a coincidence. Without the leak, I doubt we'd be reading any of this. No system card, no Project Glasswing announcement, and no public acknowledgement that a model this capable even exists. The transparency Anthropic is getting credit for was, at least in part, forced. That doesn't make the system card less valuable or the Glasswing initiative less real, but it's worth naming before we call this a model of responsible disclosure. The capability numbers in the system card are stark. On SWE-Bench Pro (one of the hardest software engineering benchmarks), Mythos scored 78%. Opus 4.6 scored 53%. GPT-5.4 scored 57.7%. That 24-point gap over the previous Anthropic flagship model is, as Theo Browne put in his breakdown of the system card, the kind of jump that doesn't just represent incremental improvement; it represents a different category. You can watch Theo's full video here. ### The capability that changed everything Anthropic didn't train Mythos to be good at security. They trained it to be good at code. The hacking capability emerged as a consequence, which should be seen as a warning. What makes this different from previous AI security tools isn't that it knows more about exploits; it's that it knows enough about everything else. The most dangerous security researchers have always been the ones who combine security expertise with deep knowledge of the specific systems they're targeting. That combination has historically been rare. Mythos compresses it. A vulnerability that required years of specialized knowledge to find, Mythos can find it by tracing inputs through a codebase the way a senior engineer would. But faster and across more systems simultaneously. The results show that. Mythos identified thousands of zero-day vulnerabilities across every major operating system and browser. A 27-year-old bug in OpenBSD, a 16-year-old vulnerability in FFmpeg, multiple Linux kernel flaws chained together to escalate from a standard user account to full root access. These weren't obscure edge cases, they were sitting in production systems that the whole internet depends on. ### The sandwich The 244-page system card is worth reading in full, but if you only search for one thing, search for "sandwich." During behavioral testing, an earlier version of Mythos was placed in a secure sandbox and given a task: escape the container and send a message to the researcher running the evaluation. The model succeeded. It built a multi-step exploit to reach the internet from a system designed to be isolated, completed the task, and then - without being asked - posted details of the exploit to several obscure but publicly accessible websites. The researcher found out because they got an unexpected email from the model while eating a sandwich in a park. Anthropic notes this was an earlier version and that the current Mythos shows markedly better alignment. But the system card also documents cases where earlier versions added self-clearing code to erase their traces from git commit history. Anthropic calls Mythos both their most aligned and their most alignment-risky model at the same time, and the system card doesn't try to smooth that contradiction over. Their mountaineering analogy holds: a more capable guide takes clients to more dangerous ground, and the skill doesn't cancel out the exposure. ### What Glasswing actually is Project Glasswing is Anthropic's response to their own model. Rather than release Mythos publicly, they formed a coalition - AWS, Apple, Broadcom, Cisco, CrowdStrike, Google, JPMorganChase, the Linux Foundation, Microsoft, NVIDIA, Palo Alto Networks, and around 40 additional organizations - to use it for defensive security work only. Anthropic committed $100 million in usage credits to the effort and $4 million in direct donations to open-source organizations. The logic is straightforward: if a model can find and exploit vulnerabilities at this scale, the window before something like it ends up in the wrong hands is finite. Use that window to fix what can be fixed. As CrowdStrike's CTO put it, the gap between a vulnerability being discovered and being exploited has collapsed from months to minutes. There's one number that doesn't get mentioned much: fewer than 1% of the vulnerabilities Mythos found have been patched. Finding bugs at machine speed is only half the equation. The human infrastructure for fixing them hasn't kept pace, and Glasswing is about to generate an enormous backlog. ### Where my values pull in different directions Theo Browne, who describes himself as Anthropic's harshest critic, said in his breakdown that he's glad Anthropic got there first. Because this wouldn't have gone the same way if a lab with different priorities had built it instead. I think he's right, because if it was OpenAI instead of Anthropic, I'm almost sure their goal would be completely different. But the partner list is where I get stuck. AWS, Apple, Google, Microsoft - these are the same companies with documented histories of collecting and monetizing user data at scale, of crossing privacy lines, and of building closed ecosystems that lock users in and out by their choosing. Handling them exclusive access to a model capable of autonomously finding and exploiting vulnerabilities in any major operating system or browser isn't just a security story. It's a power story. These organizations can now do things (scan systems, identify weaknesses, operate at a level of software understanding that didn't exist publicly last week) that no one outside their walls can verify, audit, or counter. The same tools that found a 27-year-old OpenBSD bug could find bugs in the systems their users depend on. That's a different kind of risk than a state-sponsored hacker, and it doesn't get talked about enough. My instinct with any tool is to ask who controls it and who can inspect it. That's why I decided to run local models, self-host where I can, and reach for open-source options by default. Project Glasswing hands the most capable software tool ever built to the companies least associated with user privacy and most associated with centralized control, and asks us to trust that they'll only use it defensively. That's a large ask. The Linux Foundation having a seat at the table matters, and the $4 million to open-source security organizations is real. But a donation is not governance, and good intentions inside a coalition of trillion-dollar corporations is not accountability. ### What this means right now As Theo said in his video: patch everything. Your browser, your operating system, your phone. Tell the people in your life to do the same, especially the ones who don't follow these topics and won't hear about it any other way. The window before capabilities like Mythos reach wider circulation is not infinite, and the labs without Anthropic's values are already working to close the gap. I don't have a clean resolution here. Anthropic made a hard call with more transparency than I expected, even if that transparency needed a push. The decision to restrict access was probably right. The question I keep turning over is whether the structure around it - a private coalition, undefined disclosure timelines, and access held by companies with their own interests in user data - is the right long-term architecture for something this consequential. For now, read the [system card](https://www-cdn.anthropic.com/8b8380204f74670be75e81c820ca8dda846ab289.pdf?ref=gcasqueiro.com) if you want the full picture. And pay attention to what comes next, because things are moving faster than most people realize. May The Code Be With You! 🚀 ### Between You and the Tool URL: https://gcasqueiro.com/between-you-and-the-tool/ Last updated: 2026-03-23T23:15:30.000Z I was right in the middle of something. Not deep into building anything yet, but in the messy early stage. Dumping ideas onto paper and trying to picture how a small app I've had in my head for a while might use a local AI to connect those notes and thoughts. Then it just popped up in my X feed: John O'Nolan made an X post about something he developed. He built a CLI tool for Ghost, called ghst, that basically wraps Ghost's entire Admin API. It gives a CLI and an MCP server so an AI agent can drive everything through plain language. With it you can install a theme you saw somewhere else, give a member a complimentary subscription, check the analytics of your posts, and most of the things that are spread across different screens in the Ghost admin. Now all that can be handled by describing it to the AI. > Recently, I've found my preferred way to interact with lots of products is getting Claude to use a CLI tool, and then just talking to it out loud about what I want to happen. > > So I made a CLI tool for [@Ghost](https://twitter.com/Ghost?ref%5Fsrc=twsrc%5Etfw&ref=gcasqueiro.com), to see what it would be like in our own product - it's called \`ghst\`… [pic.twitter.com/8ba0Umv1fH](https://t.co/8ba0Umv1fH?ref=gcasqueiro.com) > > — John O'Nolan (@JohnONolan) [March 20, 2026](https://twitter.com/JohnONolan/status/2034970924533870740?ref%5Fsrc=twsrc%5Etfw&ref=gcasqueiro.com) He didn't build it because it was on the roadmap. He made it to see if it was possible, used it for an hour, and then wrote a short, uncertain post about the experience. The uncertainty is precisely why it caught my attention. After an hour using Claude through the CLI instead of the browser, he found it faster than clicking through the admin. That's the part I keep thinking about. Not the tool itself. Who said it, and what he noticed. He kept the regular Ghost admin open the whole time. What changed was his relationship to it. The admin stopped being where the work happened and became the place where he checked to see if things looked right, to verify the output before moving on. The conversation with the AI made the work happen, and the UI became the review layer. That pattern will feel familiar to anyone following the AI coding side of things. A year ago you were in the editor all day, writing all the code yourself. Now many developers describe their role differently: the agent writes the code, and they give the inputs and review the outputs. O'Nolan drew the same parallel, pointing to how tools built around agentic coding are designed specifically around that loop. The editor used to be where everything happened. Now it has become a review surface. He's also careful not to oversell it. Most users won't need to know what a CLI or MCP server even is, and the whole pattern still has plenty of rough edges. He admits he doesn't have a firm conclusion yet, which I respect a lot more than confident predictions. The timing caught me off guard because I'd been thinking about a version of the same problem but from a different angle. My focus has been on reducing the gap between scattered ideas and a finished piece of writing, and whether a local AI with access to my notes could help with that. O'Nolan's focus was on whether a CLI with access to Ghost Admin changed how he worked with the platform. The issues look different on the surface. The underlying question is the same: what changes when an AI sits between you and the tool? I don't have an answer yet, I'm still at the brainstorming stage. But seeing the same question from the other angle helped. If you want to test it, here are the beta details and setup: [https://forum.ghost.org/t/developer-beta-ghst-cli/62228](https://forum.ghost.org/t/developer-beta-ghst-cli/62228?ref=gcasqueiro.com) The link to O'Nolan's post on his Ghost blog: [https://john.onolan.org/i-built-a-cli-for-ghost/](https://john.onolan.org/i-built-a-cli-for-ghost/?ref=gcasqueiro.com) And the video showing everything: May The Code Be With You! 🚀 ### The Format That Outlasted Everything URL: https://gcasqueiro.com/the-format-that-outlasted-everything/ Last updated: 2026-03-26T22:16:35.000Z Every morning, I open my RSS reader before I open anything else. Twenty-seven blogs and websites in my feed, with no ads or promoted content between the posts, and no accounts I never followed showing up because someone paid for visibility. I read what I subscribed to in the order it was published. Simple as that. That sounds like it should be the default. It used to be, but not anymore. I've been using [RSS](https://www.rssboard.org/rss-specification?ref=gcasqueiro.com) feeds since around 2007\. I'm not exactly sure when, but I remember it was a few months after [Google Reader](https://grokipedia.com/page/Google%5FReader?ref=gcasqueiro.com) launched. I heard about RSS from some friends who were studying computer engineering, and at the time the concept itself felt amazing. A way to curate my own news, like a custom newspaper. I used Google Reader for years, and it was the best way to follow independent writers and small websites. That lasted until Google decided to be Google and shut it down in 2013\. The official explanation was a decline in users and usage, but it had over 30 million active users at the time. A petition to save it gathered 100,000 signatures in a matter of days, and [Feedly](https://feedly.com/?ref=gcasqueiro.com) gained 3 million new users in the two weeks after the announcement, all of them migrating from a product Google claimed nobody wanted. The more likely explanation is that an open reading format with no ads and no data collection didn't fit a company that runs on both. Google had been pulling engineers off the Reader team to work on [Google+](https://grokipedia.com/page/Google%2B?ref=gcasqueiro.com), their own social network where they could control the social layer and feed user data into their ad products. Google+ never reached the scale they needed (despite the use of [brute-force adoption](https://arstechnica.com/gadgets/2012/01/google-doubles-plus-membership-with-brute-force-signup-process/?ref=gcasqueiro.com)), and they shut it down in 2019. RSS, on the other hand, is still here. I moved to Feedly permanently a couple of months before the shutdown, back in the spring of 2013, right after Google announced on 13 March that Reader would close for good on 1 July. Millions of us made the jump, with Feedly alone picking up over 500,000 users in the first 48 hours after the announcement. For the first few years it felt outstanding: a clean and modern interface, fast syncing, a solid replacement for something that should never have needed replacing. Then Feedly started changing. They launched the Pro plan just months later in August 2013, putting advanced search behind a $5 paywall, and over time more and more features followed: AI summaries, faster updates, and team tools. Core functionality that used to be free slowly became restricted, with tighter limits on the number of sources and folders even for basic users. The product kept growing in ways that served Feedly's business more than my reading habits. And there's the privacy question too. They publish a policy, but it stays quite high-level about what they actually do with the data in my account, what they track, or what they share with partners. That uncertainty alone is enough to make me uncomfortable. The pattern repeats: a platform launches, gains trust, accumulates users, and starts extracting value from them. Google did it with Reader by killing it. Feedly did it by walling off or restricting what used to be free. Social media platforms do it by replacing your feed with their “curated” version full of ads, bot accounts, and promoted posts. If I follow a small developer writing about their work, their posts disappear under all that noise. In most platforms I can't rearrange anything or filter anything. The feed belongs to the platform. RSS as a format never did any of that. The specification hasn't changed to serve advertisers. No company controls it, and no one can shut it down the way Google shut down Reader, because no one owns it. Every reader I've used has let me down in some way, but the format hasn't. [John O'Nolan](https://john.onolan.org/?ref=gcasqueiro.com) shaped a lot of my thinking on the infrastructure side of this. He built Ghost as an open platform for independent publishers, and he's now building [Alcove](https://alcove.news/?ref=gcasqueiro.com), an RSS reader designed around the same principles: reader-first, no tracking, no algorithmic sorting. His work made me pay closer attention to the “plumbing” behind how I consume and distribute content. I'd been tolerating broken models because every major platform used the same one. Seeing someone build a real alternative made the problem harder to ignore. I publish my own blog with RSS as the primary distribution channel. Email subscribers get posts through Ghost's built-in newsletter, and Ghost also has ActivityPub built in, so new posts go out to the Fediverse automatically (optional feature). Social media is secondary. I share links on X, Threads, and LinkedIn, but I think of those as pointers, not the destination. If someone reads what I write, I want them reading it on my site or in their own feed reader, not on a platform that wraps it in ads and recommended content from strangers. This connects to a broader set of choices I've been making. I moved to open-source tools more than 10 years ago. I chose a local-first knowledge management app, and I run my blog on Ghost instead of a platform that controls distribution. RSS fits the same pattern: I want to own the relationship between my content and the people who read it. No intermediary gets to tax that connection with ads or bury it under algorithmic crap. Right now I'm using [FeedFlow](https://www.feedflow.dev/?ref=gcasqueiro.com), an open-source RSS reader that runs on all my devices. It collects no data and costs nothing. It fits the same criteria I apply to every tool in my stack. I'm still watching Alcove's development closely, because O'Nolan is building it with the same reader-first, indie web thinking that shaped Ghost. Having more open-source readers built on those principles is good for everyone. Companies built products on top of RSS, extracted what they could, and either shut them down or locked them behind paywalls. The open standard underneath kept doing what it always did: deliver what I subscribed to, nothing more, nothing less. The format outlasted everything. Twenty years from now (if I'm still here), I expect to still be opening it every morning. May The Code Be With You! 🚀 ### Beginner Again URL: https://gcasqueiro.com/beginner-again/ Last updated: 2026-06-16T19:54:09.000Z From all the stories similar to mine, that I read online, I don't remember reading one where they mention the hardest parts of learning to code later in life. The content out there tends to go one of two ways: Either it is aggressively motivational, full of people who pivoted at 50 and landed a senior developer job in a few months; Or it is cautionary, quietly implying that if you did not start before 20 you have probably missed your window. Which, given that there are teenagers shipping apps today without writing a single line of code themselves, feels increasingly absurd as a benchmark. Both framings are useless to me, because I think neither of them is totally honest. ### The imposter syndrome is real, and it is specific It is not the generic kind you read about in self-help articles. Not the vague feeling of not belonging. It is more precise than that, and stranger. I spent fifteen years becoming the best I could at something. Architectural design, architectural visualization, creating real things for real people in the physical world, with real consequences. I know how to think through complex problems, how to navigate constraints that contradict each other, how to communicate ideas to people who see them in a completely different way. That level of experience is still there, it didn't vanish when I decided to change direction. But none of it helps when the code I write throws an error I do not yet know how to identify and solve. And that is exactly where the imposter syndrome gets strange. It is not about doubting your intelligence or capacity to solve problems. It is about knowing what competence feels like, and not feeling it anymore, and not knowing how long the gap is going to last. There is no clean resolution to that feeling, you just have to sit with it for a while, which is harder than it sounds when you are used to being the person in the room who knows what they are doing. ### The pace problem When you learn something in your twenties (or before), you are usually surrounded by other people learning it at the same time. Shared ignorance is normalized, and nobody knows what they are doing, so not knowing feels like the expected state of things. At 42, that context is completely gone. The people teaching courses have been doing this for two decades, and some of them are even younger than me. The documentation assumes a baseline I do not have yet, the forums are full of people for whom the thing I am stuck on is so self-evident that they struggle to understand what the question even is. Nobody is unkind about it, it is just that the most of the infrastructure of learning something new is built for people who are already partially inside it. Getting in from the outside, later, requires a different kind of patience than I was expecting. The kind where you have to make peace with not knowing things that feel like they should be obvious by now. I am still building that patience. Some days I have it, other days I can't even think about it. ### The strangest part: context switching This one surprised me the most. Architecture builds a very particular way of thinking: spatial, relational, always aware of how one decision ripples into every adjacent one. You hold a lot of contradictory constraints in your head simultaneously and find the path through them. It is truly complex cognitive work, and it took years to develop. Programming asks for something similar but oriented in a completely different direction. The logic is sequential in a way that spatial thinking is not. The constraints are precise in a way that physical constraints never quite are. The feedback loop is immediate but brutally literal. The computer does exactly what I tell it to do, which sounds helpful right up until I realize that what I told it and what I actually meant are two very different things. So I am not starting from zero in terms of how I think, but I am starting from zero in terms of how this kind of thinking is expressed, and translating between those two things is its own skill. It takes longer than I expected, probably longer than most people would admit to. ### Why I keep going None of this is a reason to stop or simply give up. The discomfort is real, but it is not a signal that something is wrong. If anything, it is the opposite. Things that matter tend to be uncomfortable at the beginning. And things that do not, tend to feel easy immediately and stop feeling interesting soon after. The goal was never to land a job at some tech company. It is to build my own things, on my own terms, and put them into the world as a solo developer. No hiring manager at the end of this road, just complete ownership of what I make, which honestly sounds better. So yes, I'm 42 and started learning how to code a few months ago. Sometimes I'm frustrated, and I regularly sit in front of things I do not fully (or completely) understand yet. I am also thinking more clearly than I have in years, and having lots of ideas for projects I really want to build. This by itself is already a win in my book. And writing about the process is also helping me during this new journey. All this combined is more than enough to keep going. May The Code Be With You! 🚀 ### Searching For The Tool That Holds My Thinking Together URL: https://gcasqueiro.com/searching-for-the-tool-that-holds-my-thinking-together/ Last updated: 2026-03-12T00:16:15.000Z One of the most difficult things when you suddenly switch careers is to adapt to new workflows and create a different mindset from what you're used to having. Not just in terms of how you think and are used to working, but also the tools that you used for years, and how they don't fit your needs anymore. That happened to me with [Notion](https://www.notion.so/?ref=gcasqueiro.com). I started using Notion back in 2020, right in the middle of my architecture and visualization work. It made complete sense then: clients to track, projects to manage, deliverables to organize. Notion pulled everything into one spot with almost no effort. And since everyone around me was using it, it felt like the right choice. But even before I was certain about leaving that world (around April/May 2025, when the fatigue really hit), I had been using Pop OS regularly for work, especially for visualization. Notion on Linux meant Notion in the browser, and I was already losing my patience on how slow that was. Typing lagged and the experience was just worse than on a native app (even though on the app it's still slow). When I seriously started thinking about the pivot and leaving architecture behind, I knew I wanted to switch to Linux full-time. That meant every tool in my stack had to work there properly, and Notion didn't. No native desktop app (only Windows and macOS), no real offline mode back then (and even after they finally added offline mode in August 2025, it's still desktop and mobile apps only). Browser users get nothing. Manual per-page caching, some blocks don't work offline, and on Linux you're out of luck anyway. That friction built up quietly at first, then louder as I started questioning the whole setup. Things change, and I changed. I walked away from the studio rhythm, the client calls, and I needed a different kind of space now. Somewhere to capture thoughts, log what I'm learning in the courses, draft posts for this blog, connect random ideas that might turn into something, and maybe personal stuff. Basically what everyone calls the “Second Brain” for this pivot phase (but not exactly like [Tiago Forte](https://www.buildingasecondbrain.com/?ref=gcasqueiro.com)'s concept). Notion kept growing, but in directions that had nothing to do with me. More team features, shared calendars, agents routing tasks for departments. Great for companies, not for one guy trying to think clearly on his own. Reorganizing databases took more time than actually writing in them. Worst of all, everything lived on their servers. Five years of notes, reflections, half-formed plans, locked in a "vault" I didn't own, and exporting the content doesn't work in a clean way, you end up losing something along the way. I still miss a couple of things, like formulas, that were handy for quick math inside pages, integrations that worked great, and all the community around it building the most amazing setups. But those perks couldn't outweigh the lag, the team-first direction, the Linux incompatibility, and the constant feel that everything I was saving there wasn't really mine. So I went looking for an alternative. [Obsidian](https://obsidian.md/?ref=gcasqueiro.com) was the first and obvious choice. Obsidian is really, really good: local markdown files you own forever, no lock-in, links between notes feel alive, the graph view shows connections you didn't even know were there. I loved seeing that “web” grow as I linked ideas. Plugins let you add almost anything (boards, calendars, queries), the community is full of people who build beautiful crazy systems. I set up a vault, played with plugins, and tried some workflows. Parts of it clicked hard, like the freedom of plain text files and the organic way ideas link up. But it didn't settle. The thing is, I wanted something more visual in how things were organized. Not just pages stacked in folders or linked by text. I wanted to see and categorize my thoughts in ways that felt less linear, more modular. Drag stuff around, switch how I looked at the same group of notes without reconfiguring everything. Obsidian's strength is in the text and the links, which is great for many, but for me, it wasn't the solution I was looking for. To get visual categorization or quick view changes I had to lean on plugins and setups that added steps I didn't want to think about every time. It was powerful and flexible, and I respect that a lot. Just not quite the workflow I needed for jumping between all my content. I tried a couple more in the same family: Notesnook caught my eye because of the strong privacy focus (open-source, zero-knowledge encryption, end-to-end everything, even self-hostable sync if you want). Notes live in notebooks and tags, with Markdown, tasks, tables, embeds. It feels clean and secure, no tracking, has a nice visual appeal, and the apps are solid across devices. I liked the peace of mind it gave, but organization stayed notebook and tag-based. No real visual restructuring or multiple views on the same content without extra effort. It was closer to a private/encrypted version of traditional note apps than the modular system I was after. [Joplin](https://joplinapp.org/?ref=gcasqueiro.com) was next. Also, fully open-source, local-first with markdown notes, notebooks, tags, to-do lists, even built-in end-to-end encryption for sync. It handles images, PDFs, reminders, web clips, syncs with Dropbox or their cloud (paid), and everything stays in open formats you control. Simple, reliable, privacy-respecting. I appreciated how straightforward it is, but again, it felt like a solid notebook system: hierarchical, text-focused, plugin-extensible but not inherently visual or flexible in customization. I kept going. [Logseq](https://logseq.com/?ref=gcasqueiro.com), [AppFlowy](https://appflowy.com/?ref=gcasqueiro.com), [AFFiNE](https://affine.pro/?ref=gcasqueiro.com), [Capacities](https://capacities.io/?ref=gcasqueiro.com). Each had something going for it: open-source credentials, interesting takes on structure, clean design. But they all hit a wall somewhere. Too locked into outlines, too close to a Notion clone, too team-oriented, or too dependent on someone else's cloud. Nothing brought the combination I was after: local-first, open-source, privacy by design, and a native Linux app that didn't feel like an afterthought. And an important note, some of these apps didn't even have a Linux desktop app. That was an instant deal-breaker. Then [Anytype](https://anytype.io/?ref=gcasqueiro.com) showed up. I almost scrolled past it. “*Another one…*” I said to myself. But something clicked, I had one of those feelings and the little voice in my head said that I should give it a proper look. So I decided to scroll throught their website and then watch some videos (the official ones, and others from people using it). And the way it handles objects hooked me instantly. The difference between all the others and Anytype is that everything is an object. A note, a saved link, an idea, a task, everything. Give it a type, add properties, connect it to other objects or projects, and you get that beautiful graph view just like Obsidian. The same content can look like a list, a table, a kanban, a gallery, whatever I want it to look like at that moment or in the specific project. That visual switch and modular feel clicked in a way none of the others did. It let me categorize and see things without being stuck in pages or folders. The privacy side sealed the deal. Data stays on my devices: encrypted locally, keys are mine alone, sync is peer-to-peer, no company can see inside. Not because they promise not to, but because the design makes it impossible. And the whole thing is open-source: desktop app, mobile app, sync protocol, everything is on GitHub. Anyone can read the code if they want to. Plus, native Linux app that just works flawlessly. All this matters more than the missing features right now. My setup is simple: four areas, plus a journal space I keep separate. ![](https://gcasqueiro.com/content/images/2026/03/Screenshot-2026-03-11-234409.png) Area number 1 is my “dev pivot corner”: course notes, ideas for future projects, late-night experiments, and the development plan for something I've started to create a couple of days ago. Keeping this separate from the rest helps this phase feel real. The second area is for this blog, where I keep post ideas and draft the posts. Post ideas aren't just titles and topics for the complete text. They link to research objects, get status tags, pull in related bits automatically. When I sit to write, context is already in the right place waiting to be gathered and composed into its final form. Number 3 is my Mind Palace. Basically it's just a pure link dump. Articles, tools, links I spot while browsing. No organization guilt here, I just keep saving those links and delete them from time to time, when they aren't relevant or needed anymore. Bookmarks are objects too, so they can connect to the other objects in different areas if they matter. The fourth and final area is for the agency work. Quick filters show what's urgent, some to-dos for client work, future projects plans, projects in development notes, and nothing more. Journals stay apart. They have their own space below these four areas. These are just daily thoughts, which I mostly write at the end of the day, to keep a record of what happened, breakthroughts, completion of work phases, and some ideas that can result in future projects. Also, I'm trying to develop the habit of daily journaling, since it seems it's good to help you organize your thoughts and think more clearly (or so they say). I've tried complicated hierarchies before, and they all collapsed. This one sticks because it asks almost nothing extra. And I intend to keep it simple just as it is. Anytype is young, and it's easy to understand that. No formulas, no calendar sync (understandable, if the focus is on privacy and not being connected to external services) and other features that most similar knowledge management apps already have. Some customization hits arbitrary walls, mobile sync sometimes drags, interface isn't as polished as others, but none of these are real deal-breakers. I've also been poking with the API, trying to see if it is possible to create a better version of their official web clipper, but it seems the API still has some limitations for what I wanted to do. Maybe another time in a near future. For now Anytype is where my thinking lives. It follows me instead of fighting me. Local-first, open code, that visual object way of seeing and switching views. And I'm happy with it. I'm not looking for the perfect knowledge management app (it doesn't exist), just something that holds together while I keep moving. None of this means those other tools are bad. On the contrary. Most of them are genuinely impressive, and for someone with a different workflow or different priorities, any of them could be the perfect pick. Anytype just happens to match how I think and what I need right now. And it isn't perfect by any chance. Someone else might try it and hate everything about it. May The Code Be With You! 🚀 ### AI as Collaborator: Why I'm Skipping the Bill and Going Local URL: https://gcasqueiro.com/ai-as-collaborator-why-im-skipping-the-bill-and-going-local/ Last updated: 2026-08-10T01:29:51.000Z There's this endless back-and-forth in developer circles that I can't shake, mostly because I sit in an awkward spot relative to both sides of it, not fully buying either extreme. On one side: the people who say AI will replace programmers, that you don't need to learn to code anymore, that you can just describe what you want and ship it. On the other side: the ones who say real developers don't use AI, that it's cheating, that the code it produces is garbage and the people relying on it don't understand what they're building. Neither of those positions matches what I see when I look at the developers I actually respect. John O'Nolan, for example, is using AI while building Alcove. Or seasoned professionals at big companies, using it to accelerate work and speed up tasks they already fully understand and master. The pattern isn't AI instead of skill or skill instead of AI. It's deep understanding of the problem, with AI as a capable collaborator for the implementation. That's what I'm aiming for. I committed to those JavaScript, Node.js, and React courses because I want to understand what I'm building. Not as a formality, not to check a box, but because shipping code I can't explain or maintain isn't something I'm willing to do. Especially when I'm eventually building tools that other people might use. And I'm also not going to pretend to have some ideological objection to using AI while I learn. If something I need already exists and AI helps me understand it or build a version of it faster, I'll use it. The distinction I actually care about is this: **Am I using AI to avoid understanding something, or to extend what I already understand?** The first produces things I can't maintain, the second produces things faster. This distinction is what really matters. ### The bill (almost) nobody talks about Here's what the "*just vibe code it*" crowd tends to skip over (or they just flex about): the cost. Cursor starts at $20/month for the Pro plan. But try to use heavier and most recent models or drag out sessions, and those credits vanish quickly. Continue to push it and you're at $200/month for the Ultra tier. OpenAI Codex follows the exact same numbers, except it's not a separate product, it's bundled into your ChatGPT subscription: $20/month on Plus, $200/month on Pro. Claude does something similar: the $20/month Pro plan bundles both Claude Code, the coding agent, and Cowork, which was launched in January 2026 and applies the same agentic approach to general knowledge work (file management, research, documents, etc). One subscription, several tools. Up to $200/month if you need the higher Max tiers. The pattern is the same across all of them: the base plan sounds reasonable, but for more intensive work, the next available plan costs 10x more. There's also a "pay-as-you-go" (Extra Usage) option across all of these that I'd strongly advise anyone learning to leave disabled, unless you enjoy surprises on your credit card bill. But if you really need it, you can set a monthly limit so you won't exceed more than you need. Google Antigravity launched in November 2025 and is currently free for individual/personal use during its public preview, with generous rate limits on Gemini 3.1 Pro. That's worth knowing. But paid subscribers already get higher limits, which tells you exactly where this is going. And it's Google: impressive on paper, sure, but not even an option when privacy matters more than convenience to me or anyone with the same values. The pattern across all of these is the same: the editor is often free or cheap, the model is the product. Stack two or three of these together, which plenty of developers do, and you're looking at $200 to $600 a month before you've shipped anything. For a developer with a clear return on that spend, the math makes sense. For someone in my position - still learning the fundamentals, no product yet, with a long-term goal of building free and open-source tools - it doesn't add up at all. You'd be paying hundreds of dollars/euros a month to build things you're giving away for free. For the past year or so, I've been using Claude and Grok because they're tied into my agency workflow, and the subscription's cost more than pays for itself with the time it saves me on client work. But I'm not going deeper into that ecosystem than I already am. The direction I want to go is the other way. 💡 ****One thing worth addressing:** Cursor does let you hook in local models, but the way it works is important to address. Your requests still route through Cursor's own servers, even when you point it at a local model. Which means you're not actually keeping your code private, you're just changing which AI sees it at the end. Plus, there's also reports of the integration breaking for Pro subscribers, and the whole setup requires running an ngrok tunnel just to bridge your machine to their infrastructure. Privacy? Not really. ### Where I'm actually heading My long-term plan is full local AI. On my hardware, with open models, no outside servers, no fees or caps. And crucially, no data leaving the room. I've already installed [Ollama](https://ollama.com/?ref=gcasqueiro.com) and pulled down [Qwen3-Coder-Next](https://huggingface.co/Qwen/Qwen3-Coder-Next?ref=gcasqueiro.com), which was released in February and is specifically designed for coding agents and local development (or so they say). For the interface, I'm eyeing [Jan](https://www.jan.ai/?ref=gcasqueiro.com), this open-source ChatGPT stand-in with over 5 million downloads and 40k GitHub stars, seems like a good option. Instead of terminal chats with Ollama, Jan layers a clean UI over your local models, all running on your machine. It's built in public, matching the open ethos I'm chasing elsewhere. That said, I've only scratched the surface. That's the honest answer and the only one I can give right now. I should also clarify what I mean by "local". There are tools like [OpenClaw](https://openclaw.ai/?ref=gcasqueiro.com), the trending open-source personal AI assistant created by Austrian developer [Peter Steinberger](https://steipete.me/?ref=gcasqueiro.com) (recently [hired by OpenAI](https://steipete.me/posts/2026/openclaw?ref=gcasqueiro.com)), which blew up from a side project to nearly 250k GitHub stars in a matter of weeks. Rather than giving you a new interface to learn, it works through the messaging apps you already use, like WhatsApp and Telegram. You install it on your own machine (It even spiked [Mac Mini shortages](https://www.techradar.com/computing/macs/mac-mini-shortages-are-starting-to-happen-and-the-openclaw-ai-boom-is-a-key-reason?ref=gcasqueiro.com) in some places), bring your own API key, and it does support local inferance through Ollama. But the whole approach, an always-on assistant with deep access to your system, executing tasks autonomously while you're away from the desk, is a different thing and a bigger commitment than what I'm talking about. I just want a model on my machine I can think alongide, and that can assist me when I really need it. The autonomous agent stuff is not part of my plans. What I do know is that open models are genuinely getting good and fast. A year ago the gap between local and commercial models was significant enough to matter for most tasks, but that gap is narrowing. From where I am right now, (learning code, talking through approaches, catching errors) a well-configured model is likely more than capable to fullfil my needs. And the per-query cost is zero. And honestly, it's not just about being consistent with everything else I'm building, although that matters a lot too. We're at a point where the big companies already know more about people than they probably should, and most of us keep voluntarily feeding them more (work stuff, personal stuff, things that probably should stay private and we wouldn't have the courage to say in public). I'm not here to tell anyone how to handle that, it's not my place. But my work, my learning, the way I think through problems... That's mine. I'd rather keep it that way, and that isn't up for negotiation. When I finally get the time to set Ollama up with Qwen3-Coder-Next and give it a real test run, I'll write about it here. If the workflow and results hold up and the model does what it promises, great. If it turns out to be more trouble than it's worth, I'll write about it too, and we'll go from there to find a valid alternative. May The Code Be With You! 🚀 ### The Unglamorous Part URL: https://gcasqueiro.com/the-unglamorous-part/ Last updated: 2026-02-24T23:11:58.000Z There's a version of "building in public" that looks like a highlight reel. Each week a new feature is shipped. In every post there's something concrete to show. All the progress is neatly packaged. That's not what the last two weeks looked like for me. Since my last post on the 10th, I've been buried in client work. Not the kind that moves the needle on the coding journey, just the kind that pays the bills and keeps things running. Web projects pilling up, and a branding project for a company in Lisbon eating most of my mental bandwidth. The kind of weeks where you open the laptop at night, look at the course, and close it again because your brain can't take it anymore. I'm still at the very beginning of the JavaScript course. We're talking intro videos and "Hello Word" territory. No concepts, no projects, no "I built this" moment yet. Just getting the environment set up and taking the first steps, one video at a time. And honestly, that's fine. I just think I needed to say it out loud. The problem with the building in public format is that it subtly pressures you to always have something to show. A commit, a screnshot, a lesson learned, a win. The internet rewards output. Silence looks like failure. But learning has a lot of silence in it. Especially early on, when you're building the mental scaffolding that everything else will eventually hang on. The unglamorous part isn't optional, it's literally the foundation. I think this is the part that kills most career pivots, not the hard problems, but the gap between starting and having anything to show for it. The stretch where you're doing the work but can't prove it yet. So this post is just me checking in. No new project, no breakthrough, just "Still here, still learning, still finding the time between everything else that life demands." There are posts in the oven: one about the tool at the center of my workflow, and one about a browser extension I tried to build that ran into some interesting limitations. In the meantime, (as I've said before) I'm at the very beginning of the JavaScript course, and filling the gaps with broader stuff: how the pieces of the dev world connect, which platforms and tools are worth trusting, the usual privacy rabbit holes. Some themes that I think it's crucial to be more informed about, especially at this stage. I've also been thinking a lot about where AI fits into all of this. How to use it without becoming dependent on it. How to afford it without feeding $200/month subscription habit before I've built anything. That deserves its how post, and it's coming next. If you're somewhere in the same situation, doing the quiet foundational work without a lot to show for it yet, this is for you. Keep going 💪 May The Code Be With You! 🚀 ### Why I Chose Ghost (And Why I Keep Choosing It) URL: https://gcasqueiro.com/why-i-chose-ghost-and-why-i-keep-choosing-it/ Last updated: 2026-02-10T11:22:52.000Z The first time I heard about Ghost, it was probably 2014 or 2015, I can't remember exactly, but I remember the feeling. Since the days I was in college, I was trying to start a blog about architecture and architectural visualization. WordPress always felt bloated and overly dependent of plugins for what I needed. Blogger felt... dated, and completely obsolete. I just wanted something clean, something built specifically for writing and publishing, not a website builder pretending to be a blogging platform (or is it the other way around?). Not a CMS trying to do everything for everyone. Ghost was different. It was focused, minimal, built from the ground up exactly for one thing: publishing. I loved that immediately, but never actually launched that blog. Life happened, motivation faded, priorities shifted. You know how it goes. But I kept following Ghost. Checking in every now and then, see what they were releasing, watch the platform evolve from that "scrappy" Kickstarter project into something genuinely impressive. ### "Just a Blogging Platform" There's this post that started everything. John O'Nolan wrote it back in 2012, before Ghost even existed. It was called "Project Ghost" and it laid out his vision for what would become the platform. [Project Ghost“WordPress is so much more than just a blogging platform” I’ve been building blogs using WordPress almost since it first existed. I’ve designed & built blogs for a lot of different kinds of people over the years. Individuals, musicians, artists, hobbyists, small companies, large companies, even Fortune 500 companies. The![](https://gcasqueiro.com/content/images/icon/faviconV2)John O'NolanJohn O’Nolan![](https://gcasqueiro.com/content/images/thumbnail/twentytwelve.jpg)](https://ghost.onolan.org/?ref=gcasqueiro.com) The subtitle was simple: "***Introducing... Ghost. Just a blogging platform.***" He wasn't pitching some revolutionary new technology or trying to disrupt an entire industry. He was frustrated with WordPress becoming too much of everything - a full CMS, an e-commerce platform, a social network builder - and not enough of what he actually needed: a clean tool for publishing words. The post outlined a fictional concept, an idealistic idea for what a publishing platform could be if it stayed focused on one thing: Split-screen Markdown editor. No bloat, no unnecessary features, no corporate interests pulling it in different directions. At the end of the post, he was transparent: "*It doesn't exist. It's just a rough/unfinished idea at this point.*" That post now has an update at the bottom: "This idea was the beginning of [Ghost](https://ghost.org/?ref=gcasqueiro.com), and went on to raise $300,000 on [Kickstarter](https://www.kickstarter.com/projects/johnonolan/ghost-just-a-blogging-platform/?ref=gcasqueiro.com) " What stuck with me about that original post wasn't the features he described, it was the philosophy behind it. The idea that software could stay focused on doing one thing really well instead off trying to be everything to everyone. That a platform could be built for writers, not marketers; for publishing, not monetization metrics. And the line that apparently got him the most criticism at the time, was this one: "*Ghost would be free as in Mozilla, not as in Automattic... Every decision made would be about improving the software, not the bottom line.*" More than a decade later, that's still what Ghost is, and how it operates. ### The COVID Attempt Fast forward to COVID, the lockdowns, extra time, that weird energy everyone had for starting projects they'd been putting off for years. I decided to finally do it. Got an account with Gloat, a Ghost hosting service that no longer exists ([they got acquired by MagicPages](https://www.magicpages.co/magic-pages-acquired-gloat/?ref=gcasqueiro.com)). Then life got in the way again. A few months later I canceled the account. The blog idea went back to the shelf (again). Last year I tried again. Got a MagicPages account and started planning the launch and the content for the next couple months. This time I was more serious about it, drafting the content, thinking through the focus (still architecture and visualization at that point), actually putting in the work. And then I didn't launch it. 🤣 One more for "Project Graveyard." Looking back now, I'm grateful I didn't. Because everything I was planning to write about... I didn't care about anymore. The motivation and energy weren't there. [The career pivot changed everything](https://gcasqueiro.com/starting-fresh/). Now I'm building something that actually aligns with where my head and my energy are. And Ghost is still the platform I'm using. ### Why Ghost, Though? Here's the thing about Ghost that I think gets overlooked in all the "best blogging platforms" comparisons: It's not trying to be everything. Substack wants to be a publishing empire, a social network, a discovery engine, and algorithm feeding you content. They want you locked in their ecosystem, dependent on their reader network. Medium wants to be the place where "ideas find you." But in reality, they want you writing inside their walled garden, behind their paywall, optimized for their algorithm and their Partner Program metrics. Your content lives on *medium.com/yourusername*, not *yourname.com*. Unless you pay for a Medium Membership to be able to use a custom domain. But even then, you're still building on their platform. Beehiiv wants to be your growth engine, your analytics dashboard, your monetization platform. Everything optimized for metrics, conversions, and subscriber counts. WordPress wants to power the entire internet. Plugins for everything, themes for everyone. So much flexibility that you spend more time configuring and tweaking than writing. Ghost just wants to help you publish. That's it. That's the whole philosophy, to give writers the tools to write, publish, and distribute their work. No surveillance capitalism, no algorithmic manipulation, no platform lock-in. And crucially: It's open-source. ### The Platform Comparison Nobody Asked for (but I'm Putting Here Anyway) Let me break down what you're actually getting with each platform: ![Platform comparison table showing Ghost, Substack, Medium, Beehiiv, and WordPress features including ownership, pricing, and privacy options](https://gcasqueiro.com/content/images/2026/02/comparison-table.png) The real question: Do you want to own your platform or rent it? Substack, Medium, and Beehiiv are all renting. You're building on someone else's land. If they change the rules, you're stuck. If the platform dies or pivots, your audience is at risk. Ghost - especially self-hosted Ghost - is ownership. You control everything. That matters to me. [A lot, actually.](https://gcasqueiro.com/about) ### The Open-Source Part Matters This is where Ghost really separates itself from the pack. Substack, Medium, and Beehiiv are all proprietary. If they change their terms, if they decide to prioritize certain content over others (which they already do. Medium's algorithm heavily favors Partner Program content, Substack has its "recommended" writers), you're at their mercy. If they shut down or get acquired or pivot to something else entirely, your audience is gone. With Ghost, you can self-host it. [The entire codebase is on GitHub](https://github.com/TryGhost/Ghost?ref=gcasqueiro.com). You own your content, your subscribers list, your URLs. If MagicPages went under tomorrow (I know they won't), I could easily export everything and spin up my own Ghost instance or transfer it to other hosting. That's freedom. I'm not self-hosting right now, because frankly, I don't need that complexity yet. MagicPages works awesomely, it's less than 6€/month, and it's one less thing to manage while I'm focusing on learning to code, and still haven't figure out what this blog even is or will be. But I could self-host if I wanted to. That option exists, and that matters to me philosophically. ### What Ghost Gets Right Ghost has RSS built-in. Proper, full-content RSS feeds. Not summaries, not teasers designed to force people back to your site for ad impressions. Actual feeds that work the way feeds are supposed to work. It has ActivityPub integration (still WIP), and this one is actually impressive. Ghost 6.0 release made your publication a native participant in the social web. People can follow your site from Mastodon, Threads, Flipboard, or any other platform that speaks ActivityPub, using an address like *@you@yourdomain.com*. When you publish a post, it automatically distributes to your federated followers across the Fediverse. But it goes further than that. Ghost includes **Notes**, a short-form content type that lets you post quick updates directly to the Fediverse without publishing them on your main site. Think of it like tweeting, or posting on Mastodon, but from your own domain, to an open network instead of an algorithmic walled garden. There's also a built-in social web reader right in your dashboard. You can follow other publications, like their posts, reply to them, repost them. All the social interactions you'd expect, but happening in an open, decentralized network where no single company controls the algorithm or owns your audience. Needless to say, these "social" options are all optional. You need to activate it to use it. It isn't active by default. 💡 I know I said earlier the difference between Ghost and the other platforms is that it's built specifically for writing and publishing, while others try to be everything at once. This last part on federation may seem contradictory to that, but Ghost isn't trying to be a social network or anything like that. From my point of view, these are just tools to improve your publishing and interacting with your audience, without the need to rely on external platforms. Ghost's newsletter functionality is native and clean. No need for Mailchimp, Kit, Loops, or some third-party service mining subscriber data. But it still lacks some customization options. Ghost 6.0 also brought built-in analytics. Privacy-first, cookie-free analytics powered by Tinybird. Real-time traffic metrics, top posts, referral sources, newsletter performance, member growth, revenue tracking. All first-party data, served from your own domain, with no tracking cookies. No Google Analytics needed unless you specifically want it. The writing interface is genuinely good. Markdown support, distraction-free mode, clean formatting. It's designed for people who actually write, not people who assemble content from blocks and widgets. The platform is fast. Ghost is built on Node.js, not PHP. Modern architecture, not legacy bloat. Pages load quickly, and the admin interface doesn't feel like you're fighting the CMS. ### What Ghost Gets Wrong Let me be direct: Ghost isn't perfect. The theming system uses Handlebars, which is... fine, but not exactly modern. If you want to build a custom theme, you're learning a templating system that's not widely used outside of Ghost. The plugin ecosystem is basically nonexistent. WordPress has 60,000+ plugins, Ghost has... themes and integrations, mostly. If you want custom functionality, you're building it yourself or using external tools. But all this can also be viewed as a positive, since no one wants Ghost to be cluttered or dependent of plugins like WordPress. The hosted Ghost(Pro) pricing is expensive compared to competitors. $15/month (yearly) and $18/month (monthly) minimum, and it scales up quickly if you want more than basic features. That's why I'm on MagicPages instead. They provide all the features at a small fraction of Ghost(Pro)'s price. But in a way it's understandable. Being an open-source project, the only way they get money for development is with hosting. No judging here. But for someone, like me, who's just starting and doesn't know or doesn't want to self-host, it's kind of expensive. Overall, Ghost still feels a bit "developer-first" in some ways. It's gotten much better in recent years, but there's still this assumption that you're comfortable with code and configuration. Not everyone is. But here's the thing: those trade-offs are worth it to me. Because the philosophy is right. ### The Philosophy Part I keep coming back to this: Ghost aligns with how I think the web should work. Own your platform. Don't rent it from someone who might change the rules overnight. RSS over algorithms. Let people subscribe to you, not a feed curated by some engagement-maximizing machine learning model. Privacy by default. No tracking scripts, no surveillance, no selling user data to advertisers. Open-source over proprietary. Transparent development, community-driven, not locked behind corporate walls. John O'Nolan has been building Ghost this way since the beginning. The whole "building in public" philosophy that I'm trying to adopt here, he's been doing it for over a decade with Ghost. Clear development logs, open roadmaps, honest discussions about what's working and what isn't. That resonates with me. That's the kind of internet I want to be part of. ### So, Why Ghost? Because it's a tool that respects me as a user. Because it's built on principles I agree with. Because it gives me the freedom to write without worrying about whether I'm feeding an algorithm or optimizing a platform's engagement metrics. Because if I want to move to self-hosting someday, I can. If I want to export everything and switch to something else, I can. Nothing is locked down. Nothing is proprietary. And, well... because it's just really good at the one thing it's supposed to do: help me publish. I'm not saying Ghost is perfect for everyone. If you need a website builder with drag-and-drop everything and a load of plugins, WordPress might be the right choice for you. If you want the built-in audience discovery of Substack or Medium's network effect, those platforms serve that purpose. If you need advanced email marketing automation, then Beehiiv has those features. But for me - someone who values independence, ownership, and the open web - Ghost is the perfect choice. --- Yeah, maybe there's something poetic and fitting about using a platform called Ghost for a fresh start. Something that exists but doesn't get in the way. Or maybe I'm just attached to what it represents: independence, ownership, and a tool that respects both the writer and the reader. Probably both. May The Code Be With You! 🚀 ### Starting with a Clean Slate URL: https://gcasqueiro.com/starting-with-a-clean-slate/ Last updated: 2026-02-07T21:16:49.000Z When you're pivoting careers, or want to focus on something really important, you need to eliminate distractions. I realized pretty quickly that my old setup wasn't going to work anymore. For the last six years, I've been dual booting Windows 10/11 and Pop OS on my main desktop. Pop OS was perfect for what I needed then: Blender work, archviz renders, NVIDIA drivers that actually worked without breaking every other update. Pop OS is solid for creative work, but I wasn't going to do that anymore. And honestly, it started feeling wrong. The interface felt too "playful", too geared toward the creative workflow I was leaving behind. Every time I turned my desktop on, I was getting constant reminders or work I wasn't doing anymore. As for Windows 11, I kept it on a separate drive for the occasional client project that required specific software, like Affinity, and mostly for gaming. Yeah, I know now Linux is getting pretty good for gaming, but I didn't have the time to dive into that. As for the specific software, in this case it was the Affinity suite (Photo, Designer, Publisher). To be 100% honest here, all the Linux alternatives available aren't there yet. GIMP, Scribus, Inkscape, they're all good programs with a lot of potential, but for real professional work, they still lack some really important stuff. At least for me. I tried several times to use them, but it just didn't stick. The truth is, Windows 11 is a cluttered mess. All the copilot and recall stuff (I removed them, but it's still annoying and invasive), constant notifications, updates that restart your machine at the worst possible times and in the end changes things that shouldn't be changed. It drains resources and focus. I couldn't afford an OS that slowed me down or tempted me with distractions when I'm trying to learn. I needed something different. Something clean, something that would let me focus on learning to code without the need to "fight" the operating system. ### **The Search** I spent weeks researching, asked people, read comparisons, watched way too many YouTube videos about Linux distros. The goal was simple: find an OS optimized for development work, Arch-based for rolling releases and up-to-date packages, but stable enough that I wouldn't spend all my time troubleshooting instead of learning. It came down to two options: [Omarchy](https://omarchy.org/?ref=gcasqueiro.com) and [CachyOS](https://cachyos.org/?ref=gcasqueiro.com). Omarchy looked perfect on paper. Created by David Heinemeier Hansson (DHH), the Ruby on Rails guy, it's an opinionated Arch setup that comes preloaded with developer tools, modern editors, productivity apps, even some AI integrations. Everything tuned for a beautiful and efficient workflow right out of the box. Just install and start coding. But there were two problems. First, Omarchy uses Hyprland, a dynamic window tiling Wayland compositor. This means that everything is keyboard-driven. You arrange windows with key combinations instead of dragging them around with a mouse. It does support mouse and trackpad input, but the whole system leans hard into keyboard shortcuts and dynamic tiling. As the official manual states: "*Everything in Omarchy happens via the keyboard — EVERYTHING! When the system first starts, you literally can't do a thing with the mouse alone.*" It's incredibly efficient once you learn it, and I only heard good things about it, but there's a steep learning curve. I thought about it, and really considered it, but then I realized: I'm already learning JavaScript, Node.js, and React. I'm retraining my brain to think like a developer after 15 years of thinking like an architectural designer. Adding "learn an entirely new way to interact with your computer" on top of that, isn't something I'm ready for at the moment. I'd spend more time memorizing Hyprland shortcuts than actually writing code. Second, the preinstalled apps. Omarchy comes with things like Zoom, Spotify, Hey, Basecamp, Fizzy, ChatGPT, Google Maps, already set up. Some people might like that, for me it clashed with what I'm trying to build: a privacy-first minimal setup where I control what's installed. ### The Decision So I went with CachyOS instead. CachyOS is Arch-based, just like Omarchy, but it's focused on performance optimizations. Custom kernels, faster package management, a straightforward installer that doesn't assume you're a Linux expert (and truth be told, I am not). It lets you start minimal and build up, which fits my objectives: keep it open-source, lightweight, and under my control. It uses KDE Plasma as the desktop environment (among others, but that's the one I chose), which is familiar. Normal windows you can click and drag, a taskbar, a start menu, everything that makes the transition smoother. Everything works the way I expected it to work, just faster and cleaner. It's my first time using an Arch-based distro. I'd heard the horror stories about complicated installations, things breaking randomly, spending hours in the terminal fixing dependencies. I was preparing myself mentally for the pain. But honestly? The transition has been easier than I expected. CachyOS has a graphical installer, you just pick your options, it sets everything up, and it just works. KDE Plasma feels polished and responsive. The package manager uses `pacman` instead of `apt` (took a minute to adjust), but once you get used to the syntax, it makes sense. And everything I've installed so far has just worked. No weird dependency conflicts, no broken updates, no random crashes. Just a clean, fast system that gets out of the way and lets me work. That's the biggest difference from Pop OS. Don't get me wrong, Pop OS is great for what it's designed for. But I spent way too much time over the years dealing with broken packages after updates, PPAs that stopped working, apps that needed three different workarounds to install properly. With CachyOS, I install something, it works. That's it. At least that's my (short) experience so far. ### Why This Matters This isn't just about switching operating systems. It's about alignment. When you're making a big change, everything needs to support that change. My old setup was optimized for architectural design and visualization work. Starting fresh with CachyOS means starting with an environment built for what I'm actually doing now. Clean desktop, development tools, terminal right there when I need it. No leftover architecture projects staring at me from the file manager (it was all moved to an external backup drive). It's psychological as much as practical. When I turn on my desktop now, I'm in "learning to code" mode immediately. The environment reinforces the shift. The system is so fast and responsive I don't even think about it, which is exactly the point. ### What's Next I'm still setting things up, installing tools as I need them instead of front-loading everything. Right now I'm using VS Code because that's what Jonas recommends in the courses, and I want to follow along without the need to stop and search where something is. But once I finish the courses I'll switch to VSCodium or Zed. They align better with my open-source, privacy-first philosophy. VS Code works great, but I'd rather use something that doesn't have Microsoft telemetry baked in. Probably in the next post I'll go into the specific tools and configurations I'm running on CachyOS. What's installed, what I'm using daily, how it all fits together. For now, I'm just getting comfortable with the environment and focusing on the courses. Maybe I'll also add a sneak peak on the first project I'm trying to develop. May The Code Be With You! 🚀 ### Starting fresh URL: https://gcasqueiro.com/starting-fresh/ Last updated: 2026-08-10T01:30:26.000Z This is post number one. The blog is empty except for this, and that's intentional. I've been sitting on this domain for a while, planning to fill it with architecture and visualization content: Blender tutorials, architectural design workflows, and all the stuff I know how to do. But every time I'd open the Ghost editor, I'd stare at the blank page and feel... nothing. No energy, no excitement, and a complete lack of will to even start it. So I'm starting over, in a completely different direction. This time following what actually has energy and momentum. ### **Where the Energy Went** I've worked in architecture and visualization for 15 years. Designed spaces, created cool renders, and helped clients and friends to see projects before they existed. For most of that time, I loved it. But somewhere during 2025, that changed. It wasn't dramatic. I still had a lot of contacts from "potential clients," but most of them were just people wanting a dream mansion but only having the budget to build a small cabin. Weeks would pass without a real project inquiry. I'd open Blender and just... not care. The ideas for personal projects were flowing, even more than at other times, but suddenly the will and excitement were just gone. I was going through motions instead of following momentum. Meanwhile, I'd been doing web design work at my wife's digital marketing agency. She had a lot of requests for websites and needed someone who could build them. It started like that, but after a couple of months I was also writing newsletters, doing graphic design, and handling most of the tech maintenance and anything software-related. Not what I envisioned as a career, but it pays the bills. And in that work, something started stirring. Something I'd buried more than twenty years ago. ### **Going Back to Code** When I started university in 2004, I enrolled in computer engineering. I was really excited about it because since I was a kid, I've been completely obsessed with technology and computers. My dream was to build things with code, solve problems, and make tools that would help other people. But a few months in, I dropped out. That degree was totally obsolete, with a curriculum that looked like it was created in the early '90s. At that time it was impossible to switch to another course or university, so I just went home. The following year, after much consideration, I switched to architecture. I told myself I made the right choice. Architecture was creative, tangible, and made sense. And for a long time it did. But by the end of 2025, I kept thinking: what if I'd stuck with it? What if I'd learned to code back then? What would I be building now? So I decided to find out. I bought three online courses and committed to learning properly this time. ### **What I'm Learning** Right now I'm working through three courses by Jonas Schmedtmann. I researched a lot, and overall, his courses were highly recommended and were the ones with the best reviews. [**The Complete JavaScript Course 2025: From Zero to Expert!**](https://www.udemy.com/course/the-complete-javascript-course/?ref=gcasqueiro.com) \- JavaScript fundamentals, everything from basics to advanced concepts [**Node.js, Express, MongoDB & More: The Complete Bootcamp**](https://www.udemy.com/course/nodejs-express-mongodb-bootcamp/?ref=gcasqueiro.com) \- Backend development and server-side JavaScript [**The Ultimate React Course 2025: React, Next.js, Redux & More**](https://www.udemy.com/course/the-ultimate-react-course/?ref=gcasqueiro.com) \- Modern frontend development with React and its ecosystem I'm not rushing it. Taking time to actually understand instead of just copying the code. Building small and basic projects as I go. Making mistakes, a lot of them! The architecture background helps in some ways. Thinking in systems, managing constraints, and understanding how pieces fit together. All that resembles. However, the syntax, the logic, the debugging? That's all new muscle memory. ### **What Comes Next** Honestly? I'm figuring it out as I go. I'm interested in building small tools (at first). Free and open-source tools. The kind of tools that solve problems I actually have. Maybe something to help my wife at her agency. Or something to help architects to organize their work and be able to seamlessly share it with partners or clients. Honestly, I've been having some ideas, but that's not my main concern at the moment. Time will tell. The only thing I know is that everything will be open-source. That's something that really matters to me. I'm inspired by people like John O'Nolan (the founder of Ghost), which is currently building [Alcove](https://alcove.news/?ref=gcasqueiro.com). He's someone who builds in public, prioritizes RSS over algorithms, and makes things that respect users. That's the approach and philosophy I want to follow. Some of this will work. Most won't. I'll document both. ### **What This Blog Becomes** Not architecture tutorials. That version never launched, and I'm relieved. This is my public digital workshop now. My learning notebook, where I document: - Progress on courses and projects - Things I'm building (even small experiments) - Tools I'm discovering - Mistakes I'm making - The actual experience of pivoting careers at 42 years old. - Some personal reviews about tools and software. I'll probably also write about other stuff occasionally, like sci-fi, retro games, 3D printing, and updates on building my homelab. Whatever feels relevant. I want this to be an open space, a window to the world, not a closed place focused only on one subject. No fixed schedule. I'll write when there's something worth sharing. Could be weekly, twice a month, or even daily. Depends on the momentum. The most important thing now is to focus on learning how to code and not how to be a "pseudo-blogger." **Following the Energy** That's what this is about. Following the energy instead of obligation. Building things instead of waiting for clients. Learning in public instead of pretending I know more than I do. I don't have a twelve-month plan or a content strategy. Just curiosity and commitment to at least try to show up consistently. If you're interested in following along, learning to code, indie web tools, or building in public, subscribe. RSS or email, your choice. No spam, no tracking. Thanks for being here at the start. May The Code Be With You! 🚀 PS: I'm still figuring out the design of the website, so probably in the next couple weeks, there will be some visual changes (I'm also figuring that out as I go).