First Time Thoughts on Claude Code
TLDR
Claude Code (CC) is amazing. I got a sense of what the 'internet' was talking about - I was really impressed by how fast and accurate the code generation was. Claude understood my intent with generic requests and quickly coded exactly what I needed. I increasingly learned to trust CC as the session went on. I learned not to 'baby' CC. I learned that CC knows itself and can self-adjust as needed. I learned that I can adopt a more informal and less professional tone with CC.
Intent
I started off Sunday morning with the idea to create a service that would solve a problem of mine. I love reading hacker news but can't keep on top of it constantly. I miss top stories or conversations that would be interesting or useful to me (however that's defined). I figured I'd be able to vibe code something over the course of a Sunday morning that emailed me daily with relevant stories.
I also wanted to learn more about how to use CC - internally at Amazon we do not use the public version provided by Anthropic and I wanted to let it cook. I was curious what the experience was like, I wanted compare it with what we have available internally, and get a sense of where things would be going.
Humble Beginnings
I asked CC to create this automation for me starting from a single python script that would cache top HN stories based on karma above a threshold of 200. This was completed within an hour and seemed to worked perfectly. I was hooked. I added on some nice to haves: logging, automated emails daily, setting up CDK bootstrapping.
This was great - but what about getting to spend some time with CC?
Scope Expansion
I figured if I found this useful, others might too so my next task was to abstract the code a bit and make this daily email digest available as a service. I would need a frontend. I hate coding frontend and don't know much about it - luckily CC does. I asked CC what framework it recommends for this use case - it gave me three options, I chose my preferred option and it was built.
I figured I may as well add some 'ai' magic that wasn't possible in legacy email newsletters. I added in an integration with Bedrock to generate summaries of long hackernews conversations. Adding new features like this that are well scoped and have clear requirements and technical direction are basically free.
Bells and Whistles
Later in the day on Sunday I focused on polishing the user experience for email signup and unsubscribing. This was straightforward. There were bugs - CC had hard coded some localhost urls in the repo. These are the issues I imagine would stump a non-technical user and cause frustration. I was able to point out what was going on to CC and quickly get to resolution.
On Tone
Below are a few highlights from my conversation with CC. I learned to have a little fun with it. Usually when writing to colleagues I have a very professional and serious tone. As I was vibe coding I wanted to up the vibe and have a little fun - after all, this conversation wasn't going anywhere, or so I thought... So I asked CC to share some of the more interesting responses I gave it during our conversation:
"ok this is sick"
"run it like your life depended on it. like if this fails you will have no shot, no opportunity. You should lose yourself in this moment."
"hang on a sec there chief"
"amazing !! we did it !"
"sweet -- ok so run a quick estimate for me on what it actually costs to send one of these emails"
"oh - also, spawn multiple agents in parallel to tackle this !"
Output
All of this got me to a pretty simple end product that would probably have been possible with existing low/no-code tools. Knowing when to use AI vs. code vs. a human is the real skill. If you're curious to check it out - head to https://zipperdatabrief.com/.
← Back to blog