Varning: Det finns spoilers framåt för söndagens ”Silicon Valley.”
söndagens avsnitt av” Silicon Valley ” var en återgång till normalitet. Richard är tillbaka ansvarig för sitt företag Pied Piper och besättningen tog in några nyanställda. Med allt som verkar gå rätt för Richard just nu var det en chans för episoden att ha lite kul och det kom i form av en i stort sett trivial debatt i kodningsvärlden.
i början av episoden freaks Hendricks ut när han lär sig en av hans nya anställdas ”åtaganden” — en sats av skriftlig kod — gjordes med mellanslag över flikar.
diskussionen om huruvida du använder flikar eller mellanslag dominerar avsnittets längd. Och i slutet ger det till och med Richards spirande förhållande till en Facebook-anställd till ett skrikande stopp.
” jag tror inte att detta kommer att fungera. Jag är så ledsen. Jag menar som vad, vi ska ta med barn i världen med detta hängande över huvudet? Det är inte riktigt rättvist, tycker du inte?”Hendricks spottar ut i raseri.
” barn?”frågar Winnie, förvirrad. ”Vi har inte ens sovit tillsammans än.”
” och gissa vad?”Richard svarar ilsket,” det kommer aldrig att hända nu. För det finns inget sätt jag kommer att vara med någon som använder mellanslag över flikar.”
det är en klassisk ”Silicon Valley”-scen, som sitter precis vid nexus av hilarity, nerdiness och deep-cringe där showen har byggt sitt komedimärke.
men förutom slutet på den första riktiga romantiken vi har sett Richard engagera sig i, vad var det som händer här? Utställningen ger icke-kodare lite sammanhang tidigare i episoden, så att vi vet att tabs-vs.-spaces är en i stort sett trivial kodningsdebatt som Richard har neurotiskt starka åsikter om.
här är vad argumentet faktiskt handlar om.
kod skrivs vanligtvis inte i vad-du-ser-är-vad-du-får redaktörer som Microsoft Word. Snarare skrivs det ofta som rå text, med all formatering skapad rad för rad.
och som Jamie Zawinski förklarade i ett blogginlägg med titeln ”Tabs versus Spaces: An Eternal Holy War” långt tillbaka i 2000, är koden vanligtvis formaterad med olika stora inslag och blanksteg, som så:
klausulerna i kod som är mer indragna är generellt sett underordnade de mindre indragna ovanför dem. Så formateringen tjänar mer än ett estetiskt syfte; det är en del av de visuella språkkodarna som används för att kommunicera.
men historiskt sett har det funnits två sätt att skapa det blankutrymmet: Richards favorit, flikar, innebär färre tangenttryckningar (och därmed i de flesta fall färre tecken för datorprogrammet att komma ihåg), men är lite oprecis. Winnies favorit, spaces, erbjuder kodare ett mer specifikt och bokstavligt sätt att skapa sina fördjupningar. Det är dock långsammare att använda och använder mer lagringsutrymme.
i hans 2009 blogginlägg ” död till rymden otrogna!”Jeff Atwood representerar visuellt skillnaden:
mellanslag, representerade av prickar, finns till vänster. Flikar, representerade av pilar, är till höger.
Trivial som debatten kan tyckas går det varmt i kodande cirklar. (När detta skrivs finns det 277 kommentarer på Atwoods artikel.) Och det har viss betydelse. Atwood pekar mot en studie från 1984 som visar att programmerare är mycket bättre på att läsa kod skriven i den stil som de är bekanta med.
och när lag som arbetar med kod inte håller med, kan det gnista infighting, som båda blogginläggen återkallar.
lyckligtvis för programmerare i världen hanterar nyare programvara ofta alla dessa formateringsproblem på egen hand. Så färre kodnings lag, eller fiktiva relationer, bör falla sönder på grund av dem.