Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: TomBA 07. 08. 2013, 20:13:42

Název: Otázky o programovaní
Přispěvatel: TomBA 07. 08. 2013, 20:13:42
Začnem tým, že sa ospravedlním. Chcel som položiť pár jednoduchých otázok, ale nakoniec som napísal celý román, aby som ozrejmil (asi aj sám sebe), ako som sa ku nim dostal.

Tak si občas pozriem forum tu na root-e. Otázky ohľadne programovania sú relatívne časté. Ako začať, ktorý jazyk, aký hardware, aká literatúra, aké licencie, dá sa z toho vyžiť, do akého veku sa oplatí začať a tak podobne.
Odpovede sú všelijaké. Od reálnych pohľadov na problematiku, snahy pomôcť, až po extrémne veci ako výsmech či hádky o tom "jedinom správnom" IDE/jazyku/OS/whatever_you_want. Žiaľ nekompetentné a arogantné vyjadrenia prevažujú. Často mám pocit že radia ľudia, ktorí sa práve tento semester dostali ku tomu či onomu jazyku. Minulý semester ich uchvátil jeden, tento semester je to druhý a s veľkou pravdepodobnosťou to bude za polrok tretí. Túžba prezentovať sa a ukázať sa ako cool geek je veľmi silná, hoci staré Si tacuisses, philosophus mansisses platí stále.
Osobne už dlhší čas neprogramujem a nikdy som sa tým naozaj neživil. Občas upravím voľajaký webshop, zbastlím nieco v php, naskriptujem niečo bashi, sed, awk, ale nepovažujem sa za odborníka na programovanie. Keby moje "produkty" videl odborník, asi by zalamoval rukami. V mojom najbližšom okolí ale mám ľudí, ktorý sa programovaniu venujú. Ako pedagógovia, ako študenti i ako freelanceri či zamestnanci v softvérových domoch. Pri rozhovoroch s nimi sa snažím dopátrať, ako taká výuka programovania dnes prebieha.
Keďže považujem programovanie za veľmi tvorivú činnosť, prekvapuje ma, že nič o tomto aspekte nepočujem. Analýze problémov sa venuje minimálne množstvo času. Predpokladal by som, že sa začne vývojovými diagramami, ukážkami ako previesť problém zo života do matematicko-logickej postupnosti. Že sa poukáže na to, ako dokáže dobrá analýza X-násobne urýchliť výpočet, ako ani najrýchlejší počítač nedokáže vyriešiť koncovku šachovej partie, ktorá je aj pre priemerného šachistu evidentná, ak nemá k dispozícii tabuľky koncových pozícií.
Začína sa inštaláciou voľajakého megamonštra (dosaďte si IDE podľa ľubovôle) a po obligátnom "hello world" nasledujú nijako nesúvisiace ukážky kódu v tom-ktorom jazyku. Triedenia, výpisy, súborový systém..... všetko bez toho PREČO?
A potom dostane študent voľajakú úlohu, ktorá bola už 1k krát na internete či inde riešená (s malou obmenou, v inom jazyku), veď nech si minuloročný druháci zarobia na pivečko.
Nerozumiem tomu. Ak ide naozaj o to pripraviť ľudí pre prax, trval by som na tímových projektoch, kde sa jeden študent môže prejaviť ako grafik, iný ako schopný analytik, tretí ako výkonný kóder, štvrtý dorobí dokumentáciu..... Tak ako v živote, každý má silnejšie a slabšie stránky a podstatné je to dať dokopy.
Ak ste dočítali až sem gratulujem. Tu sú moje otázky:
- Možete mi napísať akou genézou programovania ste prešli?
- V ktorej etape je podľa vás podstatný výber jazyka?
- V ktorej etape je podľa vás podstatné zapojenie a využívanie kooperácie a CVS?
- V ktorej etape je podľa vás podstatný výber IDE?
- Zažili ste / trvali vyučujúci na voľajakej "štábnej kultúre" kódu? Na komentovaní, na dodržiavaní konvencií pri pomenovávaní?
- Viete si predstaviť / zažili ste na školách využívanie niečoho ako codenvy, čo by viacej tlačilo na tímovosť, nevyžadovalo silný hardware na strojoch študentov (furt čítam že pre programovanie treba SSD s 8+ GB RAM)? Používajú školy niečo takéto?
- Majú študenti prístup ku voľajakým výpočtovým farmám (povedzme 128 jadrová pračka v pivnici) na ktorých si môžu spúšťať svoje projekty a testovať "multiprocesorovosť"?
- Viete si predstaviť / zažili ste na školách prácu hoci aj v konzole (ssh na školský server, vim alebo niečo iné, git)?
- Viete si predstaviť / zažili ste na školách niečo ako, že na jednom predmete sa niečo postaví (hardware), na druhom sa to naprogramuje, na treťom sa spraví dokumentácia/manuál/propagačný materiál/web/marketing/prezentácia?
- Viete si predstaviť / zažili ste na školách orientáciu na tímovú prácu? Výuku toho ako bude človek neskôr v praxi pracovať?

Všetkým, ktorý sa dostali až sem, za odmenu http://www.youtube.com/watch?v=pGFGD5pj03M (http://www.youtube.com/watch?v=pGFGD5pj03M).
Název: Re:Otázky o programovaní
Přispěvatel: spartakus 07. 08. 2013, 20:32:30
Nejaky tymovy projekty jsme ve skole meli a byla to docela katastrofa...

V podstate si vzpominam jenom na jede projekt kde sem byl v tymu s lidma co se snazili a neco delali. Jinak jsem ty projekty musel vzdicky udelat sam...
Název: Re:Otázky o programovaní
Přispěvatel: Kolemjdoucí 07. 08. 2013, 20:43:55
Týmová práce studentů je kontraindikace pro výuku čehokoliv, je to naprosto zcela zcestná myšlenka, která se zcela nepochopitelně dokonce zkoušela i v praxi a dopadla podle očekávání katastrofálně. V týmu makal jeden génius a ostatní se vezli a následně toho uměli ještě méně než dřív.

Výuka programování dnes v ČR neexistuje, na tom se místní osazenstvo vzácně shodlo, tudíž se nemůžete ničeho dopátrat, drtivá většina programátorů vznikla samostudiem mimo prostředí školy.
Název: Re:Otázky o programovaní
Přispěvatel: omg 07. 08. 2013, 20:59:02
- Možete mi napísať akou genézou programovania ste prešli?
irelevantni.
- V ktorej etape je podľa vás podstatný výber jazyka?
pri vyberu pozice zamestnance.
a tesne pred prvnimi priznaky vyhoreni - preventivni zasadni zmeny jako prevence vyhoreni.
- V ktorej etape je podľa vás podstatné zapojenie a využívanie kooperácie a CVS?
od prvniho projektu co ma vic jak 300 radku i kdyz primarni je casove kriterium. tedy i min radku pokud nad nimi musi nekdo dumat adekvatne dlouho. druhorade kriterium je pak spoluprace.
- V ktorej etape je podľa vás podstatný výber IDE?
cim driv tim lip. dobre ide zrychluje uceni. od hierarchie objektu pres podbizeni dokumentace az po nabizeni predpokladanych/moznych variant.
- Zažili ste / trvali vyučujúci na voľajakej "štábnej kultúre" kódu? Na komentovaní, na dodržiavaní konvencií pri pomenovávaní?
irelevantni
- Viete si predstaviť / zažili ste na školách využívanie niečoho ako codenvy, čo by viacej tlačilo na tímovosť, nevyžadovalo silný hardware na strojoch študentov (furt čítam že pre programovanie treba SSD s 8+ GB RAM)? Používajú školy niečo takéto?
castecne irelevantni
- Majú študenti prístup ku voľajakým výpočtovým farmám (povedzme 128 jadrová pračka v pivnici) na ktorých si môžu spúšťať svoje projekty a testovať "multiprocesorovosť"?
distribucnim balickarem se muze stat v podstate kazdy. build servery maji k dispozici.
- Viete si predstaviť / zažili ste na školách prácu hoci aj v konzole (ssh na školský server, vim alebo niečo iné, git)?
za to se davaly dutky nebo dvojky z chovani, kdyz si lidi na netware serveru instalovali exploitovaci patche :-D
- Viete si predstaviť / zažili ste na školách niečo ako, že na jednom predmete sa niečo postaví (hardware), na druhom sa to naprogramuje, na treťom sa spraví dokumentácia/manuál/propagačný materiál/web/marketing/prezentácia?
irelevantni
- Viete si predstaviť / zažili ste na školách orientáciu na tímovú prácu? Výuku toho ako bude človek neskôr v praxi pracovať?
jeden predmet.
Název: Re:Otázky o programovaní
Přispěvatel: nuda 07. 08. 2013, 21:15:51
- K tej tymovosti: imho je to totalna konina, na strednej na nas nieco take skusali a vysledok bol, ze v kazdej skupinke bol 1-2 ludia, ktory vedeli co a ako, a zbytok len prikyvoval a viezol sa... pokial bola uloha obkecat nejaky problem, vetsinou sa skupina prezentovala tym, co navhrol najvacsi kriklun skupiny - nie ten co mal najlogickejsi pristup, cize vacsinou nejaka hlupost...
Dokonca na nas skusali take, ze sa menil pocet clenov v skupine, az sa preslo od dvojic po 30-clennu skupinu: vysledok je taky, ze cim vacsia skupina, tym bol vysledok horsi, pretoze sa islo podla najvcsieho krikluna... :D

- Co sa tyka vyuky programovania (na slovensku) - existuje asi v takej miere, ze toto si opiste, a potom prepiste do pocitaca... to je cele...co, preco, ako - nic, alebo nauc sa sam... Osobne som mal uplne brutalnu skusenost, kde sme mali napisat program bez toho aby sme realne programovali... cize par-krat nam predviedli zdrojak a podla toho sme mali na pisomke spravit novy kod... :D :D :D (mal som za 3 kvoli syntaxu :D :D), a pohadal som sa z ucitelom, pretoze je to imho ko....na  :D :D :D

- K tomu stavaniu hardweru, programovaniu, dokumentacii: no my sme robili napriklad funkcny model vytahu, cize sa normalne staval z plexiskla model (50 cm na vysku), poriesili sa servo-motory, potom sa navrhla elektronika, urbil sa plosak, potom to zhorelo :D :D :D, takze sa tam dalo PLC, naprogramovalo sa to, a potom sup s tym na sutaz... funkcny vytah s troma podlaziami a pamätou stisknutych tlacidiel skoncil druhy za tabulou z diod, na ktorej beziaci text hlasal nejaku mudrost :D vystriedalo sa na tom tak 30 ludi, konkretne ja som robil nejaky kod pre PLC, kamos zas tie serva... IMHO fungovalo to len preto, ze ucitel, ktory to mal pod palcom vedel ludi organizovat, a vedel si vybrat spravnych studentov na konkretne prace... inak by sme sa nedostali ani po dvierka :D

Takze asi tak... :D
Název: Re:Otázky o programovaní
Přispěvatel: Petr Blahos 07. 08. 2013, 21:17:01
Keďže považujem programovanie za veľmi tvorivú činnosť, prekvapuje ma, že nič o tomto aspekte nepočujem. Analýze problémov sa venuje minimálne množstvo času. Predpokladal by som, že sa začne vývojovými diagramami, ukážkami ako previesť problém zo života do matematicko-logickej postupnosti. Že sa poukáže na to, ako dokáže dobrá analýza X-násobne urýchliť výpočet, ako ani najrýchlejší počítač nedokáže vyriešiť koncovku šachovej partie, ktorá je aj pre priemerného šachistu evidentná, ak nemá k dispozícii tabuľky koncových pozícií.
Problém je trochu jinde. Ne převést problém ze života do matematicko-logickej postupnosti, ale do takové posloupnosti úkonů čí akcí, která bude nadále dávat podobný smysl a splní ten účel, který se očekává. Jinak, většina úloh je banálních. (Dobře, chce to navrhnout databázi aspoň trochu správně, a všeobecně, nebýt idiot, ale málokdy jsem se setkal s tím, že vymyslet, jak něco naprogramovat, by byl problém. Problém je, jak to správně navrhnout z hlediska firemního (nebo lidského) workflow.)
Začína sa inštaláciou voľajakého megamonštra (dosaďte si IDE podľa ľubovôle) a po obligátnom "hello world" nasledujú nijako nesúvisiace ukážky kódu v tom-ktorom jazyku. Triedenia, výpisy, súborový systém..... všetko bez toho PREČO?
A potom dostane študent voľajakú úlohu, ktorá bola už 1k krát na internete či inde riešená (s malou obmenou, v inom jazyku), veď nech si minuloročný druháci zarobia na pivečko.
Pokud studenti nebudou umět tyhle základy (a oni je zatím neumí), tak nemá smysl zabývat se nějakým smysluplným projektem. Známému jsem pomáhal s nějakými OS na FIT, myslím, že ve druhém semestru. Byla to podle mého názoru né úplně jednoduchá úloha typu producent - konzument. No a prostě když to neumí, tak si to musí natrénovat. Ani v prváku na FEL CVUT jsem před těmi 20 lety neměl v programování semestrálku, která by se dala někde najít (ikdyž s obměnami). A nebyla úplně nezanedbatelná. Nadruhou stranu, nevidím nic špatného na opakování podobných úloh.
Nerozumiem tomu. Ak ide naozaj o to pripraviť ľudí pre prax, trval by som na tímových projektoch, kde sa jeden študent môže prejaviť ako grafik, iný ako schopný analytik, tretí ako výkonný kóder, štvrtý dorobí dokumentáciu..... Tak ako v živote, každý má silnejšie a slabšie stránky a podstatné je to dať dokopy.
To bys ale musel dát dohromady lidi z víc škol nebo aspoň víc oborů. U nás byly týmové projekty v:
Softwarové inženýrství I a II, Mikropočítače, Počítačová grafika nevím kolik, asi jich bylo víc, ale teď si nevzpomenu.
Ak ste dočítali až sem gratulujem. Tu sú moje otázky:
- Možete mi napísať akou genézou programovania ste prešli?
Hodně ve zkratce. Atari Basic, Assembler 6502, Turbo Pascal, (Turbo/Borland) C, C++, trošku toho assembleru 8086 a 8051 (velice trošku), pak GCC+Emacs+CVS, pak první zaměstnání C++, Win32, Visual Studio 6, Visual Source Safe (bad joke), pak druhé zaměstnání a znovu Emacs a YCP/Yast + CVS + autobuild (+autotest) systém distribuovaný v několika zemích, myslím, že tady někte byl taky přechod na vim, pak třetí zaměstnání, VIM, java (+ servlets + jsp), perforce ale práce v týmu velikosti 1, pak čtvrté zaměstnání (zase sám v týmu), Visual Studio 6, C++, SVN, javascript na serveru (asp zase bad joke), Python+wxPython na klientské aplikace, Python Pylons a později Pyramid na weby.
- V ktorej etape je podľa vás podstatný výber jazyka?
Nikdy
- V ktorej etape je podľa vás podstatné zapojenie a využívanie kooperácie a CVS?
Včera. Version control se hodí i pro nevývojáře, vpodstatě komukoliv, ale nikdo jiný než vývojáři to nebude schopen používat.  Dá se to pochopit rychle, ale je zapotřebí mít toho šéfa.
- V ktorej etape je podľa vás podstatný výber IDE?
Není důležité. Člověk vůbec musí prvně přijít na to, jestli IDE ano nebo ne, a jestli ano, tak je pak skoro jedno jaké, a jestli ne tak je to taky jedno.
- Zažili ste / trvali vyučujúci na voľajakej "štábnej kultúre" kódu? Na komentovaní, na dodržiavaní konvencií pri pomenovávaní?
Ano, ale vlastně jen v té grafice (Žára).
- Viete si predstaviť / zažili ste na školách využívanie niečoho ako codenvy, čo by viacej tlačilo na tímovosť, nevyžadovalo silný hardware na strojoch študentov (furt čítam že pre programovanie treba SSD s 8+ GB RAM)? Používajú školy niečo takéto?
Nedovedu si představit projekt, na který bych potřeboval výpočetně silný stroj. Pokud budu dělat úlohu z paralelních systémů, budu mít nástroje, jak to testovat na svém slabém notebooku, a občas vyzkoušet na skutečném železe. Ale cloud IDE? WTF?!?
- Majú študenti prístup ku voľajakým výpočtovým farmám (povedzme 128 jadrová pračka v pivnici) na ktorých si môžu spúšťať svoje projekty a testovať "multiprocesorovosť"?
My jsme měli, sice ve formě emulátoru, ale fungovalo to dostatečně. Upřímě, kolik studentů to využije? 1 ze 100? Věřím, že ten se k tomu dostane. My jsme se hlavně naučili, že tyhle věci jsou o něčem jiném.
- Viete si predstaviť / zažili ste na školách prácu hoci aj v konzole (ssh na školský server, vim alebo niečo iné, git)?
Haha, vim na sériovém terminálu k Unixu? No nic, tenkrát se ještě používal telnet.
- Viete si predstaviť / zažili ste na školách niečo ako, že na jednom predmete sa niečo postaví (hardware), na druhom sa to naprogramuje, na treťom sa spraví dokumentácia/manuál/propagačný materiál/web/marketing/prezentácia?
Nedovedu. Bylo by trochu blbý v předmětu B trpět za chyby, které udělal někdo jiný v předmětu A.
- Viete si predstaviť / zažili ste na školách orientáciu na tímovú prácu? Výuku toho ako bude človek neskôr v praxi pracovať?
Problém bude sehnat vedoucího týmu. Když se zamyslím nad tím, jak to bylo za nás, tak pár lidí bych do týmu sehnal, ale vedoucího blbě. Malý týmový projekty byly. Občas bylo i něco v tom smyslu, že se udělalo něco, co se pak použilo na něco dalšího (jako knihovna nebo tak).
Název: Re:Otázky o programovaní
Přispěvatel: hmmm 07. 08. 2013, 22:08:48
- Možete mi napísať akou genézou programovania ste prešli?

Karel, Turbo Pascal, ruzne jazyky na skole, ruzna klikatka pro programovani PLC, ted C#

- V ktorej etape je podľa vás podstatný výber jazyka?

Podstate to je asi u zacatecniku. Zvolit jazyk umerne veku ditete. Me tenkrat ten Karel vyhovoval.
V praci se musi zamestnanec naucit, co je potreba.

- V ktorej etape je podľa vás podstatné zapojenie a využívanie kooperácie a CVS?

Nechapu otazku. Podstatne to je v okamziku, kdy to je potreba.

- V ktorej etape je podľa vás podstatný výber IDE?

Uznavam, ze Visual Studio mi napovida docela hezky. Ale v praxi se dela v tom, co vyzaduje a plati zamestnavatel.

- Zažili ste / trvali vyučujúci na voľajakej "štábnej kultúre" kódu? Na komentovaní, na dodržiavaní konvencií pri pomenovávaní?

Ve skole s jednalo o nekolikaradkove programy, ktere vucujici pochopi i bez komentaru. Znam to i z pozice vyucujiciho.

- Viete si predstaviť / zažili ste na školách využívanie niečoho ako codenvy, čo by viacej tlačilo na tímovosť, nevyžadovalo silný hardware na strojoch študentov (furt čítam že pre programovanie treba SSD s 8+ GB RAM)? Používajú školy niečo takéto?

Zazil jsem nekolikaradkove programy. Pouze diplomka byla vetsi, ale moje zdrojaky nikoho nezajimaly.

- Majú študenti prístup ku voľajakým výpočtovým farmám (povedzme 128 jadrová pračka v pivnici) na ktorých si môžu spúšťať svoje projekty a testovať "multiprocesorovosť"?

My jako studenti jsme nemeli Rok cca 2000.

- Viete si predstaviť / zažili ste na školách prácu hoci aj v konzole (ssh na školský server, vim alebo niečo iné, git)?

SSH jem zazil.

- Viete si predstaviť / zažili ste na školách niečo ako, že na jednom predmete sa niečo postaví (hardware), na druhom sa to naprogramuje, na treťom sa spraví dokumentácia/manuál/propagačný materiál/web/marketing/prezentácia?

Ne. Takovahle souslednost predmetu nebyla.
Ale panove ve veku meho otce (tj. momentalne ca 60 let) vzpominaji, ze skutecne takhle na sebe ty predmety navazovaly Od kombinacnch pres sekvencni obvody az k asembleru...

- Viete si predstaviť / zažili ste na školách orientáciu na tímovú prácu? Výuku toho ako bude človek neskôr v praxi pracovať?

Na skole jsem nejakou vyraznejsi tymovou praci nezazil.
Název: Re:Otázky o programovaní
Přispěvatel: TomBA 07. 08. 2013, 23:25:52
Podľa doterajších reakcií by som to zhrnul asi tak že:
- Výuka programovania ako priprava na prax v CZ/SK prakticky neexistuje (dodržiavanie noriem, kooperatívny vývoj...). Je to veľmi smutné tvrdenie.

- Argumenty, že týmové projekty sú nezmysel, lebo jeden robí a ostatní sa vezú sú chybné. Podľa mňa je len otázkou, ako bude pedagóg sledovať, účasť jednotlivých členov týmu a pri prezentácii si veľmi rýchlo zistí, či všetci členovia tímu rozumejú riešeniu. Vaše reakcie, myslím si, len odzrkadlujú Vaše skúsenosti zo školy i praxe.

- To že sa vo výuke nepoužíva súslednosť a jednotlivé predmety spolu nesúvisia je veľmi demotivujúce. Každý potrebuje pocit úspechu, dokončenia niečoho zmysluplného. Ak človek vytvára kód len pre známku je to škoda. Ak robí dokonca to isté na viacerých predmetoch (povedzme v inom jazyku), len preto že pedagógovia nekomunikujú, je to katastrofa. Každý zahradkár vám povie, že dlhodobá práca na niečom zmysluplnom (úroda) je veľmi napĺňajúca.

- Snažil som sa tou týmovou prácou a rozdielnymi úlohami členou tímu, poukázať na to, že veľmi dôležitou činnosťou dnešného komerčného sveta je schopnosť prezentovať produkt. V mnohých krajinách, sú deti od malička vedené k prezentácii svojich prác (USA, Škandinávia, CH). V praxi sa to potom prejavuje pri uplatnení na trhu práce. Je až katastrofálne, keď špičkový SK/CZ odborník je počas svojej prednášky otočený chrbtom k auditóriu a mrmle si niečo pod nos. A nemyslím si že úloha prezentátora je v tíme menej dôležitá ako toho kto kódi.

- To že nie je podstatné ako sa čo naprogramuje, hlavne ked to robí čo má, sa mi tiež nepozdáva. Nedávno som so synom riešil klasický problém ôsmich dám na šachovnici. Samozrejme, že jeho softwarové riešenie bolo postavené na brutalforce. Keď som sa ho spýtal na šachovnicu 1000x1000, alebo iné figúry, mal problém. Za týždeň prišiel s riešením, ktoré počítalo šachovnicu 1000x1000 za pár sekúnd. Ďaľší krok sú strelce i veže.  Ide o analýzu. Ak niekto tvrdí že pri bežnej business aplikácii nie je už čo vymyslieť, že je to o pár formulároch a databáze, je to omyl. Presne týmto sa dobré produkty odlišujú od zlých. Majú v sebe nápad. Pred 10 rokmi mnohí vraveli, že Photoshop vie už všetko.....
Název: Re:Otázky o programovaní
Přispěvatel: ded kenedy 07. 08. 2013, 23:58:54
Tymove projekty maji nekolik problemu. Zaprve, nemuzes ucit lidi programovat v tymu, kdyz jeste ani poradne neumi programovat jako jednotlivci. Zadruhe, na VS IT smeru je spousta lidi, kteri na to nemaji a po case odpadnou. Kdyz je nechas pracovat v tymech, skonci to tak, ze ti schopnejsi, aby ziskali kredity, radsi praci za ty mene schopne udelaji.

Citace
Snažil som sa tou týmovou prácou a rozdielnymi úlohami členou tímu, poukázať na to, že veľmi dôležitou činnosťou dnešného komerčného sveta je schopnosť prezentovať produkt.

Od toho je tu marketingove oddeleni.

Citace
V mnohých krajinách, sú deti od malička vedené k prezentácii svojich prác (USA, Škandinávia, CH). V praxi sa to potom prejavuje pri uplatnení na trhu práce.

Ano, pak existuje spousta lidi, kteri sice umi zvanit, ale nikdo nic nedela. Priklad USA, kde na technicke skole pro zastupy indu a cinanu mas problem najit opravdoveho americana.

Citace
- Výuka programovania ako priprava na prax v CZ/SK prakticky neexistuje (dodržiavanie noriem, kooperatívny vývoj...). Je to veľmi smutné tvrdenie.

Naucit se programovat je otazka nekolika let a spousty praxe, predstava, ze te to nekdo nauci za dve hodiny tydne je naivni.
Název: Re:Otázky o programovaní
Přispěvatel: black3r 08. 08. 2013, 01:13:08
- Možete mi napísať akou genézou programovania ste prešli?
Stredna skola: Turbo Pascal -> FreePascal -> C (gcc) -> C++ (g++) (samozrejme na gympli sme sa ucili len turbo pascal, zvysok vlastna snaha)
Vyska: Python + Vsetko mozne (PHP, JavaScript, CoffeeScript, Dart, Ruby, C#, C++, Java) (na skole len C++ a Java, zvysok vlastna snaha + praca)
- V ktorej etape je podľa vás podstatný výber jazyka?
Iba na zaciatku: Je blbost naucit sa napisat Hello World v 20 jazykoch a nevediet ani v jednom viac... ked uz clovek ovlada jeden jazyk celkom slusne tak uz na dalsie sa prechadza celkom lahko..
- V ktorej etape je podľa vás podstatné zapojenie a využívanie kooperácie a CVS?
Ked clovek zacne robit na niecom vacsom, napr. Git pouzivam na hocijaky projekt ktory kodim viac ako 3 dni a aj ked ho kodim sam... uz len kvoli tej historii a branchingu sa to oplati
- V ktorej etape je podľa vás podstatný výber IDE?
Nikdy: Clovek si vybere jedno IDE a potom sa uz nevie prisposobit ostatnym. Ja som si nikdy ne"vybral" IDE a teraz som schopny robit v hocicom co mi podstrcia --> vim, eclipse, netbeans... Hej, ulahcuje to pracu, to je pravda, ale ked sa raz naucis pisat kod v niecom primitivnom (napr. vim bez milion pluginov), tak sa vyhnes narekom ked raz nebudes mat k dispozicii to tvoje vyvolene IDE. A aj tak si myslim ze v serioznej praxi vacsinu casu zaberie vymysliet ako nieco spravit a nie uz naklikanie/napisanie... a ked viem rychlo pisat na klavesnici tak pri vybere pisat/klikat si vacsinou vyberiem pisanie...
- Zažili ste / trvali vyučujúci na voľajakej "štábnej kultúre" kódu? Na komentovaní, na dodržiavaní konvencií pri pomenovávaní?
Idem momentalne do druhaku na FMFI, na predmete Programovanie v Jave sme kod komentovat museli. Nepredpokladam ze na nejakej strednej sa to niekde vyzaduje...
- Viete si predstaviť / zažili ste na školách využívanie niečoho ako codenvy, čo by viacej tlačilo na tímovosť, nevyžadovalo silný hardware na strojoch študentov (furt čítam že pre programovanie treba SSD s 8+ GB RAM)? Používajú školy niečo takéto?
codenvy nepoznam, neviem v com kodenie na skolach vyzaduje silny hardware.. ale mozno som sa s takym este len nestretol
- Majú študenti prístup ku voľajakým výpočtovým farmám (povedzme 128 jadrová pračka v pivnici) na ktorých si môžu spúšťať svoje projekty a testovať "multiprocesorovosť"?
Ten kto chce si k tomu pristup najde..
- Viete si predstaviť / zažili ste na školách prácu hoci aj v konzole (ssh na školský server, vim alebo niečo iné, git)?
Stredna skola tazko, tam su radi ked sa naucia Pascal.. U nas na vyske sa o ssh a vim-e rozpravalo, ale zatial to nejako vyzadovane nebolo, no som tu len rok zatial tak neviem..
- Viete si predstaviť / zažili ste na školách niečo ako, že na jednom predmete sa niečo postaví (hardware), na druhom sa to naprogramuje, na treťom sa spraví dokumentácia/manuál/propagačný materiál/web/marketing/prezentácia?
Taketo nieco si predstavit neviem... Podla mna to hlavne trocha mixuje odbory... postavit nejaky hardware je skor pre elektrotechnikov, programovanie hardware skor pre nejakych priemyselnych informatikov a web-y skor pre aplikovanu informatiku?
- Viete si predstaviť / zažili ste na školách orientáciu na tímovú prácu? Výuku toho ako bude človek neskôr v praxi pracovať?
Timova praca na skolach vzdy dopadne tak, ze vacsinu kodu zbucha ten najsikovnejsi/najlepsi v skupine a zvysok sa len vezie. Alebo to dopadne tak ze ti slabsi sa aj o nieco pokusia, ale nakoniec to nedopadne velmi dobre a potom ten lepsi to po nich musi opravovat..
Název: Re:Otázky o programovaní
Přispěvatel: JS 08. 08. 2013, 07:21:03
Na otazky nema smysl odpovidat, zakladni problem je v premise, ze ty veci, ktere povazuje za dulezite, se nebudou jiz menit. Neboli jak mi rikal jeden asi 60-lety kolega - "nam na skole rikali, co se tyce volby jazyka, ze jsou do budoucna jen 2 realisticke moznosti - PL/I nebo FORTRAN". Ja napriklad jsem profesionalni programator, prestoze jsem to nestudoval - studoval jsem aplikovanou matematiku - a tedy nezapadam do vasi skatulky vubec. Zivot je slozitejsi.

Citace
To že nie je podstatné ako sa čo naprogramuje, hlavne ked to robí čo má, sa mi tiež nepozdáva. Nedávno som so synom riešil klasický problém ôsmich dám na šachovnici.

Citace
A potom dostane študent voľajakú úlohu, ktorá bola už 1k krát na internete či inde riešená

Neprotireci si to trochu? Smyslem techto jednoduchych uloh (na prohledavani do hloubky, napriklad) je prave naucit analyze. Ze si to nekdo zkopiruje z Internetu a v praxi pak nebude vedet, jak k problemu pristoupit, a co je asymptoticka slozitost, je jeho problem. Nemuzes zacit analyzou realnych problemu - to je spatny treninkovy priklad z vicero duvodu (jeden je nejednoznacnost dobreho reseni).

Citace
Viete si predstaviť / zažili ste na školách niečo ako, že na jednom predmete sa niečo postaví (hardware), na druhom sa to naprogramuje, na treťom sa spraví dokumentácia/manuál/propagačný materiál/web/marketing/prezentácia?

Tato myslenka uz existuje: http://www.nand2tetris.org/ (http://www.nand2tetris.org/) Byl by to dobry stredoskolsky predmet, IMHO (pro lepsi stredni skoly).

Citace
Kdyz je nechas pracovat v tymech, skonci to tak, ze ti schopnejsi, aby ziskali kredity, radsi praci za ty mene schopne udelaji.

A to prave studenty dobre pripravi na tu praxi. :-) Ja jsem tymovy projekt nezazil, myslim, ze v jednom predmetu je uzitecne si to zkusit, ale asi by to nemel byt hlavni zpusob jak ucit lidi programovat (jak uz podotkli jini).
Název: Re:Otázky o programovaní
Přispěvatel: Kolemjdoucí 08. 08. 2013, 07:42:26
- Výuka programovania ako priprava na prax v CZ/SK prakticky neexistuje (dodržiavanie noriem, kooperatívny vývoj...). Je to veľmi smutné tvrdenie.

BINGO

- Argumenty, že týmové projekty sú nezmysel, lebo jeden robí a ostatní sa vezú sú chybné. Podľa mňa je len otázkou, ako bude pedagóg sledovať, účasť jednotlivých členov týmu a pri prezentácii si veľmi rýchlo zistí, či všetci členovia tímu rozumejú riešeniu. Vaše reakcie, myslím si, len odzrkadlujú Vaše skúsenosti zo školy i praxe.

Pedagog nemá čas a prostředky zjišťovat úroveň členů týmu, to zjistí až na konci pololetí/semestru a teprve ex post se zjistí jaká úroveň studentů je a že v drtivé většině případů byla zcela nedostatečná pro činnost v týmu. V reálném životě se úroveň členů týmu zjišťuje před vstupem do týmu a to je pak zcela jiná situace.

- Snažil som sa tou týmovou prácou a rozdielnymi úlohami členou tímu, poukázať na to, že veľmi dôležitou činnosťou dnešného komerčného sveta je schopnosť prezentovať produkt. V mnohých krajinách, sú deti od malička vedené k prezentácii svojich prác (USA, Škandinávia, CH). V praxi sa to potom prejavuje pri uplatnení na trhu práce. Je až katastrofálne, keď špičkový SK/CZ odborník je počas svojej prednášky otočený chrbtom k auditóriu a mrmle si niečo pod nos. A nemyslím si že úloha prezentátora je v tíme menej dôležitá ako toho kto kódi.

Prezentování produktů a vůbec business je samozřejmě velmi důležitý, ale na to máme armády absolventů jiných oborů. Programátor odborník nemá čas na objíždění nějakých prezentací nebo přednášek, ten musí makat.

- To že nie je podstatné ako sa čo naprogramuje, hlavne ked to robí čo má, sa mi tiež nepozdáva. Nedávno som so synom riešil klasický problém ôsmich dám na šachovnici. Samozrejme, že jeho softwarové riešenie bolo postavené na brutalforce. Keď som sa ho spýtal na šachovnicu 1000x1000, alebo iné figúry, mal problém. Za týždeň prišiel s riešením, ktoré počítalo šachovnicu 1000x1000 za pár sekúnd. Ďaľší krok sú strelce i veže.  Ide o analýzu. Ak niekto tvrdí že pri bežnej business aplikácii nie je už čo vymyslieť, že je to o pár formulároch a databáze, je to omyl. Presne týmto sa dobré produkty odlišujú od zlých. Majú v sebe nápad. Pred 10 rokmi mnohí vraveli, že Photoshop vie už všetko.....

První šachový program který je schopen spolehlivě porazit člověka, je založen na brutalforce 200 000 000 tahů za sekundu, žádná velká analýza nebyla potřeba :P
Samozřejmě v praxi analýza potřeba je, to je jasná věc.
Název: Re:Otázky o programovaní
Přispěvatel: Petr Blahos 08. 08. 2013, 08:01:42
Podľa doterajších reakcií by som to zhrnul asi tak že:
- Výuka programovania ako priprava na prax v CZ/SK prakticky neexistuje (dodržiavanie noriem, kooperatívny vývoj...). Je to veľmi smutné tvrdenie.
Mám dojem, že máš odpověď bez oholedu na to, co Ti kdo napíše. Jaké normy? V IT normy zatím nejsou. V programování už vůbec. Jaká praxe? Praxe programátora? Nemůžeš čekat, že ze školy vyleze hned hlavní programátor (to je název pozice).

Citace
- Argumenty, že týmové projekty sú nezmysel, lebo jeden robí a ostatní sa vezú sú chybné. Podľa mňa je len otázkou, ako bude pedagóg sledovať, účasť jednotlivých členov týmu a pri prezentácii si veľmi rýchlo zistí, či všetci členovia tímu rozumejú riešeniu. Vaše reakcie, myslím si, len odzrkadlujú Vaše skúsenosti zo školy i praxe.
Heh? Pokud je to týmová práce, tak snad jen jeden musí rozumět řešeni. Jeden dělá grafiku, jeden docs, 1 programuje podle zadání, jeden to vede.
Citace
- To že nie je podstatné ako sa čo naprogramuje, hlavne ked to robí čo má, sa mi tiež nepozdáva. Nedávno som so synom riešil klasický problém ôsmich dám na šachovnici. Samozrejme, že jeho softwarové riešenie bolo postavené na brutalforce. Keď som sa ho spýtal na šachovnicu 1000x1000, alebo iné figúry, mal problém. Za týždeň prišiel s riešením, ktoré počítalo šachovnicu 1000x1000 za pár sekúnd. Ďaľší krok sú strelce i veže.  Ide o analýzu. Ak niekto tvrdí že pri bežnej business aplikácii nie je už čo vymyslieť, že je to o pár formulároch a databáze, je to omyl. Presne týmto sa dobré produkty odlišujú od zlých. Majú v sebe nápad. Pred 10 rokmi mnohí vraveli, že Photoshop vie už všetko.....
Někdo psal, že není podstatné, jak se co naprogramuje? Podstatné to sice je, ale není to ten problém. Tvůj syn řešil problém a vyřešil problém a Ty v tom hledáš chybu? Dostal zadání, vyřešil ho správně, pak dostal jiné zadání, a vyřešil ho taky správně. Udělal to nejlepší, co šlo. Reagoval na poptávku. Vlastně se z hlediska týmové práce choval dokonale.
Název: Re:Otázky o programovaní
Přispěvatel: Mirek 08. 08. 2013, 08:56:22
Mám dojem, že máš odpověď bez oholedu na to, co Ti kdo napíše. Jaké normy? V IT normy zatím nejsou. V programování už vůbec. Jaká praxe? Praxe programátora? Nemůžeš čekat, že ze školy vyleze hned hlavní programátor (to je název pozice).

Opravdu v IT žádné normy nejsou? Jsi si jistý? Co takhle zkusit trochu pohledat?

Heh? Pokud je to týmová práce, tak snad jen jeden musí rozumět řešeni. Jeden dělá grafiku, jeden docs, 1 programuje podle zadání, jeden to vede.
Koukám, že to máš pěkně a jednoznačně nalajnované. Myslíš že to nejde jinak? Já bych řekl, že existuje spousta možností, jak týmovou "semestrálku" pojmout tak, aby dala studentům, kteří mají otevřené oči a i mysl, hodně do jejich profesního života. To co píšeš opravdu nepatří mezi takové přístupy.
Název: Re:Otázky o programovaní
Přispěvatel: JS 08. 08. 2013, 09:37:41
Opravdu v IT žádné normy nejsou? Jsi si jistý? Co takhle zkusit trochu pohledat?

Tak zkuste pohledat a pak nam napiste, jak to dopadlo a co jste nasel. Takhle je to argument o nicem.
Název: Re:Otázky o programovaní
Přispěvatel: Mirek 08. 08. 2013, 12:13:29
Opravdu v IT žádné normy nejsou? Jsi si jistý? Co takhle zkusit trochu pohledat?

Tak zkuste pohledat a pak nam napiste, jak to dopadlo a co jste nasel. Takhle je to argument o nicem.

Já hledat nemusím, já část z nich znám. Ale chci aby se Petr Blahos taky trochu snažil. A na vysvětlení - ode mně nešlo o argument, ale o popíchnutí člověka, který vystupuje stylem že má ve všem naprosto jasno a přitom neví která bije, k nějaké vlastní aktivitě.
Název: Re:Otázky o programovaní
Přispěvatel: Kolemjdoucí 08. 08. 2013, 13:01:25
Já hledat nemusím, já část z nich znám.

A jaké mají číslo ČSN nebo EN ? Prosil bych tak 3 ks na ukázku. Jen civilní použití, žádné automotive/military a spol.
Název: Re:Otázky o programovaní
Přispěvatel: txt 08. 08. 2013, 13:15:17
Já hledat nemusím, já část z nich znám.

A jaké mají číslo ČSN nebo EN ? Prosil bych tak 3 ks na ukázku. Jen civilní použití, žádné automotive/military a spol.

toto je na samostatné téma, zde hraničící s OT.

namátkou:
ITIL (poskytování služeb)
ČSN ISO/IEC 27000
IEC/ČSN EN 61508
ČSN IEC 61131

btw armádní MIL STD 882 je poučné čtení o rizicích, když už jsme u těch norem.
Název: Re:Otázky o programovaní
Přispěvatel: Kolemjdoucí 08. 08. 2013, 13:50:36
To jsou normy jenom vzdáleně související s IT, ale budiž.
Název: Re:Otázky o programovaní
Přispěvatel: TomBA 08. 08. 2013, 13:57:03
Ohľadne argumentu, že na prezentáciu projektu je marketingové oddelenie, alebo že programátor nemusí vedieť prezentovať:
Áno, presne s takýmito menejžermi, marketingovými jojami sa denne stretávam. Myslím si že je to chybný postoj. Ak nerozumiem produktu ktorý predávam, neviem na akých princípoch je postavené softvérové riešenie, nebudem naozaj úspešný. Predstava že krikľavé sako a kravata môžu dobre predávať komplexné softwarové produkty je hlúposť. Budúcnosť je medziodborová.

Ohľadne noriem a pravidiel:
Zastupiteľnosť v tíme, univerzálnosť či čitateľnosť kódu nie sú nepodstatné. Narážajú na to všetky väčšie organizácie. Predražovanie projektov ide do desiatok i stoviek percent. Nie je to špecifikum vývoja software. Bolo by predsa čudné, keby každý mäsiar rozoberal brava po svojom nie? Každý učeň ktorý sa vyučil v Siemense (alebo za hlbokej totality v BEZ) predsa vedel, v ktorom vrecku zástery, v ktorom šuflíku stola, má aké náradie. Bola na to norma. Teória, že poriadok je len pre debilov a inteligent sa vyzná aj v chaose je typická výhovorka bordelárov. Pracovať na väčšom projekte (jedno v akej oblasti) s takýmto postojom je "radosť". Ja viem, robil si z toho srandu aj Svěrák (http://www.youtube.com/watch?v=z5OyFzMsgN4 (http://www.youtube.com/watch?v=z5OyFzMsgN4)), ale v realnej praxi je rozumná miera štandardizácie veľmi potrebná...
Nemusíme ísť až ku DIN, či ČSN, stačí ak sa budú ľudia snažiť dodržiavať napríklad http://en.wikipedia.org/wiki/Coding_conventions (http://en.wikipedia.org/wiki/Coding_conventions)
Název: Re:Otázky o programovaní
Přispěvatel: Kolemjdoucí 08. 08. 2013, 14:09:16
Ohľadne argumentu, že na prezentáciu projektu je marketingové oddelenie, alebo že programátor nemusí vedieť prezentovať:
Áno, presne s takýmito menejžermi, marketingovými jojami sa denne stretávam. Myslím si že je to chybný postoj. Ak nerozumiem produktu ktorý predávam, neviem na akých princípoch je postavené softvérové riešenie, nebudem naozaj úspešný. Predstava že krikľavé sako a kravata môžu dobre predávať komplexné softwarové produkty je hlúposť. Budúcnosť je medziodborová.

No tak to se prostě setkáváš se špatnými lidmi, solidní zástupce firmy z marketingového oddělení umí prodávat produkty vlastní firmy a tedy o nich tolik aby je dokázal prodat. Dělá se to tak, že programátoři vyškolí pár pre-sales obchodníků a ti jezdí po světě za ně a umějí produkt nainstalovat a předvést u zákazníka.
Programátor rozhodně nemá čas jezdit po světě a dělat prezentace produktů, to si může dovolit leda tak 1x-2x ročně na výstavě.
Název: Re:Otázky o programovaní
Přispěvatel: ded kenedy 08. 08. 2013, 14:14:35
Citace
Nemusíme ísť až ku DIN, či ČSN, stačí ak sa budú ľudia snažiť dodržiavať napríklad http://en.wikipedia.org/wiki/Coding_conventions

Evidentne mas problemy rozlisovat mezi pojmy: norma, standard, konvence, atd.

Dal vychazis z naprosto chybne premisi, ze vyvoj kazdeho SW probiha vsude uplne stejne a staci se to jednou naucit a pak libovolne aplikovat. To je blbost. Napriklad jsou firmy, ktere pouzivaji RUP, jine zase nekterou z agilnich technik a vyvoj se tak lisi naprosto diametralne. Konvence, jak vyvijet SW jsou dane typicky firmou nebo projektem, takze rozcilovat se, ze ve skole nekoho neucili neco, o cem ty si momentalne myslis, ze je dulezite, je zbytecne. Pokud to firma vyzaduje, proskoli si sve zamestnance.
Název: Re:Otázky o programovaní
Přispěvatel: TomBA 08. 08. 2013, 14:27:48
Citace
Citace
- Argumenty, že týmové projekty sú nezmysel, lebo jeden robí a ostatní sa vezú sú chybné. Podľa mňa je len otázkou, ako bude pedagóg sledovať, účasť jednotlivých členov týmu a pri prezentácii si veľmi rýchlo zistí, či všetci členovia tímu rozumejú riešeniu. Vaše reakcie, myslím si, len odzrkadlujú Vaše skúsenosti zo školy i praxe.
Heh? Pokud je to týmová práce, tak snad jen jeden musí rozumět řešeni. Jeden dělá grafiku, jeden docs, 1 programuje podle zadání, jeden to vede.
Ani v reálnom svete a ani pri školskom projekte to takto nefunguje. Ak nie som schopný skontrolovať svojho zamestnanca, ak nie som schopný odhadnúť koľko jeho práca trvá, ako je náročná, nebudem úspešný. Predstava, že na všetko si nájdem ľudí a ja ich budem riadiť bez toho aby som tomu rozumel je hlúpa.
A to isté je aj na škole. Každý spraví časť, ale každý bude rozumieť všetkému. Ušetrí sa čas a slabší sa veľa naučí štúdiom kódu silnejšieho kolegu.... Silnejší kolega (programátor) zase pochopí, ako sa má robiť polopatistická dokumentácia, keď uvidí svojho slabšieho kolegu. Spadne na zadek, keď celkom "slabý" kolega spraví logo pre spoločný projekt ktoré bude mať šťavu.

Citace
Někdo psal, že není podstatné, jak se co naprogramuje? Podstatné to sice je, ale není to ten problém. Tvůj syn řešil problém a vyřešil problém a Ty v tom hledáš chybu? Dostal zadání, vyřešil ho správně, pak dostal jiné zadání, a vyřešil ho taky správně. Udělal to nejlepší, co šlo. Reagoval na poptávku. Vlastně se z hlediska týmové práce choval dokonale.
Ak za správne riešenie problému považuješ len jednoduchý výsledok, tak to je chyba. Často je cesta (hlavne na škole) dôležitejšia ako cieľ. Ak sa spýtam koľko je 500x1 a niekto si pod seba napíše 500 jednotiek a spočíta ich je to smutné... Neexistuje dostatočne jednoduchý problém nad ktorým sa netreba zamyslieť, ktorý sa nedá lepšie vyriešiť. Dosaď si za lepšie čo chceš (cena, rýchlosť, elegancia, opakovateľnosť, aplikovateľnosť).
Název: Re:Otázky o programovaní
Přispěvatel: TomBA 08. 08. 2013, 14:36:21
Citace
Nemusíme ísť až ku DIN, či ČSN, stačí ak sa budú ľudia snažiť dodržiavať napríklad http://en.wikipedia.org/wiki/Coding_conventions
Evidentne mas problemy rozlisovat mezi pojmy: norma, standard, konvence, atd.
Nikde som vo svojom pôvodnom príspevku nehovoril o normách. Vôbec mi nešlo o detailné skúšanie voľajakého predpisu. Išlo mi o to aby študenti vedeli že niečo takéto existuje a aby si napríklad škola niečo také zaviedla a používala.

Citace
takze rozcilovat se, ze ve skole nekoho neucili neco, o cem ty si momentalne myslis, ze je dulezite, je zbytecne. Pokud to firma vyzaduje, proskoli si sve zamestnance.
Určite sa nerozčuľujem. Nie je prečo. Každý má svoj názor, niekedy podložený skúsenosťou, inokedy pocitmi. Jednoducho som sa spýtal. Ak som tým opýtanim niekoho urazil, je mi to/ho ľuto.
Název: Re:Otázky o programovaní
Přispěvatel: ded kenedy 08. 08. 2013, 15:39:26
Citace
Ak nie som schopný skontrolovať svojho zamestnanca, ak nie som schopný odhadnúť koľko jeho práca trvá, ako je náročná, nebudem úspešný.

Bud musis mit zkusenosti nebo duveru ve sve zamestnance. Nic z toho te ve skole nenauci. Predstava, ze (v praxi) jeden clovek bude rozumet  vsemu a bude moct druhe kontrolovat je licha. U vetsich projektu je to proste smula.

Citace
Spadne na zadek, keď celkom "slabý" kolega spraví logo pre spoločný projekt ktoré bude mať šťavu.

Zkousels nekdy nad svymi napady premyslet? Takze: slaby kolega za vecer udela hezke logo a ten, co na tom projektu drel treba mesic, z toho padne nazadek, oba budou stastni a oba budou hodnoceni stejne. V konecnem dusledku je to opet ta zminena situace, kde to jeden proste odedre a ostatni se vezou.

Citace
Nikde som vo svojom pôvodnom príspevku nehovoril o normách.

V puvodnim prispevku ne, ale hned v druhem ano:

Citace
- Výuka programovania ako priprava na prax v CZ/SK prakticky neexistuje (dodržiavanie noriem, kooperatívny vývoj...). Je to veľmi smutné tvrdenie.
Název: Re:Otázky o programovaní
Přispěvatel: txt 08. 08. 2013, 15:59:25
To jsou normy jenom vzdáleně související s IT, ale budiž.
IEEE 754
ISO 8859-2
ANSI C
Název: Re:Otázky o programovaní
Přispěvatel: Mirek 08. 08. 2013, 15:59:57
To jsou normy jenom vzdáleně související s IT, ale budiž.
Dobrá, něco pustím pro lenochy, kteří nechtějí hledat:

ISO/IEC 90003: http://www.iso.org/iso/catalogue_detail?csnumber=35867

Je název "Software engineering -- Guidelines for the application of ISO 9001:2000 to computer software" dostatečně související s IT? I když IT je velmi široký pojem, to bychom se klidně mohli dostat k normám popisujícím SmartCard apod. Já normy v tomto tématu chápu jako souhrn požadavků a doporučení týkajících se typických postupů a nebo řešení některých technických problémů.

Takže by určitě nezavrhoval Industrial/Automotive/Military normy na funkční bezpečnost (často poučné čtení).

Mimochodem, doporučím podívat se třeba i na IEEE a podobně.
Název: Re:Otázky o programovaní
Přispěvatel: Mirek 08. 08. 2013, 16:06:30
A další normy najdeš v abstractu té 900003...
Název: Re:Otázky o programovaní
Přispěvatel: Kolemjdoucí 08. 08. 2013, 16:31:46
Já normy v tomto tématu chápu jako souhrn požadavků a doporučení týkajících se typických postupů a nebo řešení některých technických problémů.

Bohužel nerozumíte významu slova norma. Norma, jako třeba ČSN EN, je všeobecně závazné pravidlo. IEEE, ISO, ANSI C jsou nezávazné. Rozdíl je v tom, že když vám někdo namontuje hromosvod chybně od ustanovení normy, je to problém a můžete dotyčného popotahovat u soudu. Když vám někdo dodá aplikačku nesplňující ANSI C, nic se neděje.
Název: Re:Otázky o programovaní
Přispěvatel: kamokere 08. 08. 2013, 16:36:16
Najlepsi jazyk je imho Delphi - narozdiel od Turbo Pascalu, ktory je urceny len pre MS-DOS podporuje aj platformu Windows a dokocna aj Linux (Kylix). Vsetko sa prograzmuje cez klikanie na komponenty takze je vhodny aj pre zaciatocnikov, ked potrebujes ine komponenty mozes si ich stiahnut tu: http://www.torry.net/pages.php?id=20 (http://www.torry.net/pages.php?id=20). Jedine co je problem je velkost EXE súboru (oproti C++) ale ta sa da zmensit pomocou packeru UPX.
Název: Re:Otázky o programovaní
Přispěvatel: TomBA 08. 08. 2013, 16:43:44
Citace
Citace
Spadne na zadek, keď celkom "slabý" kolega spraví logo pre spoločný projekt ktoré bude mať šťavu.

Zkousels nekdy nad svymi napady premyslet? Takze: slaby kolega za vecer udela hezke logo a ten, co na tom projektu drel treba mesic, z toho padne nazadek, oba budou stastni a oba budou hodnoceni stejne. V konecnem dusledku je to opet ta zminena situace, kde to jeden proste odedre a ostatni se vezou.
Prečo myslíš že by mali mať obidvaja rovnaké hodnotenie? Asi z tohoto vyplýva tvoj negatívny prístup. Ja som nič také netvrdil. Každý pedagóg je schopný po niekoľkých otázkach ohodnotiť prínos toho-ktorého člena pre celkový projekt. Ale každý človek je iný. A možno že práve ten spolužiak, ktorý nie je programátorské eso bude raz na marketingu a pohľad zo strany programátora mu veľa objasní.

Citace
Citace
Nikde som vo svojom pôvodnom príspevku nehovoril o normách.

V puvodnim prispevku ne, ale hned v druhem ano:
Citace
- Výuka programovania ako priprava na prax v CZ/SK prakticky neexistuje (dodržiavanie noriem, kooperatívny vývoj...). Je to veľmi smutné tvrdenie.
Aha, nevšimol som si. Mal som na mysli normy, ako normy správania, pravidlá určitej spoločnosti skupiny. Ako ale vidíš z viacerých príspevkov iných účastníkov diskusie určité normy sú a oni pochopili o čo mi ide.
Citace
Zkousels nekdy nad svymi napady premyslet?
Prečo tak? Ublížili ti v živote?
Název: Re:Otázky o programovaní
Přispěvatel: gamer 08. 08. 2013, 16:44:25
Norma, jako třeba ČSN EN, je všeobecně závazné pravidlo.

Mýlíš se, ČSN závazné nejsou:
http://www.unmz.cz/urad/prehlrub.asp?cd=53&typ=c
Je ale pravda, že si nikdo nedovolí ČSN nedodržovat, protože by měl problém, kdyby nastal nějaký průšvih.
Název: Re:Otázky o programovaní
Přispěvatel: Kolemjdoucí 08. 08. 2013, 17:05:32
Uznávám že nejsou závazné jen tak samy od sebe, jenže na spoustu ČSN EN jsou odkazy právě z těch právních předpisů, takže mnoho z nich závazných je, zrovna ty o hromosvodu.

A tím jsme se dostali k podstatě, na software nebo IT zatím žádnou obdobu takové normy neznám, proto mě zajímalo zda existuje.
Název: Re:Otázky o programovaní
Přispěvatel: Mirek 08. 08. 2013, 17:28:01
Já normy v tomto tématu chápu jako souhrn požadavků a doporučení týkajících se typických postupů a nebo řešení některých technických problémů.

Bohužel nerozumíte významu slova norma. Norma, jako třeba ČSN EN, je všeobecně závazné pravidlo. IEEE, ISO, ANSI C jsou nezávazné. Rozdíl je v tom, že když vám někdo namontuje hromosvod chybně od ustanovení normy, je to problém a můžete dotyčného popotahovat u soudu. Když vám někdo dodá aplikačku nesplňující ANSI C, nic se neděje.

Ale no tak. Myslim ze ty az tak uplne nerozumis vyznamu slova norma. Norma (technicka) neni jen to co je explicitne pravne zavazne.
Název: Re:Otázky o programovaní
Přispěvatel: txt 08. 08. 2013, 17:45:51
Uznávám že nejsou závazné jen tak samy od sebe, jenže na spoustu ČSN EN jsou odkazy právě z těch právních předpisů, takže mnoho z nich závazných je, zrovna ty o hromosvodu.

A tím jsme se dostali k podstatě, na software nebo IT zatím žádnou obdobu takové normy neznám, proto mě zajímalo zda existuje.

Závaznost norem lze stanovit:
-právním předpisem
-správním orgánem
-smlouvou zúčastněných stran

Definice: Norma - vyjádření požadavků na produkt/proces, aby byli vhodné pro daný účel za daných podmínek
atd.

Takže, vím co to je norma, IT je normalizováno méně než třeba strojírenství, ale normy existují, příkladů bylo vyjmenováno vícero.
Název: Re:Otázky o programovaní
Přispěvatel: ded kenedy 08. 08. 2013, 18:36:55
Citace
Mal som na mysli normy, ako normy správania, pravidlá určitej spoločnosti skupiny.

jak uz tu nekdo psal: mel bys rozlisovat mezi pojmy: norma, standard, konvence, atd.

Citace
Prečo myslíš že by mali mať obidvaja rovnaké hodnotenie? Asi z tohoto vyplýva tvoj negatívny prístup. Ja som nič také netvrdil. Každý pedagóg je schopný po niekoľkých otázkach ohodnotiť prínos toho-ktorého člena pre celkový projekt.

Abys mohl spravedlive hodnotit, musis predem stanovit objektivni kriteria hodnoceni. (Typicky: ,,projekt splnuje vsechny pozadavky zadani''.) Nemuzes hodnotit stylem, ,,mne se po par otazkach zda, ze jsi na tom projektu delal malo, proto jsi neuspel''

Citace
Prečo tak?

Protoze tve uvahy jsou na takove urovni, ze by se za to nemusel stydet ani Michal Kolesa.
Název: Re:Otázky o programovaní
Přispěvatel: JS 08. 08. 2013, 19:35:05
Ale no tak. Myslim ze ty az tak uplne nerozumis vyznamu slova norma. Norma (technicka) neni jen to co je explicitne pravne zavazne.

Proto jsem si vyzadal priklad, aby bylo jasne, co pod tim myslis ty. ;) Ale jinak si v podstate myslim, ze normy v IT temer neexistuji; standardy jsou neco jineho. Norma by asi melo byt neco, cim se ridi kazdy. Standardem se kazdy ridit nemusi (hezky je ten vyse uvedeny priklad s ANSI C). Ale to uz tu jini vyjadrili i lepe.

Kdyz mi treba elektrikar dela doma vedeni, nemuze si to udelat jak chce, zvolit si jakykoli drat, pojistky a co ja vim. Zatimco ja si ve sve aplikaci muzu s databazi komunikovat jak se mi zlibi. V tomto smyslu temer zadne normy v IT nejsou.
Název: Re:Otázky o programovaní
Přispěvatel: JS 08. 08. 2013, 19:39:38
Prečo myslíš že by mali mať obidvaja rovnaké hodnotenie? Asi z tohoto vyplýva tvoj negatívny prístup.

Jenom poznamka k tomu, co uz napsal ded kenedy. Co se tady mysli tou nerovnosti? Hodnoceni predmetu na VS je v praxi v podstate binarni - prosel/neprosel; na znamky nikdo nekouka.
Název: Re:Otázky o programovaní
Přispěvatel: Petr Blahos 08. 08. 2013, 19:57:44
Děkuju za usměrnění ohledně norem. To je samozřejmně blbost, která ze mě vypadla pod vlivem příspěvku původního autora, kterému vyčítám vpodstatě to, co potom někteří z vás mě. Norma je např. ASCII nebo UNICODE. Děkuju taky za podporu těm, kteří pochopili, jak jsem to myslel. Mimochodem, ISO 27000 není IT norma. Automotive bych v této souvislosti taky nezmiňoval. Původní autor psal často o coding stylu, revision control a práci v týmu, a moje poznámka se měla týkat hlavně toho. Nepochybuju o tom, že ISO nebo EU na to nějakou tu aspoň malou (200-500 stran) normičku vydalo. Fakt je, že coding style, revision control a metodiku týmové práce si každá firma naštěstí dělá po svém. Taky si uvědomuju, že jsem vlastně viník toho, že celý tento thread šel do h**zlu. Go me!

Teď jsem se díval na studijní plán FIT CVUT, a hle obor Softwarové inženýrství s týmovými projekty. Pokud chcete mít kecy, že to tam učí blbě, tak prosím, to nedovedu posoudit, ale upřímě, vysokou školu už si studujete sami, a je na vás, jak se k tomu postavíte. Za nás byly různé předměty s různou formou spolupráce, a mohli jsme to vzít pohodově nebo vážně.

Citace
Heh? Pokud je to týmová práce, tak snad jen jeden musí rozumět řešeni. Jeden dělá grafiku, jeden docs, 1 programuje podle zadání, jeden to vede.
Koukám, že to máš pěkně a jednoznačně nalajnované. Myslíš že to nejde jinak? Já bych řekl, že existuje spousta možností, jak týmovou "semestrálku" pojmout tak, aby dala studentům, kteří mají otevřené oči a i mysl, hodně do jejich profesního života. To co píšeš opravdu nepatří mezi takové přístupy.
To je schéma, které popisoval původní tazatel.
Nerozumiem tomu. Ak ide naozaj o to pripraviť ľudí pre prax, trval by som na tímových projektoch, kde sa jeden študent môže prejaviť ako grafik, iný ako schopný analytik, tretí ako výkonný kóder, štvrtý dorobí dokumentáciu..... Tak ako v živote, každý má silnejšie a slabšie stránky a podstatné je to dať dokopy.

Název: Re:Otázky o programovaní
Přispěvatel: Petr Blahos 08. 08. 2013, 20:11:58
Citace
Někdo psal, že není podstatné, jak se co naprogramuje? Podstatné to sice je, ale není to ten problém. Tvůj syn řešil problém a vyřešil problém a Ty v tom hledáš chybu? Dostal zadání, vyřešil ho správně, pak dostal jiné zadání, a vyřešil ho taky správně. Udělal to nejlepší, co šlo. Reagoval na poptávku. Vlastně se z hlediska týmové práce choval dokonale.
Ak za správne riešenie problému považuješ len jednoduchý výsledok, tak to je chyba. Často je cesta (hlavne na škole) dôležitejšia ako cieľ. Ak sa spýtam koľko je 500x1 a niekto si pod seba napíše 500 jednotiek a spočíta ich je to smutné... Neexistuje dostatočne jednoduchý problém nad ktorým sa netreba zamyslieť, ktorý sa nedá lepšie vyriešiť. Dosaď si za lepšie čo chceš (cena, rýchlosť, elegancia, opakovateľnosť, aplikovateľnosť).
Předně, kloubouk dolů, myslím si, že je perfektní, že se synem děláte tyhle věci, a pokud tohle řeší kdy, hmm, ke konci základky? Na střední? Tak pak asi nebude mít problém s předmětama jako jsou grafy a jazyky a překladače. Jenže takovou úlohou se můžeme zabývat třeba 10 let, a budeme vědět, jestli jsme dostali nejoptimálnější řešení? Možná už zítra, možná nikdy. Na otázku, jak to udělat nejlépe je vždy protiotázka: Co je to nejlépe?

No a proti tomu tu máme týmovou práci na úkolu, kdy máme něco jako plán, a když máme úlohu spočítat 500x1 a naše řešení, ač beznadějně neoptimální, bude v danou chvíli dostatečné, tak se prostě posuneme dál. A samozřejmě oba víme, že 500x1 je nadsázka.

V praxi je ale větší problém to, aby software byl pro uživatele dostatečně přirozený, a uživatel aby věděl, že dělá 500x1, nepřipadalo mu to krkolomné, při příštím použití to věděl znovu, a nezasahovalo to do jeho pracovního workflow. Čímž reaguju spíš na otázky ohledně přístupu k počítačům s větším množstvím procesorů.

A teď bych se měl vrátit k tomu že se budu častěji sám sebe ptát: Je tohle to nejlepší, co mohu v této chvíli dělat?
Název: Re:Otázky o programovaní
Přispěvatel: Sudovec 08. 08. 2013, 20:19:08
Ale no tak. Myslim ze ty az tak uplne nerozumis vyznamu slova norma. Norma (technicka) neni jen to co je explicitne pravne zavazne.

Proto jsem si vyzadal priklad, aby bylo jasne, co pod tim myslis ty. ;) Ale jinak si v podstate myslim, ze normy v IT temer neexistuji; standardy jsou neco jineho. Norma by asi melo byt neco, cim se ridi kazdy. Standardem se kazdy ridit nemusi (hezky je ten vyse uvedeny priklad s ANSI C). Ale to uz tu jini vyjadrili i lepe.

Kdyz mi treba elektrikar dela doma vedeni, nemuze si to udelat jak chce, zvolit si jakykoli drat, pojistky a co ja vim. Zatimco ja si ve sve aplikaci muzu s databazi komunikovat jak se mi zlibi. V tomto smyslu temer zadne normy v IT nejsou.

Ať tu nemícháme pojmy a dojmy - v češtině technická norma má určitý význam. A nejlepší je podívat se rovnou ke kováři - http://www.unmz.cz/urad/co-je-to-technicka-norma-

Nezaváděj prosím vlastní definice pojmu technická norma. To povede jen k tomu, že si s ostatními nebudeš rozumět.

V angličtině se pro to samé používá "(technical) standard". Ani v jednom jazyce to ale není podmíněné povinností dodržování.

To, že si skoro každý v tomto vlákně vybírá případy, kdy je norma závazná (typicky kvůli bezpečnosti) - jako např. elektroinstalace nebo EMC, je prostě zavádějící. Ale i tak můžeme u SW (a HW) sáhnout pro automotive/industry aplikace po normách definujících funkční bezpečnost (viz už zmíněné výše). A tam zjistíš, že jsou také závazné pro danný typ aplikací, protože jinak nezískáš homologaci výrobku.

Stejně tak i výše zmíněná ISO/IEC 90003 je pro tebe velmi důležitá pokud máš proces vývoje SW certifikovaný dle ISO 9000 apod. A i když nic takového nemáš, můžeš tam najít spoustu materiálu pro inspiraci.
Název: Re:Otázky o programovaní
Přispěvatel: TomBA 08. 08. 2013, 21:59:57
Ďakujem za všetky pozitívne i negatívne názory diskutujúcich. Myslím, že už mám presnejšiu predstavu o tom, aká je situácia/atmosféra v CZ/SK spoločnosti ohľadne programovania a celkovo tímovej, vnútrofiremnej či akejkoľvek inej komunikácie. Prajem všetkým ktorý hľadajú odpovede, aby ich aspoň čiastočne našli a tým ktorým je to všetko jasné, prajem aspoň tieň pochybností. Veď aj klasik hovori: "Pamatuj si Pepíčku, chytrý člověk má vždy pochybnosti, jen hlupák nepochybuje." "Tati, a jsi si tím jistý?" "Stoprocentně!"
Z mojej strany je to na teraz všetko.
Název: Re:Otázky o programovaní
Přispěvatel: JS 09. 08. 2013, 05:35:13
Nezaváděj prosím vlastní definice pojmu technická norma. To povede jen k tomu, že si s ostatními nebudeš rozumět.

Ja jsem nic takoveho udelat nechtel, a prave proto jsem se ptal puvodniho tazatele, co si pod tim predstavuje. Otazka ovsem je, zda tu "vlastni definici" nezavedl uz ten urad, kdyz pise "V současné době je technická norma kvalifikované doporučení, není závazná." Bylo to tak i historicky?

Kazdopadne, myslim, ze je celkem fakt, ze spousta vyrobcu SW (automobily jsou vyjimka) zadne normy dodrzovat nemusi, ale vyrobci treba elektronickych zarizeni fakticky ano. IMHO je to dane spis (kratkym) historickym vyvojem toho oboru, a je to IMHO spatne.
Název: Re:Otázky o programovaní
Přispěvatel: Petr 09. 08. 2013, 10:08:14
Citace
Možete mi napísať akou genézou programovania ste prešli?
pred skolou VBA/VB/PHP/trochu Pascal (Delphi), na skole C/C++/Python, v praxi Java
Citace
V ktorej etape je podľa vás podstatný výber jazyka?
Pokud hledam praci tak zrejme pri vyberu zamestnavatele  :) Pokud resim konkretni problem a vim ze jazyk, ktery znam a bezne pouzivam se k tomu moc nehodi, reseni by bylo prilis slozite apod. tak se poohlednu po necem co to resi efektivne
Citace
V ktorej etape je podľa vás podstatné zapojenie a využívanie kooperácie a CVS?
V pracovnim prostredi ve chvili kdy lze predpokladat, ze projekt bude mit delsi zivotnost (neni to jednorazova vec, kterou si bastlim pro sebe a nikdo jiny to nepouzije), dela na tom vic lidi, budou vznikat branche atd. Na skole jen na vyzkouseni k cemu VCS jsou, jinak je to kanon na vrabce pro skolni projekty.
Citace
V ktorej etape je podľa vás podstatný výber IDE?
Kdyz si bastlim neco sam tak to delam v tom co mi vyhovuje, jinak se rozhoduji podle toho v cem dela zbytek tymu, usetri to cas pri reseni problemu
Citace
Zažili ste / trvali vyučujúci na voľajakej "štábnej kultúre" kódu? Na komentovaní, na dodržiavaní konvencií pri pomenovávaní?
Nekteri ano, nekteri ne, vzhledem k poctu vyucujicich (1 - 3) a poctu studentu v predmetu (300 - 500) ani neni v lidskych silach ke kazdemu pristupovat individualne a prochazet cely kod, projekty se opravovaly formou automatizovanych sad testu.
Ono to ale neni jen o komentovani, ale i dodrzovani konvenci pro dany jazyk / projekt, dobrych zvyklosti v OOP, vyuzivani navrhovych vzoru, kdyz je to vhodne atd. Je toho hodne co se na skole proste nenauci.
Citace
Viete si predstaviť / zažili ste na školách využívanie niečoho ako codenvy, čo by viacej tlačilo na tímovosť, nevyžadovalo silný hardware na strojoch študentov (furt čítam že pre programovanie treba SSD s 8+ GB RAM)? Používajú školy niečo takéto?
Ne nemam takove zkusenosti, tymove projekty sice byly, ale nejaky duraz na praci v tymu tam kladen nebyl. SSD a 8GB RAM jen urychli praci, teoreticky se da zit i na 2GB RAM a 5400 plotnovem disku :) Jen to pojede pomaleji.
Citace
Majú študenti prístup ku voľajakým výpočtovým farmám (povedzme 128 jadrová pračka v pivnici) na ktorých si môžu spúšťať svoje projekty a testovať "multiprocesorovosť"?
Ano skoly maji zpravidla nejake skolni servery
Citace
Viete si predstaviť / zažili ste na školách prácu hoci aj v konzole (ssh na školský server, vim alebo niečo iné, git)?
Ano, nektere projekty dokonce vyzadovaly spustitelnost a funkcnost na konretnim unixovem skolnim serveru, ke kteremu byl pristup pres ssh
Citace
Viete si predstaviť / zažili ste na školách niečo ako, že na jednom predmete sa niečo postaví (hardware), na druhom sa to naprogramuje, na treťom sa spraví dokumentácia/manuál/propagačný materiál/web/marketing/prezentácia?
V nekterych predmetech byla takova snaha, ne vzdy to vyslo
Citace
Viete si predstaviť / zažili ste na školách orientáciu na tímovú prácu? Výuku toho ako bude človek neskôr v praxi pracovať?
Snaha byla, ale na praxi to stejne nepripravi, ve skole Vas tezko pripravi na nejednoznacna zadani zakaznika, ktery ani sam nevi co chce, tezko Vas pripravi na pravidelne srazky s blbcem, na to ze dojde sef a bude chtit aby jste neco udelali do zitra a je mu jedno jestli to budete delat pres noc a nebo na pocit zoufalstvi, kdyz mate najit chybu v 10 let starem frameworku v tride, ktera ma 25000 radku a ani jediny komentar.