Артём Курапов
Blog
Blog Talks Events Projects Music About
Blog Talks Events Projects Music About
РусскийEnglish
  • Management
    • Business Goals and Alignment: What Took Me So Long to Understand as a Programmer
    • Hiring
      • Sandboxes for homework assignments
      • Why live coding is a poor way to evaluate engineers
    • Product team models - project based, feature factory and product operating model
    • The Lewis Model: why the Finn stays silent, the Italian interrupts and the German asks for a spec
  • Tech
    • Frontend
      • How Rails builds a page with content_for and yield
      • Stimulus from Scratch: JavaScript That Lives in Your Markup
      • Turbo Frames from Scratch: Interactive Rails Without an SPA
      • Turbo Stream Actions: An Interactive Atlas of DOM Operations
    • A review system: trust, UI, and features
    • Dream of scalable & enriched graphql-subscriptions
    • Eager, lazy, and batch: when should an application load data
    • Go, Together: A Visual Guide to Go Concurrency
    • HDR Photos: What's Inside a JPEG with a Gain Map
    • Integration
      • Pangalink today (2026): iPizza architecture and cloud alternatives
    • Introduction to robotics: types of motors
    • Journey to a Federated GraphQL
    • README.md - how to document your repo
    • State machines in Rails: how an object moves through its lifecycle
    • The Escape Theory: What Will Actually Break the Corporate Power-Law?

2026

  • Introduction to robotics: types of motors
  • The Lewis Model: why the Finn stays silent, the Italian interrupts and the German asks for a spec
  • Turbo Stream Actions: An Interactive Atlas of DOM Operations
  • A review system: trust, UI, and features
  • Pangalink today (2026): iPizza architecture and cloud alternatives
  • How Rails builds a page with content_for and yield
  • Stimulus from Scratch: JavaScript That Lives in Your Markup
  • Eager, lazy, and batch: when should an application load data
  • HDR Photos: What's Inside a JPEG with a Gain Map
  • Turbo Frames from Scratch: Interactive Rails Without an SPA
  • Business Goals and Alignment: What Took Me So Long to Understand as a Programmer
  • Go, Together: A Visual Guide to Go Concurrency
  • State machines in Rails: how an object moves through its lifecycle
  • The Escape Theory: What Will Actually Break the Corporate Power-Law?
  • Why live coding is a poor way to evaluate engineers

2024

  • Product team models - project based, feature factory and product operating model
  • Sandboxes for homework assignments

2022

  • Dream of scalable & enriched graphql-subscriptions

2020

  • Journey to a Federated GraphQL
  1. Home
  2. Blog
  3. Management
  4. Hiring
January 20, 2024
#hiring
AI authorship0% - Human-written

Sandboxes for homework assignments

I did some throw-away home coding assignments back in the days:

  • https://github.com/tot-ra/sandbox-open-time-json
  • https://github.com/tot-ra/sandbox-express-axios-api-composition
  • https://github.com/tot-ra/sandbox-airport
  • https://github.com/tot-ra/sandbox-chocolate-factory
  • https://github.com/tot-ra/sandbox-nestjs-auth-ratelimit
  • https://github.com/tot-ra/sandbox-guest-book

Related articles

Stimulus from Scratch: JavaScript That Lives in Your Markup

Stimulus from Scratch: JavaScript That Lives in Your Markup

August 19, 2026

This article is for people who write server-rendered HTML and want to add interactivity to it without standing up a separate client-side application. No prior knowledge of Hotwire is required: we will go from the very fi...

README.md - how to document your repo

README.md - how to document your repo

Use github for documentation. For multiple services, use separate repo.

Pangalink today (2026): iPizza architecture and cloud alternatives

Pangalink today (2026): iPizza architecture and cloud alternatives

August 21, 2026

Eighteen years ago I wrote about pangalink in an article full of Estonian kroons, Hanza and Sampo banks, and a 750-kroon setup fee. That text now reads like archaeology: half the banks are gone, the currency is gone, the...

Why live coding is a poor way to evaluate engineers

March 10, 2026

Live coding interviews are a lottery dressed up as evaluation. The core problem is that it's largely a random check: the candidate is typically unprepared for this specific moment.

← Previous Product team models - project based, feature factory and product operating model Next → Dream of scalable & enriched graphql-subscriptions