Indie iOS/macOS dev. Sharing Swift lessons, #buildinpublic wins & fails. Old dog, new tricks. Avid reader, hockey fanatic & follower of Jesus.

Temple, Texas
Joined August 2024
LampLit now speaks nine languages — English, Spanish, German, French, Korean, Portuguese, Simplified Chinese, Swahili, and Filipino. Scripture, in the language that feels like home. Update now on the App Store.
1
70
Best looking opening drive of the year.
1
5
Texting me to vote for you while I’m at church is not a good look.
1
11
Good Sunday morning.
1
20
Which habit in your morning routine gets skipped the most? Routinely's Insights shows you, with completion rates, streaks, and a heatmap. And you can check habits off from your Apple Watch without reaching for your phone. routinelyapp.com/
1
7
Psssst… the #Lions are beating the #Packers tomorrow, pass it on 🗣️
28
60
5
519
8,947
Decided it is time to tell my @bot to start backing itself up. A few minutes later, I have a repository in GitHub with my custom skills, scripts and routines.
5
I kept a prayer list I never actually used. PrayerCards splits it by weekday, so Monday can be family and Tuesday your church, then walks you through each one as a card with a timer. Everything stays on your phone. apps.apple.com/us/app/prayer…
It's been a week since I opened a ticket with @XMoney asking about why my APR isn't 6% as they advertise. Crickets. How can I have trust in the product if they don't respond?
4
Interesting. In X Chat I can see my @bots and can filter by unread. I wish I had that feature in the app. Let me have all my bots in their (collapsed) folders but moved unread to an area right under the pins.
5
Note to self: With agents, it's especially tempting to work all the time. Don't. Touch grass. Spend time with family. When you are on your deathbed you are not going to wish you had used more of your tokens.
5
Paying for a podcast app just to listen to your own files feels wrong. Sidecaster turns audio and video on your Mac into a private feed for Apple Podcasts, so you get speed controls and resume where you left off. It's free to try for 7 days, then a one-time $9.99. sidecasterapp.com/
1
2
Security called me at 6:12 AM today. "Patch every PHP server immediately." I asked what happened. "Two critical vulnerabilities. Remote code execution. No authentication required." Cool. How many PHP servers do we have? According to inventory: 12 According to reality: Nobody knows. We found one running WordPress. Three running old internal tools. One under someone's desk. Two inside vendor appliances. A forgotten employee directory from 2016. And a server named: PHP-OLD-DO-NOT-TOUCH Naturally, that one runs payroll exports. Then we found a PHP 5.6 box. I asked who owned it. The documentation said: BRIAN. Brian left in 2019. We called Brian. He said: "Oh wow, that's still running?" Excellent. By 8 AM, leadership joined the incident call. CEO: "Can hackers actually get in?" Security: "Potentially yes." CEO: "Without a password?" Security: "Yes." CEO: "Then why do WE need passwords?" Not the lesson. Finance asked if we could wait until the weekend to patch because downtime affects revenue. Security explained that the alternative was letting strangers execute code on our servers. Finance asked for a cost comparison. At 9:17, someone suggested temporarily taking the vulnerable websites offline. Marketing refused. "Our campaign is live." So for the next hour, the company officially decided maintaining a landing page for 20% off webinar registration was more important than preventing remote server takeover. We finally patched everything we could find. Then our scanner discovered another PHP server. Hostname: TEMP-PHP-2014 Uptime: 4,512 days. Nobody knows what it does. Nobody owns it. Nobody can shut it down. But every time we block network access, the warehouse stops printing shipping labels. Security has classified it as critical infrastructure. It is running PHP 5.4. The vulnerability has existed longer than half our employees. The emergency patch took four hours. Finding out what PHP actually runs took eleven. The internet isn't held together with code. It's held together with servers everyone is afraid to turn off.
921
7,075
1,158
58,011
3,828,266
Is it really worth it to allow sign-ins from Apple or Google?
10
Feeling for all the people I know that work on PHP sites today. Good luck my friends!
1
117
P.S. I don't miss it one bit.
2
NewSwiftDev retweeted
PHP changes are live. Start patching. php.net/archive/2026.php#202… Huge thanks to coordinated work by @ThePHPF!
PHP sites behind Cloudflare already have an initial set of WAF rules deployed for the known exploit vectors in these vulnerabilities. The rules are available to all customers, including free. We are seeing early attacks emerging and are updating mitigations as new vectors show up. This is a STOPGAP only. Patch as soon as @ThePHPF releases the update at 14:00 UTC today.
33
247
26
1,234
120,151
Habits stick better in a fixed order. Routinely lets you stack them into a routine for a set day and time, then work through it step by step: complete, skip, or undo a mis-tap. Free covers 2 routines with 5 habits each. routinelyapp.com/
1
1
Serious question for my Christian friends. Would you consider leaving a church that doesn’t seem to prioritize communion?
9