HNHacker News
TopNewBestAskShowJobs

clintonb

1,535 karma · joined August 6, 2011

Engineer at Vori, formerly at Stripe

https://getfriendlyreminder.com https://clintonblackburn.com https://dev.clintonblackburn.com

submissionscomments
clintonb··on Show HN: We built a way for web apps to message users' phones without SMS
> The idea is to give user's control of the messaging and marketers better options. SMS is good for individualized messages like you would get from loyalty programs. Our focus is on broadcasting messages to a group - we don't target an individual user by design.

Who is your ideal customer? This seems worse for marketers because it's yet another channel to integrate, and the messaging cannot be personalized. The market moved toward personalized marketing years ago, so a channel that lacks personalization seems destined to underperform.

Asking my shoppers/users to download someone else's app seems like a non-starter.

This all seems great for end-users, but terrible for the marketers/organizations that would actually be paying you.

I can see this working for conferences, but most of those have their own apps.

clintonb··on Show HN: We built a way for web apps to message users' phones without SMS
Neat idea, but all it does is give you control over messaging my users instead of me. They need to use your app maintained by you. That’s a huge risk when SMS “just works”.

The messages are also limited to text and links, so no MMS.

Customers stopped trusting email because it became overloaded with spam. The incentive from loyalty programs (which is my primary use case) keeps trust high for SMS.

clintonb··on Shopify adds WebMCP checkout for browser-based AI agents
I was briefly confused wondering what there is to buy on Spotify if one already has a subscription.
clintonb··on Forget About Your IPO, Schedule Your IOP
The article could be a little clearer that the treatment is for mental health. I’m still not sure what the treated conditions are. Is this for burnout, depression, or something else?
clintonb··on There is more to code review than (automatable) detection
I am contemplating code review within my own organization, and the question I return to is:

> Does this organization prioritize human learning?

That has been my primary motivator for code reviews. I want to teach and learn from others, especially given the decreasing levels of collaboration due to increased AI usage.

The sad truth is that all of my feedback just goes straight to agents. Maybe 10% is reacted to by a human, so I’m left wondering if there’s any value to a real review aside from poorly training robots to do my job, and further atrophying the abilities of my team members.

clintonb··on There is more to code review than (automatable) detection
I disagree. Most of my prompts are “implement <issue-id>”. The issue has a user story and acceptance criteria that the LLM uses to write a plan and ultimately produce code. None of that matters since the code artifact is what actually gets pushed in the repo, thus the code is what should be reviewed.
clintonb··on Trying the software factory pattern
There was/is a believe that more folks can unblock themselves with access to AI. There is some truth to this. Our product managers and sales folks are achieving more with Claude and MCPs pointed at tools they use.

The downside, however, is they are also unknowingly digging themselves into holes. For example, we have AI-generated skills that are thousands of lines long and include Python scripts with hundreds of lines of tests. Some of these Python functions are literally just emitting MCP tool names.

clintonb··on Why AI Cannot Save an Enterprise That Doesn't Understand Its Data
I read this, and I have no clue what it's saying.
clintonb··on OTel isn’t going well
(I’m not the person you replied to, but have experience here.)

I follow the [gateway deployment pattern](https://opentelemetry.io/docs/collector/deploy/gateway/). Everything sends telemetry to our gateway, which exports to ClickHouse (formerly Datadog).

We use Node.js, so all we need to do is run a script initializing Otel before running the app. We set this up following the docs a few years ago, and haven’t had to change it much since then.

clintonb··on AI usage patterns in software teams
My company uses Linear. The data presented in this blog post is worthless to me and the company. It can be crudely summarized as “agents and agentic development processes are conducting more Linear operations.” Duh!
clintonb··on AI usage patterns in software teams
The data is aggregated, and you cannot possibly identify a single user from what's been published. I see no issue here.
clintonb··on McDonald's Built a 515-Page Dossier on Me. It Says I'll Never Stop Eating There
Altria already does this to some extent. See their Digital Trade Program.
clintonb··on Why Software Factories Fail (or: harness engineering is not enough)
https://xyproblem.info/
clintonb··on Write code like a human will maintain it
My threshold is three. The third time I duplicate code/behavior is when I start to think about DRYing said code/behavior.
clintonb··on How version control will evolve for the agent boom
I primarily care about the pull request title and description since we squash-merge and those values end up populating the squashed commit.
clintonb··on How Version Control Will Evolve for the Agent Boom
> Anyone else finds the LLMs version control discipline lacking?

No? How do you define discipline? Claude code knows how to read and write commits. My team just granted it limited force push access a week ago. We’ve taught it to make more human-friendly commit messages.

What’s missing?

clintonb··on Studio Canal Movies purchased on PlayStation Store removed without refund
I have the technical acumen and money, but zero desire or time to spend ripping discs. It's far too easy to raid the "five dollar bin" at MoviesAnywhere (like I used to do at Wal-Mart and Best Buy).

Licensing issues like Sony's aside, the studios did MoviesAnywhere right. I can buy the disc (often used) and redeem the code, or buy digitally, and download/stream everywhere that matters to me and my family.

clintonb··on We built a persistent agent memory layer on Elasticsearch with 0.89 recall
If you already have Elasticsearch, it makes sense to continue utilizing it.

Saying, “just use SQLite” completely dismisses the idea that this is a _shared_ memory across teams. The ability to easily connect to the remote service and have everything “just work” pays dividends when you have dozens or hundreds of users.

clintonb··on U.S. pulling ocean sensors a 'shock' for Canadian research as El Niño nears
The current administration doesn’t care about climate change, or believes it’s a hoax. Given this, they see no need to fund research and data gathering that tells them otherwise.
clintonb··on Git checkouts slow or timing out from EU
This also impacts the U.S. I had a workflow timeout on checkout after 6 hours.
clintonb··on Google broke syncing for Fitbit scales
I've owned a Fitbit Aria Air for nearly eight years. It stopped syncing a few days ago. Google's response is essentially, "we broke it."
clintonb··on Launch HN: Ardent (YC P26) – Postgres sandboxes in seconds with zero migration
Congrats on the launch! DB clones have been a game changer for my team, allowing us to build isolated workspaces for agents to do work ranging from optimizing queries/views to building UI/UX that works for the actually combinations of data we have.

We self-host DBLab since we had trouble getting Xata, Neon, and hosted DBLab configured.

clintonb··on If AI writes your code, why use Python?
I don’t have any head-to-head comparisons of the same app written in both languages. I can compare apps with similar functionality: listening to GitHub web hooks vs. Linear web hooks. Both are deployed to Kubernetes.

The GitHub listener written in Go has a CPU limit of 50m, but actual usage of 10m. Memory consumption is around 34MB of a 64MB limit.

The Linear listener written in Typescript consumes around 20m/250m CPU, but 235MB/500MB memory.

The 2x CPU and 9-10x memory consumption is significant, especially as we scale usage or add services.

(Yes, I know we need to do more right-sizing.)

clintonb··on If AI writes your code, why use Python?
I picked Go because it tends to use fewer resources than Node.js, and startup time is quite fast.
clintonb··on From Supabase to Clerk to Better Auth
OAuth 2.x and OIDC haven’t changed much. I still use Passport.js with Firebase.
clintonb··on Formatting a 25M-line codebase overnight
LOC doesn’t have much to do with the “constraints of the language”.

Stripe has dabbled in Golang. There is also a growing Java monorepo.

clintonb··on Formatting a 25M-line codebase overnight
Ruby code touches financial transactions. Card payments were migrated to Java when I left in 2022. Non-card payments (e.g., ACH, checks, various wallets) were still processed by Ruby.

PCI-related/vaulting code lived in its own locked-down repo. I think that was a mix of Go and Ruby.

Once you have the foundations in place for account balances and the ledger, processing a payment isn’t that daunting. Those foundations, however, took a lot to build and evolve.

clintonb··on Maryland to ban A.I.-driven price increases in grocery stores
The electronic shel labels use e-ink. Their refresh time is around 30 seconds. What happens if two shoppers are looking at the same product?
clintonb··on Maryland to ban A.I.-driven price increases in grocery stores
Your plan fails in a few ways.

Refreshing the content on an electronic shelf label (ESL) takes about 30 seconds, and multiple people can view a product simultaneously. Unless the store is giving everyone AR glasses, people will notice the price discrepancy.

This assumes you have sufficient data to actually recognize a shopper such as facial ID or some form of iBeacon for every single product for which you wish to implement price discrimination. Basic ESLs cost $3 to $12, depending on size and use very little energy. Adding a camera means more energy, so a bigger battery and more cost.

Using in-app discounts is the most likely way to implement this, which I am okay with. Shoppers are willingly trading their data privacy for a discount.

clintonb··on Maryland to ban A.I.-driven price increases in grocery stores
You're thinking of pricing zones—shoppers in Zone A pay a different price than those in Zone B. This makes sense, for example, if shipping costs are higher in Zone B.

The bill in question is about per-shopper pricing (e.g, you and I pay different prices in the same store). This is something Lyft and Uber do, but it's not really possible in retail.

Page 1 of 25Next →