Andres Perez

Currently in a sabbatical year. Worked in infrastructure at Meta for 8 years, and now I'm pursuing personal endeavors to enrich life outside of work.

I developed these projects to benchmark how far AI coding assistance has progressed since working at Meta. A lot of these are efforts I wanted to perform for quite some time, but never had the energy outside of work to do so. I anticipate returning to work soon and wanted to release these to the world before becoming busy again.

Overall I'm amazed by how independent these agents have become, and just how fun building products can be when you automate software development.

Projects

A navy and gold mihrab arch framing the title 1,001 Emails

1,001 Emails

Live since Sept 2026thousandemailsandanemail.com

1001 emails is a custom newsletter that adapts to the reader. From the moment a user subscribes to the newsletter, they receive a story a night in the order it was told in the Burton public domain version.

Why I built it

The idea originated while I was riding across Europe and trying to complete the NYT summer reading challenge. Among many types of books to read, I had to read a long book. I came across the recommendation to read Yasmine Seale's version, and found it incredibly compelling. The storytelling devices were so innovative. I had never read anything like it before, and wondered why more of my friends haven't spoken about it. I realized the format of a story a night could be adapted well for the modern day reader's inbox. An idea inspired by the Dracula Daily newsletter.

The hardest part

The hardest part has been trying to make it fun to read in inbox. Reading the story in an eReader or physical book is a much more engaging experience than getting plaintext in the inbox. It's still a work in progress, as I'm trying to find content that is modern. Maybe one day I can get Yasmine Seale to collaborate and share rights to read her book over email.

What surprised me

I'm amazed by how good Claude is at generating beautiful artwork. It was able to create artwork for the website and for the emails sent.

  • FastAPI
  • APScheduler
  • Postgres
  • Postmark
  • nginx
A night-time New York skyline in falling snow

NYC Nordic Ski

Live since Sept 2026nycnordicski.com

Nordic Ski is an online forum. I built the forum I wish would exist for me to have trips to go on every week.

Why I built it

The idea for it began in 2026 during a trip among friends to a ski resort near NYC. We thought it was such a fun trip to do and wondered what it would take to make it easier to repeat trips. We envisioned a forum with enough users to regularly have people posting car pool trips every weekend. This will be the first winter with the site live. Hopefully with care and attention this can grow over the years to a thriving community of NYC based XC skiers.

What I'm proudest of

I'm really proud of the Cloudflare Turnstile integration. Not anything super fancy or sophisticated, but a fun way to make sure humans use it. I'm proud of getting my friends who went on that trip to create accounts, and that one already RSVP-ed to a trip I'm organizing in January.

What surprised me

I'm amazed by how much it knows about Google app integration.

  • FastAPI
  • SQLAlchemy + Alembic
  • Postgres
  • OAuth
  • Postmark
An astronomical clock dial beside the words Doomsday Practice

Doomsday Practice

Live since Oct 2026doomsday.andresperez.co

My friend L told me a super fun story in which she realized you only need 14 calendars to describe any year: January 1st falls on each day of the week * leap year (y/n). She proceeded to tell me about the Doomsday algorithm for determining days of the week for given dates. I have often struggled to answer that question for dates in the near present, and I thought learning the algorithm would be overkill for getting better at that. Imagine marathon training to run a 5k. A week later I can say that I'm now able to map dates in the near and far future to days of the week.

What I'm proudest of

I'm most proud of the cover art. And also for the simplicity. I tried to make it not look like AI Slop.

What surprised me

I was surprised that Claude picked the easiest algorithm for finding Doomsday. Wikipedia talks about many algorithms, and many are complicated to follow. It was cool to see Claude highlight the easiest for humans to perform.

  • HTML/CSS/JS
  • static
The storytime link preview card

storytime

In betastorytime.andresperez.co

Storytime is built to address the feeling of reading a book and not having friends to share the experience.

Why I built it

I built it because I'd love to one day have a community of readers sharing insights and memes about books in a spoiler free fashion.

The hardest part

It's interesting what data exists about books in open library. The hardest part of this has been verifying correctness. This is the reason the site is still in Beta.

What surprised me

This was the first site I built with Claude Code. I was amazed by its ability to build something fully functioning with few prompts. I was also amazed by its good system design. I was ready to share with it feedback on how to do better, but from the get-go its design was good.

About the beta

The correctness on books, chapters, and page count is not accurate. If you'd like to join the community and contribute to the factfulness please do so, I welcome users.

  • FastAPI
  • Jinja
  • raw SQL
  • Google OAuth
A monochord dial, the Music Trainer link preview

Music Trainer

On holdmusic.andresperez.co

I want to become a better jam musician: somebody who can drop in on a jam session with friends and play. This site is for developing those skills.

Where it stands

It's too early to say what I'm most proud of. Of all my projects this is the one I'm least engaged with. It again single-prompt achieved what I wanted. I'm putting more energy into complex multi-prompt projects.

  • ES modules
  • Web Audio
  • node:test

How I work with Claude

How a session goes

I typically have a conversation with Claude: what I want built, and why. What is the goal I'm trying to achieve, and I give Claude free rein.

Where I step in

I verify the output at every step.

Compared to Meta

Most of what I built at Meta was backend services. There weren't many components I could verify by looking at it visually. Here I verify visual appearance and verify backend behavior through actions.

My advice

I advise all friends to build, use as much of their quota as possible, work with as many agents in parallel as possible and focus on using the best model available. So far my quota hasn't been my bottleneck. I am sure my advice here will change as I start to work on projects that use more quota