Portál AbcLinuxu, 2. května 2025 17:19
Řekli byste o sobě, že umíte programovat?
ano |
|
32% (614) |
tak trochu/učím se |
|
38% (734) |
ne, ale budu se učit |
|
7% (128) |
ne |
|
23% (442) |
Celkem 1918 hlasů
Vytvořeno: 26.10.2008 21:53
Tiskni
Sdílej:
Jéé, někdo má rád Morgensterna? Meč šaršoun, Pentlochňap, prostě nádhernajs
Joj, Alenka, tak tu jsem nečet, zatim. Dík za opravení.
A co se tyce tech penez (take nemam tolik, ale vim, ze to mozne je, pokud mate spravne CV) je to podobne - mam nekdy pocit, ze cim mene uzitecnejsi praci clovek dela, tim lepe je za to placen (pritom, laik by rekl, ze ta prace musi byt opravdu hodne slozita, kdyz za ni nekdo dostava tolik penez).Souhlasim. Ale myslim si, ze na to brzo prijdeme a treba se ty platy otoci nebo vyrovnaji, a nebo treba ne. Levne pracovni sily je zatim dost. Co se nekvalifikovane prace tyce, tak bych rekl, ze lide dost zpohodlneli. Take casove naroky v zamestnani jsou trochu jine nez byvaly. No, asi to hraje jedno s druhym.
Otazkou je, proc by nekdo studoval 5 let (optimisticky) nejakou VS, a pak delal zamecnika nebo klempire. Bohatstvi tam ocividne nehrozi.Někde jsem nedávno četl (nebylo to tady?), že pražské hotely mají problémy obsadit místa cukrářů a to i když nabízí plat ve výši sto tisíc korun.
Nejsu učitel ale je to špatný jak je to placený. Stačí se podívat kolik mají placeno sekretářky ve státní správě.Platy ve statni sprave jsou afaik tabulkove a odvozene od dosazeneho vzdelani a praxe.
Navíc dnes, pokud se jedná o profesionální přístup s analytickými nástroji atd., se spíše jedná o generování kódů - jinak nejste konkurence schopní a okolní konkurence vás smete.
nebo ještě lépe považujete za programátora toho, kdo dělá v PHP?
Takhle se dost dobře ptát nejde. Řada lidí, kteří píší (ať už také nebo výhradně) v PHP bezesporu programátoři jsou. Na druhou stranu je řada lidí, kteří sice píší v "plnohodnotném" jazyce, ale označit je za programátory bych se zdráhal.
HTML budiž, ale PHP není o nic méně programovací jazyk než třeba céčko.Tak to prrrr. V php už chvíli nedělám, ale co vím, tak php se tvůrce vůbec nemusí starat o pamět, pointery atd. A mám dojem, že většina php 'programátorů' si jen matně vybavuje význam slova optimalizace.
A mám dojem, že většina php 'programátorů' si jen matně vybavuje význam slova optimalizace.Ja bych rekl, ze vetsina lidi tento pojem ani nezna. Nicmene jak to souvisi s PHP, to netusim - krom netypovosti. Ale to je "featura" jazyka, kterou jen tezko nekdo zmeni.
Tak to prrrr. V php už chvíli nedělám, ale co vím, tak php se tvůrce vůbec nemusí starat o pamět, pointery atd.A kvůli tomu to není programovací jazyk a jeho uživatel není programátor? Nenechte se vysmát
(...) ono jaksi z podstaty věci všechno skončí jako ta příslovečná nudle nul a jedniček, ale podstatné je, že to programátora nemusí zajímat.Koho tohle nezajímá, není u mě programátor. To si jako myslíš, že se naprogramuje pár hostovejch aplikací pro který budou všichni psát skripty? To je teda pěkne blbej nápad...
Skripty, skripty… jaké pořád skripty? Považujete třeba software v Javě za skripty a JVM za hostitelskou aplikaci? Existují jazyky, které nemají vlastnosti, které jsem o kousek výše zatratil, a kupodivu jsou taky dost blízko k hardwaru (ne, Javu nemyslím(...) ono jaksi z podstaty věci všechno skončí jako ta příslovečná nudle nul a jedniček, ale podstatné je, že to programátora nemusí zajímat.Koho tohle nezajímá, není u mě programátor. To si jako myslíš, že se naprogramuje pár hostovejch aplikací pro který budou všichni psát skripty? To je teda pěkne blbej nápad...
Skripty, skripty… jaké pořád skripty? Považujete třeba software v Javě za skripty a JVM za hostitelskou aplikaci?Jo.
Existují jazyky, které nemají vlastnosti, které jsem o kousek výše zatratil, a kupodivu jsou taky dost blízko k hardwaru (ne, Javu nemyslímHm, které máte na mysli? Jen by mě to zajímalo..., ale to je jiná pohádka).
Je to všechno o dostatečné úrovni abstrakce. A třeba tu ruční správa paměti, tu vážně potřebuje jenom minimum programátorů. Že to lidi nezajímá je samozřejmě škoda. Ale je velmi důležité, aby je to nemuselo zajímat. Třeba já jsem si s chutí přečetl něco o technikách automatické správy paměti, moc zajímavé téma, ale podstatné je, že při programování na to můžu s klidem zapomenout a nic se nestane. V hlavě potřebuju udržet jiné věci než ty, o které se za mne může postarat stroj.Ale v čem je ten benefit? Co z automatický správy paměti budu mít a jak to prospěje mému výtvoru? Vždyť když si pamět budu spravovat sám, můžu to přizpůsobit mýmu programu na míru...
Obecně si troufám tvrdit, že implementace programovacích jazyků jsou, díky mohutnému teoretickému aparátu (zase ty techniky GC, ty např. existují a vyvíjejí se od nějakých 50. nebo 60. let!), velice imunní vůči fenoménu prosakující abstrakce, takže výhody jasně převažují nad problémy, které se přece jen občas objevují.Ale jo, ale je potřeba použít správné řešení na správném místě. Jistěžě skriptovací jazyky maji spoustu důležitých uplatnění, kde se jejich výhody projeví, ale neměly by nahradit nativní programování - 'běžné programy' pro PC, a to hlavně ty větší, kde je potřeba výkon.
Dost radikální. Hlavně vzhledem tomu, co moderní JVM dělají za kouzla. Třeba takové zrušení zámku, pokud lze dokázat, že není potřeba, to asi v Céčkovém programu s POSIXovými vlákny nenajdeteSkripty, skripty… jaké pořád skripty? Považujete třeba software v Javě za skripty a JVM za hostitelskou aplikaci?Jo.
Ále, takové ty funkcionální mrchyExistují jazyky, které nemají vlastnosti, které jsem o kousek výše zatratil, a kupodivu jsou taky dost blízko k hardwaru (ne, Javu nemyslímHm, které máte na mysli? Jen by mě to zajímalo..., ale to je jiná pohádka).
V tom, že z myšlenky bude výtvor dříve, že prakticky odpadne určitá třída problémů (třeba tolik oblíbené memory leaky – ne že by v jazycích, nebo spíš platformách, s automatickou správou paměti neexistovaly, ale tam už je to o něčem trochu jiném), a vůbec takové ty buzynes argumenty, na které geekové neradi slyší. Já na ně občas taky nerad slyším, ale taková je holt realita.Je to všechno o dostatečné úrovni abstrakce. A třeba tu ruční správa paměti, tu vážně potřebuje jenom minimum programátorů. Že to lidi nezajímá je samozřejmě škoda. Ale je velmi důležité, aby je to nemuselo zajímat. Třeba já jsem si s chutí přečetl něco o technikách automatické správy paměti, moc zajímavé téma, ale podstatné je, že při programování na to můžu s klidem zapomenout a nic se nestane. V hlavě potřebuju udržet jiné věci než ty, o které se za mne může postarat stroj.Ale v čem je ten benefit? Co z automatický správy paměti budu mít a jak to prospěje mému výtvoru? Vždyť když si pamět budu spravovat sám, můžu to přizpůsobit mýmu programu na míru...
Výkon je z velké části věcí použitých algoritmů a kvalitní architektury řešení, což je obvykle věc na jazyku nezávisláObecně si troufám tvrdit, že implementace programovacích jazyků jsou, díky mohutnému teoretickému aparátu (zase ty techniky GC, ty např. existují a vyvíjejí se od nějakých 50. nebo 60. let!), velice imunní vůči fenoménu prosakující abstrakce, takže výhody jasně převažují nad problémy, které se přece jen občas objevují.Ale jo, ale je potřeba použít správné řešení na správném místě. Jistěžě skriptovací jazyky maji spoustu důležitých uplatnění, kde se jejich výhody projeví, ale neměly by nahradit nativní programování - 'běžné programy' pro PC, a to hlavně ty větší, kde je potřeba výkon.
… z hlediska spolehlivosti … Windows nepočítám …
Nestojí? GUI kód volá toolkit, ten volá OS, ten zas hardware.Což je až po ten OS všechno nějakej ten jump v kodu z místa na místo, příp. do vedlejšího modulu, pokud nelinkuju staticky. Předem vim kam to skáče a proč. U interpretovaných jazyků do tohohle tak dobře nevidim, páč interpreter si to zchroustá buhví jak...
Problém je, že musíte přidat další vrstvu.I počítač je takovou vrstvou mezi uživatelem a zbytkem světa*. Zbavme se tedy počítačů a dělejme si všechno sami → a ubude nám spousta problémů s nimi spojených
xvid_encraw
nebo x264
je na vícejádrech krása. Samozřejmě je potřeba nastavit dostatečnej počet threadů. To de pak oproti starším procíkům neuvěřitelně rychle...
Osobne si myslim, ze JIT nemaji dlouhou budoucnost. Nakonec budou totiz nahrazeny statickou optimalizaci na zaklade statisticke analyzy chovani programu na testovacich nebo realnych datech. Tato metoda totiz spojuje vyhody obou dvou metod - jak klasicke staticke kompilace, tak JITu. Je to jen otazka casu, kdy k tomu dojde (davam tomu tak 20-30 let).To je možné, profile-driven kompilace se celkem rozmáhá. Ale některé optimalizace, které dnešní JIT překladače dělají, prostě lze udělat jenom za běhu, a bude jich přibývat. Zvlášť když bude přibývat "vyšších" jazyků: můžete staticky zoptimalizovat kritickou cestu nebo kritická místa v programu, ale ten zbytek s sebou potáhne nějakou infrastrukturu, která může být s JIT překladačem nakrásně zbytečná (třeba javovský JIT nahrazuje volání virtuálních metod přímým skokem, pokud ví, že neexistuje žádný potomek, který by metodu překrýval, a podobně). Já bych to viděl na nějaký hybrid.
Krome toho si myslim, ze ani Java nema dlouhou budoucnost. Je na prilis nizke urovni abstrakce, a bude casem nahrazena jazyky mnohem vyssi urovne (prinejmensim na urovni Pythonu), ktere bude schopen kompilator zoptimalizovat podstatne lepe nez nizkourovnovou Javu.S tím bych celkem souhlasil. Java IMHO skončí jako Cobol: moc existujícího softwaru a málo lidí, kteří by ho zvládli udržovat. Pokud se toho dožiju, asi pak budu pracovat jako Java konzultant, lepší přilepšení do důchodu si nemůžu přát
Osobne si myslim, ze JIT nemaji dlouhou budoucnost. Nakonec budou totiz nahrazeny statickou optimalizaci na zaklade statisticke analyzy chovani programu na testovacich nebo realnych datech. Tato metoda totiz spojuje vyhody obou dvou metod - jak klasicke staticke kompilace, tak JITu.U statické analýzy chování programu vidím pouze nevýhody: musíte do vývojového cyklu zakomponovat tuto analýzu, udržovat nějaká trénovací data, distribuovat různé přeložené verze programů pro nejrůznější hardwarové (nebo VM) architektury a pro různé případy použití. Koncový uživatel pak musí správně vybrat optimalizovano verzi. Výhoda je jediná -- optimalizací se neztrácí čas při ostrém běhu. To ale jako moc velkou výhodu nevidím, protože málokterý proces vytíží systém natolik, aby na optimalizace nebyl čas.
Netvrdím, že byl žhavou novinkou. Ale tehdy (před těmi zhruba dvaceti lety) bylo dost lidí, kteří šířili víru, že to je je ta Jediná Správná Cesta (TM).
Definitivně ale mou důvěrou v užitečnost Prologu otřáslo až přímé srovnání. To kamarádi dělali za domácí úkol v Prologu program na řešení algebrogramů, což by teoreticky měl být typ úlohy, která by mu měla skvěle sednout. Problém byl, že když jsem si to cvičně zkusil v céčku, měl jsem ten program napsaný výrazně rychleji (OK, tohle je nefér, měl jsem samozřejmě s céčkem výrazně víc zkušeností než oni s Prologem), zdroják byl kratší (to mne překvapilo asi nejvíc) a program řádově rychlejší (což jsem čekal)…
Na druhou stranu, kdyby chtěl takový Google pro své účely používat tyhle vymoženosti, hádám, že nejspíš by brzy skončil na huntě...On výkon Googlu přece jenom stojí na něčem trochu jiném, než nízkoúrovňových optimalizacích
- mplayer/libpostproc/postprocess_template.c - mplayer/libavcodec/* - imlib2/src/lib/amd64blend*Toto jsou zdrojáky, které vyždímají z CPU opravdu maximum
- xvidcore/src/*
Ale pokaždé, když mi nabízejí práci, ptají se na prvním místě na to C++A ty jim odpovídáš Haskell, ne?
Na druhou stranu, kdyby chtěl takový Google pro své účely používat tyhle vymoženosti, hádám, že nejspíš by brzy skončil na huntě...Myslíš třeba Google Web Toolkit?
může být (v rámci určitých mezí) Googlu celkem fuk, jak efektivní to jePřekladač z GWT provádí poměrně drsné optimalizace, aby ten JavaScript běžel co nejrychleji, dokonce pro každý prohlížeč generuje kód trochu jiný. Udržovat něco podobného přímo v JS by byla programátorská sebevražda. Dokonce, jak říkal Andrew Bowers, GWT upřednostňuje výkon nad snadností použití – což můžu potvrdit, nepíše se v tom nijak zvlášť snadno
co je levnější, jestli to pásmo, nebo čas Googlích vývojářůNo, jeden javascriptový soubor (pro jeden prohlížeč), který mívá velikost v řádu stovek kilobajtů a který lze bez problémů cachovat navždy, to není zas takový průšvih. S tím časem na vývoj je to zajímavější – na vývoj s GWT je potřeba programátor, zato webař se prakticky neuplatní, což může být docela killer. Chtělo by to nad GWT jako toolkitem ještě nějaký aplikační framework s HTML šablonováním
že celá jeho konkurenční výhoda je v tom, že nepoužívá relační databáziV čem spočívá konkurenční výhoda nepoužití relační databáze? Jaký je, konkrétně v tomhle případě, přínos pro zákazníka?
Ono je totiž dost ošemetné předpokládat, že v rámci jednoho projektu zvládnu napsat program, který lépe pracuje s daty, než SŘBD, který desítky let vyvíjejí ti nejlepší programátoři (ať už na universitách nebo třeba v Oraclu, IBM atd.).
Zase tak ošemetné to není. Stačí si totiž uvědomit, že nechám-li data v lokálních paměťových strukturách a budu tam s nimi pracovat, ušetřím overhead na jejich přeformátování, přeuspořádání, odeslání někomu jinému přes socket, čekání na výsledek a zpětné zpracování toho, co mi dotyčný vrátí. A ten nemusí být malý. Navíc se znalostí toho, jak se s daty pracuje, mohu efektivněji řešit zamykání, použít vhodnější datové struktury apod.
Tím samozřejmě nechci tvrdit, že je a priori špatné používat SQL servery. Sám je rád a často používám. Jen tvrdím, že to není automatický všelék a že je špatné se alibisticky vymlouvat prohlášeními typu "však on to ten Oracle (Firebird, …) s těmi daty stejně umí lépe, než bych to já kdy napsal".
Až já si jedno najdu čas na napsání toho fuse_mysqlNejsi první, koho to napadlo.
Ono se ukazuje, i když to taky není obecně platná skutečnost, že v některých (vysokoúrovňových) jazycích se některé (nízkoúrovňové) věci hlavně psát vůbec nemusí.Mám dojem, že to je důvod vzniku vyšších jazyků ne?
V8 je mimochodem adaptivní překladač, který musí překládat až za běhu, jinak by nebylo možné provádět optimalizace, které provádí. To jen pro tvou informaciJá vím co je V8 zač. To ty si začal psát hlouposti.
PHP je hrozný bastlBastl to je o tom žádná. Ale lidi, kteří v něm dobrovolně či nedobrovolně píší a nezdrhli k něčemu jinému si, pokud jejich výtvory fungují, zaslouží obdiv – psát v něm a udržet svůj program při životě i přes změny ve verzích PHP a další nepřízně tohoto jazyka je celkem řehole. Sám jsem od PHP právě z těchto důvodů odešel za lepším a dnes v PHP maximálně napíšu sem tam nějaký jednoúčelový skriptík.
u hodne lidi je prvni reakce na cizi praci: "Ktere prase to delalo?"
Nejen na cizí, občas i na vlastní, je-li pár let stará… :-)
Neumím programovat, pasuji se mezi mizerné slepovače kodu :-/Dulezity je vysledek a jeho kvalita. Kdyz si porovnam produktivitu "slepovacu kodu" a lidi, kteri na programu pilne pracuji - pouze tise zavidim. Kdo by nechtel sekat programy jako Bata cvicky? :)
Zdar Max
Programovat umi kdo umi pouzivat: - alespon html - interpretery (java/basic) - kompilovane jazyky (pascal,c...) - assembler - instrukcni kody a deruje to na stitky. - totez co predchozi ale vse z pameti bez prekladovych tabulek.
v konstantním časeTo nic není, můj programovací jazyk třídí tím rychleji, čím víc je prvků, učí se za chodu!
IMHO umí určitě spíš programovat ten, kdo vyřeší problém implementací pěkného algoritmu v PHP než někdo, kdo prasí v assembleru...V PHP jde neco naimplementovat pekne? Smim se zeptat 'jak'?
V PHP jde neco naimplementovat pekne? Smim se zeptat 'jak'?
Proč by to nemělo jít? Syntaxe základních řídících konstrukcí je stejná jako v céčku. To, že vám jazyk umožňuje psát jako prase, ještě neznamená, že této možnosti musíte využívat.
Dovolim si nesouhlasit. Drive bych asi neodporoval, ale dnes uz ano. PHP nejde psat jinak nez jako prase. Nezlob se na me, ale jak mam smyslet o jazyku, ktery nedovoli napsat vetsi kus kodu bez pouziti '@'. A jsou i jine spekovky jako napr. nedavno schvaleny oddelovac namespace, mixed return values, funkce se chovaji jinak nez je v dokumentaci popsano (a vyvojarum je to ocividne fuk), atd. To vse shrnout do jedne proste vety: "Ja jsem se snazil".V PHP jde neco naimplementovat pekne? Smim se zeptat 'jak'?To, že vám jazyk umožňuje psát jako prase, ještě neznamená, že této možnosti musíte využívat.
jak mam smyslet o jazyku, ktery nedovoli napsat vetsi kus kodu bez pouziti '@'
Zajímavé, že jsem si toho nikdy nevšiml…
Ostatní "důvody" jsou hodně uměle vymyšlené.
Když se na školách k výuce programování používal Pascal, tak to bylo/je podobné. Starší programátor přijde do styku s C a pochopí víc věcí a najednou se za to, co dělal v Pascalu, stydí. A tak začne Pascalem opovrhovat.Nevim, ale s Paskalem jsem zacinal a nestydel jsem se a nestydim se za nej, ani jim neopovrhuji. Pouze nema uplatneni a to beru jako fakt. Stejny fakt jako ten, ze by se nad sebou vyvojari PHPcka meli hluboce zamyslet a nestydet se poucit se z chyb druhych popr. z uspesnych reseni druhych.
Je ho plný web a je snadné s PHP začít.Naprosto souhlasim. Napisete "Hello world" a umite PHP. Spousta freehostingu, spousta frameworku, spousta napsaneho kodu (takze staci pouze C&P a mate aplikaci). Ano, PHP je vhodny zacatek.
Pouze nema uplatneni a to beru jako fakt.Ale? Pro vývoj už se přestalo používat Delphi?
Ale? Pro vývoj už se přestalo používat Delphi?Priznam se, ze takove nabidky prace uz beru jako raritu. Ok, skrtneme fakt.
Ale? Pro vývoj už se přestalo používat Delphi?btw Delphi uz ma i nejaky port na Linux?
IMHO by v té otázce mělo místo "už" být "ještě". :-)I to je mozne. Nikdy me to nezajimalo natolik (ani jsem nemel potrebu), abych se po takove informaci pidil, proto ono prekvapeni. Otazka byla polozena ciste z duvodu rozsireni informovanosti, i kdyz by to (jiste) zvladl i google.
Verim, ze pri pouzitijak mam smyslet o jazyku, ktery nedovoli napsat vetsi kus kodu bez pouziti '@'Zajímavé, že jsem si toho nikdy nevšiml…
if
a for
si toho clovek nevsimne. Take jsem si toho az do nedavne doby nevsimnul.
Jakym zpusobem jsou vymyslene?Ostatní "důvody" jsou hodně uměle vymyšlené.
Jakym zpusobem jsou vymyslene?
Způsobem "kdo chce psa být, hůl si najde". Obávám se, že Jiří Pagáč vás vystihl naprosto přesně. Jste prostě "velký kluk", který se naučil "opravdové jazyky", a protože "velcí kluci" PHP opovrhují, hlasitě jím opovrhujete.
Souhlasim. Nad zbytkem jsem se zasmalZpůsobem "kdo chce psa být, hůl si najde".
Řekl bych, že v každém jazyce platí, že programátor bez zkušeností má tendenci podlehnout pokušení používat prvky jazyka jen proto, že existují, a bez ohledu na to, jestli je to rozumné (což bez zkušeností nedokáže posoudit). Když jsem se poprvé potkal s C++, měl jsem s trochou nadsázky pocit, že když nebudu usilovně overloadovat operátory a používat pointery na metody, budu naprostý břídil. Když se dneska podívám na některé výtvory z té doby, ježí se mi chlupy po celém těle a říkám si, jaké štěstí, že jsem měl respekt aspoň z těch templatů. Jazyky s bohatším rejstříkem technik k tomu samozřejmě svádějí víc, ale to vidím právě spíš jako problém té sebekázně než jazyka.
Když to shrnu: vezmu-li céčkový zdroják bez věcí jako makro-gymnastika, inline assembler a komplikovanější pointerové aritmetiky (které ale těžko považovat za ukázku čistoty a přehlednosti), můžu ho v podstatě tupě přepsat do PHP. Jen musím před jména proměnných nadělat ty nešťastné dolary a opravit řetězcové operace (které jsou ale v PHP jednodušší a přehlednější). A co je asi největší problém, zapomenout na to, že za mne překladač pohlídá typy a že za mne něco zoptimalizuje.
můžeme začít třeba už od proměnných s dolary, u kterých je dolar úplně na ozdobu...Dolary jsou problém?
LET
, dolary a proměnná o jednom znaku z BASICu jsou ještě zlaté(o luxusu v PHP se nemá cenu vůbec bavit).Že já někde vyhrabu program pro CNCčka.
a jak efektivneTo ma nedávn dorazil jeden preborník asi takýmto kódom:
POLYLINE ReadPolyline(char *filename)
{
POLYLINE result;
FILE *f=fopen(filename,"r");
/* parsovanie */
fclose(f);
return result;
}
for (i=0;i<ReadPolyline(filename).numberOfPoints;i++)
printf("%d %d\n",ReadPolyline(filename).point[i].x,ReadPolyline(filename).point[i].y);
Hlasoval jsem pro tak trochu a učím se. Můj problém je, že umím od každého trochu, ale žádný pořádně. Teď na vejšce bych se chtěl specializovat. Oproti jaderným hackerům či softwarovým vývojářům jsem teda ořezávátko
Hlasoval jsem pro tak trochu a učím se.Takhle by pak mohl hlasovat každý – protože kdo se neučí není programátor. Celý život se člověk učí…
Zkusil jsi valgrind+1 Doporučuju tento nástroj.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.