Sign in

Andrew Timberlake

@andrewtimberlake.com
131 followers 182 following 110 posts

🛠️ buildinpublic ☕️ coffee 👨‍💻 programmer 🎸music ✝Christ follower 💭 sharing his thoughts • Monitor your site ☁️ sitesure.net • 💌 mailcast.io #ElixirLang

PostsRepliesMedia
Andrew Timberlake @andrewtimberlake.com · 22/09/2025
The last jump was from 3m to 1y. Showing up every day for a year is a huge commitment. This app did almost nothing to help me celebrate the success and then I immediately felt like the next 365d were going to be a slog. I’ve stopped. Not because of the app, but it didn’t help.
010
Andrew Timberlake @andrewtimberlake.com · 18/09/2025
Vibe coding cleanup 💻🧹
000
Andrew Timberlake @andrewtimberlake.com · 17/09/2025
Reddit is not a terrible place to do business. Good marketing is offering a solution to a problem people have when they need it. When you do that, you can see good results anywhere.
000
Andrew Timberlake @andrewtimberlake.com · 08/09/2025
The difference between girls and boys Mom to the girls, “help yourself to vegetables”. The boys get theirs dished.
000
Andrew Timberlake @andrewtimberlake.com · 03/09/2025
Been digging through logs and picking up interesting bugs. Watching customers work with your software is a great source of learning. Error logs is another one.
000
Andrew Timberlake @andrewtimberlake.com · 01/09/2025
So true “It’s tempting to fear AI slop, because it’s here and it’s going to get worse. But there’s human slop all over the internet, and it’s getting worse as well.” seths.blog/2025/09/wal...
seths.blog
Walk away or dance
AI and LLMs pose a particularly visceral threat to the typing class. Writers, editors, poets, freelancers, marketing copywriters and others are voicing reasonable (and unreasonable) objections to t…
010
Andrew Timberlake @andrewtimberlake.com · 01/09/2025
If you want to bleed money, leave a few snapshots on AWS EC2 that you don’t need
000
Andrew Timberlake @andrewtimberlake.com · 28/08/2025
There’s nothing quite as frustrating as a test that fails when running the whole suite but passes on its own.
020
Andrew Timberlake @andrewtimberlake.com · 27/08/2025
Added configurable spam blocking to Mailcast.io You can now set the score at which to block spam. And you can see what’s being blocked in the logs so you always know what’s happening with every email.
000
Andrew Timberlake @andrewtimberlake.com · 27/08/2025
I hate it when I know I’ve definitely solved this problem before, but cannot remember in which project 🤦‍♂️
010
Andrew Timberlake @andrewtimberlake.com · 27/08/2025
Sometimes you only want validation to be applied if some condition is met. In one of my projects the first workflow step always runs immediately (0 days) and the rest have to be at least 1 day apart (>= 1 day), so I only wanted validation from the second step. #MyElixirStatus
050
Andrew Timberlake @andrewtimberlake.com · 26/08/2025
My favourite email reply. Personal reply always. No AI automation
000
Andrew Timberlake @andrewtimberlake.com · 25/08/2025
I had an hour and a half video chat with a customer who only bought a $2/m plan on Mailcast, but it was worth it. I watched them struggle. I identified where I had to point out things that I thought were obvious. Today I’m changing a bunch of UI based on that learning.
010
Andrew Timberlake @andrewtimberlake.com · 22/08/2025
Confirmable button in #Phoenix #LiveView #ElixirLang Also my first colocated hook which makes sharing something like this super easy.
3241
Andrew Timberlake @andrewtimberlake.com · 08/08/2025
Just overhauled Mailcast’s test suite. Lot’s of global state in GenServers. Every test is now async: true and it’s ended up more reliable and twice as fast #MyElixirStatus #ElixirLang
030
Andrew Timberlake @andrewtimberlake.com · 04/08/2025
You know you’re in “the zone” when you take a sip of cold coffee
010
Andrew Timberlake @andrewtimberlake.com · 24/06/2025
TIL #ElixirLang #MyElixirStatus from: burakaymakci.com/why-did-the...
010
Andrew Timberlake @andrewtimberlake.com · 05/06/2025
Cooking 👩‍🍳
000
Andrew Timberlake @andrewtimberlake.com · 23/05/2025
Abusing LiveView to have events that update data but don’t re-render and abusing LiveComponents to get change tracking on comprehensions #MyElixirStatus #ElixirLang
120
Andrew Timberlake @andrewtimberlake.com · 23/04/2025
My very almost six year old to me this morning, “Dad, have you already bought my presents, or do you need to go shopping today?”
010
Andrew Timberlake @andrewtimberlake.com · 17/04/2025
Scopes in Phoenix make it much easier to add user specific, global UI elements (like an unread count) #ElixirLang #phoenix
040
Andrew Timberlake @andrewtimberlake.com · 17/04/2025
Ah, that one commit that calms everything down 🍬
030
Andrew Timberlake @andrewtimberlake.com · 10/04/2025
When you ask for a change to a form and you get an entirely new form layout #VibeCoding
010
Andrew Timberlake @andrewtimberlake.com · 10/04/2025
It’s always the assumptions that get you. Don’t assume. Test
010
Reposted by Andrew Timberlake
Elixir Radar @elixir-radar.com · 09/04/2025
Elixir Radar issue 466 is out! 📣 You can read it here: buff.ly/VkZOk5G This issue comes with content from @gperales.bsky.social @andrewtimberlake.com @lawik.bsky.social @mitchellhanberg.com , Mike Hostetler and Chris McCord. Thank you! #ElixirLang #MyElixirStatus
buff.ly
Elixir Radar 466
064
Andrew Timberlake @andrewtimberlake.com · 09/04/2025
I published an updated blog post on how to use Font Awesome (or any other SVG based icon library) with Phoenix and Tailwind 4 #ElixirLang #Phoenix andrewtimberlake.com/blog/2025/0...
andrewtimberlake.com
Use Font Awesome icons in Phoenix with Tailwind 4
With a few small changes, you can change Phoenix to use Font Awesome or any similar icon library.
1133
Andrew Timberlake @andrewtimberlake.com · 08/04/2025
Upward doing live upgrades in action Give it a try at upward.andrewtimberlake.com #ElixirLang #Phoenix #LiveView
1173
Andrew Timberlake @andrewtimberlake.com · 08/04/2025
I love how José manages Elixir. He makes you feel great when you contribute, even for small, seemingly insignificant updates.
1334
Andrew Timberlake @andrewtimberlake.com · 07/04/2025
Runtime config doesn’t play nice with hot code upgrades. But, I think I have a solution in upward. #ElixirLang
030
Andrew Timberlake @andrewtimberlake.com · 27/03/2025
The problem with treating AI like a junior programer is that it’s not going to remember what I “taught” it tomorrow 🤦‍♂️
010
Andrew Timberlake @andrewtimberlake.com · 27/03/2025
New greenfield project. Don’t even know what to name it yet. Working with Phoenix 1.8.0-dev, Tailwindcss 4, and gonna give DaisyUI a try at least for the initial prototype #ElixirLang
040
Andrew Timberlake @andrewtimberlake.com · 27/03/2025
There is often a very simple solution. Sometimes it just takes time for it to surface
000
Andrew Timberlake @andrewtimberlake.com · 27/03/2025
Add multiple hooks to an element with Phoenix LiveView I needed to add functionality to an element with an existing hook. I could add concerns to that hook or add a new hook (not possible). Now I have a single hook that delegates to two. #elixirlang andrewtimberlake.com/blog/2025/03...
andrewtimberlake.com
Multiple hooks per element in Phoenix LiveView
Phoenix LiveView only supports one hook per element. This article shows how to delegate out to other hooks.
092
Andrew Timberlake @andrewtimberlake.com · 26/03/2025
I don’t think Bluesky can figure out what “this” is. I keep asking it to “show less like this” but my feed is still full of American politics
000
Andrew Timberlake @andrewtimberlake.com · 25/03/2025
Hot code upgrades working for Phoenix LiveView app Quick updates without WebSocket reconnect #ElixirLang #Phoenix #LiveView
6333
Reposted by Andrew Timberlake
Elixir Radar @elixir-radar.com · 19/03/2025
Elixir Radar issue 464 is out! 📣 You can read it here: buff.ly/5V3Nyyy This issue comes with content from @andrewtimberlake.com @polvalente.social @kevinbarrett.org , Daniel Bergholz, Vsevolog Grigoriev and Anton Frolov. Thank you! #ElixirLang
023
Reposted by Andrew Timberlake
Parker Ortolani @parkerortolani.com · 13/03/2025
Absolutely essential reading on the Apple Intelligence situation from @gruber.foo daringfireball.net/2025/03/some...
daringfireball.net
Something Is Rotten in the State of Cupertino
Who decided these personalized Siri features should go in the WWDC keynote, with a promise they’d arrive in the coming year, when, at the time, they were in such an unfinished state they could not be ...
1245
Andrew Timberlake @andrewtimberlake.com · 13/03/2025
My mind is spinning as I’m trying to create a wrappable component in Phoenix LiveView I think I’ve got it though 🤯 #ElixirLang
011
Reposted by Andrew Timberlake
Hugo Hamel @hugohamel.com · 13/03/2025
🚨 Nomination Alert: Welcome aboard @andrewtimberlake.com 🎉 You can nominate someone too 👇 vanilladevs.com
011
Reposted by Andrew Timberlake
razorgirl @razorgirl.diy · 12/03/2025
I bet this feels so good for the tape (with @gender.computer)
2273
Andrew Timberlake @andrewtimberlake.com · 12/03/2025
Using Mailcast rewriting, I now have convenience aliases that forward emails to Evernote with appropriate notebooks appended to the email subject.
000
Andrew Timberlake @andrewtimberlake.com · 11/03/2025
Playing with hot-code upgrades on a Phoenix LiveView app #ElixirLang
070
Andrew Timberlake @andrewtimberlake.com · 10/03/2025
When I have to access a package via GitHub in order to use a fix before the next release, I always use a fork for a greater sense of security that things won’t change.
010
Andrew Timberlake @andrewtimberlake.com · 10/03/2025
The problem with not doing Xcode or Android development very often is the long wait time while all the tools update before I can start coding again. ⏳
010
Andrew Timberlake @andrewtimberlake.com · 10/03/2025
I need an in browser AI agent that will fill in a form with made up information based on form context for quick testing. Anything like this exist?
020
Andrew Timberlake @andrewtimberlake.com · 10/03/2025
I was just about to reply to a customer email about how their request wouldn’t work, but, off course almost anything is possible. Google plus class="user-invalid:border-rose-400" and we’re there 🎉 🗑️📧
000
Reposted by Andrew Timberlake
Andrew Timberlake @andrewtimberlake.com · 07/03/2025
Add environment config to your Phoenix Javascript. Make sure latency simulation never makes it to production. #ElixirLang Blog post: andrewtimberlake.com/blog/2025/03...
071
Andrew Timberlake @andrewtimberlake.com · 09/03/2025
Gotta love that moment when you Google a problem and find your own blog post explaining the solution 🤦‍♂️
010
Andrew Timberlake @andrewtimberlake.com · 07/03/2025
Add environment config to your Phoenix Javascript. Make sure latency simulation never makes it to production. #ElixirLang Blog post: andrewtimberlake.com/blog/2025/03...
071
Andrew Timberlake @andrewtimberlake.com · 06/03/2025
This snippet in your app.js file will highlight areas that change on the screen which can be useful for debugging Phoenix LiveView changes. Sometimes more is changing than you expect. #ElixirLang
3416