O programování

O programovacích jazycích a nástrojích, jen tak... Plus informace o tom, kde zadarmo a legálně sehnat kvalitní programovací nástroj :)

Jak někteří z vás vědí, programuji nějakých... moment... třiadvacet let. Za tu dobu jsem zkusil leccos, něco mi přirostlo k srdci víc, něco míň, ale každopádně nejsem z těch, co se na VŠ naučili Pascal a pak Javu a s tou teď budují úžasnou kariéru v klimatizovaných otevřených kancelářích nadnárodní korporejšn. Kdepak. Nejsem ale ani nerd, co programuje, řekněme, blogovací systém v Erlangu. Začal jsem jako každý slušný chlapec v té době BASICem a assemblerem, ale pak jsem se trošku zvrhnul, protože jsem se naučil FORTH. Úžasná kuriozitka; těší mne, že FORTH žije dál a že se s ním občas někde setkám, třeba u jednočipů.

Jinak klasika: Pascal, C, pak přišly šestnáctibity, takže zase nový assembler, pak znovu C a Pascal / Delphi, pak nouze naučila Dalibora housti, takže přišel JavaScript (ale používám ho jako klasické C, s funkcionálními vymoženostmi jsme si do oka nepadli) a další skriptovací jazyky, hlavně PHP...

Ale PHP mě začalo nudit. Hledal jsem novou výzvu, něco, co by šlo použít pro malé utility... Všichni říkají Python, koukám na Python, pokyvuju hlavou, tři knihy jsem přečetl a furt nevím, furt nevidím tu úžasnou úžasnost... Spiklenci pomrkávají, že Ruby – ovodamokra, to je totéž v bledě modrém.

Nebo takový PERL. Uznávám, je to jediný jazyk, ve kterém můžete zašifrovat zdrojový kód programu šifrou AES, a zašifrovaný se od původního na první pohled neliší, ale přeci jen – psát v PERLu okýnkové aplikace pro Win32? Určitě to jde, ale na to nejsem ten správný masochistický typ.

Joy, Factor, Haskell, Erlang, Eifel – to jsou sice všechno krásně obskurní jazyky, ale je to s nimi ještě horší než s Ruby.

Zkrátka jsem si s těmi novými, tak SKVĚLÝMI jazyky, že programování v nich je zábava, nepadl do oka.

Co zbývá z mainstreamu? Java... Brr... Průběžné pokusy donutit se s ní sžít podnikám od roku 1996, nesedla mi, a nesedla mi jako máloco. Nevím proč.

Nakonec mi jeden programovací jazyk sednul. Má to, co od něj potřebuju, a zapíšu to v něm tak, jak bych očekával, že se to zapsat má. Který že?

Teď mi dovolte malou odbočku: V osmdesátých letech, ve zlaté éře osmibitů, bylo programátorských firem jak když naseje. Některé dělaly databáze, jiné třeba spreadsheety, ještě další hry a další zase programovací jazyky. Ze Spectra si pamatuju na HiSoft, třeba. Jednou z těchto firem s programovacími jazyky (a slušnými) byl i Microsoft. Microsoft totiž prorazil na trhu právě s interpretem (nevím, možná i kompiler měli, nejsem si jist) jazyka BASIC. Viděl jsem MS BASIC na Atari, jestli se dobře pamatuju, určitě ho dodávali i jinam, tuším že Commodore128 měl zadrátovaný BASIC od MS, možná MSX, ale to si nejsem jist.

K tomu se váže ta historka s IBM a prvním PC, kteří přišli za Gatesem a chtěli software pro PC, konkrétně ten BASIC (dokonce byl jeden čas dodáván v ROM či na pásce a hodně dlouho v BIOSu strašily funkce na jeho spuštění). K BASICu chtěli však i OS, který Gates neměl. Poslal je proto za Kildallem, který se ve své firmě Digital Research slušně živil prodejem CP/M a vyvinul právě CP/M-86, a řekl, ať se s ním domluví. Jednoduchá úvaha: Když bude mít IBM systém, bude moci prodávat počítače, a Gates bude mít trh pro BASIC. Když IBM nebude prodávat, Gates má po kšeftu s BASICem.

Kildall byl ovšem starý hipísák, květinové dítě, pro něj bylo IBM ta zlá komerce, korporace, establishment a zástupce IBM víceméně poslal do dža. Nojo. Nepomohly ani Gatesovy intervence, Kildall byl spokojený s prodejem CP/M pro osmibity a IBM ho nezajímala. Začala ho zajímat až ve chvíli, kdy se na trhu objevily první PC a kdy zjistil, že IBM přemluvila Gatese, aby NĚCO dodal, a Gates koupil od jakési neznámé firmy jejich obskurní CP/M 86 klon, přiohnul jej pro PC hardware a dodal. Kildall zjistil, že pochybil, soudně donutil IBM k tomu, aby s novým PC dodávali i jeho CP/M-86, ale i když byl jeho systém mnohem lepší, tak mu sám Kildall zlomil vaz tím, že ho prodával za cenu pětkrát vyšší než za jakou byl MS-DOS. Prohlásil rovněž legendární větu, že "trh rozezná rozdíl mezi profesionálním OS a systémem na hraní". Poznal. O dva roky později byl CP/M-86 mrtev.

Ale to jen tak na okraj. Chtěl jsem říct, že Microsoft není jen DOS, Wokna a Office, ale taky programovací jazyky. Překladače a interpretery. A dobré, opravdu dobré. I v dobách největší Borlandí slávy dělal Microsoft překladače na špičkové úrovni. A dělá je dodnes. (Mimochodem, viděli jste Visual Basic pro DOS?)

A tím jsem se dostal k tomu, co jsem chtěl napsat: Od doby Visual C++ 6 jsem neviděl pohodlnější překladač pro C, od Visual BASICu neznám jiné prostředí, ve kterém by šlo tak lehce dělat jednoduché programy. Sekunduje mu Borland / Inprise / zase Borland / CodeGear Delphi, ale jejich naprosto uhozená licenční politika způsobila, že mám legálně koupený překladač, který nebude fungovat, dokud nezavolám na nějaké US číslo. Jděte s tím k šípku, Bordellandi!

A jděte s tím i dál, protože když budu chtít překladač, tak půjdu k Microsoftu a tam... si ho zadarmo stáhnu. Naprosto zadarmo a legálně tak mám Visual Basic, Visual C++, Visual C# a Visual Web Developer, což je takové IDE pro ASP.NET.

A právě C# je můj nový favorit, o kterém jsem psal výš. Jasně že bych sehnal i jiné IDE pro vývoj, např. SharpDevelop nebo MonoDevelop, ale taknějak nemám důvod... Visual C# mi plně vyhovuje a omezení Express verze ve své práci nepociťuju (pokud děláte v týmu a ve firmě, jistě si koupíte plnou verzi, ale na takové to domácí programování to bohatě stačí).

Já vím, i Borland nabízí zdarma Delphi, jmenují se, jestli se nemýlím, Turbo cosi, ale znáte to – Na tomto stroji je již nainstalována jiná verze tohoto produktu... Ne, bohužel, musím naprosto upřímně říct: Pokud si chcete udělat nějakou aplikaci pro Win, sáhněte po Visual Studiu 2008 Express. Je to zadarmo, je v tom kvalitní překladač (překladače MS opravdu umí) a dle mého názoru nemá dnes na Win platformě v této kategorii konkurenci.

Dne 19.02.2008

Twittni

Přidej do: asdf.sk StumbleUpon Toolbar Stumble It!

Komentáře

[1] (Tomik - Mail - WWW) 19.02.2008, 21:13:30 [X] [D]
Já musím říct, že jsem se do Visual Studia a i do C# taky zamiloval. Delphi je dobré, ale na VS prostě nemá.

[2] (karf [openID] - Mail ) 19.02.2008, 21:22:04 [X] [D]
Začátek článku (zbytek už ne) mi trochu připomněl http://steve-yegge.blogspot.com...l.

[3] (pizi ) 19.02.2008, 21:44:30 [X] [D]
ad [2] Presne! Stejne prevedeni na jinou v kolej v okamziku dramatickeho napeti jaky ze to jazyk byl vybran.

[4] (johno - Mail - WWW) 19.02.2008, 21:50:15 [X] [D]
A čo myslíš tým: také to domáce programovanie? Aké typy programov doma bežne robíš? Od toho by som tipol, že voľba prostredia/jazyka asi závisí najviac.

[5] (Arthur Dent [openID] - Mail - WWW) 19.02.2008, 21:56:52 [X] [D]
[4] Každý, kdo si tak doma programuje přesně ví, co tím mám na mysli, ten kdo si doma neprogramuje, ten to nepochopí. ;)

[6] (MaD ) 19.02.2008, 21:59:03 [X] [D]
Další, komu se nelíbí Java a líbí C# - u mě je to stejně, ale dodneška jsem nepochopil proč, když jsou si tak podobné a postavené na podobných principech :-).

Tomik: Pravda, celkově VS je lepší, než Delphi, ale v některejch věcech by se Microsoft moh ještě trochu přiinspirovat, hlavně v návrhu formulářů. Udělat ve VSslušně se chovající formulář, kterýmu jde měnit velikost (a rozumně se u toho přeskládává) - to je pořád ještě totální opruz a to porovnávám s dost historickou verzí Delphi 6 (s novějšíma jsem se už moc nesetkal).

[7] (Arthur Dent [openID] - Mail - WWW) 19.02.2008, 21:59:45 [X] [D]
[4] Ještě PS: programovat a programovat si je docela rozdílná činnost... :)

[8] (dond ) 19.02.2008, 22:05:53 [X] [D]
S Visual Studiem a C# se potýkám denně posledních cca osm měsíců a, tedy, zatím, ehm, no, jaksi...

Jazyk samotný - dobrý. Okopírovali tu Javu dobře, přidali navíc pár věcí, které v té době neměla (a zpětně od nich zase okopírovala.

Překladač - nemohu soudit, na přednášku jsem chodil ledabyle (čti téměř vůbec), zkoušku jsem dělat nemusel, poněvadž jsem měl dost bodů. Můžu ale posloužit jedním objektivním pozorováním: zkompilování jedné (macatější) webové aplikace trvá skoro nachlup stejně dlouho jako kompilace nového linuxového jádra (na tomtéž stroji, jen pod jiným OS, pochopitelně). Možná je na vině OS, nevím, ale zrovna dvakrát mě to nepřesvědčilo.

Samotné IDE - katastrofa. Klávesové zvratky se dokáu přeučit poměrně rychle, když se snažím, ale co s editorem, kde spousta věcí klávesnicí opravdu udělat nejde? To opravdu dneska lidi programujou myší? Intelli-sense taky nic moc, resolving v knihovnách pomalý (opět - možná je na vině struktura .NET assemblies, ale zajímá mě to jako "uživatele"?)... Nepovažuju se za nějak zkušeného uživatele různých IDE, ale Visual Studio zatím získalo ze všech kdy použitých najmenej bodov.

[9] (Arthur Dent [openID] - Mail - WWW) 19.02.2008, 22:21:49 [X] [D]
[8] Používal jsem všecko možné a v současné době mi nejvíc sedly dvě prostředí: Eclipse a VS. Pro moje požadavky vyhovující, dělají to co od nich očekávám a dělají to takovým způsobem, jaký očekávám.

Ohledně kompilace - vzpomínám si, jak jsem na starém DOSovském TurboXXX s údivem zjistil, že překlad programu v TurboPascalu je na pár sekund, zatímco funkčně shodný v C se překládal třeba půl minuty. Svědčí to o něčem? ;)

[10] (johno - Mail - WWW) 19.02.2008, 22:41:12 [X] [D]
[4] a [7]: Ale je úplne chápem, čo tým myslíš, sem-tam si doma programujem...v PHP, v Ruby alebo v Jave. Jediný krát som sa s C# a SharpDevelop stretol, keď som robil nejaký chat-klient do školy a to sa mi moc páčilo.

Ja napríklad dosť často pri takom programovaní si, chrúmem texty a tam pre PHP zatiaľ nemám konkurenta. Čo sa týka jednoduchosti, nie rýchlosti.

Čiže ešte raz, aké typy programov bežne robíš pri tom programovaní si? Chcem príklad, čisto zo zaujímavosti. Okienkové aplikácie?

[11] (dejv - Mail ) 19.02.2008, 22:57:53 [X] [D]
[10] presne tak na chroupani textu ci nejakou backendovou blbinku pro svou potrebu pouzivam PHP. Vsechny ty pythony a ruby se mi zatim nedostali pod kuzi tak abych v nich vytvoril neco stejne rychle jako ve zminenem PHP.

Jinak jsem uz nejakych 8 let (prevazne) ziven vyvojem v Delphi a i kdyz se rika jak umira tak ja to jeste na dalsich par let vidim.

Javu mam rad, ale nic vetsiho jsem v ni nedelal, to stejne plati i pro C# ale to se snad brzo zmeni. Pred rokem jsem taky dost delal v Lue, ale to uz snad nikdy vice.

Obecne mi prijde, ze ten kdo umi jeden dva jazyky ani neni programator, pouze programuje.

[12] (dond ) 19.02.2008, 22:58:49 [X] [D]
[9] Eclipse mi vyhovovalo podstatně víc než VS. Já fakt nerad sundavám ruce z klávesnice, ale ve VS to dost často jinak nejde.

Ad kompilace - říkal jsem, že nemohu soudit. Ale přecejen webová aplikace o pár tisících řádků a linuxové jádro... Nezdá se mi to porovnatelné.

[10] Na hraní s texty u mě zatím nic nepřekonalo Perl. Nejen, že mám rád jeho write-only vlastnosti, ale po mnoha letech soužití jsem se v něm naučil využívat jeho objektových vlastností (měl je v době, kdy Java byla v plenkách a C# neexistoval) a zatím si naprosto vyhovujeme. Ostatně, to, že na základě jeho vzoru vznikl už třetí hype-moderní jazyk (nejdřív PHP, pak Python, naposledy Ruby), asi není náhoda.

[13] (Taurus ) 19.02.2008, 23:17:42 [X] [D]
Tak nějak jsem C# čekal... jenom nechápu, jak se vám může najednou líbit C# a nelíbit Java. Rozdíl vidím v podstatě jen v IDE a v tom, jak se vykreslí okýnka (ne že bych to považoval za nevýznamné).
VS2008 je opravdu hodně příjemné. Netbeans 6 už docela taky.
Já mám rád Javu pro podnikové serverové aplikace a C# pro Windows desktopové aplikace.

[14] (Arthur Dent [openID] - Mail - WWW) 19.02.2008, 23:40:01 [X] [D]
[10] No, dám příklad: Utilitka, co mám dole v panelu na rychlé spuštění a když potřebuju nějaké heslo, tak mi vygeneruje cosi jako s7fWGd5bQ5. Utilita co pošle text na Teidu. Prográmek s oknem, do kterého napíšu text a přetáhnu fotku - a tím ji publikuju. Prostě takovýhle blbiny. Označím si slovo, zkopíruju do clipboardu, klávesovou zkratkou vyvolám další utilitu, ona to slovo přeloží z/do angličtiny pomocí online slovníků na Centrum/Seznam, nabídne mi na výběr a vloží zpátky překlad. A tak...

[11][12] Na cokoli, co má zpracovávat text, si taky napíšu skript v PHP... Je to rychlý, je to hned, a pokud to nechci šířit, tak mi to stačí.

[13] Nelíbí. Asi proto, že nedělám podnikové serverové aplikace. Nelíbí, protože nelíbí. Nesedí mi. Stejně tak mi nesedí třeba Marvan (Jaroslav, nejde o programovací jazyk). Nebo klauni. Nebo MySpace. Mail od Centrum. Prostě se mi nelíbí, a nemám potřebu pátrat po tom, proč Java ne a C# jo$ asi proto, že nemám potřebu, aby se mi líbila. :)

[15] (Arthur Dent [openID] - Mail - WWW) 19.02.2008, 23:54:56 [X] [D]
[12] Když já jsem holt pragmatik a utilitarista a používám to co je v danou chvíli pohodlnější. Například ty komponenty do formuláře rád přetáhnu myší z toolbaru, než bych psal konstrukce typu button x=123 y=11 align=top blablabla... Já tu jsem od toho, abych vymýšlel, tyhle mechanické věci má za mne dělat počítač, od toho ho mám (na druhou stranu mě musí nechat do nich sáhnout). Programátor není ten, kdo si pamatuje, ale ten, kdo vymýšlí. A než mě zas někdo chytne za slovo: Samosebou je potřeba si pamatovat, ale jsem rád, když můžu prvek umístit na formulář myší; nepřipadám si kvůli tomu jako programátorsky méněcenný (poslední poznámka je pro ty, co opovrhují "klikacími nástroji").

Jinak pěkná diskuse o klávesnici a myši je zde: http://misantrop.eu...#cmt_24 (komentář 24 a dál)

[16] (mike ) 20.02.2008, 00:02:03 [X] [D]
[7] Ne nutne. Jaky si to udelas, takovy to mas ;-)

[17] (Stalker - WWW) 20.02.2008, 00:06:28 [X] [D]
[8] Mne sa na urýchlenie navigácie pomocou klávesnice veľmi osvedčil plugin DPack. Do Visual Studia pridá must-have veci ako code/file/solution/resource browser, číslované bookmarky, atď. Ešte by to chcelo trošku lepšiu prácu so snippetmi ;) Možno vo VS 2008, ešte som ho neskúšal…

PS: niekde som videl aj plugin na emuláciu Vim-u. To potom nedáš ruky z klávesnice vôbec ;)

[18] (johno - Mail - WWW) 20.02.2008, 00:14:47 [X] [D]
[14] No vidíš, presne také príklady som chcel počut. Takéto blbinky si ja zase neprogramujem, preto som to C# moc nechápal. Teraz už hej.

[19] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 00:19:45 [X] [D]
[18] Že? Na takové to domácí programování naprosto ideální... :)

[20] (johno - Mail - WWW) 20.02.2008, 00:51:24 [X] [D]
[19] Na takové to wokínkové domáce programování naprosto. Bez výhrad.

[21] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 01:19:22 [X] [D]
[20] S MONO i na linuxu... naprosto perfektní :)

[22] (Gimli2 - WWW) 20.02.2008, 01:20:19 [X] [D]
[14] Ten prekladac s vyuzitim slovniku centrum/seznam by snesl sve vypusteni na verejnost? Bud jako "binarka", ci dokonce zdrojaky?
Je to skvely napad, tak je jesli si to mam zitra odpoledne napsat znova sam... ;-)

[23] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 01:44:51 [X] [D]
[22] Ale snesl. Jen musím najít zdrojáky a přepsat některé hlášky, protože byl dělán pro mou manželku... Ale podívám se po něm a pustím ho ven.

[24] (dgx - Mail - WWW) 20.02.2008, 07:05:09 [X] [D]
Od půlky mi to bylo jasné :-) Tuhle jsem taky psal na Cýšárp ódů (http://latrine.dgx.cz...kuji-nechci), nicméně nemohl jsem si nevšimout, že z tvého vyprávění ... jak to slušně říci ... že prostě chováš pramalou úctu k jazyku teplých hochů a fanoušků Apple, jazyku jenž se zove (doplňte sami). Co máš proti Ruby?

[25] (Botanicus - Mail - WWW) 20.02.2008, 07:57:29 [X] [D]
Obvykle sice blogy moc nekomentuju, ale neda mi to ...

C# Ti opravdu vyhovuje a Java opravdu ne :) ? Proc konkretne? IMHO nejsou az tak extremne rozdilne ... Osobne se mi C# i Visual Studia vcelku take libi (resp. predevsim .NET architektura), nicmene jako main jazyk mam Ruby a to hlavne kvuli dynamicnosti (otevrene definice trid ... ) a tem funkcionalnim prvkum, ktere jsou opravdu _velmi_ mocne. Volne z toho pak plynou vlastnosti jako je skutecne pouzitelne metaprogramovani (method_missing, instance_eval ... ). Navic v Ruby jsou Rails :)

Porovnani Ruby s Pythonem se mi moc nelibi, ono je to podobne spis na prvni pohled.

[26] (s0 - WWW) 20.02.2008, 09:02:17 [X] [D]
co nás baví: Qt4 v kombinaci s C++ (ok, je to tak trochu jiné C++) nebo Pythonem.

[27] (Taurus ) 20.02.2008, 09:54:19 [X] [D]
[25] Proč, to Arthur neví, a ani nechce vědět :-) Imho mi to přijde škoda, protože takovýto idiosynkratický odpor většinou pramení z něčeho nevědomého a člověk se jeho analýzou může o sobě dozvědět něco zajímavého.
Ale na druhou stranu, takových lidí, kteří nemají potřebu zjistit, proč se jim něco líbí nebo nelíbí, je většina, takže se není čemu divit ;-)

[28] (SiseL - Mail - WWW) 20.02.2008, 10:09:06 [X] [D]
[22][23] ideu "shortcut prekladaca" s pouzitim webservicu pre odpovede som rozpracoval pre nejakym casom (1 rok), zatial vsak bezuspesne, co sa tyka fyzickeho kodu. ;/ Vyriesene a otestovane mam len technicke zalezitosti, okolo odchytavanie shortcutov, clipboradu, atp. Ak odfiltrujete "hlasky", velmi rad pozrem na kod, ak bude k dispozicii.
Samozrejme v oblubenom programovacom jazyku - c#.
Ak ma presvedci 9mm pri hlave, tak na mojej "bohatej" homepage pribudne cast pre tuto utilitu zvlast.

[29] (dond ) 20.02.2008, 10:28:26 [X] [D]
[15] Taky jsem pragmatik a protože drtivá většina toho, co programuju, s přetahováním komponent do formulářů nemá vůbec nic společného. Jak jsi sám poznamenal v odkazované diskuzi, klávesnice se používá na psaní a já při programování hlavně píšu.

[17] Na plugin se určitě podívám, popravdě jsem zatím skoro neměl čas zkoumat, co všechno se dá k VS najít. ViM plugin se možná taky šikne - ale mám zkušenost, že `only vi behaves like vi' (analogicky k `only TeX can read TeX').

A ještě jsem chtěl: [0] Do FORTHu jsem se taky zamiloval, stejně jako svého času do Lispu, Perlu, TeXu... Všechno to jsou takové celoživotní vztahy - občas trochu ochladnou, ale vždycky víš, že se k nim můžeš kdykoliv vrátit a bude to zase jako dřív - vlastně lepší, protože spíš dokážeš to, co se Ti už dříve líbilo... .-)

[30] (danaketh - Mail - WWW) 20.02.2008, 10:29:40 [X] [D]
Tak mně zrovna nesedí ani Java, ani C# ale v případě C# to bude spíš proto, že jsem si nikdy moc nepokecal ani s C nebo C++. Naopak ten Python, o kterém se zmiňujete, mi sednul jak prdel na hrnec. Vyhovuje mi na něm ta rychlost a přehledný zápis. Už jsem se naučil dělat i okýnkové aplikace ale většinou je stejně nepotřebuji, protože datlím tu analyzér logů, tam nějaký zálohovací script atd.

Je to čistě o tom, jak si člověk porozumí s daným jazykem. PHP jsem pobral rychle, Python mi dal něco málo čtení manuálu a v C bych myslím nezvládl ani to pitomé "Hello World" :)

[26] Jediná chvíle, kdy používám C :) Když si hraju s Qt4. Ale svoje výplody bych teda nikomu neukázal. Jen by se mi smáli. :)

[31] (Háčko ) 20.02.2008, 11:15:12 [X] [D]
[14] a já měl pocit, že je to můj vlastní geniální nápad - ten překlad pomocí webových slovníků.

[32] (Martin Svárovský ) 20.02.2008, 11:30:18 [X] [D]
Tak to vypadá že na takové to domácí programování asi C# taky vyzkouším - článek i komentáře jsou docela inspirující. Zatím jsem všechno řešil přes Perl/PHP/AWK míchanice, vokýnkový klikátka to ale nejsou a ta občas chybí.

[33] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 11:58:57 [X] [D]
[27] No, dost možná je to kvůli té hromadě jejích fanoušků, kteří říkají "Cože, NESEDLA? Jak to? Java je skvělá, má refactoring datamining embedded builtin tříd v kontextovém paradigmatu!" Co jsem se tou analýzou o sobě dozvěděl, že bych to předtím nevěděl? Jo, už vím: NIC! ;)

[25] Ruby? Rails? Mají už podporu UTF-8, nebo mají zatím jen podporu Opravdových Příznivců? ;)

[29] Při programování píšeš? Tvůj jazyk vyžaduje hodně psaní? Hm, ten by se mi nelíbil. Já při programování nepíšu, já při programování myslím a chci nástroj takový, abych se mohl soustředit na to, nad čím přemýšlím a ne na to, jak to napsat. ;) *noflejm*

[30] Mohl bych vyhrabat to o pojídačích koláčů... :)

[31] Jistě. Shared Idea :)

[34] (danaketh - Mail - WWW) 20.02.2008, 12:11:12 [X] [D]
[33] Našel jsem si to sám :)

[35] (dond ) 20.02.2008, 13:03:47 [X] [D]
[33] Můj jazyk je momentálně C#. .-) A ano, hodně píšu. Teď už několik měsíců hodně píšu, když jsem předtím ještě víc měsíců hodně přemýšlel, maloval, škrtal.

To, v čem programuju, vyžaduje hodně psaní. Sáhni do tohohle rozhraní, zjisti tohle, sáhni do tamtoho, zjisti něco jiného, spoj to dohromady, zobraz, navěs na to ovladače událostí, které sáhnou do třetího, čtvrtého, pátého rozhraní...

A ten nástroj jsem si nevybral, ten se vybral sám. Jiný není. (Bohužel.) Závislost na dodavateli se tomu říká? Jinak řečeno, já jsem placen za to, že vymýšlím, jak napsat to, co bych v jiném jazyce napsal jinak.

Svoboda výběru nástrojů je fajn, ale často se musíš obejít bez ní.

[36] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 13:11:19 [X] [D]
[35] NO FLAME, kurva!

[37] (dond ) 20.02.2008, 13:19:56 [X] [D]
[36] Co je na tom za flejm? Copak já tvrdím, že je něco lepší/horší/na hovno/pro opravdové programátory? Jen jsem chtěl podotknout, že není jen černá a bílá mezi barvami...

[38] (Merxes - Mail ) 20.02.2008, 14:07:41 [X] [D]
Neznáte nějaký kvalitní čtivo o C# (něco jako je linuxsoft.cz/php pro PHP)?

[39] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 14:12:47 [X] [D]
[38] Velmi dobré offline čtivo je "Visual C# 2005 krok za krokem". O online čtení vím jen o anglickém: The Code Project

[40] (Hds ) 20.02.2008, 16:33:52 [X] [D]
To já když mám chuť na to "starý dobrý domácí programování", tak zapnu WinUAE a bastlím v ASM68K...

move.l 4.w,a6
jsr -726(a6)
rts

Starý zlatý časy... ale musím uznat že C# (ač úplně jiná kategorie samozřejmě) si mě taky získalo.

[41] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 16:37:42 [X] [D]
[40] Assembler 680x0! Moje srdeční záležitost! Nádhera, opravdu nádhera... :)

[42] (Q ) 20.02.2008, 16:45:17 [X] [D]
No, tento vyber sem cekal uz u indicii v poslednim komentarovani na tohle tema zde (mmach. kdo jste uz videl vyberove rizeni, jehoz zadani psal jeden z dodavatelu?), ackoliv, ze se z toho udela takovy hype, to jsem necekal.
Myslim, ze flame mezi JAVA a C# snad ani neni mozny, protoze jedno je obslehnutina toho druheho (a naopak) - bohuzel ted si paraelne hraju s obema kusy na stredne velkych projektech a muzu plynule prechazet z jednoho prostredi do druheho bez zasadniho vlivu na "funkci", coz mi treba u prechodu delphi->java a zpet delalo docela problemy. Nicmene oba jazyky maji mohutnou podporu v existujicich knihovnach a komunitach, coz se o pythonu, ruby a podobnych rict, hmmmm, moc neda. Trosku jinej je PERL, ale ten se osvedcil (me osobne) jen pro jednorazove tulity na nejake zpracovani vstupu, protoze delat do toho kodu po nejake dobe zasah a zmeny je kontraproduktivni, nicmene jsou i masochisti, kteri v tom napsali docela komplexni a udrzovany soft (nechci ten SophosAV jmenovat).
Pokud si lze podle neceho vybrat, tak podle IDE a vzhledu vyslednych "okennich" aplikaci, kde C# o fous vede, ale zase ma mnoho jinych cutancu, ktere se projevi zase pri jinych pozadavcich na praci nez okynkove aplikace. Ehm, malem sem napsal, ze se projevi pri "Opravdovem programovani" (TM), ale tahle veta bude jako mucholapka na "nejzaslouzilejsi osobnosti na webu"(C), jejichz neprustrelnym argumentum "a ty si myslis, ze zrovna to, co delas ty je opravdove programovani?" se skutecne neda odolat. Takze jsem to vlastne nenapsal.
Ad vyber - zkoumat to, proc si nekdo vybral to nebo ono a nema pro to argumenty nema smysl. Je to podobne, jako kdyz programatori udrzuji ve dvou zcela ruznych prostredich zcela jine navyky, ktere nikdy nezmeni a vyzaduji po jinych - jako priklad muze slouzit moje malickost, ktera v C-like jazycich pise zacatky bloku {} inline do prikazu, ktery blok uvozuje, ale v pascal-like jazycich pisu begin/end vzdy strinktne na novy radek. Nema to logiku, ale funguje to tak....

[43] (Arthur Dent [openID] - Mail - WWW) 20.02.2008, 17:40:22 [X] [D]
[42] To s výběrovým řízením a dodavatelem jsem nepochopil. Zbytek jsem taky moc nepochopil, je to chuchvalec slov bez jakéhokoli členění, to se těžko chápe. Ale vyšlo mi z toho něco ve smyslu že každý má rád to svoje, že mezi C# a Javou zas tolik rozdílů nejni a že zvyk je železný endif. O tom žádná diskuse. EOF.

Já osobně píšu v C-like tu otvírací { na stejný řádek jako hlavičku fce, v Delphi jsem psal BEGIN na další řádek, s výjimkou jednořádkových funkcí.

[44] (danaketh - Mail - WWW) 20.02.2008, 19:41:18 [X] [D]
Když už jsme se dostali k tomu programování... Vyhořel jsem na pitomé matematice a potřeboval bych poradit :) Mám nějaké číslo X, které bych potřeboval "zaokrouhlit" na číslo Y. A protože to neumím vysvětlit, dám příklad:

Za předpokladu, že X = 377786, musí Y mít hodnotu 400000. Pokud by X bylo 1, tak Y bude 10, pro X = 11 bude Y = 20 atd. Bohužel nejsem schopen myšlenky pořádně převést do slovní podoby :) Jestli to nechápete, tak není chyba na Vašem přijímači. Já to z toho taky nepochopil :)

[45] (Merxes - Mail ) 20.02.2008, 19:57:48 [X] [D]
[44]
Záleží, v jakém to chces jazyku. V PHP bych s tím neměl problém

[46] (danaketh - Mail - WWW) 20.02.2008, 19:59:20 [X] [D]
[45] Jo, přesně v něm :) Vyřešil jsem to pomocí stringu a cyklu ale zdá se mi to poněkud na hlavu postavené.

[47] (White Dog - WWW) 20.02.2008, 20:02:29 [X] [D]
[44] Tak tohle si dneska dávám za domácí úkol. Programovat neumím, ale nepůjdu spát, dokud to v PHP nerozchodím. Pořád hledám na čem se procvičit, a tady je zadání! Díky.

[48] (danaketh - Mail - WWW) 20.02.2008, 20:07:44 [X] [D]
[47] Arthur asi nebude rád, že si z jeho webu dělám matematickou učebnu :) Jen pro zasmání, takhle jsem to vyřešil já ;)

$val = $x{0}+1;
$nums = strlen($x) - 1;

for ($i = 0; $i < $nums; $i++ ) {
$val .= '0';
}

echo $val;

Tak jen do mně. :))

[49] (Hekko [openID] - Mail - WWW) 20.02.2008, 20:53:44 [X] [D]
[48] Tak prosím: píše se do mne jako do tebe, ne do tobě ;)

Já vím, já vím, ale nemůžu si pomoct ;)

[50] (dond ) 21.02.2008, 00:15:12 [X] [D]
[49] Opravdu do Tebe? No, jestli si to vážně přeješ(přejete)... ...milerád. .-) Já vím, to sem už opravdu nepatří; a omlouvám se za impertinenci, ale když já si taky nemůžu pomoct. :-)

[51] (Arthur Dent [openID] - Mail - WWW) 21.02.2008, 00:40:03 [X] [D]
[44][48] Pro čísla X větší než 10:

function danaketh($x){return ($x<10)?ceil($x):(10*danaketh($x/10));}

ale z toho to těžko někdo pochopí. To tvoje by bylo pochopitelnější - kdyby to fungovalo, což nefunguje. :) Jednak proto, že musíš mít v $x řetězec, pak proto, že musí být $x[0] a pak taky proto, že když bude na vstupu 100, vypadne ti 200, což IMHO není to cos chtěl dosáhnout. ;)

[52] (Ladis - WWW) 21.02.2008, 01:57:12 [X] [D]
[44] OT:Tohle by mohlo fungovat, doufám že jsem někomu nepokazil radost z řešení.

$a=526555;
$b=pow(10,floor(log10($a))); //log10-zjistime pocet nul
$c=ceil($a/$b)*$b;
echo $c;

[53] (Botanicus [openID] - Mail - WWW) 21.02.2008, 09:27:08 [X] [D]
[33] Rails mají velmi slušnou podporu UTF-8 hodně dlouho (přes knihovnu unicode-hacks nebo jak se to jmenuje) a Ruby nyní již konečně také (zatím ale pouze ve vývojové větvi, to je pravda). Ale i když Ruby nemělo podporu unicode ve třídě String, třída Regexp ji podporovat umí a takže implementovat unicode metody Stringu bylo na několik málo řádků. Např:

class String
def length
self.scan(/./u).length # u je aby to bralo unicode
end
end

Podobnym zpusobem lze predefinovat libovolnou metodu. Vic jsem o tom psal na Rootu: http://www.root.cz...uby-a-unicode/

Osobne za nejlepsi dukaz vyzralosti Ruby a Rails povazuju jejich pouziti i v takovych projektech, jako je LinkedIn, Twitter, Basecamp, Shopify, BBC Programme Catalogue, Cork'd, A List Apart, Blurb.com, ChaCha.com, Justin.tv, CMS Mephisto a Typo nebo.novelli openSUSE Build Service.

[54] (danaketh - Mail - WWW) 21.02.2008, 10:29:25 [X] [D]
[49] Ženská rejpavá. Jako bych slyšel přítelkyni. :) Díky za opravení. Zkusím si to zapamatovat podle toho pravidla... Je to v češtině jediné, na čem se pokaždé zaseknu :)

[51] Já si to předtím na string převedu. Ale řešení to je opravdu všelijaké. Z toho Vašeho je to IMHO snadno pochopitelné a přesně to, čeho jsem chtěl dosáhnout a také jak jsem toho chtěl dosáhnout :) Děkuji pěkně ;)

[52] ;)

[55] (JirSoft ) 22.02.2008, 15:16:52 [X] [D]
[41] 68k asm není špatný, ale programovali jste někdy pro ARM2/250/3? To je super...

[56] (Arthur Dent [openID] - Mail - WWW) 22.02.2008, 15:48:17 [X] [D]
[55] Ne, ale pro ARM7 ano ;) Souhlasím: Nádhera!

[57] (jozefbenko [openID] - Mail ) 23.02.2008, 12:45:35 [X] [D]
Nepočul som to slovo do bitky... takže: Cocoa! :-)