YouTube Summaries

← All summaries

Implementing nob.h String View Features

2026-07-15 Wed ⏱ 1 hr 41 min tsodingdaily

A live C-coding stream in which Tsoding works on his nob.h build-system header and the related ht.h, implementing several string and utility features: a panicf error-reporting helper, a string-view literal macro (SVLIT), a UTF-8 length function (sv_utf8_len), and reworking the String_View type to expose an items member, before spending the tail of the stream tracing a failing cmd_run() invocation. The clickbait title ("I switched to C and instantly grew my hair") is unrelated to the content, which is ordinary Tsoding C-library maintenance.

Transcript availability

The spoken-audio transcript for this video could not be retrieved. The only English auto-generated (asr) caption track exposed by YouTube's InnerTube API for this video ID returns mismatched content — the audio of an unrelated Pragmatic Engineer podcast about "context engineering" and AI software factories — rather than Tsoding's speech; the IOS-client asr track is empty, and the WEB/MWEB player responses are UNPLAYABLE. The remaining caption tracks are Twitch-chat replays (marked "Twitch Chat - Fancy / Simple"), which are viewer chat rather than speech and are not usable as a transcript. Consequently the per-segment summary below is reconstructed from the author's official video description and chapter markers, not from a verbatim transcript of what was said.

Chapters and topics

From the author's description ("Topic: Implementing some features for nob.h"). References given: github.com/tsoding/nob.h and github.com/tsoding/ht.h.

  • 00:00:00 Intro
  • 00:07:06 panicf — a formatted panic/error-reporting helper.
  • 00:20:02 SVLIT — a string-view literal macro for constructing a String_View from a C string literal.
  • 00:25:56 sv_utf8_len — computing the length of a string view in UTF-8 code points (as opposed to raw bytes).
  • 01:05:33 String_View.items — reworking the String_View struct to expose an items member, aligning it with the generic dynamic-array/container conventions used elsewhere in nob.
  • 01:26:35 Tracing a failing cmd_run() — debugging why a command run through nob's process-spawning helper does not behave as expected.
  • 01:39:06 Outro.

The stream also uses Tsoding's usual tooling note: Twitch chat is rendered into the video's subtitle tracks via the subchat project.