abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

včera 12:00 | Nová verze

Po cca 3 týdnech od vydání Linux Mintu 18.3 s kódovým jménem Sylvia a prostředími MATE a Cinnamon byla oznámena také vydání s prostředími KDE a Xfce. Podrobnosti v poznámkách k vydání (KDE, Xfce) a v přehledech novinek s náhledy (KDE, Xfce). Linux Mint 18.3 je podporován do roku 2021.

Ladislav Hagara | Komentářů: 6
15.12. 12:55 | Nová verze

Byla vydána verze 17.12.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi. Aplikace, které nebyly dosud portovány na KDE Frameworks 5, byly z KDE Aplikací odstraněny.

Ladislav Hagara | Komentářů: 47
15.12. 03:00 | Komunita

Na Humble Bundle lze získat počítačovou hru Company of Heroes 2 (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 0
15.12. 02:00 | Zajímavý software

Christian Kellner představil na svém blogu projekt Bolt řešící bezpečnost rozhraní Thunderbolt 3 na Linuxu. Pomocí příkazu boltctl nebo rozšíření GNOME Shellu lze komunikovat s démonem boltd a například zakázat neznámá zařízení a předejít tak útokům typu Thunderstrike nebo DMA.

Ladislav Hagara | Komentářů: 8
15.12. 01:00 | Nová verze

Po půl roce vývoje od vydání verze 11.0 byla vydána verze 11.1 svobodného softwaru pro vytváření datových úložišť na síti FreeNAS (Wikipedie). Nejnovější FreeNAS je postaven na FreeBSD 11.1. Přehled novinek v příspěvku na blogu. Zdůraznit lze zvýšení výkonu OpenZFS, počáteční podporu Dockeru nebo synchronizaci s cloudovými službami Amazon S3 (Simple Storage Services), Backblaze B2 Cloud, Google Cloud a Microsoft Azure

Ladislav Hagara | Komentářů: 0
14.12. 23:55 | Nová verze

Po dvou měsících vývoje od vydání verze 235 oznámil Lennart Poettering vydání verze 236 správce systému a služeb systemd (GitHub, NEWS).

Ladislav Hagara | Komentářů: 10
14.12. 20:00 | Nová verze Ladislav Hagara | Komentářů: 0
14.12. 19:33 | Pozvánky

Pražská Fedora 27 Release Party, oslava nedávného vydání Fedory 27, se uskuteční 19. prosince od 19:00 v prostorách společnosti Etnetera (Jankovcova 1037/49). Na programu budou přednášky o novinkách, diskuse, neřízený networking atd.

Ladislav Hagara | Komentářů: 0
14.12. 18:11 | Nová verze

Byla vydána verze 2.11.0 QEMU (Wikipedie). Přispělo 165 vývojářů. Provedeno bylo více než 2 000 commitů. Přehled úprav a nových vlastností v seznamu změn.

Ladislav Hagara | Komentářů: 0
14.12. 17:44 | Komunita

Canonical oznámil dostupnost kryptografických balíčků s certifikací FIPS 140-2 úrovně 1 pro Ubuntu 16.04 LTS pro předplatitele podpory Ubuntu Advantage Advanced. Certifikace FIPS (Federal Information Processing Standards) jsou vyžadovány (nejenom) vládními institucemi USA.

Ladislav Hagara | Komentářů: 3
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (8%)
 (0%)
 (1%)
 (1%)
 (76%)
 (14%)
Celkem 1003 hlasů
 Komentářů: 45, poslední 1.12. 19:00
    Rozcestník

    Z celého internetu píšu právě sem. Zajímá vás proč?


    Od určité doby jsou všechny texty které zde publikuji verzované na Githubu.

    Pokud najdete chybu, nepište mi do diskuze a rovnou jí opravte. Github má online editor, není to skoro žádná práce a podstatně mi tím usnadníte život. Taky vás čeká věčná sláva v commit logu :)


    Pokud se vám líbilo něco z mé produkce, můžete svou přízeň vyjádřit v kryptoměnách:

    • BTC: 13CS7yKTcqPQUH2hrcuFsqf1AKr4gThZTD

    Ne že bych je nějak potřeboval, ale patří to k věcem, které autory obecně potěší a jasně ukazují, že jsou lidi, kteří ty hodiny času stráveného psaním umí ocenit.


    Víte že můžete odebírat mé blogy pomocí RSS?

    Aktuální zápisy

    Sublime Text 2

    16.2.2013 16:05 | Přečteno: 3617× | Názory | Výběrový blog | poslední úprava: 3.7. 15:42

    Po letech marného hledání jsem konečně nalezl editor, který mi stoprocentně vyhovuje. Jedná se o komerční editor Sublime text 2.

    Ohledně Sublime toho bylo na webu napsáno již docela dost, přesto si nemohu odpustit tento blogpost, jelikož se skutečně jedná o to nejlepší řešení editace, na které jsem za dlouhá léta narazil.

    Aby jste si nemysleli, že mluvím jen tak do větru - zde je seznam editačních programů, které jsem během osmi let používal déle než měsíc:

    Editory

    IDE

    Konzolové editory

    S každým z těchto editorů jsem se několik měsíců pokoušel sžít, abych ho poté s radostí vyměnil za další z nich. Jak jste si možná všimli, vyzkoušel jsem i různá IDE, jenž mi ovšem také nikdy plně nevyhovovala, hlavně co se pomalosti reakcí týče.

    Na rozdíl od ostatních editorů jsem na Sublime nenarazil náhodně na internetu, ale bylo mi doporučeno na IRC, i když jsem se neptal. Někdo prostě přišel a řekl: "Sublime je fakt nejlepší editor, který jsem kdy používal, zkus ho". Tak jsem ho zkusil a musel jsem mu dát za pravdu. U žádného jiného editoru jsem nikdy neměl ten pocit "tak jsem to našel, konečně jsem dorazil domu a nic jiného nehledám".

    Intuitivnost editace

    Jedna z věcí, které si na Sublime nejvíce vážím je intuitivnost editace. Vás se to možná týkat nemusí, ale co se mě týče, je vše přesně tam, kde bych to hledal, klávesové zkratky fungují téměř přesně tak jak bych čekal a v menu se položky nacházejí tam, kam bych je zařadil i já. To je velmi důležitý prvek, který jistě pochopí všichni, kdo se kdy zkoušeli skamarádit s VIMem*.

    Náhledovátko

    Vedle pravého posuvníku se ukazuje náhledovátko, které vám zobrazuje strukturu dokumentu a umožňuje se intuitivně pohybovat skrze dokument. Je to nejenom pěkná věcička, kterou vám budou ostatní závidět, ale i užitečný nástroj, protože skutečně usnadňuje pohyb v dokumentu - buď můžete kliknout, což způsobí skok na zadaný kus textu, nebo kliknout a táhnout, čímž plynule scrollujete skrz dokument.

    Interní příkazový řádek

    Interní příkazový řádek je další věc, kterou můžou ostatní editory Sublime závidět. Díky němu můžete editor po stisknutí CTRL+SHIFT+P ovládat a konfigurovat ve stylu VIMu, až na to, že nepoužíváte kryptické klávesové zkratky ala :wq, ale místo toho se fuzzy vyhledáváním pohybujete v relativně přehledných seznamech položek.

    Výše zmíněné fuzzy vyhledávání je skvělá věc, pod kterou si můžete představit nerozlišování velikosti písmen a ignoraci znaků, které se nacházejí mezi těmi které chcete hledat. Jak to funguje v praxi myslím dobře dokumentuje následující obrázek:

    Makra

    Poprvé v životě jsem také v Sublime použil makra a musím uznat, že nyní nechápu, proč jsem se jim tak dlouho vyhýbal.

    Jejich použití je (nejen v Sublime!) triviální; Stisknete klávesovou zkratku pro začátek nahrávání, provedete několik editačních kroků a poté můžete zaznamenané makro stiskem další klávesové zkratky přehrávat. To je velmi vhodné na nudnou práci, kde potřebujete stereotypně upravit větší počet záznamů, případně pokud potřebujete definovat složitější chování editoru, na které se vám ale nechce psát plugin.

    Samozřejmostí je ukládání maker a případné mapování na vlastní klávesové zkratky.

    Vícenásobná editace

    Sublime vám pomocí klávesových zkratek, či kliknutím s CTRL umožňuje vložit kurzor na vícero míst najednou, takže pak píšete do několika míst v dokumentu zároveň. 

    Na první pohled možná blbost, pro mě je to však velmi pěkná vlastnost, na které mě nejvíc ze všeho těší, že jí díky její jednoduchosti implementace skutečně používám.

    Hexeditor

    Pokud v Sublime otevřete binární soubor, umožní vám ho editovat v jednoduchém hexeditoru. Není to nic převratného, ale patří to k věcem, které potěší.

    Plná konfigurovatelnost

    A slovem plná myslím skutečně plná - zatím jsem nenarazil na věc, která by se v Sublime nedala konfigurovat. Toto se skutečně nedá srovnávat s menu konfigurací u ostatních editorů, kde si můžete nastavit pár základních věcí. V souboru s default konfigurací se nachází 326 řádek, ve kterých je obsažena naprostá většina toho, co kdo může chtít nastavit.

    Před nějakou dobou jsem nezávazně uvažoval o napsání editoru, který by toho sám o sobě moc neumožňoval, jen poskytoval API a možnost na něj věšet vlastní callbacky a tím si ho plně přizpůsobit.

    Sublime k této myšlence nemá moc daleko, protože umožňuje používat spousty pluginů. K dokonalosti to dotáhl plugin Package controll, který vám umožňuje spravovat nainstalované pluginy ve stylu package manageru z linux distribucí - na speciální příkazové řádce si ze seznamu vybíráte co chcete nainstalovat, či odinstalovat.

    Pluginů existují desítky, ne-li stovky a každou chvíli vznikají nové, což je další rozdíl oproti většině ostatních editorů, kde pluginů najdete pár desítek a jejich instalace bývá často pěkně otravná. V Sublime se jedná o záležitost stisknutí CTRL+SHIFT+P, napsání "inst", který díky fuzzy vyhledávání označí package manager a pak si již šipkami vybíráte ze seznamu pluginů dostupných v repozitáři, které budou po stisknutí ENTERu nainstalovány.

    Licence

    Jediná "slabina" Sublime je jeho licence - jedná se o komerční produkt, který je ovšem možné v rámci časově neomezeného testování používat jak dlouho chcete**:

    Sublime Text may be downloaded and evaluated for free, however a license must be purchased for continued use.

    Editor vás během evaluace při každém ~20 uložení souboru upozorňuje, že máte zvážit zakoupení licence.

    Cena lincence je $59 a rozhodně mám v plánu si jí koupit****, jakmile dokončím proces evaluace ;)

    tl;dr

    Sublime text 2 je super, doporučuji.

    Poznámky

    * Ne že bych měl něco proti VIMu, je to jediný konzolový editor, který po všech těch letech stále používám.

    ** Tohle je dle mého názoru přístup jak má být - tvůrce umožní používat SW prakticky bezplatně***, a pokud vám vyhovuje a cítíte se na to, zaplatíte za licenci.

    *** Ano, uvědomuji si, že za něj máte platit jakmile si ho vyzkoušíte, ale prakticky vám nic nebrání v tom ho používat jak dlouho chcete.

    **** Stalo se v březnu 2014

           

    Hodnocení: 75 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    16.2.2013 16:16 Ivorne | blog: Ivorne
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Ta vícenásobná editace je dobrá věc. Pro mě je to u editoru skoro už podmínka. Používám Geany a Code::Blocks a oba to umí (akorát každý trošku jinak, což je občas matoucí).
    Bystroushaak avatar 16.2.2013 21:22 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jak funguje vícenásobná editace v geany? Teď jsem se snažil umístit kurzor na víc míst, ale celé to působilo dost rozpačitě.
    bertone avatar 16.2.2013 22:06 bertone | blog: Bertone | Bratislava
    Rozbalit Rozbalit vše Re: Sublime Text 2
    tiež som o tejto funkcii nevedel. Stlač Ctrl + Shift resp. Alt + Shift vo Win a označ. Čakal som trochu viac, ale poteši.

    Viac v manuáli Column mode editing (rectangular selections)
    Bystroushaak avatar 16.2.2013 22:16 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jo, to se mi povedlo, ale funguje to jinak, než v Sublime. Tam si můžeš do souboru vložit libovolný počet kurzorů na libovolná místa, v Geany to podle všeho jde jen na rectangular selection, což mi nepřijde moc užitečné.
    17.2.2013 15:39 Marv-CZ | skóre: 21
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Vícenásobnou editaci umí i třeba gedit (byť pomocí rozšíření).
    18.2.2013 01:02 ...
    Rozbalit Rozbalit vše Re: Sublime Text 2
    "Po letech marného hledání jsem konečně nalezl editor, který mi stoprocentně vyhovuje. Jedná se o komerční editor Sublime text 2."

    dobre rano stara mama
    19.2.2013 09:36 Marv-CZ | skóre: 21
    Rozbalit Rozbalit vše Re: Sublime Text 2
    A? To nebyla reakce na blog, ale na příspěvek v diskuzi. Který navozuje dojem, že vícenásobná editace je nějaká vzácná funkce u pokročilých editorů.
    Zkoušel jsem, dobrý editor, ale vrátil jsem se k Geditu (zapada do systemu) a Eclipse (kdyz potrebuju IDE).
    16.2.2013 17:01 AA
    Rozbalit Rozbalit vše Re: Sublime Text 2
    *nix users - looking for/programming best text editor since 1975...
    16.2.2013 17:54 SPM | skóre: 28
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jako IDE používám IntelliJ IDEA; tu jsem v tom tvém seznamu neviděl :) některé ty funkce v ní jsou taky. Na druhou stranu na editaci jednoho souboru používat celé IDE je tak trochu na hlavu :)
    Bystroushaak avatar 16.2.2013 17:59 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jo, tu jsem nikdy nepoužíval, vždy jsem tak nějak měl pocit, že je placená a navíc java oriented.
    kozzi avatar 16.2.2013 20:13 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: Sublime Text 2

    Tak Java oriented sice je ale to se tyka hlavne te verze zadarmo, ta placena ti umoznuje perfektni praci v ruby, PHP, python a mnohem vice. Popravde ja jsme na tom byl podobne jako ty, a taky si po zkonceni zkusebni licence Intellij IDEA koupim jeji plnou verzi :).

    Dokonce premyslim ze napisi podobnou odu na Intellij IDEA

    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    17.2.2013 00:29 SPM | skóre: 28
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Já měl koupenou už 10ku :) jenom mě teď docela nasrali s tou akcí s koncem světa - 75% sleva a já koupil upgrade asi týden předtím... Pak jsem nadával, že žádný konec světa nebyl :)
    kozzi avatar 17.2.2013 11:53 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: Sublime Text 2

    Jo, to ja si te akce vsiml den pote, taky jsem myslel ze me trefi slak :D

    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    17.2.2013 00:29 SPM | skóre: 28
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Já v tom povětšinou bastlim python :)) Resp. ono se to má nějak tak, že oni mají samostatní IDE pro python, php, ruby a další, která jsou s cenou o něco levnější. Anebo můžeš koupit ideu, kde máš javu a to všechno ostatní do ní jde přidat jako plugin.
    coder avatar 16.2.2013 18:12 coder | skóre: 4 | blog: lINUKS
    Rozbalit Rozbalit vše Re: Sublime Text 2
    16.2.2013 18:18 chrono
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Sublime Text bude čoskoro vo verzii 3, takže treba pozrieť, či sa oplatí počkať na verziu 3, alebo bude lacnejšie kúpiť si licenciu pre verziu 2 a potom upgrade na verziu 3.
    16.2.2013 18:22 chrono
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Takže podľa blogu novo zakúpené licencie sú už licencie pre Sublime Text 3 (ale fungujú aj pre verziu 2) a cena stúpla z 59$ na 70$.
    Bystroushaak avatar 16.2.2013 21:21 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jo, $70 je hafo. Osobně tenhle krok tvůrců moc nechápu, vzhledem k tomu, že placení v podstatě nepovinné.
    18.2.2013 16:11 JackuB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    *tvůrců => Píše ho jeden člověk ;)
    Jakou verzi si koupit? V téhle rovině vůbec neuvažuju.
    16.2.2013 18:40 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Zkoušel jsem, jenže bohužel neměl žádnou podporu pro méně známé programovací jazyky a nenašel jsem ani žádné pluginy, které by to napravily.
    Bystroushaak avatar 16.2.2013 21:19 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jo, taky jsem nenašel podporu Rebolu. Na druhou stranu, nic ti nebrání napsat plugin, jedná se o nějaký na jsonu založený formát.
    16.2.2013 18:55 lambdabot
    Rozbalit Rozbalit vše Re: Sublime Text 2
    nemuzu si pomoct, ale vimu/gvimu s pluginama (taglist, project, mru, haskellmode, pyflakes, pydoc, …) a doladenou konfiguraci ve .vimrc se zatim nic nevyrovnalo.
    Bystroushaak avatar 16.2.2013 21:18 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    16.2.2013 21:30 luv | skóre: 18 | blog: luv
    Rozbalit Rozbalit vše Re: Sublime Text 2
    pyflakes, pydoc, ... koukni na jedi-vim ... to u me posunulo vim jeste o deset levelu nahoru :-)
    16.2.2013 19:06 extremni lama | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jsou k tomu zdrojaky?

    Jestli ne tak se nabizi spojitost s jednim slavnym vojenskym manevrem
    The enemy of my enemy is still my enemy.
    Bystroushaak avatar 16.2.2013 21:14 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Je to komerční produkt, takže předpokládám že ne.

    Na druhou stranu, je to komerční produkt, takže kdyby se něco podobného zjistilo, byla by to jeho smrt, což jde proti zájmům autora.
    16.2.2013 21:36 anonymator | skóre: 3 | blog: anonymator
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Záleží na okolnostiach.

    Pokiaľ ide o obyčajného autora, ktorý sa svojim produktom živí, potom určite nemá veľkú motiváciu zničiť existujúci zdroj príjmov vidinou ziskov z podvodu.

    Pokiaľ však autora živí nejaká americká trojpísmenková organizácia...
    Bystroushaak avatar 16.2.2013 21:39 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Pokiaľ však autora živí nejaká americká trojpísmenková organizácia...
    Aha. Co ti přesně zajistí, že podobná organizace neživí někoho z těch, kteří ti poskytují ostatní software? Ty si skutečně čteš veškeré zdrojáky toho co používáš? Pokud ano, umíš v nich najít všechny 0day chyby, které by třípísmenková organizace viděla imho mnohem radši než nesmyslné trojany, které je dnes triviální detekovat?
    16.2.2013 22:45 extremni lama | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Sublime Text 2
    na 100% ti to nezajisti nic, ale pri pouzivani open source mas mnohem mensi pravdepodobnost.

    A doufam ze chapes ze uvaha: "na 100% nejde nic zabezpecit => nema cenu se snazit o bezpecnost" je chybna...
    The enemy of my enemy is still my enemy.
    Bystroushaak avatar 16.2.2013 22:55 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    A doufam ze chapes ze uvaha: "na 100% nejde nic zabezpecit => nema cenu se snazit o bezpecnost" je chybna...
    Já se o security zajímám už docela dost dlouho, takže tohle mi nemusíš vysvětlovat :)
    16.2.2013 23:05 Ovocníček
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jsou k tomu zdrojaky?

    Jestli ne tak se nabizi spojitost s jednim slavnym vojenskym manevrem
    Jasně, každej ví, že alkajdovci používají na nejcitlivjší dokumnety programátorské editory. Proto si člověk musí dávat majzla, jinak mu američani budou číst jeho seznam pornofilmů, že. ;P
    18.2.2013 01:05 ...
    Rozbalit Rozbalit vše Re: Sublime Text 2
    samotna binarka je zdrojak v binarnej podobe
    oryctolagus avatar 16.2.2013 19:10 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Příloha:
    To bude asi ňáká telepatie, Sublime Text 2 používám od včera ;-) Přišel jsem na něj úplnou náhodou z fotky na wikipedii v článku Software bug :-D

    Pro milovníky tmavých témat & vzhledů a světlého textu na tmavém pozadí doporučuju dev verzi Sublime spolu s tématem "Soda Dark", v něm je pořešen levý sloupec s prohlížečem složek, který jinak nejde nastylovat na tmavo. Viz screenshot.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    Bystroushaak avatar 16.2.2013 21:16 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Synchronicita :) Jinak ten blogpost mám napsaný už skoro měsíc, dnes jsem jen zachytil informaci o releasu bety další verze, tak jsem se rozhodl ho publikovat než bude kompletně outdated.
    oryctolagus avatar 17.2.2013 14:50 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: Sublime Text 2
    ;-)

    Jinak teď jsem zjistil, že podpora pro TODO/FIXME/BUG/... ve zdrojácích není nic moc :-/
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    17.2.2013 14:58 chrono
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Viac vecí tam funguje dosť zvláštne. Napr Expand selection to scope funguje celkom použiteľne pre C, ale pre Python je to takmer nepoužiteľné.
    kozzi avatar 16.2.2013 20:17 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: Sublime Text 2

    Zkousel jsem a byl jsem ohromen. Je to opravdu perfektni nastroj. Bohuzel jsem nenasel pro nej vyuziti. Pro obycejnou obcasnou editaci nejakeho souboru staci pouzit cokoliv (vim, geany) a co se tyka nejakeho programovani tak tam mi prijde vhodnejsi pouzit IDE

    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    Bystroushaak avatar 16.2.2013 21:15 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    No, já ho používám na všechno :)
    16.2.2013 20:35 frdrx | skóre: 29 | blog: frdrx
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Emacs navždy.
    Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
    Bystroushaak avatar 16.2.2013 21:58 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jo, Emacs má některé zajímavé featury :)
    17.2.2013 11:59 frdrx | skóre: 29 | blog: frdrx
    Rozbalit Rozbalit vše Re: Sublime Text 2
    No vida, přesně tohle jsem hledal.
    Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
    herne the hunter avatar 16.2.2013 21:13 herne the hunter | skóre: 10 | tor lara
    Rozbalit Rozbalit vše Re: Sublime Text 2
    asi pred rokem jsem ho tak 3 dny testoval. pak jsem na nej nesahnul asi mesic a kdyz jsem ho chtel pustit znovu, tak uz to neslo. vyskocila na me nejaka hlaska s tim, ze mam pesek a musim si stahnout novejsi verzi ci co. jelikoz me nijak zvlast neoslnil (to bych spis presel na emacs), tak tim to pro me skoncilo :)

    btw kdyz uz jsme u toho, pochopil jsem spravne, ze clovek nemuze mit ve splitu otevrenej ten samej soubor?

    kazdopadne kazdemu co jeho jest…
    i am herne the hunter and you are a leaf driven by the wind.
    Bystroushaak avatar 16.2.2013 21:24 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    btw kdyz uz jsme u toho, pochopil jsem spravne, ze clovek nemuze mit ve splitu otevrenej ten samej soubor?
    To je momentální chyba dvojkové verze, ve trojce to bylo upraveno. Jinak na to samozřejmě jsou doplňky, jejichž instalace je záležitostí 20 vteřin :)
    Josef Kufner avatar 17.2.2013 01:03 Josef Kufner | skóre: 67
    Rozbalit Rozbalit vše Re: Sublime Text 2
    A co ti, kteří se zkusili skamarádit s Vimem a uspěli?

    Tu vícenásobnou editaci Vim umí taky, ale úplně jinak a nevypadá to tak efektně. Makra jsou užitečná věc, to má Vim taky. Náhled by se občas hodil, ale asi bez něj dokážu žít, kdyžtak stačí zmenšit písmo na něco hodně malého a pak zas zpět.
    Hello world ! Segmentation fault (core dumped)
    Bystroushaak avatar 17.2.2013 01:33 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    A co ti, kteří se zkusili skamarádit s Vimem a uspěli?
    Jak jsem poznamenal v samotném blogpostu, mezi tyto lidi se řadím i já. Problém je, že VIM nikdy nebyl úplně přirozený způsob editace, což doufám všichni uznávají. Neříkám tu nic o efektivitě, ta je pokud se ho člověk naučí nejspíš jedna z největších, ale osobně mě nebaví se celý život učit pracovat s editačním nástrojem. Přesto po něm sáhnu, pokud potřebuji něco nastavit přes SSH a celkově k němu mám pozitivní postoj, ale sublime je pro mě prostě lepší.
    25.2.2013 02:28 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Sublime jsem vyzkoušel před dávnou dobou. Nezaujal mě.

    Sublime je pokus udělat z textového editoru graficky vizuální dílo.

    Vim používám mnoho let, ale v zásadě už ho neumím. Jednou jsem si ho nastavil, naučil se několik základních příkazů a tím to hasne.

    Vim má četné nevýhody, asi největší je bajtový podivný polopřístup k Unicode, poněkud zvláštní undo a jeho snahu definovat si pro psaní vlastní klávesnici aniž by psal jako ta v operačním systému (pokud někdo poradíte, jak to změnit ve Windows aby vim sázel znaky ze systémového klávesového layoutu, budu vděčný).

    Na druhé straně pak už jsou jen výhody.

    Jednou nastavený vim (a jednou zkompilovaný vim) jede přesně tak, jak to potřebuji či jak se mi to líbí. Jen minimálně mi do něho někdo vnáší představu, jak já bych měl pracovat podle představ nějakého maníka kdesi někde.

    Sublime se snaží předstírat (programátorovi), že je ničím co není. V zásadě vytváří jakési „wizardy“ (třeba na konfiguraci) na řadu akcí aby zastřel, že za tím je podobná věc jako ve vimu.

    Co na vimu miluji, je několik režimů a hlavně důsledek několika režimů. Žádné zkratky s pěti klávesami najednou.

    Dále na vimu miluji to, že je to v zásadě transakční databáze pro texty. Když zbuchne komp, nebo několik hodin neukládám, vim text obnoví.

    Jediný vyhovující editor nad vimem je pro mě editor, který si sám naprogramuji podle svých potřeb. Po 25 letech hledání editorů jsem zjistil tuto pravdu.

    Bystroushaak avatar 25.2.2013 13:28 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jediný vyhovující editor nad vimem je pro mě editor, který si sám naprogramuji podle svých potřeb. Po 25 letech hledání editorů jsem zjistil tuto pravdu.
    Nad tím jsem uvažoval, ale co se tohoto týče, jsem zbabělec, vždy když mi dojde, kolik práce by to chtělo, tak mě chuť přejde.
    mirec avatar 17.2.2013 08:52 mirec | skóre: 31 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Naučenie sa vim-u tak, aby človeku pripadal prirodzene je tak na pár rokov ;-)
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    25.2.2013 02:31 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Sublime Text 2
    U mě to trvalo asi 2 hodiny s textem Satrapy.

    Složitost vimu se podle mě přeceňuje.

    Není třeba udělat doktorát z vimu, jen s ním umět běžně (s důrazem na slovo běžně) zacházet.

    Fluttershy, yay! avatar 25.2.2013 03:05 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Naučit se přepínat mezi režimy, ukládat a načítat soubory, kopírovat text apod. není problém. Horší je zažít si věci, které jsou na Vimu IMHO tak zajímavé, a sice skákání na další/předchozí závorku/slovo/větu/odstavec/... a kombinace s těmi ostatními funkcemi, příp. makra. Mám-li být upřímný, to se mi nikdy tak docela nepodařilo. Další věci jako zásuvné moduly už jsou legrace — problém je, že oproti Emacsu mi některá funkcionalita chybí (v souvislosti s Lispem, dále třeba Org-mode). Ultimátním řešením by mohl být Emacs+evil, ale zvyknout si na něco takového není úplně sranda na dva víkendy.
    Josef Kufner avatar 25.2.2013 11:08 Josef Kufner | skóre: 67
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jenže jakmile zvládneš takový základ, tak další specialitky jsou už volitelné. Tedy nemusíš je zvládnout hned a můžeš se k nim dostat postupně a jen k těm, které se ti hodí. U obyčejných editorů umíš základ hned, ale pak nemáš kam růst. S Vimem máš pořád prostor ke zlepšování.
    Hello world ! Segmentation fault (core dumped)
    Fluttershy, yay! avatar 25.2.2013 11:30 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jaký základ? Zvyknout si typicky na ten lepší pohyb po textu tak, aby byl přirozený, není žádná sranda, zvlášť když je zcela neintuitivní (což je obecně vlastnost Vimu) a výchozí klávesové zkratky/příkazy mi nevyhovují.
    Josef Kufner avatar 25.2.2013 12:16 Josef Kufner | skóre: 67
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Co je na šipkách neintuitivního?

    Klávesy hjkl jsem snad nikdy pro pohyb nepoužíval. Jen šipky, občas se shiftem nebo ctrl pro skákání po slovech, pak 'i' na přepnutí do vkládacího režimu, 'v'/'V' na výběr textu a 'y'/'p' na kopírování/vkládání. Delete a backspace fungují ve vkládacím režimu normálně. Undo/redo je 'u'/ctrl+r. Tím máš základ hotový.

    Pak můžeš pokračovat s '{', '}' pro skákání po odstavcích. A začít s kouzlením, tedy s kombinacemi pohybu a operací. Pak objevíš užitečnost tečky (opakování poslední operace) zejména v kombinaci s vyhledáváním. K tomu přihoď sloupcový výběr textu a jsi daleko za možnostmi většiny editorů… a to jsi sotva začal.
    Hello world ! Segmentation fault (core dumped)
    Fluttershy, yay! avatar 25.2.2013 12:31 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Právě na web%{} atp. jsem si nedokázal zvyknout natolik, aby použití bylo automatické. Tím myslím asi jako šipky a Ctrl+C/V u většiny lidí.
    25.2.2013 20:01 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jeste pridat {{{ foldovani }}} a pro makra jsem si na hjkl nakreslil sipky :)
    xkucf03 avatar 25.2.2013 20:23 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Co je na šipkách neintuitivního?
    Třeba to, že na některých systémech ve VI(Mu) nepohybují kurzorem, ale vypisují nesmyslné paznaky. Totéž platí o několik dalších obvyklých kláves používaných při editaci textu.

    Muset se přepínat mezi dvěma režimy podle toho, jestli chceš písmena psát nebo je mazat, taky není zrovna intuitivní.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 25.2.2013 20:32 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Třeba to, že na některých systémech ve VI(Mu) nepohybují kurzorem, ale vypisují nesmyslné paznaky.

    Obávám se, že to jsou především systémy prehistorické nebo blbě nastavené.

    Muset se přepínat mezi dvěma režimy podle toho, jestli chceš písmena psát nebo je mazat, taky není zrovna intuitivní.

    Kde je řeč o intuitivitě? Neintuitivní je prakticky všechno nad rámec běžného klikacího UI a zkratek Ctrl+něco, ale i to je intuitivní jen proto, že si na to lidi zvykli, jelikož je to všude. Jenže to klikací UI a Ctrl+něco jsou pro změnu hraniční, co se nějaké ergonomie/efektivity týče (stačí se zeptat Google na "RSI Emacs" ohledně zkratek a zkusit si celoživotně furt sahat na myš (to zní jako perverzní prasárna) ohledně GUI).

    xkucf03 avatar 25.2.2013 21:50 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Obávám se, že to jsou především systémy prehistorické nebo blbě nastavené.
    Ano, třeba jeden taková jedna archiválie: UNIX, který má podporu až do roku 2014 a zatím poslední aktualizace na něm byla instalována vloni.

    Tak primitivní editor jako je Joe na něm funguje bezchybně. Zatímco ve vi/vim nefunguje ani taková základní věc, jako kurzorové šipky. Případně si stěžuje:
    Terminal too wide
    když to člověk má v okně na celou obrazovku při (dnes) obvyklém rozlišení.

    V GNU/Linuxu jsem jsem s VIMem na tyto problémy nenarazil, nicméně ani tak to není žádné velké potěšení s tím editorem pracovat. To už mě víc baví ten Emacs.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 25.2.2013 21:54 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Enterprise? Upřímnou soustrast.
    xkucf03 avatar 25.2.2013 22:03 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Ne, veřejná správa. V enterprise mám RedHat nebo nějaký jeho klon. Doma pak naštěstí Debian GNU/Linux nebo od něj odvozené distribuce. :-)
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 25.2.2013 22:16 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Hlavně, že si rozumíme. Taky mám kamaráda ve veřejné správě... a divím se, že mu ještě nejeblo.
    xkucf03 avatar 25.2.2013 19:58 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše jEdit
    U obyčejných editorů umíš základ hned, ale pak nemáš kam růst.
    Ale máš. Např. takový jEdit zvládne obsluhovat i BFU, může s ním klidně pracovat stejně jako s „notepadem“. Časem se naučí klávesové zkratky, nastaví si vlastní, doinstaluje pluginy, začne si psát makra, začne si psát vlastní pluginy
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 25.2.2013 20:25 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Problém je právě v tom způsobu ovládání ovládání. Navíc jEdit AFAIK není Emacs, tudíž ani ty možnosti nejsou zcela neomezené (zrovna s Lispem přímo v Emacsu jsem si chvíli hrál a byl to nářez).
    xkucf03 avatar 25.2.2013 21:53 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    V jEditu máš BeanShell (taková Java s volnější syntaxí), v něm se dají psát makra nebo zadávat ad-hoc příkazy + pluginy se píší v klasické Javě, takže možnosti jsou neomezené.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 25.2.2013 21:55 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Což bude ten problém.
    xkucf03 avatar 25.2.2013 22:08 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Problém? Kde?

    Uvnitř JVM ti může běžet kromě Javy i Python, JavaScript, Groovy, Scala, můžeš si napojit nativní knihovny napsané v C/C++ nebo čemkoli. Ale jestli víš o něčem flexibilnějším a rozšiřitelnějším…
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 25.2.2013 22:15 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Aha, ty myslíš Javu jako platformu. To by šlo překousnout, třeba Clojure bych rád zkusil. Ale Java jako jazyk? Quoth the raven, "Nevermore."
    xkucf03 avatar 25.2.2013 22:37 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Já jsem za Javu rád. Zvlášť když mám pracovat s nějakým programem, který jsem v životě nevidět – máš tu online dokumentaci v IDE, víš předem jakého budou ty objekty typu, jaké metody a vlastnosti mají dané třídy… kdyby tam byl místo toho třeba Python, to by mě asi jeblo. Nic ti ale nebrání si do jEditu dopsat něco v Clojure nebo Jythonu.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    mirec avatar 28.2.2013 11:18 mirec | skóre: 31 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: jEdit
    kdyby tam byl místo toho třeba Python, to by mě asi jeblo

    Nejaký rozumný dôvod, alebo len kopnutie si do jazyka, ktorý nepoznám? Už nie je stredovek a nástroje, ktoré vedia pri písaní zobrazovať nápovedu (dokonca vrátane typov argumentov a návratových hodnôt v prípade, že sa to niekomu chcelo dokumentovať) dávno existujú.

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    xkucf03 avatar 28.2.2013 23:15 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Bohužel znám a vidím, jak to brzdí vývoj (i u ostatních lidí). Napovídání sice funguje, ale díky té dynamičnosti často fungovat nemůže a pak je to takové věštění a programování stylem pokus omyl. Další věc je přílišná tolerance tohoto jazyka, která taky škodí – konkrétní příklad: v ifu kontrola pomocí find() zda jeden řetězec obsahuje jiný řetězec. Jenže -1 se zde vyhodnotí jako true a test projde. V jiném jazyku by tě kompilátor seřval a chybu bys opravil.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 1.3.2013 01:39 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Jenže -1 se zde vyhodnotí jako true a test projde. V jiném jazyku by tě kompilátor seřval a chybu bys opravil.
    Tím "jiným jazykem" nejspíš myslíš Javu :-D V C a odvozených jazycích (C++, D, Obj-C) je tohle úplně stejné. Tohle je kontroverzní otázka, každý na to má svůj názor... Já osobně tohle chování považuju za feature, ne bug. Naopak mě štve nutnost explicitně přetypovávat čísla na bool (nebo používat != 0 apod.) v jazycích jako Java, C# a dalších...
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    1.3.2013 10:44 Franta
    Rozbalit Rozbalit vše Re: jEdit

    Špatně:

    $ cat Test.java; javac Test.java && echo kompilace ok
    public class Test {
        public static void main(String[] args) {
            String s = "ahoj";
            if (s.indexOf("xxx")) {
                System.out.println("obsahuje");
            } else {
                System.out.println("neobsahuje");
            }
        }
    }
    Test.java:4: incompatible types
    found   : int
    required: boolean
            if (s.indexOf("xxx")) {
                         ^
    1 error

    (Python je ještě zákeřňější v tom, že find() si člověk spíš může splést nalezeno/nenalezeno a nacpat do IFu, zatímco u indexOf() tě to spíš ťukne, že to bude číslo a tudíž že do IFu musíš dát ještě rovnost/nerovnost s jiným číslem)

    Správně:

    $ cat Test.java; javac Test.java && echo kompilace ok
    public class Test {
        public static void main(String[] args) {
            String s = "ahoj";
            if (s.indexOf("xxx") > -1) {
                System.out.println("obsahuje");
            } else {
                System.out.println("neobsahuje");
            }
        }
    }
    kompilace ok

    Podle mých zkušeností se na odhalování podobných chyb vyplýtvá mnohem víc času než se ušetřilo tím, že někdo nemusel napsat > -1.

    Zneužívat číselné typy pro booleovské hodnoty je prasárna. Dnes se často doporučuje jít ještě dál: používat ve svých rozhraních co nejméně map, polí, seznamů, čísel, booleanů a dalších obecných typů a používat místno nich vlastní typy a enumy. Např. pro pohlaví osoby je lepší použít enum MUŽ/ŽENA místo nicneříkajícího booleanu, u kterého si někde bokem poznamenáme, že true je muž a false žena, nebo naopak.

    Nejsou to universální rady, najdou se výjimky, kdy je potřeba optimalizovat – dost záleží na tom, jestli je pro tebe dražší výpočetní výkon nebo lidská práce. Většinou je dražší práce a navíc vyžaduješ bezchybnost/spolehlivost – pak použiješ spíš enum nebo vlastní typ místo primitiv. A pokud někdo píše v Pythonu, tak nepředpokládám, že ho nějak trápí výkon HW a má ho dostatek.

    oryctolagus avatar 1.3.2013 14:47 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Podle mých zkušeností se na odhalování podobných chyb vyplýtvá mnohem víc času než se ušetřilo tím, že někdo nemusel napsat > -1.
    Moje zkušenost je, že tahle chyba nastala tím, že si někdo nepřečetl dokumentaci. Já nevim, proč bych já měl doplácet na to, že někteří lidé jsou líní dokumentaci číst.

    Krom toho, ono to je celkom jasné už z toho názvu "find" i bez dokumentace - to asi nebude funkce, která ověřuje eixstenci substringu, ale zjevně funkce, která ten substring hledá a vrací pozici. To úplně vybízí k tomu, že se člověk zamyslí a řekne si něco jako "Aha, jakpak se asi tahle funkce chová, když string není nalezen? Vratí nějakou specielní hodnotu? Vyhodí výjimku? Lepší kouknout do dokumentace."

    Sorry, ale pokud někdo tuhle úvahu neprovede, míst toho napíše if(find(string, substring)) {...} a očekává, že to bude ověřovat existenci substringu, je prostě vůl.
    Zneužívat číselné typy pro booleovské hodnoty je prasárna.
    A to je dogma kteréže církve? :-D Ať už kterékoli, já členem nebudu...
    Dnes se často doporučuje jít ještě dál: používat ve svých rozhraních co nejméně map, polí, seznamů, čísel, booleanů a dalších obecných typů a používat místno nich vlastní typy a enumy. Např. pro pohlaví osoby je lepší použít enum MUŽ/ŽENA místo nicneříkajícího booleanu, u kterého si někde bokem poznamenáme, že true je muž a false žena, nebo naopak.
    S tím souhlasim. To je ovšem úplně jiný problém. Všimni si, že i takové C++ ve verzi C++11 už obsahuje strongly typed enums.

    Zároveň ovšem měli autoři dost rozumu na to, aby nevyřadili slabě typované (ie. integerové) enumy, protože někdy se to prostě hodí; typicky pro bit flags. Zatímco v jiných jazycích (*ehm*, Java, *zkřípění zubů*) enumy pro bit flags použít nemůžeš a musíš jako magor definovat konstanty.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    1.3.2013 15:09 Franta
    Rozbalit Rozbalit vše Re: jEdit
    Moje zkušenost je, že tahle chyba nastala tím, že si někdo nepřečetl dokumentaci. Já nevim, proč bych já měl doplácet na to, že někteří lidé jsou líní dokumentaci číst.
    No, pokud budeš číst dokumentaci a budeš dostatečně pečlivý, můžeš klidně programovat komplexní informační systémy v BrainFucku nebo podobném jazyce.
    je prostě vůl.
    Já mu to vyřídím :-)

    Nicméně nemusí to být nutně vůl – stačí chvilka nepozornosti, běžná lidská chyba, omyl – a pokud jde takovým omylům bezpracně předejít, tím, že je kontroluje technika, jsem pro. Lidská práce je drahá – mu můžeš věnovat odhalování chyb v byznys logice.
    To je ovšem úplně jiný problém.
    To je úplně stejný problém – používáš obecný primitivní typ (číslo, boolean) a někde bokem si poznamenáš významy jednotlivých hodnot.
    oryctolagus avatar 1.3.2013 15:38 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    No, pokud budeš číst dokumentaci a budeš dostatečně pečlivý, můžeš klidně programovat komplexní informační systémy v BrainFucku nebo podobném jazyce.
    Vzhledem k tomu, že se mi nechce psát != 0, tak BrainFuck by se mi nechtěl psát už vůbec... ;-)
    To je úplně stejný problém – používáš obecný primitivní typ (číslo, boolean) a někde bokem si poznamenáš významy jednotlivých hodnot.
    No... nevim, jestli ti rozumim, jak by sis to teda u té funkce find() představoval? V C++ je tohle na některých místech řešeno konstantou npos, s kterou se porovnává...
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    1.3.2013 16:29 Franta
    Rozbalit Rozbalit vše Re: jEdit
    jak by sis to teda u té funkce find() představoval?
    -1 je v pořádku. Ještě lepší je null, ale někdy ho nemůžeme nebo nechceme použít (chceme vracet primitivní datový typ a nevyhazovat výjimku). V tom problém není.

    Problém je v tom, že si jazyk chybně vyloží -1 jako true – přitom tady -1 znamená, když už, tak false.

    Komické na tom je, že rozhodnutí vracet -1 pro nenalezeno (false) pochází zřejmě od stejných lidí, kteří zde rozhodli, že cokoli různé od 0 se vyhodnotí jako true.
    oryctolagus avatar 1.3.2013 18:21 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Problém je v tom, že si jazyk chybně vyloží -1 jako true – přitom tady -1 znamená, když už, tak false.
    V těchto jazycích to chybné není, -1 = 0xffff...ff = true. Ten problém je spíš v tom, že se snažíš použít jednu funkci pro dva různé účely. Přitom by bylo naprosto triviální napsat wrapper funkci třeba nazvanou 'contains()', která by vracela bool - to by bylo imho správné řešení, a bylo by to i čitelnější.

    Dělat ústupky lidem, kteří nečtou dokumentaci nebo používají funkce jinak, než jak byly navrženy, vede jen k dalším ústupkům a problémům.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    Bystroushaak avatar 1.3.2013 20:54 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: jEdit
    Ehm, jsem jediný, kdo k tomu používá in?
    mirec avatar 2.3.2013 06:45 mirec | skóre: 31 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: jEdit
    Nie, hádam každý pythonista ho používa dosť často. Občas však neriešim existenciu substringu (alebo niečoho podobného) a nechám rovno preublať výnimku. To však robím len v prípadoch, o ktorých viem, že nenastanú kým niekto nebude ručne manipulovať s cookies a podobne.
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    xkucf03 avatar 1.3.2013 21:47 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    -1 = 0xffff...ff = true.
    To je pouze technická implementace a určité konkrétní kódování čísla.

    Mně šlo o sémantiku, o logický význam: 0,1,2,3… = nalezeno = true + číslo udává pozici výskytu; -1 = nenalezeno = false (případně jiné záporné číslo může udávat důvod, proč nebylo nalezeno – pokud tedy nechceme použít výjimky).
    Dělat ústupky lidem, kteří nečtou dokumentaci nebo používají funkce jinak, než jak byly navrženy, vede jen k dalším ústupkům a problémům.
    A skutečně je to ústupek? Podle mého ne – IMHO by počítač měl být exaktní stroj, měl by být dostatečně „přísný“ a na neplatný vstup reagovat chybovou hláškou – ne se snažit uhodnout, co by to asi tak mohlo být a pokračovat. Za ústupek považuji naopak to magické přetypovávání.

    Tady se právě hezky ukazuje, jak automatické přetypování vede k nesmyslným výsledkům – případy, kdy je řetězec nenalezen i případy kdy je nalezen na vyšších pozicích spadnou do jednoho pytle – pouze případ, kdy je řetězec nalezen na první (nulté) pozici je vyhodnocen jinak.

    Logická hodnota je jeden bit, proč pro ni používat bajtové nebo několikabajtové číslo? Proč by mi odněkud mělo přijít číslo s významem logické hodnoty a navíc tak, že bude pasovat na to automatické přetypování? Vždyť to často právě nesedí – viz to hledání řetězce nebo třeba věk osoby – nikdo nemůže mít záporný věk, přirozené číslo znamená, že známe věk a nese jeho hodnotu, -1 může znamenat, že osoba nechtěla věk prozradit, -2 třeba že věk osoby nikdo nezná atd. (když nepoužíváme null/výjimky, tak si můžeme dohodnout zjevně nesmyslnou hodnotu pro předání informace o chybě/výjimce).

    Explicitní přetypování může znamenat zavolání jednopísmenkové funkce/makra, nikoho to nezabije – a naopak to v ostatních případech povede ke spolehlivějším programům s méně chybami.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Bystroushaak avatar 1.3.2013 22:21 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: jEdit
    Logická hodnota je jeden bit, proč pro ni používat bajtové nebo několikabajtové číslo?
    Protože na většině "moderních" architektur to tak není a používá se přinejmenším byte. Dejme tomu, že 0 = false, 1 = true. Co je pak celý zbytek do 255?
    xkucf03 avatar 1.3.2013 22:29 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Můžeš si taky uložit víc booleanů do jednoho bajtu a pak si je z něj zase vytáhnout.

    Jinak je zbytek nedefinovaný/nevyužitý.

    Pokud chceš použít všech 256 hodnot, máš z toho výčtový typ – v takovém případě si někde definuj konstanty pro jednotlivé hodnoty. Pokud chceš hodnotu použít i jako boolean, definuj si konverzní funkci. Klidně tu může být nějaká předdefinovaná funkce nebo konvence, kterou je snadné použít. Ale implicitní přetypování obecně jakéhokoli čísla na boolean považuji za chybu.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Bystroushaak avatar 2.3.2013 18:04 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: jEdit
    Můžeš si taky uložit víc booleanů do jednoho bajtu a pak si je z něj zase vytáhnout.
    Jo, to sice jo, ale adresace (chce si to pamatovat kam jsi který bit uložil, tedy nestačí ti jen adresa paměťové buňky, ale taky pozice v té buňce) a serializace/deserializace do byte ti sežere víc prostředků, než tím ušetříš.
    xkucf03 avatar 2.3.2013 10:56 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Mně šlo o sémantiku, o logický význam: 0,1,2,3… = nalezeno = true + číslo udává pozici výskytu; -1 = nenalezeno = false (případně jiné záporné číslo může udávat důvod, proč nebylo nalezeno – pokud tedy nechceme použít výjimky).

    BTW: když už mít nějaký výchozí způsob konverze čísla na boolean, tak by bylo dobré podporovat více variant od true i false – např.:

    • záporná čísla → false; konkrétní hodnota: důvod chyby/výjímky
    • kladná čísla → true; konkrétní hodnota: varianta pozitivního scénáře
    • nula → neznámá hodnota (jako null), vyhození výjimky, chyba, případně true nebo false

    Jinak ti to umožňuje popsat 255 chybových variant, ale jen jednu nechybovou (nebo naopak).

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 2.3.2013 15:58 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Tady se právě hezky ukazuje, jak automatické přetypování vede k nesmyslným výsledkům
    Ale vždyť to není pravda, ten nesmyslný výsledek je daný tím, že ta funkce byla prostě špatně použita. Úplně stejně můžeš k nesmyslnému výsledku dojít jakýmkoli jiným špatným použitím funkce/API. Opravdu nevim, jak z tohoto jednoho případu chceš vyvodit to zobecnění, že "automatické přetypování vede k nesmyslným výsledkům".
    případy, kdy je řetězec nenalezen i případy kdy je nalezen na vyšších pozicích spadnou do jednoho pytle – pouze případ, kdy je řetězec nalezen na první (nulté) pozici je vyhodnocen jinak
    O tom vůbec nemá smysl se bavit, protože ta funkce nikdy nebyla určena k použití stylem if(find(...)) {...}.
    Logická hodnota je jeden bit, proč pro ni používat bajtové nebo několikabajtové číslo?
    Protože CPU typicky neumí s jedním bitem efektivně pracovat, resp. pracuje se slovem (word), proto dává smysl ukládat bool do slova. Nicméně v některých jazycích můžeš optimalizovat a ukládat bool do jednoho bitu v případech, kdy to dává smysl. Např. v Qt tohle dělají interně v QStringu, afaik.
    Vždyť to často právě nesedí – viz to hledání řetězce nebo třeba věk osoby – nikdo nemůže mít záporný věk, přirozené číslo znamená, že známe věk a nese jeho hodnotu, -1 může znamenat, že osoba nechtěla věk prozradit, -2 třeba že věk osoby nikdo nezná atd. (když nepoužíváme null/výjimky, tak si můžeme dohodnout zjevně nesmyslnou hodnotu pro předání informace o chybě/výjimce).
    To jde úplně proti tomu, cos psal předtím, že není dobré zneužívat primitivní typy pro tyhle informace, poznamenávat si někde stranou, že -1 je to a ono, -2 je něco jinýho atd...
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    xkucf03 avatar 2.3.2013 20:29 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    O tom vůbec nemá smysl se bavit, protože ta funkce nikdy nebyla určena k použití stylem if(find(...)) {...}.
    Já ale v zásadě nerozporuji, zda se dané prostředí/jazyk chová deterministicky – věžím, že někde to popsané je a chová se to podle svých pravidel. Spor je o tom, zda se v daném prostředí/jazyce programuje příjemně, pohodlně, efektivně, bezpečně, spolehlivě… jak složitá je týmová spolupráce, jak snadné je udělat chybu…
    Protože CPU typicky neumí s jedním bitem efektivně pracovat…
    To by tě ale jako programátora aplikace nemělo zajímat. Ty bys měl deklarovat, že potřebuješ prostor pro uložení true/false – a je pak na interpretu, kompilátoru či virtuálním stroji, aby program na daném hardwaru vykonal co nejefektivněji. U takového programu je tu prostor pro optimalizace, třeba v dalších verzích kompilátorů (a spol.) nebo v dalších generacích hardwaru. Programy se pak mohou zrychlit, aniž by se změnil jejich kód. Pokud ale datové typy definuješ mlhavě, tohle možné není.

    Když potřebuješ místo dvou hodnot třeba 256 hodnot nebo víc, použij číselný typ (nebo enum, objekty atd.) a kompilátor bude vědět, že tady už optimalizovat nemůže a že potřebuješ celý ten deklarovaný prostor.

    BTW: nejde jen o CPU – data se ukládají do paměti, posílají po síti, ukládají do souborů…

    Např. objekt, který obsahuje různé atributy a z nich několik logických hodnot, se dá z optimalizovat docela hezky. Ovšem tyto atributy musí být deklarované jako boolean, ne jako číslo.
    To jde úplně proti tomu, cos psal předtím, že není dobré zneužívat primitivní typy pro tyhle informace, poznamenávat si někde stranou, že -1 je to a ono, -2 je něco jinýho atd...
    Proto tam píšu:
    když nepoužíváme null/výjimky
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 2.3.2013 23:37 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    To by tě ale jako programátora aplikace nemělo zajímat.
    Imho mělo. Programátor by se vždycky měl zajímat o to, jakým způsobem bude jeho kód na daném železe fungovat. Alespoň rámcově.

    Důsledkem tohohle přesvědčení jsou pak programátoři, kteří úplně kašlou na nějaké optimalizace a spoléhají, že za ně všechno vyřeší kompilátor, VM nebo interpreter.
    Ty bys měl deklarovat, že potřebuješ prostor pro uložení true/false – a je pak na interpretu, kompilátoru či virtuálním stroji, aby program na daném hardwaru vykonal co nejefektivněji.
    Souhlas, s tím, že člověk by měl mít možnost to ručně ovlivnit, pokud to potřebuje...
    Pokud ale datové typy definuješ mlhavě, tohle možné není.
    Na booleanu v pythonu/C/C++/... nevidim nic mlhavého a už vůbec nevidim, jak to souvisí s compile-time optimalizacemi...
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    xkucf03 avatar 3.3.2013 00:57 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Na booleanu v pythonu/C/C++/... nevidim nic mlhavého…
    Používat číselný typ pro uložení booleanu je „mlhavé“. Stejně jako používání řetězcových typů pro uložení určitého čísla – sice to tam uložit/serializovat můžeš, ale ztrácí se informace o původním konkrétním typu – místo toho se na všechno používá jeden obecnější typ.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 3.3.2013 01:31 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Používat číselný typ pro uložení booleanu je „mlhavé“.
    Afaik tohle dělá pouze C.

    Jinak tohle je obecně otázka type safety, imho. Zřejmě máš výhrady proti type unsafe jazykům. Nejsem si vědom toho, že by programy napsané v těchto jazycích byly zamořeny nějakým výrazně větším počtem chyb než programy napsané v typ safe jazycích. Ty jo?
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    xkucf03 avatar 3.3.2013 10:09 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Žádnou statistiku po ruce nemám. Ale mám celkem špatnou zkušenost s programy napsanými v Pythonu – když se pak podívám do konsole, tak to jsou často chyby typu volání neexistující metody, špatný počet parametrů atd. – tzn. věci, které by jinde odhalil už kompilátor. Případně „záhadné chování“ a „náhodná“ nefunkčnost – což tipuji na podobné chyby jako ta s tím findem v ifu.

    Obecně je to problém příliš volné vazby – takové programy se sice zdají být flexibilními, ale ve skutečnosti to vede k nevyzpytatelnému chování, obtížně odhalitelným chybám, které se neprojeví při kompilaci nebo spuštění programu a kdesi při jeho běhu.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 3.3.2013 13:05 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Osobní zkušenost nemusí být objektivní ;-) Já mam špatné zkušenosti s programy napsanými v lecčems, včetně i té Javy. Např. kdybych podle KDE4 posuzoval Qt nebo C++, dopadly by opravdu špatně, přitom ale oboje znám a vím, že v tom to nevězí.
    když se pak podívám do konsole, tak to jsou často chyby typu volání neexistující metody, špatný počet parametrů atd. – tzn. věci, které by jinde odhalil už kompilátor. Případně „záhadné chování“ a „náhodná“ nefunkčnost – což tipuji na podobné chyby jako ta s tím findem v ifu.
    Tohle ale zdaleka neplatí pouze pro Python, v podstatě jsi tím odsoudil celé rodiny jazyků (dynamic, type unsafe). V podstatě z toho vychází, že správně to dělá pouze Java nebo jazyky Javě dost podobně, což už píše David Jaša...
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    3.3.2013 13:19 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: jEdit
    Tohle ale zdaleka neplatí pouze pro Python, v podstatě jsi tím odsoudil celé rodiny jazyků (dynamic, type unsafe).

    IMO jedinou výhodou dynamicky typovaných jazyků (tj. staticky typovaných jazyků s jedním typem) může být jednoduchost. Ostatní výhody jsou na straně jazyků s bohatšími typovými systémy.

    3.3.2013 13:33 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: jEdit
    dynamicky typovaných jazyků (tj. staticky typovaných jazyků s jedním typem)
    >>> 'abc' + 2
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: cannot concatenate 'str' and 'int' object
    WTF? Ne, že bych byl v tom odborník, ale síla typové kontroly a statické/dynamické typování mi přijdu jako víceméně nezávislé vlastnosti.
    xkucf03 avatar 3.3.2013 15:45 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    'abc' + 2 … TypeError: cannot concatenate 'str' and 'int' object
    A přitom sčítání řetězců a čísel při ukládání do řetězcového typu je bezpečné a přirozené. Kompilátor ví, že výsledkem má být řetězec, tudíž není pochyb o tom, že + zde znamená spojit text a číslo, nikoli nějaké sčítání (součet řetězce a čísla nedává smysl).

    V Javě můžu napsat:
    String a = "cena je " + 100 + " Kč";
    System.out.println(a);
    a vypíše se Cena je 100 Kč.

    (jasně, jsou i efektivnější a elegantnější způsoby jak pospojovat text nebo vyplnit nějakou šablonu – ale tohle je diskuse o poměrně nízkoúrovňových věcech)
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 3.3.2013 16:22 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Takže implicitní přetypování intu na bool je fuj, zato implicitní přetypování intu na string je pohoda. OMG. Ok, tomuto vláknu už nic nepomůže, abandon! :-D
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    xkucf03 avatar 3.3.2013 16:42 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Nejde až tak o přetypování, jako spíš o to, s čím a jak je daný operátor (+) schopný pracovat. Všimni si, že
    String a = 100;
    ti neprojde:
    $ javac Test.java 
    Test.java:3: incompatible types
    found   : int
    required: java.lang.String
            String a = 100;
                       ^
    1 error
    (což je dobře)

    BTW: ani explicitní přetypování
    int i = 100;
    String a = (String)i;
    neprojde:
    $ javac Test.java 
    Test.java:5: inconvertible types
    found   : int
    required: java.lang.String
            String a = (String)i;
                               ^
    1 error
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 3.3.2013 20:50 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Takže to je v podstatě magická vlastnost operátoru + spolu se stringy a inty, nevycházející z žádného obecného principu.

    No, mnohem čistší mi přijde řešení typu C++, kde tuto vlastnost poskytuje stream, ie.:

    stream << "Cena je: " << 100 << " Kc\n";
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    xkucf03 avatar 3.3.2013 21:09 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    A operátor „<<“ je v čem méně magický než operátor „+“? :-)
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 3.3.2013 23:54 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    V tom, že je definován v té tříde toho streamu, je to to samé jako member funkce té příslušné třídy, takže magického na něm není vůbec nic. Ten '+' v té Javě je "magický" v tom smyslu, že je definován jazykem pro několik málo vyvolených typů, pro ostatní typy/třídy použít nejde.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    4.3.2013 10:32 Franta
    Rozbalit Rozbalit vše Re: jEdit
    Ty „vyvolené typ“ jsou součástí jazyka/standardní knihovny stejně jako ten operátor – patří k sobě, do jedné skupiy. Javě můžeš vyčítat snad leda to, že si v ní nemůžeš definovat vlastní operátory (ale to je zase na jinou diskus – spíš mi přijde, že je to dobře, protože ten jazyk je díky takovým omezením jednoduchý a snadno srozumitelný)
    4.3.2013 10:43 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: jEdit
    Javě můžeš vyčítat snad leda to, že si v ní nemůžeš definovat vlastní operátory (ale to je zase na jinou diskus – spíš mi přijde, že je to dobře, protože ten jazyk je díky takovým omezením jednoduchý a snadno srozumitelný)

    Pythonu můžeš vyčítat leda to, že operátor + sežere různé typy jen pokud se jedná o "mixed-mode arithmetics" (ale to je zase na jinou diskus – spíš mi přijde, že je to dobře, protože ten jazyk je díky takovým omezením jednoduchý a snadno srozumitelný)

    ;-)
    4.3.2013 12:25 Franta
    Rozbalit Rozbalit vše Re: jEdit
    S tím ale nemám nějaký zásadní problém – jen mi přijde, že je zde zbytečně přísný – zatímco jindy je naopak hodně benevolentní – to mi přijde trochu nekonsistentní. Obecně mi spíš vadí ta přílišná benevolence a tolerantnost, kdy Python schroustá ledasco, v tichosti pokračuje a „něco“ dělá.
    oryctolagus avatar 4.3.2013 13:42 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Obecně mi spíš vadí ta přílišná benevolence a tolerantnost, kdy Python schroustá ledasco, v tichosti pokračuje a „něco“ dělá.
    Pokud je tvoje výchozí stanice Java, tak "přílíš benevolentní" bude prakticky jakýkoli jazyk. Ze známějších jazyků bude imho v tomhle podobný jen C#, a i ten je afaik benevolentnější než Java (operator overloading).

    "Schroustá ledasco a něco dělá" se dá říct o celé paletě jazyků, od C a jeho odvozenin až po takové jako Perl, PHP nebo JS... No prakticky jaýkoli ;-)
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    5.3.2013 11:31 Franta
    Rozbalit Rozbalit vše Re: jEdit
    U sta kokotů, on ten Python nic neřekne, ani když tam jsou dvě stejně pojmenované metody se stejnými parametry! To se pak člověk diví, že tam jsou chybové hlášky, které nemůže v kódu dané metody najít.

    OMFG :-)
    5.3.2013 19:41 SPM | skóre: 28
    Rozbalit Rozbalit vše Re: jEdit
    Na druhou stranu na tohle tě upozorní už i slušný editor... pokud někdo programuje ve hrůzách jako vim, tak jeho boj :))))
    xkucf03 avatar 5.3.2013 19:43 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    PyDev (Eclipse) je sice IDE, ne editor, ale řadí se mezi hrůzy nebo ty slušné?
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    5.3.2013 20:34 SPM | skóre: 28
    Rozbalit Rozbalit vše Re: jEdit
    Příloha:
    To nevím, už ho docela dlouho nepoužívám (pač mi přišel jako hrůza :)) ale tak hrozné to asi nebylo). Nicméně u mého IDE to jede (viz příloha). Ale abych tomu nekřivdil, tak tahle inspekce byla defaultně vypnutá a musel jsem ji zapnout. Můžeš se podívat do nastavení PyDevu, jestli to tam taky třeba není, ale vypnuté...
    mirec avatar 3.3.2013 17:06 mirec | skóre: 31 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: jEdit
    String cena = ... // Načítanie políčka užívateľa
    ...
    String query = "INSERT INTO objednavky ... " + (cena + poplatky) + "...
    

    A máme tu SQL injection. Toľko k "zbytočnému" pretypovaniu pri skladaní reťazcov, ale "dobrému" explicitnému pretypovaniu na boolean. Inými slovami všetko, čo je inak než v Jave je zle a všetci sme hlupáci a blablabla, týmto môžme diskusiu uzavrieť a venovať sa písaniu našich zabugovaných programov.

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    Fluttershy, yay! avatar 3.3.2013 17:10 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Nepoužívá se obvykle náhodou StringBuilder?
    xkucf03 avatar 3.3.2013 18:21 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit

    Používá, ale

    • proti SQL injection nepomůže
    • záleží co znamená „obvykle“ – pokud jde o skládání nějakého vystupu třeba v cyklu z mnoha položek, tak ano, tak je to jasná volba. Ale pokud jde o třeba slepení hlášky ze dvou tří kusů a navíc se to celé nevolá moc často, tam to nedává valný smysl, neefektivita je zanedbatelná – buď se použije operátor + nebo formátovací řetězce.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    xkucf03 avatar 3.3.2013 18:16 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Viz poznámka: jasně, jsou i efektivnější a elegantnější způsoby jak pospojovat text nebo vyplnit nějakou šablonu – ale tohle je diskuse o poměrně nízkoúrovňových věcech.
    A máme tu SQL injection.

    Lepení SQL (či podobných výrazů) z kousků textu je blbost – o tom jsem sám psal mnohokrát a hodně lidí jsem od toho (nejen tady) odrazoval.

    Pokud jde ale o výstup třeba na konsoli, nebo do textového souboru nebo prostě někam, kde není co rozbít, můžeme to tak udělat.

    Toľko k "zbytočnému" pretypovaniu pri skladaní reťazcov,

    vložení čísla do řetězce je bezpečné, protože jestliže máš tu proměnnou deklarovanou jako int (nebo jiný číselný typ případně boolean nebo někdy enum), tak se ti tu* nikdy nestane, že by obsahovala nějaký závadný obsah.

    String cena = ... // Načítanie políčka užívateľa
    ...
    String query = "INSERT INTO objednavky ... " + (cena + poplatky) + "...

    Tvůj příklad je chybný. Nemůžeš sčítat dva textové řetězce a čekat, že dostaneš číselný součet. Taky v tom, že nepoužíváš správný datový typ – cena má být v nějakém číselném typu – to v Javě můžeš udělat a pokud uživatel pošle nějakou podvrženou nečíselnou hodnotu, vyletí výjimka – k tvému kódu se tedy dostane buď (bezpečné) číslo nebo se ten kód (díky vyhozené výjimce) vůbec nespustí.

    Nicméně ani tady bych nedoporučoval lepit SQL z kousků textů a čísel (byť je to celkem bezpečné).

    *) při výstupu do některých jazyků/formátů bys mohl narazit na problém s tím, že číslo bude obsahovat desetinnou čárku (nicméně to u intu nehrozí) – a ta by v daném formátu znamenala třeba oddělovač

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    mirec avatar 3.3.2013 18:36 mirec | skóre: 31 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: jEdit
    Lepení SQL (či podobných výrazů) z kousků textu je blbost

    Použitie find namiesto operátora in je blbosť. Rovnaký argument ako proti pythonu.

    Tvůj příklad je chybný. bla bla

    Poplatky sú vypočítané v aplikácii (tj. typ int). Cena je načítavaná od užívateľa a nedopatrením nie je parsovaná na int.

    Cieľom môjho komentára bolo poukázať na prípad kedy je implicitná konverzia na reťazec nebezpečná.

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    xkucf03 avatar 3.3.2013 20:18 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Jenže ona není nebezpečná ta konverze čísla na řetězec – když se 100 převede na "100", tak v tom problém není. Problém je v tom, že do SQL přilepíš nekontrolovaný (ani na typ pomocí deklarování int cena = …) vstup od uživatele.

    Kdybys zakázal operátoru „+“ připojit k řetězci číslo ale jen další řetězec, co bys tím vyřešil? Nic – operace by se zdařila a chyba by tam zůstala. Nebo chceš zakázat i spojování dvou řetězců pomocí „+“ operátoru?
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    xkucf03 avatar 3.3.2013 18:25 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    P.S. K čemu je dobré to:
    cannot concatenate 'str' and 'int'
    ?

    Pokud by ta proměnná byla řetězec, tak by „součet“ prošel a navíc by to bylo řádově nebezpečnější (do řetězce může útočník procpat jakékoli znaky, zatímco z číselného typu vzejde jen omezená a v zásadě bezpečná množina znaků – resp. je to bezpečnější než, co může být v řetězci).
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    4.3.2013 02:25 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: jEdit
    P.S. K čemu je dobré to: cannot concatenate 'str' and 'int' ?
    Protože pak by si na to pythonisti zvykli a půlka by pak chtěla, aby 'abc' + ['d'] vyplodilo 'abcd', zatímco druhá půlka ['a', 'b', 'c', 'd']. Například.
    3.3.2013 16:23 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: jEdit

    Typové systémy jsou vždy statické. Cituji z Practical Foundations for Programming Languages od R. Harpera (kapitola 4, první odstavec):

    Most programming languages exhibit a phase distinction between the static and dynamic phases of processing. The static phase consists of parsing and type checking to ensure that the program is well-formed; the dynamic phase consists of execution of well-formed programs. A language is said to be safe exactly when well-formed programs are well-behaved when executed.

    Podobně v Types and Programming Languages od B. Pierce se píše:

    A type system can be regarded as calculating a kind of static approximation to the run-time behaviors of the terms in a program.

    Tzv. dynamicky typované jazyky se považují za staticky typované jazyky, které mají pouze jeden typ. Výpočetní modely některých jazyků pak hodnoty jednoho typu dále rozdělují (klasifikují) do menších skupin (tomu se Harper v PFPL věnuje v kapitole 18), jedné takové skupině pak Harper říká class (od slova klasifikovat). Jádro pudla je tedy v tom, že lidé nerozlišují pojem type a pojem class (to asi není úplně nejlepší název). Klíčový rozdíl obou pojmů je v tom, že typy se kontrolují před spuštěním programu a špatně typovaný program se nespouští a ani se mu nepřiřazuje sémantika.

    Např. kompilátor OCamlu po provedení typové kontroly typy zahodí – pro běh programu nejsou potřeba. Naproti tomu například interpretr Pythonu nemůže zahodit informace o class – on je nutně potřebuje při interpretaci.

    3.3.2013 16:36 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: jEdit
    Pár zajímavých poznámek je také v diskuzi k blogu Dynamic languages are static languages.
    oryctolagus avatar 3.3.2013 01:52 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    -1 = 0xffff...ff = true.
    To je pouze technická implementace a určité konkrétní kódování čísla.
    Poznámka na okraj: Nevím jak v Pythonu, ale v C/C++ toto není otázka konkrétní implementace, konverze signed → unsigned je definována standardem, aby se vždy chovala právě takhle.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    3.3.2013 00:13 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: jEdit
    Ono to ma svuj vyznam. Zabyvali se doporucenym pouzitim jazyka a to udelali jednodussi na ukor nedoporucenych pouziti. if (find (... je spatne a skoro nikdo to nepouziva (a urcite to neni zamysleno na toto pouziti)

    if promenna:

    se naopak pouziva docela casto a dava smysl delat podminku na to, kdyz ukazatel nekam ukazuje, promenna ma nenulovou hodnotu, seznam je neprazdny Ve vsech techto pripadech 0 znamena false, ne-0 znamena true, protoze s promenna obsahuje "neco".

    xkucf03 avatar 3.3.2013 11:01 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Tady se prostě neshodneme – podle mého těch pár ušetřených znaků za explicitní přetypování/vyhodnocení/konverzi přináší víc škody než užitku.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Bystroushaak avatar 1.3.2013 11:18 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: jEdit
    konkrétní příklad: v ifu kontrola pomocí find() zda jeden řetězec obsahuje jiný řetězec. Jenže -1 se zde vyhodnotí jako true a test projde.
    K tomuhle by se měl používat operátor in.
    1.3.2013 12:21 Franta
    Rozbalit Rozbalit vše Re: jEdit
    Jasně, nebo si můžu udělat pomocnou metodu/funkci, která dostane dva řetězce a vrací boolean a tím tento problém řeší – obejít se to dá, ale příčina zůstává. A není to zdaleka jediná věc, kterou Python v tichosti zchroustá a „něco“ dělá.
    Bystroushaak avatar 1.3.2013 15:36 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: jEdit
    Jasně, nebo si můžu udělat pomocnou metodu/funkci, která dostane dva řetězce a vrací boolean a tím tento problém řeší – obejít se to dá, ale příčina zůstává.
    Ani ne.

    Tohle je prostě featura, ne chyba. Python není java, takže nemá smysl očekávat, že se bude stejně chovat.
    mirec avatar 1.3.2013 14:19 mirec | skóre: 31 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: jEdit

    Zase hovoríme o niečo o čom netušíme?

    In [1]: "abcd".index("bc")
    Out[1]: 1
    
    In [2]: "abcd".index("x")
    ---------------------------------------------------------------------------
    ValueError                                Traceback (most recent call last)
    <ipython-input-2-257d22bc2d8f> in <module>()
    ----> 1 "abcd".index("x")
    
    ValueError: substring not found
    

    V prípade, že neexistuje podreťazec vyhodí sa výnimka. Stačí volanie find nahradiť volaním index.

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    1.3.2013 14:40 Franta
    Rozbalit Rozbalit vše Re: jEdit
    Jak to souvisí s kritikou výše? Že vedle find() existuje i index(), která se chová jinak, nemění nic na tom, že k té chybě vůbec nemuselo dojít, kdyby ten jazyk neignoroval datové typy a nesnažil se myslet za programátora.
    Stačí volanie find nahradiť volaním index.
    Ano, jakoukoli chybu stačí opravit a pak už program funguje. A obvykle oprava spočívá v nahrazení pár znaků, v horším případě řádků. Jenže nejdřív tu chybu musíš najít.

    Jde o to, jak drahé je to hledání. A nejlevnější je chyba, která vůbec nevznikne (např. díky tomu, že ti ji ohlásí kompilátor).
    oryctolagus avatar 1.3.2013 14:51 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    To ale může být dost prasárna, v závislosti na kontextu. Výjimky se jak z designových tak z výkonových důvodů vyhazují skutečně pouze tehdy, když nastane něco výjimečného. Rozhodně by neměly být použity pro "good path".
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    1.3.2013 15:09 Franta
    Rozbalit Rozbalit vše Re: jEdit
    Obecně jsem spíše pro výjimky. Nicméně zde o výjimku (chybu) nejde – že řetězec neobsahuje jiný řetězec není chyba. Lepší by bylo vracet null, což lépe vystihuje „pozice nenalezena“ (to ale vyžaduje objektový typ), nicméně i ta -1 je v tomto případě dobré řešení.
    Fluttershy, yay! avatar 1.3.2013 15:39 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Lepší by bylo vracet null, což lépe vystihuje „pozice nenalezena“ (to ale vyžaduje objektový typ)

    Co je na nil v Lispu objektového? Teda krom toho, že třeba v Common Lispu jsou všechno objekty, akorát v té jejich terminologii se to nemyslí ve smyslu OOP.

    nicméně i ta -1 je v tomto případě dobré řešení.

    Což je zhruba na stejné úrovni jako vracení maximální možné délky (která je zaručeně o jedna větší než max. index) v C++. Intuitivní to možná není, ale programátor by o tom měl vědět, pokud není úplný začátečník (nebo vůl ~.^).

    1.3.2013 16:16 Franta
    Rozbalit Rozbalit vše Re: jEdit
    null. Objektový ve smyslu primitivní tyoy (např. int) vs. objektové typy (Integer). Pokud je v daném jazyce objekt všechno nebo se to nerozlišuje, je null jasná volba. Pokud se to rozlišuje a chceš optimalizovat (použít primitivní typ místo objektového), použiješ -1 nebo jinou zápornou hodnotu, protože je na první pohled zřejmé, že pozice nemůže být záporná (pozice sice nemůže být větší než horní hranice ale k tomu už potřebuješ dodatečné informace → zbytečné zesložitění – zatímco dolní hranice je daná).
    Fluttershy, yay! avatar 1.3.2013 16:51 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Objektový ve smyslu primitivní tyoy (např. int) vs. objektové typy (Integer).

    Což je anomálie Javy.

    oryctolagus avatar 1.3.2013 18:28 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    použiješ -1 nebo jinou zápornou hodnotu, protože je na první pohled zřejmé, že pozice nemůže být záporná (pozice sice nemůže být větší než horní hranice ale k tomu už potřebuješ dodatečné informace → zbytečné zesložitění – zatímco dolní hranice je daná).
    No jo, jenže ono je lepší v tomto případě použít unsigned typ, protože index pak může být dvakrát větší než se signed. A pak dává smysl použít maximální hodnotu spíš než -1. Naštěstí v jazycích jako C/C++/... se počítá s two's complement, a tudíž -1 přetypováno na unsigned dá právě tu maximální hodnotu...
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    1.3.2013 21:39 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: jEdit
    Celý mě to přijde dost mimo. Franta nadává na blbost pythonu, protože nezná jeho zde už stokrát zmíněný in, a používat místo něj přímo návratovou hodnotu funkce find není dobrý nápad, protože:
    >>> a = 'abc'
    >>> a[a.find('bž')]
    'c'
    Závěr: kdyby Franta věnoval učení se a používání pythonu zhruba tak setinu té energie, co věnoval Javě, předtím, než se na jeho adresu začne vyjadřovat, celé tohle vlákno by vůbec nemuselo vzniknout.
    xkucf03 avatar 1.3.2013 22:00 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: jEdit
    Už se nám diskuse začíná cyklit: #156
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    3.3.2013 01:29 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: jEdit
    Ne. Mě přijde, že chceš psát javu v jakémkoliv jazyce, a proto v každé nejavě snadno najdeš běžnou konstrukci, která je z tvého pohledu např. protiinuitivní. Ale to je tvrzení asi na takové úrovni, že všechny programovací jazyky jsou "protiintuitivní", protože v nich je 0 false, zatímco v shellu je to true. Je to věc zvyku a názoru, ale sama o sobě není ani taková, ani maková.
    Fluttershy, yay! avatar 3.3.2013 14:04 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Jo, přesná analogie:
    The determined Real Programmer can write FORTRAN programs in any language.
    1.3.2013 18:04 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: jEdit
    Výjimky se jak z designových tak z výkonových důvodů vyhazují skutečně pouze tehdy, když nastane něco výjimečného. Rozhodně by neměly být použity pro "good path".
    A to je dogma kteréže církve? :-D Ať už kterékoli, já členem nebudu.

    Mj., jak jste k tomu dospěl?
    1.3.2013 18:20 Franta
    Rozbalit Rozbalit vše Re: jEdit
    Diskutovat se dá o tom výkonu nebo o definici „skutečně výjimečný“, ale co se týče standardního předpokládaného běhu – tam bys snad někdy vyhazoval výjimku?
    Fluttershy, yay! avatar 1.3.2013 18:34 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: jEdit
    Existují jazyky, v nichž se výjimky takto skutečně používají. Nicméně v případě toho, co se běžně používá (především C++ a spol.), je mi to filosoficky proti srsti, přestože existují situace, ve kterých je použití výjimky elegantnější (řešil jsem to jednou u nějaké specifické knihovny právě v Javě).
    1.3.2013 19:33 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: jEdit
    ale co se týče standardního předpokládaného běhu – tam bys snad někdy vyhazoval výjimku?

    Klidně. Třeba ve zmiňovaném Pythonu se to normálně dělá – například výjimky GeneratorExit a StopIteration. Nebo třeba v OCamlu je to také běžné – například funkce ze standardní knihovny, jenž něco hledají, vyhazují výjimku Not_found, když to nenajdou.

    oryctolagus avatar 1.3.2013 18:36 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: jEdit
    Mj., jak jste k tomu dospěl?
    Tak samozřejmě záleží to na konkrétním jazyku a konkrétní implementaci, nicméně většinou se výjimky implementují tak, aby v "good path" měly minimální overhead a v "exceptional path" pak probíhá nějaký ten stack unwinding nebo něco na ten způsob, případně se někde taky uchovávají informace o výjimce k případnému pozdějšímu logování atd. atp., prostě ten overhead v "exceptional path" je většinou značný.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    mirec avatar 25.2.2013 12:47 mirec | skóre: 31 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Vim je môj primárny editor niekoľko rokov, ale netrúfam si tvrdiť, že ho ovládam rovnako ako si netrúfam tvrdiť, že ovládam C++. Stále sú tam také tajomné zákutia, o ktorých moc neviem a ani ich moc nevyužívam. Ale stále sa učím nové veci, nové triky, tuningujem konfiguráciu keď vidím, že dlhodobo mi niečo trvá dlho ... Používanie vimu efektívne je dlhá cesta, niekedy sa to podobá učeniu sa nových skratiek v streetfighteri. Postupne nachádzam nové a nové spôsoby ako prekonať protivníka (napísať kód) a je to aj celkom zábavné ;-)
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    17.2.2013 08:27 alfonz mucha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jako editor je to asi naprosto v pořádku, ale jakmile jsem zkoušel funkce IDE jako > doplňování např. v pythonu tak jsem se nestačil divit;)

    je to pěkný program, má zajímavé funkce, ale také se vrátím asi k Geditu a Eclipse.
    Bystroushaak avatar 17.2.2013 13:25 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    doplňování např. v pythonu tak jsem se nestačil divit;)
    A zkoušel jsi to s doplňkem, nebo bez něj?
    17.2.2013 17:06 alfonz mucha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    nezkoušel, je pro to nějaký vybraný plugin? Kde ho naleznu?
    17.2.2013 17:30 chrono
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Celkom použiteľný plugin je SublimeRope. (najjednoduchšie sa nainštaluje pomocou Package Control)
    Bystroushaak avatar 17.2.2013 17:37 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Kde ho naleznu?
    Kdybych o tom nepsal v samotném blogpostu, tak bych se tomu dotazu nedivil, ale takhle..

    Zkus doplněk sublime code intell.
    17.2.2013 12:45 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše foldovani
    Umi sublime taky foldovat podle {{{ ... }}} jako vim (foldmethod=marker) ? Dost to pouzivam ve svych projektech jako soucast organizace souboru
    17.2.2013 14:39 chrono
    Rozbalit Rozbalit vše Re: foldovani
    Bez doplnku to pravdepodobne nevie, ale štandardne sa dá zbaliť akákoľvek časť súboru (stačí ten text označiť a použiť Ctrl+Shift+[).
    17.2.2013 19:01 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: foldovani
    Kdyz ja prave mam pomerne dlouhe soubory a pomoci {{{ ...}}} to mam rozdelene na logicke useky a sbalene tak, ze se to vejde na jednu stranku (ano je to moje workflow, bez ohrivani CPU pomoci mezerniku nejde pracovat)
    17.2.2013 20:14 chrono
    Rozbalit Rozbalit vše Re: foldovani
    Sublime Text zatiaľ (aspoň pokiaľ viem) nepodporuje vnorené zbaľovanie kódu, takže pomocou pluginov by sa podobná funkcionalita síce dala urobiť, ale pri rozbalení by sa rozbalil celý blok.
    xkucf03 avatar 18.2.2013 20:30 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jediná "slabina" Sublime je jeho licence - jedná se o komerční produkt…
    Za dobrý editor bych dal klidně 100 USD, ale „dobrý“ v sobě zahrnuje fakt, že k tomu dostanu zdrojáky pod svobodnou licencí. Takže za tohle ani korunu.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 18.2.2013 21:06 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Licenci jsem v rámci žádné softwarové metriky ještě neviděl.
    19.2.2013 13:04 Franta
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Asi špatná metrika. Softwarová licence je jedna z nejdůležitějších vlastností softwaru – chyby opravíš, funkce přidáš, efektivitu zvýšíš… všechno se dá řešit, jen s tou licencí nic nenaděláš, pokud autor (autoři) nechce.
    Fluttershy, yay! avatar 19.2.2013 13:10 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Nicméně v metrikách se s ní nepočítá. Kvalita s licencí nesouvisí. Už jen proto, že neexistuje jediné dobré uspořádání na množině licencí.
    pavlix avatar 19.2.2013 13:27 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Asi zaleží na tom, čí metriky to jsou :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Fluttershy, yay! avatar 19.2.2013 21:07 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Budu tuze rád, když xfuck nějakou konkrétní, která s licencí počítá, uvede.
    xkucf03 avatar 19.2.2013 22:26 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Budu tuze rád, když xkucf03 nějakou konkrétní, která s licencí počítá, uvede.
    Např. FURPS:

    S (supportability) – schopnost být udržována – Dalším hlediskem hodnocení je oblast údržby a podpory aplikace, její testovatelnosti. V této oblasti se taktéž hodnotí i přizpůsobitelnost a rozšiřitelnost o nové vlastnosti. Důležitá je také schopnost zapojení aplikace do existujících procesů podpory a údržby SW.

    Obchodní a právní aspekty – licencování a případná právní omezení pro různé demografické regiony

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 23:02 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Skvělé, byť po pouhých 18 komentářích. Teď je otázka, zvláště v kontextu recentních událostí, jak to v HP mysleli. ^.^
    19.2.2013 13:35 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Už jen proto, že neexistuje jediné dobré uspořádání na množině licencí.
    Můžete to rozvést?
    Kvalita s licencí nesouvisí.
    Co je podle vás kvalita? Např. Wikipedie píše:
    Quality in business, engineering and manufacturing has a pragmatic interpretation as the non-inferiority or superiority of something; it is also defined as fitness for purpose. Quality is a perceptual, conditional and somewhat subjective attribute and may be understood differently by different people.
    Proč by licence neměla souviset s kvalitou?
    Fluttershy, yay! avatar 19.2.2013 15:11 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Protože licence jsou obvykle pro někoho výhodnější a pro někoho méně výhodné. Následuje obvyklý flejm "BSD vs GNU".
    19.2.2013 19:14 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Sublime Text 2
    A jiné vlastnosti programu nejsou pro někoho výhodnější a pro někoho méně výhodné?
    Fluttershy, yay! avatar 19.2.2013 20:58 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Který zvrhlík považuje software s více chybami za kvalitnější?
    xkucf03 avatar 19.2.2013 22:28 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Věř, že i takoví zákazníci se najdou – chybám se přizpůsobili, zapracovali je do svých procesů a odstranění chyby je pro ně problém – zatímco jiný zákazník téhož produktu to bere jako výhodu.

    Nemluvě o poměrně tenké hranici mezi chybou a vlastností…
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 23:00 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    (ne tak docela hyperbola) Jaderná elektrárna selhává, družice na orbitě kolabuje, ale hlavně, že hranice mezi chybou a vlastností je tenká.
    xkucf03 avatar 19.2.2013 23:13 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    • Svobodný software – zavřeš tlupu inženýrů v laboratoři a necháš je dostatečně dlouho dělat revize kódu. Pokud tam jsou chyby, přijdeš na ně a opravíš je.
    • Proprietární software – nezbývá ti než věřit korporaci, která software dodala a doufat, že ti studenti, Indové a Pakistánci najatí korporací neudělali chybu.
    (jako černou skříňku budeš program testovat v obou případech, v tom není rozdíl + servisní smlouvu o zárukách, pokutách atd. s původním dodavatelem budeš mít uzavřenou taky v obou případech, opět není rozdíl)
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 23:19 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Myslíš, že obsluhu Three Mile Island navrhovali studenti, Indové a Pakistánci najatí korporací? Totéž ohledně softwaru pro sondu Titan atd.
    xkucf03 avatar 19.2.2013 23:30 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Vždycky najdeš nějaký extrémní případ, nikdy se nedá chyba 100% vyloučit. Ale přesto je svobodný software prokazatelně lepší, než proprietární, protože si můžeš udělat vlastní revizi kódu a můžeš si opravit chyby. A zároveň neexistuje kritérium, ve kterém by byl horší.

    Až na ten pochybný případ s hrami, ale tam nesouhlasím – bezpečnost (byť v tom virtuálním herním světě) přece nemůže záviset na tom, že někdo nerozlouskne nějaký binární blob nebo nerozluští reverzním inženýrstvím nějaký protokol. Naopak pokud to tak bude, je to obrovské riziko – pokud lidé na tenhle systém začnou spoléhat, vloží do něj nějaké vysoké hodnoty (peníze, čas…), nakonec to stejně někdo prolomí a vezme vše. Na druhou stranu, když to bude svobodné a otevřené, lidi si budou víc vědomi rizik, budou si dávat větší pozor, s kým hrají, a kolik do systému investují.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 23:53 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Už tvůj pokus o relativizaci chyb v softwaru byl pofidérní.

    Nejde jen o bezpečnost, ale i cheaty obecně — a radost ze hry vůbec. Typicky není moc zábavné hrát UT2004, kde se editor map extrémně často používá k hledání chyb v návrhu mapy a nalezení např. míst, ze kterých jde střílet skrz stěny kvůli chybě apod.
    xkucf03 avatar 19.2.2013 23:58 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Možnost najít chybu → možnost opravit chybu, vylepšit hru.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 20.2.2013 00:21 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Teoretizuješ. Prakticky jsou to spíš intenzivnější závody mezi cheatery a vývojáři, při kterých trpí běžný hráč. Nabízí se otázka, zda open-source hry ty vývojáře mají — spíš ne.

    Ale jak jsem psal, není to jen otázka chyb, ale taky přímo principu. Je rozdíl, když mají (typicky u komplexních RTS pro více hráčů, shodou okolností skoro žádné svobodné neexistují) všichni potenciálně zhruba stejnou učící křivku a když si někdo nastuduje zdrojáky. Co je v důsledku pro hráče zábavnější? Hrát proti normálním soupeřům, nebo de facto cheaterům¹?

    ¹ a v SC, LoL apod. je spousta lidí, kterým jde hlavně o vítězství, jakkoliv je to smutné
    Jendа avatar 20.2.2013 13:11 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Je rozdíl, když mají (typicky u komplexních RTS pro více hráčů, shodou okolností skoro žádné svobodné neexistují) všichni potenciálně zhruba stejnou učící křivku a když si někdo nastuduje zdrojáky.
    Hele, a že to jde reverznout…? Co spíš než na utajení a obfuskaci kódu a protokolů používat protokoly, kde tohle prostě nejde, i když ho všichni znají?
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 13:24 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Hele, a že to jde reverznout…?

    Prakticky to téměř nikdo nedělá.

    Jendа avatar 20.2.2013 14:03 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Aha, takže kritériem bezpečnosti není, jestli a jak to jde cracknout, ale jestli to už někdo udělal.

    Vztahuje se na počítač s Trusted Computing totéž, co na SW licence? Tedy,
    Nicméně v metrikách se s ní nepočítá. Kvalita s licencí nesouvisí. Už jen proto, že neexistuje jediné dobré uspořádání na množině licencí.
    a
    Protože licence jsou obvykle pro někoho výhodnější a pro někoho méně výhodné.
    ?
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 14:10 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    O koze a o voze...?
    Jendа avatar 20.2.2013 14:22 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Já jsem tě pochopil takhle: V metrikách, jestli je SW dobrý nebo špatný, se s licencí nepočítá. Neexistuje totiž jediné dobré uspořádání na množině licencí. Například CSS může být u her lepší než OSS.

    Proto se ptám, jestli platí i analogický postup: V metrikách, jestli je HW dobrý nebo špatný, se s trusted computingem nepočítá. Neexistuje totiž jediné dobré uspořádání na množině licencí. Například TC může být u her lepší než nezamčený HW.
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 14:40 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Proč ne? Metriky hodnotí jen omezenou podmnožinu parametrů jako náklady na vývoj/údržbu softwaru, četnost chyb nebo výkon — pokud mezi těmi sledovanými parametry licence/TC/... není a neovlivňuje zcela evidentně sledované vlastnosti, je pro tu metriku irelevantní.

    Nicméně mám dojem, že to je diskuze o hovně. Můžu mít zeleninovou polévku, která je dobře udělaná, z kvalitních surovin, zdravá... ale mně nechutná celer, který v ní je.
    Jendа avatar 20.2.2013 14:54 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Dobře, tvrzení „HW je dobrý“ tedy neříká nic o absenci TC. Budiž, máme jiná chápání „dobrý“.
    Why did the multithreaded chicken cross the road? to To other side. get the
    oryctolagus avatar 20.2.2013 13:17 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: Sublime Text 2
    U těch RTS ti imho zdroják většinou nepomůže, co se týče schopností tu hru hrát. Navíc typicky AI jsou naskriptovaný a může si to nastudovat kdokoli. Třeba u AoE{1,2} byly AI skripty už od začátku open-source i s dokumentací (a přitom hru vydal MS ;-)). A chování hry se taky většinou vypozoruje nebo zpětně dopočítá...

    Pointa ale je, že u těch komplexních RTS máš typicky tolik proměnných, že dělat na nich nějakou analýzu (hledat nějaký extrémy, průběhy, ...) není moc možný, alespoň ne prakticky, a to dokonce ani aproximačně. V podstatě jediný účinný přístup je evoluční, ať už nějak automatizovaně nebo (to spíš) ručně.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    Fluttershy, yay! avatar 20.2.2013 13:25 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Např. průchod mezi budovami s SC, to se AFAIK v AoE neřeší.
    Jendа avatar 20.2.2013 13:07 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Co třeba volba formátu v dialogu Save As jednoho populárního grafického editoru?
    Why did the multithreaded chicken cross the road? to To other side. get the
    xkucf03 avatar 19.2.2013 19:47 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Následuje obvyklý flejm "BSD vs GNU".
    Nenásleduje, protože ten se týká tří různých skupin (původní autor, redistributor, koncový uživatel), které můžou mít odlišné zájmy. Ale tady se na věc díváme z pohledu koncového uživatele. Důležité je, aby měl uživatel možnost software svobodně používat, upravovat, redistribuovat… rozdíl mezi GPL a BSD tu není až tak podstatný – zatímco rozdíl mezi proprietárním a svobodným softwarem je kruciální.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 21:11 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2

    Tak znovu:

    • Jak tvá metrika počítá s tím, že software je svobodný, ale z hlediska měřitelných parametrů jako četnost chyb nebo výkon úplná sračka?
    • Jaká jsou kritéria pro porovnávání licencí? Co když dvě licence těsně nesplňují podmínky FSF/OSI, ale jen v detailech, leč zcela odlišných?
    19.2.2013 21:22 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jaká jsou kritéria pro porovnávání licencí?

    Třeba: je svobodná / není svobodná.

    Co když dvě licence těsně nesplňují podmínky FSF/OSI, ale jen v detailech, leč zcela odlišných?

    Tak budou neporovnatelné.

    Fluttershy, yay! avatar 19.2.2013 21:46 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Třeba: je svobodná / není svobodná.

    Což vytváří aspoň dva problémy:

    • Definice svobodných licencí je problematická, už tak tu máme open-source software a svobodný software.
    • Svobodný software je někdy z principu horší (např. hra více hráčů, a to především na soutěžní úrovni; existuje aspoň jedno MMORPG, které klienty po otevření znovu uzavřelo, aby se hra stala opět hratelnou, jméno mi zrovna vypadlo).
    xkucf03 avatar 19.2.2013 22:43 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Definice svobodných licencí je problematická, už tak tu máme open-source software a svobodný software.
    Definice svobodného softwaru není problematická, je jednoduchá, stručná, jasná. Definice otevřeného softwaru je trochu delší, ale v zásadě stejná, kompatibilní.
    Svobodný software je někdy z principu horší (např. hra více hráčů, a to především na soutěžní úrovni; existuje aspoň jedno MMORPG, které klienty po otevření znovu uzavřelo, aby se hra stala opět hratelnou, jméno mi zrovna vypadlo).
    To máš jako s DRM… obejít se dá všechno a podvádět se dá ve všech hrách, je potřeba to řešit nějak jinak. I kdyby ta hra běžela na serveru a k tobě by se jen streamoval obraz a zpátky posílaly pohyby myši a stisky kláves, stejně si můžeš napsat robota, který bude hrát za tebe.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 23:06 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Zdaleka nejde jen o boty. Já si rád počkám na fap-fap-fap-svobodný-fap-fap-fap Battle.net.
    Jendа avatar 20.2.2013 13:13 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    např. hra více hráčů, a to především na soutěžní úrovni; existuje aspoň jedno MMORPG, které klienty po otevření znovu uzavřelo, aby se hra stala opět hratelnou, jméno mi zrovna vypadlo
    Kerckhoffs's principle
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 13:26 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jenže tady je smyslem hratelnost, s tím to nepočítá.
    Jendа avatar 20.2.2013 14:00 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    V čem se liší bezpečnost tohoto kryptosystému od jiných?
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 14:10 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    K čemu je bezpečná hra, která se nedá hrát, protože to není zábavné?
    Jendа avatar 20.2.2013 14:23 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Z předchozí diskuze jsem pochopil, že hra se stává nezábavnou, když někdo najde chybu v protokolu.
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 15:51 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Hry jsou vesměs komplexní software a bohužel obsahují chyby, a to jak z hlediska softwarového, tak z hlediska game designu. Z hlediska hratelnosti jde o minimalizaci zneužívání těchto chyb, potažmo minimalizaci dopadu toho zneužívání.

    V takové situaci může být lepší i status quo. Chyby jsou známé, když je někdo zjevně zneužívá, je prostě kicknut nebo dostane banána. Hledání nových chyb se věnuje málokdo, protože přece jsou u známé nějaké chyby.
    Jendа avatar 20.2.2013 16:10 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Chyby jsou známé, když je někdo zjevně zneužívá, je prostě kicknut nebo dostane banána.
    Ano, toto je správné řešení.
    Why did the multithreaded chicken cross the road? to To other side. get the
    xkucf03 avatar 19.2.2013 22:38 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jak tvá metrika počítá s tím, že software je svobodný, ale z hlediska měřitelných parametrů jako četnost chyb nebo výkon úplná sračka?
    Záleží, jaká je tu perspektiva zlepšení (ať už vlastními silami nebo od původních autorů nebo někoho jiného). Pokud perspektiva není a nevyplatí se ten software vyvíjet, tak prostě nevyhovuje a použiji jiný.
    Jaká jsou kritéria pro porovnávání licencí? Co když dvě licence těsně nesplňují podmínky FSF/OSI, ale jen v detailech, leč zcela odlišných?
    Tak jsou za hranicí toho, co chci používat a nemá cenu to řešit a přemýšlet, co je horší/lepší. (trochu mi to připomíná druhé kolo prezidentské volby)
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 23:10 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jaká jsou kritéria pro porovnávání licencí? Co když dvě licence těsně nesplňují podmínky FSF/OSI, ale jen v detailech, leč zcela odlišných?
    Tak jsou za hranicí toho, co chci používat a nemá cenu to řešit a přemýšlet, co je horší/lepší. (trochu mi to připomíná druhé kolo prezidentské volby)

    Jsem rád, že jsi ekonom a nikoliv vědec, protože za současné situace by s tvým přístupem byl pokrok např. v přírodních vědách podobný čekání na Godota^WSadámův svobodný CAD.

    Jendа avatar 20.2.2013 13:12 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jak tvá metrika počítá s tím, že software je svobodný, ale z hlediska měřitelných parametrů jako četnost chyb nebo výkon úplná sračka?
    Jak tvá metrika počítá s tím, že software nemá funkční chyby, ale z hlediska výkonu je to úplná sračka?
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 13:27 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Já netvrdím nic o své metrice, pouze o široce používaných metrikách.
    Jendа avatar 20.2.2013 13:55 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jak široce používané metriky počítají s tím, že software nemá funkční chyby, ale z hlediska výkonu je to úplná sračka?
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 14:29 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Jendа avatar 20.2.2013 14:59 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Můžeš mi vysvětlit, co jsi tedy chtěl říct tímto:
    Jak tvá metrika počítá s tím, že software je svobodný, ale z hlediska měřitelných parametrů jako četnost chyb nebo výkon úplná sračka?
    ?
    Why did the multithreaded chicken cross the road? to To other side. get the
    Fluttershy, yay! avatar 20.2.2013 15:03 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    To, co je tam napsáno.
    Jendа avatar 20.2.2013 15:05 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Dobře, pak tedy počítá s tím takhle (ať je to, co je to).
    Why did the multithreaded chicken cross the road? to To other side. get the
    Bedňa avatar 18.2.2013 21:45 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Tiež som ho istý čas používal, veľmi príjemný editor, ale vtedy tam ešte nebolo autocomplete pre PHP, čo sa možno zmenilo.
    Pokecajte si s umelou stupiditou na http://www.kernelultras.org/
    Bystroushaak avatar 18.2.2013 23:08 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Doplňky..
    Bedňa avatar 18.2.2013 23:39 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Příloha:
    Odvtedy mám aj NetBeans naskínovaný podľa Sublime Text nejakej témy, viď príloha.
    Pokecajte si s umelou stupiditou na http://www.kernelultras.org/
    19.2.2013 22:14 frdrx | skóre: 29 | blog: frdrx
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Zapomněl jsem napsat: proprietární aplikaci ať si autor strčí do prostoru za kloboukem.
    Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
    Bystroushaak avatar 19.2.2013 22:32 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Autor té aplikace, nebo blogpostu?
    19.2.2013 22:39 frdrx | skóre: 29 | blog: frdrx
    Rozbalit Rozbalit vše Re: Sublime Text 2
    V tomto případě jsem myslel autora aplikace.
    Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
    Bystroushaak avatar 19.2.2013 22:50 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Já bych i souhlasil, kdyby Sublime nebyl nejlepší editor, který jsem kdy používal. Ale i tak se mi líbí jeho přístup, kdy ho můžeš používat jak chceš a platba za něj je více/méně dobrovolná.
    19.2.2013 22:58 frdrx | skóre: 29 | blog: frdrx
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Já bych mu klidně zaplatil, pokud by se mi ten editor líbil, ovšem pouze pokud bych za svoje peníze dostal i čtyři jednoduché svobody. Dneska je to standard, tak nevidím důvod z toho ustupovat.
    Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
    xkucf03 avatar 19.2.2013 23:31 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    +1
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    xkucf03 avatar 19.2.2013 23:19 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Ale i tak se mi líbí jeho přístup, kdy ho můžeš používat jak chceš a platba za něj je více/méně dobrovolná.
    Tím spíš je to pro mne podezřelé a nedůvěryhodné. Ještě dokážu pochopit, že někdo prodává třeba proprietární hry/software/filmy a chce zaplatit za každé použití – prostě jen neumí vydělat na ničem jiném, než je prodej licencí, budiž.

    Ale když žije z prakticky dobrovolných příspěvků – proč to neuvolní jako svobodný software? Dobrovolníků ochotných zaplatit by se našlo víc.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    Fluttershy, yay! avatar 19.2.2013 23:20 Fluttershy, yay! | skóre: 81 | blog:
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Dobrovolníků ochotných zaplatit by se našlo víc.

    [citation needed]

    xkucf03 avatar 19.2.2013 23:30 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Minimálně dva v této diskusi.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    oryctolagus avatar 20.2.2013 00:18 oryctolagus | skóre: 29 | blog: Untitled
    Rozbalit Rozbalit vše Re: Sublime Text 2
    3, pokud bych měl možnost přispět rozumější částku než těch $70.
    There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
    Bedňa avatar 20.2.2013 12:11 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Sublime Text 2
    4.
    Pokecajte si s umelou stupiditou na http://www.kernelultras.org/
    20.2.2013 00:15 SPM | skóre: 28
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Nejspíš by někdo udělal fork, ze kterého by vyjmul tu otravnou část, co ti připomíná, aby sis to koupil a pak už by to nekoupil nikdo :)
    Bystroushaak avatar 20.2.2013 09:46 Bystroushaak | skóre: 32 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Sublime Text 2
    Ale když žije z prakticky dobrovolných příspěvků – proč to neuvolní jako svobodný software? Dobrovolníků ochotných zaplatit by se našlo víc.
    Nevím, nejsem autorův mluvčí, jen používám jeho software. Zkus mu napsat, docela by mě zajímala odpověď, ale jsem moc líný smolit dotaz v angličtině.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.