First Time Thoughts on Claude Code

Takeaways

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 obviously can't keep on top of it constantly and 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 and to compare it with what we have available internally.

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 added on some bells and whistles: 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 challenge 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 if others were using this too, 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 felt 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...

"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."

"ok this is sick"

"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. If you're curious to check it out - head to https://zipperdatabrief.zipperdatacoconsulting.com/.

← Back to blog