Diskuse k článku

Svatá válka programátorů má vítěze: mezery vydělají více než tabulátory

Na funkci aplikace nemají neviditelné znaky žádný vliv, ale mezi programátory se už dlouho řeší, zda je lepší používat k odsazení mezerník, nebo tabulátor. Výsledky nového průzkumu StackOverflow znovu rozdmýchaly plameny této programátorské svaté žabomyší války.

Upozornění

Litujeme, ale tato diskuse byla uzavřena a již do ní nelze vkládat nové příspěvky.
Děkujeme za pochopení.

Zobrazit příspěvky: Všechny podle vláken Všechny podle času
Foto

R45o27b78e92r22t 40R32a22j51s 7815549601314

Je to jasné. Dnes jsem nad tím zase přemýšlel. Programátoři, kteří používají pravé tabulátory, jsou takoví, jímž je jasné, že si to v každém IDE nastaví podle svého, takže pokud je budou používat, nebudou to muset už nikdy řešit. Tuto skupinu programátorů lze rozdělit na dvě, přičemž z podstaty obou je jasné, že nebudou dosahovat takových platů, jako ti, co používají mezery místo tabulátorů. První skupina jsou lenoši. Lidé, kteří nejvíce úsilí věnují tomu, aby si ulehčili práci. Tito lidé programují tak, aby byly zásahy do jejich software minimální a pracují tak, aby si především ulehčili život, což vede nevyhnutelné k používání skutečných tabulátorů. Z toho vyplývá, že si v praxi neúčtují tolik hodin práce a mají nižší zisk. Druhou skupinou jsou perfekcionisté. Ti se snaží vše dotahovat k dokonalosti (včetně nastavení tabulátorů v IDE). Bohužel taková práce trvá zpravidla o mnoho déle, než ta samá práce, pokud ji někdo zfušuje (pravděpodobně některý z mezerníkovačů). Zároveň následné úpravy perfektně naprogramovaných aplikací jsou daleko snadnější a rychlejší, což opět omezuje zisk samotného programátora, neboť programátor bývá často placen od hodiny práce. A pokud se oba elementy, tedy lenoch a puntičkář, sejdou v jedné osobě, nevýdělek se tím násobí. Takže je to zase jako ve všem: Kvalita a ekologie výroby je v nepřímé úměrnosti s ekonomikou. A proto ti, co používají mezerníky ala tabulátory, mají vyšší zisky. ;-)

0/0
30.6.2017 17:36

M29i32c88h26a36l 76G63r33u34n74t 9185824926108

Asi si programatori nepíšu makefile, protože tam se bez skutecneho tabulatoru člověk neobejde...

0/0
26.6.2017 16:42

D29u91š76a52n 98D16i53t96r10i21c13h 3678826953119

mě se libí ti motýly.;-)

+2/0
24.6.2017 15:16
Foto

P72a48v38e87l 91K30a80s48í92k71, 13T87e31c81h92n53e27t13.56c39z

Díky. Viz https://xkcd.com/378/

0/0
24.6.2017 23:18

J22i31ř89í 76K17a31č23í77r91e26k 5250726946

Ten rozdíl bude možná v tom, že tabulátorem se totiž běžne neodsazuje řádek. To je naprostá blbost. Bystří programátoři tudíž spíše uvedli, že odsazují řádky mezerami - přičemž možná mačkají tabulátor, který ovšem vkládá mezery. Ostatní napsali, že používají tabulátor. Je jasné, že inteligentněší programátor bude mít spíše vyšší plat.

0/0
23.6.2017 16:43

J50i38ř72í 45K44a63č22í37r71e95k 5140166446

Tzn. ta otázka tak trochu zafungovala jako test inteligence.

0/0
23.6.2017 16:46

J50i19ř77í 39K20a23č65í92r53e42k 5350166976

To jsem trochu přehnal, řekněme jako test odbornosti, ať někoho neurážím :)

0/0
23.6.2017 16:48

M24a22r58e35k 24H79r85u72b58y 6857522251538

Programatori s mezerami maji vyssi plat, kdyz jsou placeni podle poctu znaku;-)

0/0
23.6.2017 16:29
Foto

R67o21b74e10r93t 27R80a12j25s 7775379821484

Ten článek je děsně zajímavej a děkuji! Já používám tabulátory jako TABULÁTORY právě z toho důvodu, že v každým rozumným IDE si to nastavím, jak je to fajnový, zatímco s mezerami neudělám nic. Tabulátoroví programátoři budou možná línější. :-)

0/0
23.6.2017 11:27

L84u62k80á83š 44M29a12r19e56d23a 6221584467788

"Na funkci aplikace nemají neviditelné znaky žádný vliv"

Ajta KRAJTA dovolim si nesouhlasit....

0/0
23.6.2017 10:00

R90a64d63i46m 28Z53a67t97o21p34e41k 9662355222797

Abych řekl pravdu, už dlouho jsem neviděl zdrojový kód, ve které by opravdu byly znaky tabelátoru (\t). On totiž každý trošku rozumnější textový editor má možnost v nastavení, že se znaky tabelátoru převádějí na mezery a taky počet mezer. A světe div se, většina z nich to má takhle defaultně (AFAIK Sublime, Atom, IDEA, Eclipse, Netbeans). Takže oni ty mezery často používaji i ti, kteří si myslí, že odsazují tabelátorem :)

+3/0
22.6.2017 13:58

O42d19s42t56r86a95n47ě86n95ý 14U67ž79i34v64a12t28e85l

Uživatel požádal o vymazání
+1/0
22.6.2017 1:51

L80u68d43v33í34k 23G72a46j29d41o93š82í72k 2195863444822

Nebo si jen myslí, že používají tabulátor a ve skutečnosti jím píší mezery, což svědčí o jejich inteligenci. Ta má pak pravděpodobně i podstatný vliv na výši jejich platu.

0/0
22.6.2017 18:04

M44i43k79u48l13á32š 14V67e26s58e32l48ý 7980285857689

Pracuju v php (to jsem možná neměl říkat :D) a jeho coding standards se mi zdají rozumné (odsazení mezerami, složená závorka na řádku s ifem/forem)

http://www.php-fig.org/psr/psr-2/

+2/0
21.6.2017 22:28
Foto

M39i48c48h40a20l 97V85o18t42r24u59b27e54c 3110311935

Používám TAB, ale mám nastavené, že se zobrazí jako 2 mezery. :-)

+1/0
21.6.2017 22:27
Foto

J69i47ř30í 29K83r52á11k30o39r10a 9299543

Ty jo, netušil jsem, že tenhle problém ještě v roce 2017 někdo řeší.

0/0
21.6.2017 22:20

L55u86d96v91í94k 63G85a50j56d95o43š13í32k 2805613944882

Právě. Taky mě zaráží, že kvůli tomu může vzniknout článek.

0/0
22.6.2017 18:05

F88r17a98n14t30i27š15e58k 48L48u20f64t 2953398898

Rychle nahradit ve skriptech tebelátory za mezery. Teď vážně, psával jsem ze začátku tabelátory a přešel na mezery po zkušenostech, když jeden skript píšu v různých editorech a šéf to pak kontroluje ještě v jiném, tak aby se to nelišilo. Prostě zkušenější píší mezery a zkušenější mají vyšší platy

+1/−1
21.6.2017 21:31

M68a84r87t86i67n 72N29o61v16o66t17n29ý 7893335840795

Přesně tak. Na odsazování používám mezery, aby to vypadalo všude stejně. Tabulátory někde bývají šíleně dlouhé, například v emailu.

0/0
21.6.2017 22:24

M29a30r67t44i21n 39N47e55č81a75s 8743893153479

Já blbec! Od zítřka přecházím na mezerník. ;-O

0/0
21.6.2017 20:44

P11a46v40e46l 73K42u22r75f16ü11r31s44t 3788513245599

používám tabulátor a při pohledu na příjmy se tím tedy mnoho vysvětluje ;-)

+2/0
21.6.2017 20:21

M96a38r57t24i35n 83S76p18e32v33a73k 4573496224894

Aka hlupa analyza. Nehovori o nicom. Mozno o tom, ze momentalne su dobre plateni pythonaci. Ked to nie je per jazyk, koreluje vysledok s best practice najlepsie plateneho jazyka. Osobne preferujem tab, kazdy si ho nadstavi ako potrebuje. Problem je s tabmi, ktore nie su na zaciatku riadku. Tie konvertujem na space.

0/0
21.6.2017 20:10

T52o86m26a61s 68K27o52t92a47l 8167864184903

Sice je to offtopic, ale největší žabomyší válkou je, zda-li volit komanče z ANO nebo KSČM :)

0/−6
21.6.2017 18:58

P37a20v18e12l 75Š40m61í24d 5912755898854

Přitom vysvětlení je naprosto triviální. Programátor, který dokáže obhájit plýtvání časem při odsazování mezerami má dostatečné argumentační schopnosti, aby dokázal obhájit před šéfy svůj platový požadavek ;-).

+4/0
21.6.2017 18:43

L21u55d69v64í19k 87G12a58j60d18o53š35í63k 2975973374202

Potíž je v tom, že to žádné plýtvání časem není, protože většina programátorských programů udělá 2 nebo 3 mezery automaticky po stisknutí tlačítka "tab" a většinou si i můžete nastavit, kolik těch mezer má být.

0/0
22.6.2017 18:09

V14l31a86s77t89i10m40i94l 63H48n47í45k 6586902721337

Další graf do mé oblíbené sbírky nesmyslných souvislostí:

http://www.tylervigen.com/spurious-correlations

0/0
21.6.2017 18:40

M84a78r41t41i46n76a 50H76a29m88á78č58k98o57v49á 5757631259

Chybi tam odpoved "Jak kdy, zalezi na jazyku a editoru". Vetsinou asi tabulator, ale nekdy v zachvatu "chytre myslenky" klidne drzim mezernik a sleduji,jak text popojizdi. Hlavne kdyz ladim a predelavam kod. Kam bych se pocitala?

+1/0
21.6.2017 18:32

M97i31l30a36n 40V71o59l12e85k 5359703146799

Tomu věřím. Kdo programuje, najde si cestičku praktičnosti (tabulátor je samozřejmě rychlejší), kdo řeší 'důležitější' věci, umí i zdůvodnit svůj vyšší plat.

Jen tak mezi námi, když jsem začínal na alfanumerické obrazovce 80 x 20, tak jsem neodsazoval vůbec a na řádku měl příkazů, co se vešlo. Nescrolovalo se a o zobrazení se muselo zažádat příkazem LIST. To si každý rozmyslel plýtvat místem na obrazovce.

+2/0
21.6.2017 18:17
Foto

J50i50r38i 12J92a56l26u62v52k46a 3298489614497

Ode dneška jedině mezery! ;-)

+3/0
21.6.2017 17:34

J50i11r23k93a 76D47v16o67ř47á21k 4885420633788

Není nic horšího než míchat tabelátory a mezery dohromady.

Mimochodem, v článku se tvrdí, že mezery dopadnou vždycky stejně. Blbost. Když píše víc lidí v editoru s různými fonty, jsou to naopak tabelátory, které dopadnou stejněji než mezery.

0/0
21.6.2017 16:43
Foto

P20a32v48e92l 63K55a22s49í18k49, 26T83e56c94h24n67e45t39.14c20z

"Když píše víc lidí v editoru s různými fonty..." Pardon, ale neznám programátora, který by psal kód v editoru, kde má nastavený jiný než monospaced font (neproporcionální písmo). Tedy kde každý znak má stejnou šířku (m a l mají stejnou šířku). A pak se skutečně všem zobrazí výsledek stejně.

+2/0
21.6.2017 17:07

J44i62r51k13a 96D28v51o12ř44á70k 4635800673838

No a já znám pár takových co přísahají na Verdanu...

0/0
21.6.2017 17:52
Foto

P97a72v35e96l 98K68a84s94í87k73, 84T37e31c31h20n51e96t30.95c33z

To by mne tedy v životě nenapadlo, že by někdo programoval v proporcionálním písmu. Přijde mi to maximálně nepřehledné. Ale koukám, že to s tou Verdanou říká více lidí: https://news.ycombinator.com/item?id=4623781 . Jak říkám, neumím si to moc představit, a nevím, jestli to budu zkoušet.

+3/0
21.6.2017 18:00

L74u10d86v84í50k 60G58a93j97d15o15š55í29k 2755373404692

To je, pane Kasíku, možná právě to uvažování nezkušených programátorů a jejich nezkušenost se pak odráží v jejich platech.

0/0
22.6.2017 18:16

L72u14d17v20í75k 77G56a25j33d42o24š80í22k 2595223834472

A proč byste měl proboha psát zdrojový kód různými fonty?

Většina programátorských editorů to notabene ani neumožňuje.

Navíc sjednocením fontu je problém vyřešen během vteřiny.

0/0
22.6.2017 18:13

J86i73ř97í 35K19o24c27u34r46e92k 6745784325748

Ještě by se hodila anketa, zda na konci každého příkazu vkládáte středník či ne. ;-D

0/0
21.6.2017 16:06

J12i44r24k66a 59D33v29o67ř88á21k 4165930453348

Píšu ve dvou jazykách. Jeden středníky za příkazem skoro vždycky vyžaduje, druhý je víceméně nezná. A teď si s tou svojí otázkou poraďte. ;-)

0/0
21.6.2017 16:40
Foto

P61a83v34e91l 94K16a90s89í52k95, 73T77e96c95h57n53e20t31.57c62z

Nesmysl, to záleží na jazyku.

+1/0
21.6.2017 17:07

J90a15n 19C25h97o27d86u63r53a 1402469963173

Tipl bych si, že je to tím, že programátoři s tabem jsou trošku bezohlední a nevnímající souvislosti, co může tab způsobit ostatním. A takový už z principu bude dostávat méně peněz.

+1/−1
21.6.2017 15:54

J32a88n 21C41h90o54d39u78r94a 1522339243633

A samozřejmě ne všude a vždy to platí. Jestli je programátor donucen firmou mít firemní code style, tak nenadělá nic. Tady to ale třeba pak může stejně platit o firmě, že firma s tabelátory platí méně (její kod může být hůře sdílený).

Trochu přeženu, firmy nepoužívající Version Control určitě platí míň než ty používající. Tak podobně to může platit u Tabů/mezer

0/0
21.6.2017 16:00

M58a50r69t91i63n 62K83o23r76e97c 4914280825799

Ať si hlavně sáhnou do svědomí ti, co vůbec neodsazují

0/0
21.6.2017 15:35

R18a73d13i87m 51Z43a41t10o87p34e64k 9972885662187

Takoví ještě existují?

0/0
22.6.2017 14:05

T61o36m23á72š 73L12u32d14v12í69k 1530437544482

Visual Studio odsazuje samo klávesou ENTER. To ostatní programují v poznámkovém bloku?

0/0
21.6.2017 15:32
Foto

P74a44v42e98l 36K56a98s86í77k30, 35T22e25c19h68n13e38t96.84c34z

Jde o odsazení zleva. Programátoři pracují v tolika různých editorech a IDE, že by to vydalo na samostatný článek (či spíše knihu). Údaje o tom jsou ostatně také v tom průzkumu, který v článku odkazuji. Mezi nejoblíbenější patří Notepad++, Visual Studio, Sublime Text, Vim, Atom, Xcode, Emacs a Eclipse.

0/0
21.6.2017 17:12

Z20d89e39n91ě68k 17H44r70u80b83ý 9484738862

Ale nyní se nabízí otázka, přejdou-li tabulátoři na mezery, dostanou víc peněz? Nedostanou. Neboť je to podobný problém jako u ankety, kde zjistili, že kdo snídá bere víc peněz. A kdo začal snídat, dohnal výší výplaty, ty co snídali od začátku? Nedohnali, neboť výše výplaty se odvíjí celkovým přístupem k životu, což u snídaně lze pokládat jako plus.

0/0
21.6.2017 15:13

P66e43t85r 89N63ě55m66e81c 4150363360937

Jen upřesním, že v Pythonu na mezerách/tabulátorech, prostě odsazení, záleží, není to jen pro potěchu oka programátorů.

+1/0
21.6.2017 14:51
Foto

P53a76v20e88l 92K10a49s14í57k62, 50T33e52c68h43n86e91t52.16c49z

Já vím, připomínalo mi to více lidí. V článku píšu "obvykle" a "prakticky".

0/0
21.6.2017 17:14

P51e72t51r 31N12ě69m51e17c 4300773520187

Joo, v poho. :-) Nikdo nemůže znát všechny progr.jazyky a jejich záludnosti. :-)

+2/0
21.6.2017 17:56

D34a64v41i22d 89R93y69c93h55e72t47s61k84ý 9336491400130

anketa R^

+3/0
21.6.2017 14:29

Najdete na iDNES.cz