RSSAmplifier

Blog

Matt Nunogawa / Dev, Entrepreneur, Writer

amattn.comRSS feed ↗25 posts

Latest posts

Using AGENTS.md or CLAUDE.md to Counteract Agent Drift

I’ve been using Claude Code as my primary coding partner for months now. It’s ridiculously good. The November 2025 step function is real. Working with LLMs, you have to make peace with non-determinism. 

 But you don’t have to put up with agents acting increasingly inconsistently. 

 Same task, same repo, same everything—and Claude still finds a way to format it…

Two Types of Weaknesses

Always double down on your strengths. That’s your superpower. This is old, wrinkled person in a toga under a tree at the top of a mountain advice and it’s correct. 

 But what about your weaknesses? 

 There are two types: 

 Weaknesses you tolerate. You accept them, work around them, delegate them, or throw money at them. You don’t spend energy trying to…

Stock Option Early Exercise And 83(b) Elections

I’ve had a lot of questions about early exercise as a manager and a leader. I personally think they are an important part of early stage startups option plans. Stock options are messy and Early Exercise is kind of a hack to work around some issues, but it’s one of the important band-aids in our comp toolbox. 

 Disclaimers 

 I am not a tax lawyer, a CPA, or a financial…

Just Use Postgres

One of the more brain-bending articles I’ve read in the past couple years was Stephan Schmidt’s Just Use Postgres for Everything . 

 Earlier this year, I spun up a greenfield tech project and realized that as a solo developer / tech co-founder, my limitations were mostly around operational overhead and not code and features. Just Use Postgres let me simplify the Infra and…

Postgres Text Search 101

Simple primer on the topic of Postgres text search. No code examples, it’s intended to be conceptual. 

 Simple, Perfect Equality Checks 

 If you just want to match exactly the contents of a TEXT or VARCHAR field, just use a normal Postgres index on that column. 

 However most text search tends to be keyword-based partial or fuzzy. 

 Full-Text Search and Trigram…

2022 Year in Review

This is a set of bullet point lists about variously things I’ve done, experienced or come across in 2022. Items listed in no particular order. 

 Inspired by Fogus and S. Bloom . 

 Past editions: 

 
 2019 Year in Review 
 2020 Year in Review 
 2021 Year in Review 
 

 Thoughts and Learnings 

 What did I change my mind on this year?…

Mastodon Thoughts and Helpful Resources For New Users

I’m on Mastadon now: 

 https://bbiz.io/@amattn 

 I have some thoughts. It’s harder to use. The federation concept is nice from a developer perspective. Conceptually, it’s like each Mastodon instance is usually a mini-community. In twitter these were modeled as lists, hashtag searches and later, communities (the subreddit-like feature). From a security and safety…

Teaching Children Financial Literacy or Why Would You Pay 1% Weekly Interest?

Growing up, the core financial values instilled into me were Save, Gambling is Addictive, Buy a house, and Be Conservative. This was fairly normal in the 80s, a solid start, and I am grateful for what my parents did. But it did leave me with various issues I had to navigate as an adult. The stock market felt like gambling, I had no concepts of good debt. Credit cards were especially easy to abuse…

Interview with a SaaS Marketer, Corey Haines

I had the privilege of having a short chat with Corey Haines , a highly accomplished SaaS (Software as a Service) marketer currently working on Swipe Files . These are the salient and key points of our discussion. 

 There are no direct quotes here, all errors or ambiguities are mine alone. 

 What’s so special about SaaS people? 

 SaaS essentially comes down to two…

How to hire your first employees in a startup

Say it’s you and your co-founders (or maybe just you). How do you go about hiring your first employees? 

 It’s a ton of work. At least one co-founder should be spending 50% or more of their time on this. If that co-founder is you or will be you, read on. I’ve got about 2000 words that will help you. 

 Tools 

 You need an Applicant Tracking System.…

2021 Year in Review

This is a set of bullet point lists about variously things I’ve done, experienced or come across in 2021. Items listed in no particular order. 

 Inspired by Fogus . 

 Past editions: 

 
 2019 Year in Review 
 2020 Year in Review 
 

 Jobs: 

 No paid work for me in 2021. I spent the bulk of it working on KB Clip 

 Advisory:…

The big guide to One on Ones (1:1s) for Managers

This post is about One on Ones (1:1s). Specifically, we are talking about a weekly or biweekly scheduled meeting between a manager and a direct report. 

 Andy Grove, former CEO of Intel and author of the seminal High Output Management consider them some of the most valuable time you could spend as a manager: 

 
 Ninety minutes of your time can enhance the quality of your…

Reasonable Tech Stacks for Early Stage Startups in 2021

If I don’t mention your favorite tech stack, please let me know via twitter. I know about a lot of them, but I don’t know every single one. 

 As for defining early stage startup, I’m talking about very early stage. As in the just one or two technical co-founders or single digit number of engineers. All the tech stacks mentioned in this post will scale from early stage up…

Learning Elixir, Phoenix and LiveView: A Primer for Experienced Programmers

In order to make web apps with Elixir, here’s a short primer on learning the language and major frameworks: 

 First, don’t just learn Elixir. You can and should learn Elixir and Phoenix at the same time. After getting a hang of Phoenix, jump into LiveView. 

 There is a learning curve to the ecosytem. It’s not particularly steep, but it is longer than a language…

Some Magic Numbers

I call them magic numbers, but they are really rough thresholds where you judge viability or success. Having these thresholds in mind can often clarify surrounding strategy or tactics. In many cases, they can act as a simple filter: Will my efforts get me closer to or over this magic threshold? 

 5.9% monthly growth 

 https://twitter.com/nathanbarry/status/1187132191207149570…

Formatting Embedded Elixir (.leex and .eex) Files in Visual Studio Code with Prettier

Update 2024: You shouldn’t need these workarounds any more. The ElixirLS plugin should do this nicely without any special config. 

 

 Formatting .ex and .exs files in VS Code is fairly straight forward with the ElixirLS plugin. 

 However that currently doesn’t deal with embedded elixir files ( .eex and .leex ) 

 There are a couple ways to do this.…

Making a Slack App/Interaction/Bot in 2021

Building a modern slack bot requires a bit of learning. There’s a lot to unpack and many different ways for a third-party app to interact with the Slack platform. 

 Types of Slack bots/APIs/interactions 

 
 Classic bot: (aka RTM, real time messaging bot): web socket based, legacy 
 Events API bot: webhook or websocket based. 
 Web API: a large REST API to get at the…

A Brief History Of and Advanced Tricks With Tailwind CSS

TOC 

 
 A Brief History 
 What Makes It Amazing 
 Trick 1: Fancy Block Quotes 
 Trick 2: Styling the scrollbar 
 Trick 3: Superscript, Subscript 
 Trick 4: Quiet Links 
 Trick 5: Footnotes 

 

 

 I don’t spend a lot of time blogging or thinking about CSS much. For many years, there wasn’t that much interesting happening in…

Salary Compression

Salary compression occurs when a new hire is given higher base pay than existing peers of the same level. 

 Imagine you have three engineers making around 150k. A fourth engineer is about to be hired, but wants 175. This fourth engineer may be a savvy negotiator. They may have an offer from a much larger company worth 190k. The reason is actually irrelevant. Salary compression happens if…

Static Site Generator using Elixir and Phoenix

Phoenix is a great web framework. It can do more traditional MVC server-side web app work or get fancy with ultra-responsive web apps via sockets and LiveView. 

 One thing that Phoenix normally doesn’t do is static site generation. 

 I say normally because I love static site generation for things like marketing websites or launch pages or blogs. With blogs in particular,…

The Business Case For LiveView Is Strong Enough To Change How You Staff Your Dev Team

This is part two of a short series titled “The Sublime Developer Efficiency of Elixir, Phoenix and LiveView”. You can find part one here . 

 To recap the initial thoughts on Elixir: 

 
 It’s quirky 
 There’s a learning curve 
 Taking the time to climb that curve can result in elegant solutions 
 The endgame is high developer efficiency…

The Sublime Developer Efficiency of Elixir, Phoenix and LiveView, Part 1

Editor’s note: This is part one of a short series. You can find part two here. 

 I’ve spent the last month and change working on a little side project . 

 The interesting thing about this one is that it’s written completely in Elixir . This is a post about my experience doing so. 

 Elixir is a language that came out of the heyday of Ruby on Rails about a decade…

Deploying Elixir Phoenix webapps to the cloud with releases

I love many things about go. One of my favorite things is that cross-compilation is an absolute breeze. It takes just seconds and it’s especially easy with a tool like gox . After that, deployment is even easier. Just rsync or scp your executable binary and maybe a secret file or two. Boom💥 done. It’s essentially the easiest possible deployment story of any langauge or framework I…

2020 Year in Review

This is a set of bullet point lists about variously things I’ve done, experienced or come across in 2020. Items listed in no particular order. 

 Inspired by Fogus . 

 Past editions: 2019 Year in Review 

 Jobs: 

 
 2 months consulting full time 
 Approximately 8 months working on https://dashboardtv.com 
 Approximately 1 month working on…

What Data Structures Should You Know as a Developer or Software Engineer?

There are many data structure across the whole of computer science. As a developer, you only use a small handful for the majority of your work. A large handful are important enough to know about off the top of your head. The majority can be considered exotic and can be looked up when you need to. 

 This is a list trying to answer the question “What Data Structures Should You…