API Month: Day 1-11 (and Why I Stopped)

In November, I decided to learn one new API every day for a month. I called it API Month because I am nothing if not literal. I made it to Day 11. Here’s what happened.

The idea was simple: each day, pick a public API I’d never used, build something small with it, and write it up. Learn by doing. Ship something daily. How hard could it be?

Hard. It turns out it’s hard.

The APIs

Day 1: Citymapper. Built a simple journey comparison tool. Citymapper’s API was clean and well-documented. I got it working in about two hours. “This is easy,” I thought. “I’ll definitely keep this up for 30 days.” Foreshadowing.

Day 2: Weather Underground. Pulled historical weather data for London and plotted temperature anomalies. The API was free up to 500 calls a day, which felt generous until I accidentally wrote a loop that made 500 calls in four minutes. Had to wait until midnight to continue.

Day 3: TfL Unified API. This one was brilliant. TfL gives you real-time data on every bus, every tube line, every bike dock in London. I built a quick dashboard showing the nearest available Santander Cycles bike. The data updates every 3 minutes, which is frequent enough to be useful and infrequent enough that you won’t bankrupt yourself on API calls.

Day 4: Google Maps Geocoding. Reverse geocoding to turn GPS coordinates into addresses. Not the most exciting day, but useful plumbing. The free tier gave you 2,500 requests per day.

Day 5: London Air Quality Network. This was a professional interest, obviously. Pulled NO2 readings from monitoring stations near my flat in Bethnal Green. The answer was “not great.” Living next to a bus route will do that.

Day 6: GPS + Browser Geolocation. Not technically an API in the traditional sense, but I built a small web app that tracked your position and plotted your route on a Leaflet map. I walked from Imperial to the Southbank Centre and it produced a surprisingly accurate trace. Total distance: 4.2 miles. Total cost in coffee stops along the way: £9.60.

Day 7: ISS Position API. Open Notify has a free API that tells you where the International Space Station is, right now. I built a little globe visualisation that plotted the ISS position in real-time. This was the most fun project of the whole month. There’s something genuinely delightful about watching a dot orbit the Earth on your laptop screen and knowing it corresponds to actual humans in actual space. I spent an embarrassing amount of time just watching it go round.

Day 8: Petrol Stations. Used a fuel price comparison API to map the cheapest petrol stations near any postcode. Petrol was about £1.05 a litre at the time, which feels quaint now. The variation within a single London borough was up to 12p per litre, which over a year of commuting adds up.

Day 9: Twitter Streaming API + Sentiment Analysis. Streamed tweets containing “London” and ran them through a basic sentiment analysis library. Twitter’s general mood about London hovers around “mildly annoyed,” which to be fair is also London’s general mood about London.

Day 10: OMDb (Movie Database). Built a film recommendation thing. Not my best work. By Day 10, the enthusiasm was waning.

Day 11: Met Office DataPoint. Pulled 5-day weather forecasts and compared them to what actually happened. Spoiler: the Met Office is surprisingly accurate at 24-hour forecasts and surprisingly inaccurate at 5-day forecasts, which I suspect surprises no one.

Why I Stopped

Day 12 was supposed to be the Spotify API. I sat down at my desk, opened the documentation, and just… didn’t want to. The PhD was ramping up, I had a paper review due, and the daily pressure of “you must build and write up something today” had gone from motivating to draining.

Here’s my honest take on daily creative challenges: they’re brilliant for the first week. You ride a wave of novelty and enthusiasm. Each day is a new thing, you learn fast, you ship something, you feel productive. Then around Day 8, the novelty wears off, and you’re left with the obligation. It stops being “I get to learn something” and starts being “I have to produce something.”

I’ve seen people do these challenges successfully for a full month, or even a year. I am not those people. I need variety in my obligations, and having the same shape of task every single day makes me want to throw my laptop out the window.

That said, I don’t regret it. In 11 days I learned to use 11 different APIs. I got comfortable with JavaScript fetch requests, leaflet maps, and basic data visualisation. I learned that rate limits exist for a reason (sorry, Weather Underground). And I built a few things I’m genuinely proud of, particularly the ISS tracker and the TfL bikes dashboard.

What I’d Do Differently

If I were to try something like this again, I’d make it weekly instead of daily. API Week doesn’t have quite the same ring to it, but a weekly cadence gives you time to build something properly rather than hacking together the minimum viable thing before midnight.

I’d also pick a theme. Eleven random APIs is fun but scattered. If I’d focused on, say, “London transport APIs” or “environmental data APIs,” each day would have built on the last, and I might have ended up with something cohesive rather than eleven disconnected demos sitting in a GitHub repo that I should probably tidy up at some point.

The ISS is currently over the South Pacific, by the way. I checked. Old habits.




Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • Google Gemini updates: Flash 1.5, Gemma 2 and Project Astra
  • Displaying External Posts on Your al-folio Blog
  • The AI Product Factory: Using Claude Code as a Game Development Studio
  • Building a Brewery Sim in Godot with AI Pair Programming
  • Leading AI Transformation: What the Role Actually Looks Like