Implementing nob.h String View Features
- https://www.youtube.com/watch?v=i3WsCXjl1Gg
- Original title: I switched to C and instantly grew my hair
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 aString_Viewfrom 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 theString_Viewstruct to expose anitemsmember, 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.