Every guide to atomic notes eventually meets the same objection: most of what I write cannot be atomic. A meeting note is a list of actions and a transcript of a specific day. It's an event. A project plan is a spec file that contains decisions and at times, serialized tasks, glued together. I do...
Obsidian's file explorer sorts folders alphabetically. The sort menu offers file name, modified time, and created time, and nothing else. There is no built-in way to arrange folders by hand. For my Obsidian vault, I like to see the organization in a specific way. For example, I like to keep the...
My Obsidian vault has 291 notes captured over the last three years. Some are long-form notes, prompts for tools like Claude Code, or quick captures from reading on the internet. When I created this vault, I started with 8 folders, but over time the number has grown to 16. I like to keep this vault...
Over the last two months, I've been building my own experimental agent SDK. To get immediate feedback on how the agents were behaving, I built a set of React UI components in Electron and embedded them in a dedicated chat app. But I wasn't trying to build another chat app though; I was trying to...
The bug fix took an afternoon. The follow-up question took a week. I was deep in Gemini Scribe, my Obsidian plugin that drops a Gemini-powered agent into your vault, and I had just shipped a change to the way the agent picked its tools. It felt better. The few sessions I ran by hand showed...
I recently wrapped up the development cycle for Gemini Scribe 4.8.0. Looking back at the ~99 pull requests merged over the last month, the sheer volume of changes is significant. Not only are we shipping major features, but I’m also seeing a steady uptick in contributions from collaborators, an...
As an older senior software engineer I picked up JavaScript gradually by using it -- looking up what I needed when I needed it. That works and as long as you get things done it’s usually good enough. Learning by doing is often recommended because it tends to make things stick. The downside is that...
I’ve been using Claude Code as my primary coding assistant for a while now. More recently, I managed to start a flywheel effect and have the AI code full solutions with as little interventions as possible by leveraging subagents and skills to prevent context rot and keep agents under strict...
It’s 9:00 am, September 29, Takijiri-oji (滝尻王子). The river runs shy between the rocks and mirrors the forest, with mountains rising behind it. I hear a faint bell ringing somewhere up the slope while two hikers pass and disappear into the cedar shade. I set a boot on a stone step braided with...
This universal prompt for Claude Code and others has greatly improved my AI usage for coding tasks. Before, my totally-non-scientific scoring of Claude Code would sit around 5-10% useful. Now, its usefulness rose to 85%+ and has become a tool I use everyday during development. If you’re in a...
TLDR I built a remark plugin that transforms [[slug]] syntax into internal links with hover preview cards. It supports multiple content collections, custom display text, and shows broken link warnings at build time. Live Examples Hover over these links to see the preview cards in action: Blog...
I have been using Obsidian for more than a year to take notes of all sorts (meetings, work, personal, long-form writing, blog drafts, and so on). It provides a distraction-free environment to write drafts and do long-form writing, but I couldn't get the hang of it as my daily task manager. I used...
My daily note is the starting point for capturing workday information. To record this information, I either create a fleeting note or add it to my daily note. Creating too many new notes can be cumbersome and overwhelming at the end of a week when I'm going through them for my weekly review...
I've been using Obsidian for more than a year, and it has become more than a commonplace note-taking app. I use one vault to store all of my notes. They are related to work, projects, bookmarks, and sometimes my journal. Graph view: a useful tool
We humans tend to perceive the world as a series of yes/no answers. Limited questions nurture limiting beliefs. Our questions yield black and white answers. It used to be ok to think in simple terms. If you were alone in the forest 12,000 years ago and heard a cracking sound of wood breaking, you...
Reality is reduced into mental models Reality is truth. A mental model is our internal conceptualization of reality. Our brains are little scientists - they develop theories of how the world works, test them, improve on them, and use them to make decisions in life. We have mental models for...
I've used Obsidian as my primary note-taking app for over six months. One thing I've found myself often doing (either work or personal) is using screenshots as images in my notes. Now, if you have used Obsidian or started using it, all images or attachments are stored in the root vault folder. If...
The Ruby convention for using bangs (!) is, mostly, “when there are two versions of the same method, and one of them is more dangerous than the other, use the bang”. Citation is none others than Eric Hodel and David Black. For example, in Rails there are update and update!, create and create! and...
Some friends use Instagram as primary chat app. Whenever I open it, I’m sucked into a swirl of content. Some times it pulls me for several, several minutes until my mind steps back and realizes what’s going on. The solution I found was using Instagram on my Mac and inserting arbitrary CSS into...
Não sei se é só comigo, mas a experiência de tirar o visto japonês é aterrorizante. Já voei mais de 400.000km, não-sei-quantos-países, mas esse visto me tira o sono. O fato de você precisar comprar uma passagem aérea não-muito-barata antes de pedir o visto é brutal. Imagina você comprar uma...
When I meditate, my mind calms down. I start in the midst of chaos, but I finish in total control, ready to conquer. As I close my eyes and start the session, my brain continues its automatic course, pulling new ideas and threads, ignoring my intention. It brings me memories from work, new...
Config the following file and save it with some name file.rb: report = CSV.generate do |csv| csv << ["name", "email"] users = User.where( :created_at => Date.parse("01-11-2020")..Date.parse("30-11-2020") ) users.each do |user| csv << [user.name, user.email] end...
These are foundational topics for one-on-one’s. They are the first ones I bring for discussion every week to set out the background for the relationship that will follow. They are not the definitive list of topics for one-on-one’s, but the most important ones for starting out. Some subjects are...
I’ve always been dissatisfied with blogging. The technologies bother the engineer-slash-idealist in me. I attribute the tedious publishing process as reason for not posting more often - although laziness is not out of question. In 2021, however, Obsidian.md came into my life and changed my...
Nonfiction books can change your life for the better. My life took a different path after I read Getting Things Done by David Allen. Since then, I started reading more and more nonfiction books - I try to do one fiction, one nonfiction book (though I admit I read the entire Cosmere universe books...
Obsidian has a cool API where you can construct Obsidian URIs to issue various commands. The way it works is that you have a URI like this: obsidian://open?vault=my%20vault&file=my%20note When opened with Obsidian, this opens a note called “my note” in a vault called “my vault” (if it...
If I had to point out one skill that differentiates great makers I worked with, it would be deliberate derisking. Everybody does it to some extent, but rarely as a constant discipline. It drives success and, once in motion, molds thinking and triggers valuable practices in all areas of life. In...
There are only two hard things in Computer Science: cache invalidation and naming things. Phil Karlton We all want to read and understand software. We want code to make sense, to speak the language of the business model, to convey meaning and relationships with clarity. Although code is...
Update (2015): A year after publishing this article, Adrian Bejan, who discovered the Constructal Law, invited me to speak at the Constructal Law & Second Law Conference at the University of Parma, Italy. No one had connected it with software yet. Presenting was... interesting. Presentations...