ZombieMutex

30 results · ↑ ↓ navigate · Enter open · Esc close

All 15 Life interests

Life / Swift / Kotlin / TypeScript / APIs

Programming tutorials

Step-by-step software tutorials centered on runnable code, debugging decisions, edge cases and explicit limitations.

Try this / Practical field guide

How to verify a programming tutorial

A checklist for evaluating code samples, including the linked ZombieMutex references.

  1. Record runtime, language, dependencies and exact setup prerequisites.
  2. Reproduce the initial failure before applying the fix.
  3. Run a positive case, malformed input and a relevant boundary or retry case.
  4. Identify anything omitted, including authorization or production hardening.
  5. Publish commands and resulting output only after actually executing them.

A space for the things I want to share

Inside this collection

01

iOS and Android

Concurrency, lifecycle and authentication issues in Swift and Kotlin.

02

Backend APIs

Retries, idempotency, authorization and request contracts.

03

Testing

Positive paths, malformed input, boundary cases and regression checks.

Hands-on resources & related guides

Stories / Notes / Work in progress

Notes & stories

The first note belongs here.

No personal programming tutorials stories have been published in this collection yet. This section automatically fills with my own approved posts, notes, recipes, or build logs as I add them.

Visit the Life notebook

Photography / Original media

Photos & visual notes

A spot for the first photograph

Original photos only, with descriptive captions

Stories behind the images

Details and context, not stock or invented travel photos

Photo entries appear automatically after original pictures and captions are approved and added to the Life notebook.

Engineering / Inspectable examples

Code samples

Small educational examples, not customer code or claims of deployed robotics, firmware, or backend systems. Open any sample for its checks, source references, and limitations.

TypeScript / Tested teaching helper

Calculate a bounded retry delay

Code & checks
export function retryDelayMs(attempt: number, capMs = 8000): number {
  const safeAttempt = Number.isFinite(attempt) ? Math.max(0, Math.min(12, Math.floor(attempt))) : 0;
  const safeCap = Number.isFinite(capMs) ? Math.max(0, Math.floor(capMs)) : 8000;
  return Math.min(safeCap, 250 * 2 ** safeAttempt);
}

Cap exponential retry delays and let the caller enforce a total deadline.

TypeScript / Tested teaching helper

Separate identity from resource authorization

Code & checks
interface Decision { authenticated: boolean; authorized: boolean; integrityOk: boolean }

export function canMutateResource(input: Decision): boolean {
  return input.authenticated && input.authorized && input.integrityOk;
}

A client or attestation verdict cannot grant access to someone else's object.

Already on the site / Related material

More to explore