En röst, tio laner: en dag med diktering
Illustration

En röst, tio laner: en dag med diktering

Så ser en dag med parallella startuplaner ut när tangentbordet slutar vara den enda utkanalen. En grundares genomgång, timme för timme.

Teodor Deleanu3 september 20268 min läsning

Två barn, tre startups, en röst berättade ursprungshistorien: parallella startup-laner med höga insatser, ett andra barn under sex månader gammalt, och ett tangentbord som tyst hade blivit den enda felkritiska punkten för allting. Det inlägget förklarade varför Keebye finns. Folk fortsatte ställa en mer praktisk fråga: hur ser en dag faktiskt ut?

Så det här är den dagen. Inte en typisk dag, för något sådant finns inte, men en verklig form som återkommer. Jag tänker undvika siffror med flit. Jag har aldrig mätt en procentuell förbättring och skulle inte lita på en om jag hade. Vad jag kan beskriva är var röstkanalen används, var den inte används, och vad som förändrades i arbetets textur.

En anmärkning om ”tio laner”. Det är inget skryt. En lane är vad som helst som rör sig framåt på en mening från mig: en kodagent mitt i en uppgift, en kodgranskning någon väntar på, en Slack-tråd, ett mejl till en investerares jurist, ett dokumentutkast. En upptagen dag finns det verkligen ungefär så många öppna. De flesta är inaktiva i vilket ögonblick som helst. Problemet är att de som vaknar gör det enligt sitt eget schema, inte mitt.

Tidig morgon: en arm, tre agenter

Dagen börjar innan huset gör det, vilket betyder att den börjar med en bebis på ena armen. Det här är timmen där rösten gick från bekvämlighet till nödvändighet.

Tre agent-laner rullar redan sedan i går kväll, var och en i sin egen terminal, var och en i ett annat repository. Det första jag gör är att läsa vad de gjorde. Läsning kräver ögon, inte händer, så bebisen är inget problem. Det andra är att styra om dem som gick snett, och det är där tangentbordet brukade förlora.

Nu: klicka in i terminalen, håll in Höger Command, säg omstyrningen, släpp. ”Migreringen är okej, men du döpte om tabellen i modellen och inte i seed-skriptet. Fixa seeden och kör testerna igen.” Texten landar i prompten. Retur. Nästa lane.

Jag har en liten vana som tog ett tag att lära sig: tala i fullständiga meningar. Agenter gör bättre ifrån sig med dem, och diktering producerar dem naturligt eftersom det är så människor talar. Den telegramartade stilen jag brukade skriva (”fixa seed, kör om”) var en tangentbordsartefakt, inte en preferens.

Den här timmen blottar också den enda egenheten kring första dikteringen som är värd att känna till. Mikrofonen värms upp efter sessionens första diktering och behåller därefter en förbuffert på 500 ms. Morgonens allra första inhållning kan betala en kostnad för strömstart och klippa ett ord om jag börjar tala för tidigt. Jag har lärt mig att pausa ett ögonblick. Varför dikteringsappar äter ditt första ord förklarar mekaniken; kortversionen är att det är ett kategoriproblem med en partiell lösning, inte ett löst problem.

Mitt på morgonen: granskningslanen

Två av de startups jag arbetar med har kodgranskningar som väntar på mig de flesta morgnar. Granskning är det bästa tänkbara dikteringsfallet: det är läsning med enstaka korta prosautdata, och prosan är riktad till en människa.

Jag läser diffen i en webbläsarflik. När något behöver en kommentar klickar jag in i rutan, håller in, talar, släpper. Den egna ordlistan bär projektets identifierare, så reconnectBackoff kommer ut som reconnectBackoff och inte som tre engelska ord. Uppstädningen är regelbaserad som standard: utfyllnadsord och upprepade ord försvinner, mina formuleringar stannar. Jag håller den valfria poleringen med lokal LLM avstängd för granskningskommentarer, eftersom trohetskontrollen bakom den är en heuristik mot kraftig tokenförlust, expansion eller upprepning, inte en garanti för att en negation överlevde, och i en granskning ändrar ett omkastat ”inte” utfallet.

Ett av de här teamen granskar på rumänska. Keebyes motor för 25 språk hanterar det på enheten; jag låser språket i trayen och nästa yttrande avkodas som rumänska, engelska identifierare inkluderade. Diktera kodgranskningar på ditt eget språk har detaljerna, inklusive den ärliga listan över vilka språk som täcks och vilka som inte gör det.

Sen förmiddag: de mänskliga lanerna

Alla laner är inte agenter. Vid det här laget behöver Slack-trådarna och mejlen som åldrats över natten svar, och det var här dagen förr tyst tappade timmar. Inte för att svaren var svåra, utan för att varje svar innebar att lämna en lane, och att lämna en lane har en återinträdeskostnad.

Rösten ändrade ekonomin i ett svar. Ett svar på två meningar i Slack är en inhållen hotkey, talat in i meddelanderutan medan mina ögon fortfarande är halvt på terminalen bredvid. Investerarnära mejl är längre och dem skriver jag fortfarande med omsorg, men första utkastet talas nu och redigeras sedan. Att tala ett utkast får formen på plats snabbt; att redigera det skrivet är där precisionen kommer in.

Det här är också timmen där integritetskravet spelar störst roll. Det jag dikterar här är insidan av andra människors företag: osläppta produkter, säkerhetsdiskussioner, pengar. Keebye transkriberar på enheten, fungerar med Wi-Fi avstängt efter modellnedladdningen, håller en historik med enbart text lokalt som raderar sig själv efter 30 dagar, och skickar ingen telemetri. Vart tar din röst vägen är den längre versionen av varför det var icke förhandlingsbart för mig.

Eftermiddag: djuparbete, och lanerna som vaknar

Eftermiddagar är till för lanen som kräver verklig tankemöda: en design, en svår bugg, ett dokument som måste bli rätt. Det här skrivs. Rösten är en styrkanal, inte en tankekanal, och ett svårt problem blir inte lättare av att sägas högt.

Men de andra lanerna vet inte att det är djuparbetstid. En agent blir klar och ställer en fråga. En granskare svarar på min kommentar med ett motargument. Förr var varje sådan ett beslut: bryt fokus och byt fönster, eller låt den åldras. Nu är de flesta en blick och en mening. Kasta en blick på agentens fråga, klicka in, säg ”ja, men håll den gamla endpointen vid liv tills klienten är ute”, klicka tillbaka. Djuparbetsfönstret förblir mestadels intakt eftersom avbrottet är några sekunders tal snarare än ett fullt kontextbyte in i någon annans problem.

Jag vill vara exakt med påståendet här. Rösten gör inte avbrott gratis. Den gör den mekaniska kostnaden för att svara så liten att det som återstår bara är tanken, vilket alltid var den verkliga kostnaden ändå.

Kväll: den terminaltunga lanen

En av startupsen kör mycket av sitt operativa arbete över SSH, i tmux, på servrar där inklistring från urklipp inte existerar som begrepp. Det är här dikteringsverktyg brukar falla, eftersom de flesta matar in text genom att klistra in.

Keebye klistrar också in som standard, med terminalmedveten uppdelning för skal. För SSH och tmux slår jag på det valfria skrivläget, som matar in texten som Unicode-tangenttryck i stället för att förlita sig på ett urklipp. Det fungerar med layouter som inte är QWERTY, vilket spelar roll för det rumänska tangentbordet på en av maskinerna. Diktering som överlever terminalen täcker uppsättningen och terminalguiden täcker avvägningarna.

Keebye vägrar också mata in i säkra inmatningsfält, så när en server frågar efter en lösenfras gör hotkeyn ingenting. Det är ibland irriterande och fullständigt korrekt.

Vad som inte förändrades

En dag som den här kan låta som att rösten löste problemet med att ha för många laner. Det gjorde den inte. Den löste en specifik flaskhals: den fysiska kostnaden för att leverera en mening till den lane som behövde den. Allt annat är detsamma.

Tänkandet är fortfarande flaskhalsen för svårt arbete. Läsning tar fortfarande den tid den tar. Agenter går fortfarande snett och behöver fortfarande styras om, och en mumlad omstyrning ger ett mumlat resultat vare sig den talas eller skrivs. Rösten är ett tillskott till händerna, inte en ersättning; jag skriver massor, bara inte längre som den enda flaskhals som varje lane väntar bakom.

Och appen har tidig mjukvaras skavanker. Identifierare hörs fel. Dagens första ord klipps ibland. Det finns inget ordförråd för röstkommandon, så att navigera mellan fönster är fortfarande ett klick. Den körs bara på macOS.

Formen på det hela

Den gamla bilden av en 10x-utvecklare var en person som skrev snabbare. Bilden som faktiskt kom var en person som dirigerar: flera laner, vissa automatiserade och vissa mänskliga, var och en väntande på en mening. I den världen är hävstången inte skrivhastighet. Det är hur billigt du kan leverera intention till lanen som behöver den, i vilken fysisk situation du än befinner dig, inklusive med ena armen full.

Om din dag har den formen är utvecklarguiden den praktiska startpunkten, och om du väger dikteringsappar mot varandra för den är Keebye-alternativ en ärlig jämförelse som säger var var och en passar bättre. Provperioden är 14 dagar och startar vid din första inloggning i skrivbordsappen, så en riktig vecka av laner är precis vad den är till för.

Fler laner än händer? Prova den andra kanalen.

Starta din kostnadsfria provperiod och kör en riktig dag med rösten som andra utkanal — 14 dagar, på enheten, utan kort.

Start free trial

Early access: we'll email you the moment the macOS build is ready — your 14 days start when you first sign in from the app.

Läs vidare