My thinking is that the best place for developers to explore, learn and understand how/if agentic coding can be a part of your workflow is to use it to build internal developer tools. The code is only affecting you, but it still is actually useful.

I am doing a project which requires know the precise location and size of every widget slot on iOS. This involves the generation and analysis of hundreds of screenshots. I worked with Codex to build a tool to automate the organization and analysis. 🧵

I started in terminal, then Codex Monitor, then Codex, and then today Xcode's integration. I’m a huge fan of using a GUI front ends. The same code gets written regardless, but I find it much easier for me to understand/review the output.

The main takeaway for me so far is how transformative this kind of tool is for building things which I just wouldn't try otherwise if I had to code them by hand. The experimentation possible when the turnaround is minutes rather than hours is meaningful. 🧵

For example, in this project I wanted to have a mechanism for verifying my automatic bound detection algorithm. So I wondered if I could have the widgets render their bound values within them and then I could use OCR to read the value and compare the to computed value.

I know I could have worked out how the Vision framework does this and gotten it to work, but here I just asked and it built it. Which allowed me to catch a few bugs in my detection method, which I'd have missed otherwise. 🧵

The biggest thing I have found so far is that viewing these tools as black boxes doesn't work nearly as well as viewing them as the most personalized Stack Overflow resource you could imagine. Where every question or problem you encounter can have a thoughtfully written response with sample code.

Viewing it as a collaboration to help me learn is where the magic moments have happened for me so far. 🧵

I'll continue exploring the space with internal tools until I'm confident it would help my production work, but I doubt that point is very far off.

Even just the production of these internal tools (6 and counting!), has made me more efficient and effective in my "traditional" work which is a massive win I'm grateful for.

@_Davidsmith There’s a blog post from me in here somewhere, but…

I was working with Claude Code recently, and had it generate a function for me. I didn’t like what it did, and pointed out a way it could improve. It acknowledged what I said, came back with trade-offs to my approach, and then rejiggered what it had done.

It felt more like having a coworker — young, but a coworker nonetheless — than I have in a *long* time. I miss that.

@caseyliss There is definitely something to that, especially as someone who has programmed essentially alone for years and years. It is just plain _nice_ to be “talking over the code". Kinda like an super advanced version of rubber duck debugging.

@_Davidsmith Exactly that.

I know full well that I *could* call you [or many of our mutuals] and discuss a problem, but:

1) I don’t want to be burdensome
2) It’ll take a while to bring you up to speed on wtf I’m talking about

Claude (or equivalent) isn’t burdened, and can grok the code in the span of a minute or two.

@caseyliss @_Davidsmith I implemented a full TOTP solution for our system today with Claude code. It’s been on my todo list for _literally years_ and the whole thing was done across the span of 6 hours (because I had to do it between meetings)

I did send advanced apologies to the people that need to review and test it though, but I was good and actually checked it all myself first!