The Forge Log

Issue 001

The forge takes shape.

What got built in the run-up to opening applications.

4 min read

Welcome to The Forge Log — a slow, honest record of what we build, what we break, and what we learn while turning Blacksmith.Works into a place where junior developers become working ones.

We're opening applications for Q2 2026. Before that goes live in earnest, here's what's been quietly happening on the workbench.

The emails got a soul.

Every transactional message — your verification link, your slot approval, the heads-up to admins when a new company applies — used to look like every other SaaS app's transactional mail. Bland, safe, forgettable.

We rebuilt them in a system we're calling Field Notes. Each email opens with a dark standing-head banner naming the message kind in tracked-out caps with an italic Georgia strapline — like the masthead of a small publication. THE SPARK for a verify link. THE ANVIL for an approval. THE COMPACT for a sealed company agreement. THE QUENCH for the dignified no.

The footer carries an “Issue N · Month YYYY” stamp, because we wanted it to feel like an instalment of a publication rather than a system notification.

The approval flow stopped being scary.

A code review caught three things on the mentor-approval path that had been waiting to bite us:

  • The temporary password generator was weak. A fixed Temp! prefix and 1 suffix around eight random hex characters. We swapped it for a CSPRNG-backed generator guaranteed to satisfy the platform password policy at full ~98 bits of entropy.
  • Approval wasn't atomic. Creating the user, assigning the Mentor role, and writing the profile happened across three separate write paths with no transaction. A mid-flight failure left orphan rows we couldn't see. Now every multi-write flow runs under BeginTransactionAsync and rolls back cleanly.
  • Email and audit failures were silent. If Resend went down mid-approval, our metrics looked fine and the applicant got nothing. Each side effect now lives in its own try/catch with a structured log line carrying the applicant id, so an outage shows up as an ERROR in fly logs instead of as a happy 200.

The site is no longer empty.

Until this month, a stranger landing on Blacksmith.Works hit a marketing page and had no way to see real mentors or get a sense of who'd be on the other side of an application. That's been the single biggest gap between the brand promise and the on-page experience.

So: /mentors is now a public, indexable directory of every approved mentor. Each mentor has their own canonical URL — a page they can paste into LinkedIn or their personal site — with their bio, services, skills, and the rating + completed-review count. Server-rendered, fast LCP, and tied into our sitemap so Google can crawl the whole guild.

What's next.

The next few weeks: bulk actions on the admin queues, a payouts flow for mentors, and a public showcase of completed apprentice work — the same proof for the company side that /mentors is for the developer side.

If you want a slot at the forge — as an apprentice, a mentor, or a company with a brief — create an account or reach out. Q2 is open.

— Igor, founder