cd /news/ai-tools/i-m-12-i-ran-a-global-code-jam-on-a-… · home topics ai-tools article
[ARTICLE · art-130320] src=dev.to ↗ pub= topic=ai-tools verified=true sentiment=↑ positive

I'm 12. I ran a global Code Jam on a $150 phone. Here’s the Supabase architecture that held it together. 🐯

A 12-year-old developer built and ran a global coding competition, the KODA Code Jam, entirely from a $150 Android phone, using Supabase for authentication, PostgreSQL storage, and Row Level Security to manage submissions from over 3,000 community members. After a senior DevOps engineer flagged that error logs captured only failures and not which AI model actually served each request, the developer added a model_served column to the error_logs table to track attempted versus served models. The developer credited Supabase's mobile-friendly dashboard and documentation with making backend security and session management accessible without a dedicated team.

by read2 min views2 publishedSep 15, 2026

Two weeks ago, I had zero submissions for my coding festival.

Yesterday, I crowned the first Champion of the KODA Code Jam, upgraded their database status, and launched a second Jam (Scribe Jam), all while managing a community of 3,000+ developers.

I am 12 years old. I do not have a laptop. I build full-stack AI applications entirely on a POCO C55 Android phone.

And none of this would be possible without **@kiwicopple ** (Paul Copplestone) and the team at Supabase.

Here is exactly how I use Supabase to run a real, global developer ecosystem from my phone.

My community isn't local. I have users like vpxudon (a senior engineer from China), puneetkumar2010 (a 15-year-old builder from India who just won the Jam), and nyaomaru (User #001 from Japan).

Supabase Auth handles this seamlessly. I don't have to worry about session management or password hashing. I just call supabase.auth.signInWithPassword(), and it works perfectly on mobile browsers.

As a solo dev, security is my biggest anxiety. I am handling user profiles, submission data, and error logs.

I rely heavily on PostgreSQL Row Level Security (RLS).

For example, in my scribe_submissions table, I have an is_champion boolean flag. I wrote policies ensuring that while anyone can SELECT public submissions, only authenticated users with specific admin claims can UPDATE the champion status.

Supabase made RLS accessible enough for a 12-year-old to implement correctly without needing a dedicated backend security team.

Recently, a senior DevOps engineer (Nnamdi) reviewed my architecture and pointed out a flaw: my error logs were only catching failures, not successes. If my primary AI model failed and my fallback succeeded, I had no idea which model actually served the request.

The Fix: I added a model_served text column to my Supabase error_logs table. Now, every request logs the attempted model and the actual served model.

-- Example of the telemetry I now track in Supabase
UPDATE error_logs 
SET resolved = true, resolved_at = now() 
WHERE error_type = 'http_404' AND resolved = false;

This simple Supabase database update turned my "silent failures" into visible, actionable data.

I have fought with hosting providers. I have dealt with broken build pipelines. But Supabase has been the one constant, reliable foundation.

The dashboard works flawlessly on my mobile browser. The PostgreSQL database is robust. The documentation is clear enough for a beginner to grasp, but powerful enough for senior engineers to respect.

@paulc and team: Thank you for building a tool that democratizes backend development. You didn't just build a database; you built a ladder. And kids like me are using it to climb higher than we ever thought possible.

We are cooking. And Supabase is the stove. 🔥

Questions? Drop them in the comments. I read every single one.

── more in #ai-tools 4 stories · sorted by recency
── more on @supabase 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/i-m-12-i-ran-a-globa…] indexed:0 read:2min 2026-09-15 ·