Programovanie v prváku - jazyk

Tu o tom, tuhle o támhletom... a jinda taky o něčem jiném :D
JT

Re: Programovanie v prváku - jazyk

Příspěvek od JT »

iwtu:
Souhlas, project Euler jsem taky používal jako zadání různých úložek - na druhou stranu, v prváku spousta studentů neovládá moc ani matematiku, takže hezčí úložky, které jsou více matematika, než programování, beztak nevyřeší. Ale aspoň by snad měli vidět, že to není, jak říkáš, uvolňování paměti apod :-)

Funkcionální programování by opravdu mohlo být snazší (třeba Haskell mi přijde ohromně přirozený prostředek vyjadřování, i když hluboké porozumění (kterého jsem nedosáhl) je netriviální). Ale přijde mi, že klasické "systémové" jazyky jsou syntaxí i mechanismy základem pro matematický software, se kterými se studenti spíš potkají.

Ono by vůbec asi šlo učit rovnou v nějakém matematickém softwaru, jenže to není zdaleka tak obecné - to je jak když se na nějakých třetiřadých výškách naučí nakódit pár blbin v Javě a když by měli napsat něco v jiném jazyce, tak se zastřelí.

Je samozřejmě otázka, zda je Pascal nejlepší, jediný atd. :-) To, že jinde vymřel nemusí být apriori špatné (mluví-li se o degeneraci vysokých škol, udržet starší koncepty může mít smysl), ale souhlas, že to je podezřelé :-) Ono je taky možné, že by změna jazyka za např. nějaký objektový znamenalo obrovské překopání předmětu, do kterého by se nikomu nechtělo. Na druhou stranu, když je na informatice struktura: první semestr - na počátku druhého objektové intermezzo + syntaxe C# - pokračování algoritmů v C# - tak je otázka, jak těžké by bylo šoupnout počátek druhého semestru na počátek prvního a pak dělat už pořád jenom algoritmy. Proti tomu se říká, že by tomu studenti na začátku nerozuměli a psali některou "omáčku" (main, namespacy atd.), které nerozumí. No, ale ono to tedy u nás na počátku druhého semestru nebylo o moc lepší, kdo s tím neměl zkušenosti, taky tomu zpočátku docela dlouho nerozuměl. V C# by se asi hůř učily pointery, na druhou stranu si nejsem jist jejich zásadností.

Ještě ad Python - ten text mi přijde hrozně optimistický (a podíváme-li se na http://en.wikipedia.org/wiki/List_of_Python_software, je vidět, že to sice není nevýznamný jazyk, ale jeho význam bych taky nepřeceňoval). Viz některé výhody, co se tam píší:
- To, že zarovnávání určuje blok mi nepřijde moc jako výhoda.
- Dynamické typování je výhoda? A od kdy? U PHP se to nejdřív tvářilo jako feature a dneska je to spíš bug - podle mého to působí ukrutný bordel.
Uživatelský avatar
iwtu
Matfyz(ák|ačka) level I
Příspěvky: 48
Registrován: 15. 3. 2010 21:54
Typ studia: Informatika Bc.

Re: Programovanie v prváku - jazyk

Příspěvek od iwtu »

Mna len dostali argumenty beavera, ktory som ani jeden poriadne nepochopil. On vidim problem ucit jazyk, kde 1[pole] je toto iste ako pole[1]. Ja v tom ziadny problem nevidim a podobne. Argument, Python toho umi moc. C# sme vlastnorucne programovali spojak na prvom cviku a nemohli sme pouzit uz ten vstavany v C#. V neprocku je tiez casto zakazany v Prolog finall, bagof apod... Na Python nie su cviviaci... Programko 2 som opakoval, mal som 2 cviciacich a obaja prvy krat videli C# na cviku. Vazne, ak sa ludia ako on vyberali jazyk, tak sa necudujem, ze tomu nechapem.

Asi a budem opakovat, ale informatik si uz cestu k programovaniu nejako najde. Katastrofu skor vidim u matematikov, kde Pascal vacsinou sposobi ich nelasku k programku. A kedze sa ucia iba Pascal, tak sa ani velmi nebudu snazit pouzit programko v buducnosti. Pascal nema buducnost, nema zvysel ho hlbsie skumat a hrat sa s nim po ukonceni predmetu. Rovnako si ani nemyslim, ze pre matematika je to prave orechove uvolnovanie pamate a programovat obojstranne spajany zoznam. Mimochodom, dnes na Windows 7 je uz aj celkom problem rozhochodit Pascal v inom ako mini okne.

V Python sa programuje lahko, rychlo a ludi to aj bavi. Zatial okrem beavera, ktoreho argument so ziadny nepochopil, mi nikto nepovedal jediny argument, preco Python nie je pre matematikov idealna volba. Aj zivotopis vyznie inac, ked je tam Python namiesto Pascalu. Plus Python na rozdiel od Pascalu moze byt aj dobrou reklamou pre skolu...

Na informatickom programovani neviem do akej mieri je v prvom semestri uvolnovanie pamatate. Potom sa programuje v C#, kde aj tak pamat nikto neuvolnuje. Ak je uvolnovanie pamate zasadne, tak si myslim, ze C je ovela lepsia volba ako Pascal. Ono tie volby a hadky okolo prveho jazyka vacsinou stoja aj padaju na tom, co bolo na zaciatku (ne)pohodlne pre daneho ucitela. Ale ono je to rozne. Su ludia, pre ktorych je najlepsie C, pre inych Python, pre inych Haskell... Kazdemu sadne nieco ine. Keby mne nejaky ucitel v prvaku povedal, ze C je pre mna tazke, asi by som ho niekde poslal. Pascal oproti C ma akurat tu jedinu nevyhodu, ze Pascal nemoze byt nocna mora. C ak sa bude ucit hlupo, moze byt nocna mora. Ale preco by sa, sakra, C malo ucit hlupo??? C moze byt uplne v pohode jazyk. Mimochodom, C zvladaju studenti na ntriednych skolach, ba sa casto krat ucit na priemyslovkach. Prosim, fakt mi nehovorte, ze pre studenta tejto skoly je C tazke...

Ale myslim si, ze by bolo krasne, keby sa prednaskach brali algoritmy a cvicenia by boli v roznych jazykoch, nech si student sam vyberie. Prepokladam, ze Pascal by si vela ludi vazne nevybralo. Ba si aj myslim, ze C by si vybralo viac studentov ako Pascal.

Je tu niekto zo SKAS-u? Taka vymena nazorov medzi 10 ludmi je onicom. Co tak spravit anketu, aby sa zistilo, co si vlastne myslia studenti?
steves
Matfyz(ák|ačka) level I
Příspěvky: 33
Registrován: 13. 12. 2008 16:29
Typ studia: Informatika Bc.

Re: Programovanie v prváku - jazyk

Příspěvek od steves »

Myslím si, že změna jazyku v prváku by byla fajn věc a aktivita od iwtu mi v tomhle smyslu přijde sympatická (alespoň se někdo nějak snaží), na druhou si taky myslím, že je volba programovacího jazyka v prváku ten nejmenší problém studia na Bc. inf. Jazyky, které člověk bude používat v praxi, se stejně buďto naučí na zmíněných "syntaktických" přednáškách nebo dokonce až v té "praxi". To, že by člověk měl semestr nebo dva náskok ve studiu jazyka X, protože už od prváku by se učil jazyk X, mi nepřijde jako taková výhoda, protože, jak už zaznělo, v prváku je to stejně (mělo by být) o algoritmech a ne o zevrubném popisu všech zákoutí jazyka X, nedej bože jeho knihoven.

Následuje lehké OT:

Větší problémy vidím třeba ve výuce angličtiny, konkrétně ESP: skoro každý přiznává, že kvůli těm ~10 bodům, mu nestálo za to, se na tuhle část vůbec připravovat. ESP už rozhodně není (jestli někdy byla) pro "naše" speciální potřeby -- o tom svědčí už jenom to, že je stejná pro všechny obory. Myslím si, že kdybychom, jak to je třeba na IES, měli výuku některých odborných předmětů v angličtině, tak by nám to (i z profesního hlediska) dalo mnohem víc, než výuka Pythonu v prváku, a takových věcí by bylo víc (třeba lepší specifikace požadavků k BSZ, lepší možnosti studia v zahraničí, uplatnění zpětné vazby z ankety v SISu, spolupráce s firmami, ...) Když není vůle/čas* měnit tyhle, podle mě zásadnější věci, tak změna programovacího jazyku v prváku těžko projde.

*/technické možnosti/peníze/dostatek lidí/... nechci nijak křivdit lidem za to odpovědným. Nicméně i to, že nevíme, proč to a to nemůže fungovat líp/jinak pokládám za chybu/absenci komunikace se studenty.
Uživatelský avatar
iwtu
Matfyz(ák|ačka) level I
Příspěvky: 48
Registrován: 15. 3. 2010 21:54
Typ studia: Informatika Bc.

Re: Programovanie v prváku - jazyk

Příspěvek od iwtu »

Dik. V prvaku pro Bc. informatika jazyk nie je kriticky, lebo clovek si jednoducho bude musiet najst nejaku cestu ku vhodnemu nastroju. Ohladom Pascalu si myslim pro Informatiky Bc. studia si myslim, ze argument, ze C je pre nich tazke je hlupost... C sa uci na priemyslovkach aj na inych skolach, tak si nemyslim, ze studenta tejto skoly to bude tazke. Plus C je v zopar predmetoch skryta prekvizita. Netvrdim, ze C je idealna volba, ale urcite idealnejsia ako Pascal.

Pre matematiku Bc. studium beriem pracu s pametou a vyuku Pascalu za dost kriticku vec, lebo v mnohych pripadoch je to pre matematikov prve strestnutie s programovanim, ktore je aj casto posledne. Co asi nechceme.

K tej anglincine... Ja by som bol aj za. Ale neviem, za mojich cias boja vyuka anglinciny miziva, ale vedel som, ze ju budem potrebovat. Tak som sa ju ucil sam. Vedel som, ze budem potrebovat programovanie, tak som sa naucil zaklady programovania. Ak chce ist clovek na medicinu ci pravo, musi sa na prijimacky ucit daleko nad skolske osnovy. Preto mi ani nepride divne pozadovat od uchadzaca, aby sa oboznamil aspon s cyklom for, array, struct. Ved to je hodnota vzdelania, nie? Nezaviedli sa prijimacky kvoli tomu, ze ludia si davali matfyz ako zaloznu skolu a ako prioritu nejaku polnohospodarsku?

Myslim si, ze vzdelanie ma hodnotu a nemalo by sa davat zadarmo. Aby uchadzac prejavil aspon trosku snahy pred nastupom na strednu.
steves píše:*/technické možnosti/peníze/dostatek lidí/... nechci nijak křivdit lidem za to odpovědným. Nicméně i to, že nevíme, proč to a to nemůže fungovat líp/jinak pokládám za chybu/absenci komunikace se studenty.
Ta komunikacia urcite nie je dokonala. Aj ohladom toho jazyka, ja by som velmi zvedavy, co si o tom myslia studeni... Ono tie zmeny mi casto krat pridu take, ze aha, s tym maju studenti problem a v podstate to ani nepotrebuju, tak to skusime spravit takto, mozno to bude lepsie. A spravia to takto, ale nikoho sa pritom nenapadne opytat studentov, ze kde je podla nich problem a co by navrhli. Ale myslim si, ze so strany ucitelov by bol velky zaujem, len este ako keby nenasli spravnu formu a moznosti, ako to zdelit studentom a ziskat od nich feedback.
QZuzka
Matfyz(ák|ačka) level III
Příspěvky: 209
Registrován: 2. 12. 2007 19:51
Typ studia: Informatika Mgr.
Bydliště: Praha 4

Re: Programovanie v prváku - jazyk

Příspěvek od QZuzka »

iwtu píše:Dik. V prvaku pro Bc. informatika jazyk nie je kriticky, lebo clovek si jednoducho bude musiet najst nejaku cestu ku vhodnemu nastroju. Ohladom Pascalu si myslim pro Informatiky Bc. studia si myslim, ze argument, ze C je pre nich tazke je hlupost... C sa uci na priemyslovkach aj na inych skolach, tak si nemyslim, ze studenta tejto skoly to bude tazke. Plus C je v zopar predmetoch skryta prekvizita. Netvrdim, ze C je idealna volba, ale urcite idealnejsia ako Pascal.

Pre matematiku Bc. studium beriem pracu s pametou a vyuku Pascalu za dost kriticku vec, lebo v mnohych pripadoch je to pre matematikov prve strestnutie s programovanim, ktore je aj casto posledne. Co asi nechceme.

K tej anglincine... Ja by som bol aj za. Ale neviem, za mojich cias boja vyuka anglinciny miziva, ale vedel som, ze ju budem potrebovat. Tak som sa ju ucil sam. Vedel som, ze budem potrebovat programovanie, tak som sa naucil zaklady programovania. Ak chce ist clovek na medicinu ci pravo, musi sa na prijimacky ucit daleko nad skolske osnovy. Preto mi ani nepride divne pozadovat od uchadzaca, aby sa oboznamil aspon s cyklom for, array, struct. Ved to je hodnota vzdelania, nie? Nezaviedli sa prijimacky kvoli tomu, ze ludia si davali matfyz ako zaloznu skolu a ako prioritu nejaku polnohospodarsku?

Myslim si, ze vzdelanie ma hodnotu a nemalo by sa davat zadarmo. Aby uchadzac prejavil aspon trosku snahy pred nastupom na strednu.
steves píše:*/technické možnosti/peníze/dostatek lidí/... nechci nijak křivdit lidem za to odpovědným. Nicméně i to, že nevíme, proč to a to nemůže fungovat líp/jinak pokládám za chybu/absenci komunikace se studenty.
Ta komunikacia urcite nie je dokonala. Aj ohladom toho jazyka, ja by som velmi zvedavy, co si o tom myslia studeni... Ono tie zmeny mi casto krat pridu take, ze aha, s tym maju studenti problem a v podstate to ani nepotrebuju, tak to skusime spravit takto, mozno to bude lepsie. A spravia to takto, ale nikoho sa pritom nenapadne opytat studentov, ze kde je podla nich problem a co by navrhli. Ale myslim si, ze so strany ucitelov by bol velky zaujem, len este ako keby nenasli spravnu formu a moznosti, ako to zdelit studentom a ziskat od nich feedback.
Já jsem za Pascal v prváku byla ráda - nevypadá to tak komplikovaně, všechny ty řádky něco dělají, a readln/println je prostě fajn věc. A pointry by později chyběly (jako princip). Nepřijde mi, že by to (na informatice) někoho zazdilo, a nemyslím si, že je cílem, aby si člověk po prvním semestru připadal jako král, který už umí programovat.. Navíc pascal je asi nejpodobnější pseudokódům na ADS (Hricovy přednášky).. Neříkám, že to nejde jinak, ale rozhodně mě to netrápí... A jak mám neprocedurál teď docela ráda, tak Haskell pro začátek by mi přišel docela děsivý...

Matematici - tam jsou asi trochu jiné cíle, a pokud je to tak (nevím, mám dojem), že by měli být schopní vyrobit si prográmek, který... tak tam bych jim klidně nabídla něco přívětivějšího, co na pár řádkové prográmky bude fungovat a budou to mít rádi...

Když jsem se hlásila na Bc, na dnu otevřených dveří přímo říkali, že se nevyžadují žádné konkrétní vstupní znalosti... Je to bez nich těžší i tak, ale jde to. A u školy, která je hlavně o myšlení a ne o učení na zpaměť, to dává smysl... Stejně tak byli v prváku lidi, kteří víc věděli o informatice, ale nikdy předtím neviděli komplexní čísla.. Takže začít od začátku (kde "jen ten for a while" nezabere tolik času) v matematice i informatice je celkem fér. (a ta spousta podpůrných proseminářů v prváků naznačuje, že asi fakulta považuje za výhodné pomoci těm, kdo si ze střední neodnesli tolik)
Přijímačky na informatice jsou od toho (jak je chápu já), aby odfiltrovaly ty, kdo si netroufnou přjít k nim... Aby to nebylo "berou všechny bez přijímaček".. A u nich pak zahodí ještě tu malou část, která si nevšimla sama, že nepochytila trojčlenku...
Co se týká spojení hodnota vzdělání - úplně tomu argumentu nerozumím. Přece hodnotu matfyzu nijak nesnižuje, že se věci berou od začátku, že si zažiješ přechod mezi více jazyky. A rozhodně nesouhlasím, že by se mělo dávat za to, co ses naučil předtím...

Angličtina - ano, ESP je dost podezřelá věc. Ale mezi učiteli je několik dobrých, ke kterým (pro mě) má/mělo smysl chodit na ty normální hodiny. Je škoda, že takoví nejsou všichni, ale kdo se trochu zajímá, vybere si.
Předměty v angličtině - některé jsou, třeba na lingvistice jich je docela dost (i těch, kde to není napsáno), a některé jsou jednou za dva roky anglicky. Já bych asi byla pro větší nabídku, ale vím mezi spolužáky o lidech, pro které by jenom angličtina byla problém (matematické věci jim jdou, jazyky prostě nějak ne) - a uznávám jejich právo studovat v češtině...
Uživatelský avatar
iwtu
Matfyz(ák|ačka) level I
Příspěvky: 48
Registrován: 15. 3. 2010 21:54
Typ studia: Informatika Bc.

Re: Programovanie v prváku - jazyk

Příspěvek od iwtu »

Dakujem za vyjadrenie! :)

Ja si silno myslim, ze ked studenti zvladnu Pascal, ktory sa im uz nikde pocas studia a ich v ich profesii nehodi, tak zvladnu aj C, ktore sa im hodi aj na skole a mozno aj v profesii. scanf/print nevyzeraju velmi odstrasujucu a v roznych obmednach ich ma skoro kazdy programovaci jazyk. Opakujem, C bez nejakych vacsich problemov zvladaju aj na inych skolach a dufam, ze studenti na nasej skole nie su horsi ako na inych skolach :P

Mimochodom, ak sa zidi grupa ludi a kazdy z nich ma ine predstavy o tom, co by mal student vediet, vacsinou to nedopadne nijak. Terazsi stav programovania na matematike povazujem za katostrofu. Pomahal som nejednemu matikovi a vazne ten predmet nevnimaju ako v ich prospech.

Si za Pascal rada, co je fajn a super, ze si vyjadrila. Cielom mojej snahy nie je zmenit jazyk podla seba, ale rad by som nejako zistil, co by vlastne chceli sami studenti. Pokial by to bol Pascal, ok, beriem. Ale chcem to zistit, lebo mam pocit, ze ucitelia vybrali jazyk podla svojej najlepsiej mienky, ale vybrali ho pre studentov bez studentov. A argumetny typu beaver nemaju ziadne opodstatnenie..

Ja by som vazne najradsej, keby bola nezavisla prednaska a student by si mohol vybral jedno z cviceni, ktore by sa konali v roznych jazykoch. Podla jeho chuti.

Neviem, mozno je vela chciet od studentov konkretny jazyk, mozno by sa stacilo opytat studentov na matike, ze ako su s tym predmetom spokojny a ci planuju programovanie este niekedy vyuzit.
JT

Re: Programovanie v prváku - jazyk

Příspěvek od JT »

iwtu: Jen na okraj - spíš než zda to plánují využít (na to jsem se porůznu ptal a typicky říkali studenti jasné ne), by bylo zajímavé se ptát dostudovaných, či doktorandů (i těch jsem se ptal a tam už byla odpověď, že se jim to hodilo a že to používají, i když si tehdy mysleli, že už to nepoužijí).

Myslím, že dost (až snad většina) matematiků v prváku jednak neví kam přesně chtějí jít, dokonce ani co to obnáší (resp. v jakých všemožných odvětvích matematiky budou programování v nějaké formě potřebovat).

A ta užitečnost jazyka - na informatice je to myslím jedno, chvilka Pascalu je v pohodě, na nějaké "praktično" je pak druhý semestr a "jazykové" přednášky (btw. na těch školách, kde se Pascal nepoužívá, jak to tam mají? Mají několik semestrů "programování" v nějakém jazyce a dost? Nebo mají něco jako u nás Programování 1,2, ale v jiném jazyce a pak ještě navíc jazykové přednášky? To je taky rozdíl.).

A u matematiků - upřímně řečeno, co vím, finančníci mají různé svoje programy, klasičtí matematici taky (Mathematica atd.) - žádné C, ani Pascal ani Java atd... Tj. nevím, zda by o tolik víc využili C.
Uživatelský avatar
iwtu
Matfyz(ák|ačka) level I
Příspěvky: 48
Registrován: 15. 3. 2010 21:54
Typ studia: Informatika Bc.

Re: Programovanie v prváku - jazyk

Příspěvek od iwtu »

JT píše:iwtu: Jen na okraj - spíš než zda to plánují využít (na to jsem se porůznu ptal a typicky říkali studenti jasné ne), by bylo zajímavé se ptát dostudovaných, či doktorandů (i těch jsem se ptal a tam už byla odpověď, že se jim to hodilo a že to používají, i když si tehdy mysleli, že už to nepoužijí).
Mohol by to byt zaujimavy feedback, a hlavne pre matematikov :) Urcite som sa za to, pytat sa co najviac ludi.
JT píše: A u matematiků - upřímně řečeno, co vím, finančníci mají různé svoje programy, klasičtí matematici taky (Mathematica atd.) - žádné C, ani Pascal ani Java atd... Tj. nevím, zda by o tolik víc využili C.


Tu je skor otazka, ci matematikom niekedy v zivote vazne treba uvolnovat pamat a programovat spajanene zoznamy. Ale myslim, ze je nejaka sanca, keby sa vzal Python a Project Eurel, tak mozno zacali vraviet aj ano :) Inac, ja osobne nie som zastanca toho, ze ucme ich toto, lebo oni to vyuziju ale este o tom nevedia. Ja by som najprv ukazal, ze to vazne vyuziju, co je aj v celku silna motivacia.

To ucenie studentov s tym, ze oni to niekedy vyuziju ale nevedia o tom, mi dost pripomina Rusky styl, kde casto chyba akakolvek motivacia sa dany predmet ucit.
Acris
Matfyz(ák|ačka) level I
Příspěvky: 20
Registrován: 26. 1. 2010 14:28
Typ studia: Informatika Mgr.
Bydliště: Praha

Re: Programovanie v prváku - jazyk

Příspěvek od Acris »

Ahoj, debata o jazyku pro prváky je sice již mnohaletý evergreen (co já vím, tak se to cca ob rok řeší na schůzkách/e-mailových konferencích mezi cvičícími+přednášejícími, mezi studenty apod.), ale je imho dobře, že se tyto věcí řeší.

Z mé osobní zkušenosti z prváku: do prázdnin před nástupem na mff jsem o programování nevěděla skoro nic, a tak jsem se prváku logicky docela obávala. Pascal mi naprosto vyhovoval, neboť byl poměrně lehký na naučení syntaxe a syntaxe je v něm dost jednoznačná, což zjednodušuje způsob, jakým se začátečník učí programy vymýšlet (oproti např. Haskellu, kde je spousta možností, jak napsat i docela jednoduchou věc). Podobnost pseudokódu vidím také jako velkou výhodu. Staré vývojové prostředí je tedy otravné, to souhlasím. (Ale aspoň toho neobsahuje moc navíc, což je začátek jako plus.) A především, čím mě mff okouzlil a vnímám to jako jednu z hlavních jeho výhod - je jeho přístup. Právě že se nepředpokládají téměř žádné faktické znalosti, že se předpokládá jen chuť se učit a aktivní přístup, když člověk něčemu nerozumí. Vyžadovat od studentů předchozí základy programování by mohl být problém - všude se to učí totiž jinak (např. někdo bude v klidu používat GOTO apod.). A nejde od studentů vyžadovat něco, co se jim nijak nespecifikuje, neodpřednáší, nedá vědět jinak. (Nebo na dobré škole mi to nepřijde jako vhodný přístup.)

Z mé zkušenosti jako cvičící prográmka matiků: po každém semestru nechávám studenty vyplnit vlastní anketu (pro zpětnou vazbu). V ní jsem je nechala navrhnout i jiný jazyk. Většina z nich nic nenavrhovala. Oni se totiž o informatické věci ve volném čase většinou nezabývají - tedy ani nebudou vědět, jaké jsou jiné možnosti. Ti, co se o takové věci zajímají, ti si zase často zapisují i předměty z informatiky - takže se k praktičtějšímu jazyku dostanou i jinak. Přišlo by mi však dobré provést nějakou větší anketu mezi staršími studenty matematiky apod. Zatím jsem se ptala jen pár doktorandů, co znám, a jediné, na čem se shodli - že na velkém množství mat. oborů je nějaké programování nutné.

Na informatice v prváku nevidím v aktuální dvojici jazyků (Pascal, C#) problém. Jedině mi tehdy chybělo na cvičení ze C# praktičtější a pořádnější procvičení objektových vlastností. Ale on je problém, že to docela trvá (vždyť dříve na to byl samostatný předmět) a za ten semestr se má probrat spousta jiných věcí - nelze se tedy moc věnovat syntaxi, dědičnosti apod. Syntaxe používaných jazyků se pak probírá ve vlastních předmětech - a každý informatik alespoň jeden z takových předmětů absolvuje.

Ohledně matematiků je to něco jiného, to je pravda. Dle nějakého průzkumu mezi doktorandy a učiteli na matematice by mi přišlo dobré dohodnout se, co má prográmko matematikům dávat, co je pro ně podstatné. Jak je to nastavené doteď, mají ty dva semestry podle mne tyto cíle: Seznámit studenty (matematiky) s tím, že nějaké programování existuje - a dát jim představu o tom, jak (procedurální) programování vypadá. Naučit je základní teoretické principy: algoritmické myšlení, zhruba co je to časová a paměťová složitost programu, dynamická alokace, grafové úložky a jak v nich využít programování, velmi zhruba, že existují nějaké objekty a co to tak asi je. Vyzkoušet si teoretické principy v praxi - nejsnáze, jak to jde; co nejjednoduššími technickými prostředky - což Pascal splňuje.
Je otázka, jestli to jsou správné cíle. K tomu by podle mne bylo dobré udělat nějaký výzkum/větší debatu s lidmi, kteří do toho obvykle nemluví/atd. (S tím rizikem, že takové debaty často končí roztříštěnými názory.) Až podle cílů by se měl imho odvíjet výběr jazyka.

Ještě pár drobniček:
iwtu píše:V Python sa programuje lahko, rychlo a ludi to aj bavi.
Pokud je pravda, co píšeš, tak to mi přijde jako obrovské plus. To je jedna z věcí, co bych já osobně ráda - aby studenty matematiky prográmko bavilo a aby v něm viděli smysl. Je ale pravda, že je to v Pythnu bude bavit více? (Ne, že bych s tím nesouhlasila, jen si tím nejsem 100% jistá.;))
iwtu píše: Na Python nie su cviviaci... Programko 2 som opakoval, mal som 2 cviciacich a obaja prvy krat videli C# na cviku.
A přišlo Ti to dobře? Z mého pohledu - pokud by se měl měnit jazyk pro prváky matematiky na nějaký, pro který není dost cvičících, kteří by s ním měli předchozí zkušenosti - tak by mi přišlo dobré udělat nejdříve nějaký malý "kurz pro cvičící" (třeba ve formě několika schůzek, kde by se i sjednotilo, co se má cvičit). (Na což by možná byly potřeba nějaké finance, které možná nejsou + čas cvičících i těch, kteří by "kurz" vedli - což také nemusí být úplně triviální.)

Ještě k Pascalu a poitrům, spojákům apod. Je sice fakt, že "v praxi" asi nikdo z nich takové věci prorgamovat nebude. Ale právě tehdy, když si člověk naprogramuje přepojování spojáku, může pochopit, jak to asi funguje - jak vůbec lze paměť alokovat dynamicky, proč trvá přístup na poslední položku spojáku pomaleji než do pole, proč není dobré, aby pracovali dva procesy nad stejnými daty, atd.
iwtu píše:Opakujem, C bez nejakych vacsich problemov zvladaju aj na inych skolach a dufam, ze studenti na nasej skole nie su horsi ako na inych skolach :P
A víš, co je to za školy a co je cílem prográmka na těchto školách? Je to jako u nás - naučit se algoritmickému myšlení, psát programy s vhodnou časovou složitostí, atd.? Co já vím, tak na ČVUT (někteří) přednášející prohlašují, že "algoritmy jsou mrtvé". Lidé používají datové struktury z nějakých knihoven bez toho, aby se zajímali, jak dlouho trvají jednotlivé operace na nich. Atd.
iwtu píše:Ja by som vazne najradsej, keby bola nezavisla prednaska a student by si mohol vybral jedno z cviceni, ktore by sa konali v roznych jazykoch. Podla jeho chuti.
Pokud se nepletu, tak v prváku si lze místo klasického cvičení z programování zapsat speciální, kde se berou o něco složitější věci, ale jazyk si člověk může volit sám. Na klasickém cvičení mi to přijde nepoužitelné, protože na tom cvičení se mají studenti ten jazyk učit (mimo jiné). Nelze tam probrat syntaxi šesti jazyků. ;) A kdyby bylo pro každý z jazyků jedno cvičení (což je zajímavá myšlenka), tak by se asi muselo vyřešit, že některé jazyky potřebují na začátku více času na probrání syntaxe + že prváci ještě nemusí vědět, jaký jazyk si vybrat. (I na informatice je docela dost lidí, kteří znají jen jeden jazyk či ani ten ne.)
Uživatelský avatar
iwtu
Matfyz(ák|ačka) level I
Příspěvky: 48
Registrován: 15. 3. 2010 21:54
Typ studia: Informatika Bc.

Re: Programovanie v prváku - jazyk

Příspěvek od iwtu »

Dakujem za krasny prispevok! :)

K Tvojim skusenostiam.. Myslim, ze kazdy jazyk musi mat jednoznacnu syntax.. :) Jo, a to stare Pascal IDE. Na Windows 7 je s tym fakt problem... Teda aspon mne sa to nepodarilo spustit vo vacsiom, ale iba v malickom okne. Hm, ja osobne som nestretol cloveka, ktory by v klidu pouzival GOTO. Asi mam stastie na relativne zdravych ludi :) Prijimaci test je na dobrej skole vhodny pristup?

Co sa tyka ankety... snad ziadna nemoze byt na skodu.

Na margo matematiky.. Vrelo odporucam pozriet Project Euler. Naozaj neviem, ci dynamicka alokacia a spajane zoznamy su to, co by mal matematik vediet. Co sa tyka objektov, tak Pascal (v lubovlnej forme) nie je ani zdaleka najjednoduchsi mozny prostriedok. A v Pythone sa programuje jednoduchsie ako v Pascale :) Ale chce to asi fakt zistit, ze ci by malo byt cielom programovania pre matematikov.
iwtu píše:V Python sa programuje lahko, rychlo a ludi to aj bavi.
Pokud je pravda, co píšeš, tak to mi přijde jako obrovské plus. To je jedna z věcí, co bych já osobně ráda - aby studenty matematiky prográmko bavilo a aby v něm viděli smysl. Je ale pravda, že je to v Pythnu bude bavit více? (Ne, že bych s tím nesouhlasila, jen si tím nejsem 100% jistá.;))
A ako Ta mozem presvedcit? :)) Je to vazne az taky nesmierny problem vyskusat? Inac, nemaju matematici taku osnovu programovania roky? (neviem)
Ještě k Pascalu a poitrům, spojákům apod. Je sice fakt, že "v praxi" asi nikdo z nich takové věci prorgamovat nebude. Ale právě tehdy, když si člověk naprogramuje přepojování spojáku, může pochopit, jak to asi funguje - jak vůbec lze paměť alokovat dynamicky, proč trvá přístup na poslední položku spojáku pomaleji než do pole, proč není dobré, aby pracovali dva procesy nad stejnými daty, atd.
Uprimne sa pytam. Potrebuje to matematik chapat?
iwtu píše:Opakujem, C bez nejakych vacsich problemov zvladaju aj na inych skolach a dufam, ze studenti na nasej skole nie su horsi ako na inych skolach :P
A víš, co je to za školy a co je cílem prográmka na těchto školách? Je to jako u nás - naučit se algoritmickému myšlení, psát programy s vhodnou časovou složitostí, atd.? Co já vím, tak na ČVUT (někteří) přednášející prohlašují, že "algoritmy jsou mrtvé". Lidé používají datové struktury z nějakých knihoven bez toho, aby se zajímali, jak dlouho trvají jednotlivé operace na nich. Atd.
Chces porovnat s CVUT? U nich sa skuska z Unixu (co mi vraveli studenti) s veci typu - zmente prava suboru. U nas sa chce vazne netrivialny script.. Vyssie som dal rebricek skol a v akom jazyku sa ucia. Na MIT zacinaju s Pythonom. Neucia sa algoritmicke myslenie? V porovnani so svetom je kombinacia Pascal/C# mozno az jedinecna. Ale dufam, ze co sa ucime mi, sa ucia aj na inych skolach :)
iwtu píše:Ja by som vazne najradsej, keby bola nezavisla prednaska a student by si mohol vybral jedno z cviceni, ktore by sa konali v roznych jazykoch. Podla jeho chuti.
Pokud se nepletu, tak v prváku si lze místo klasického cvičení z programování zapsat speciální, kde se berou o něco složitější věci, ale jazyk si člověk může volit sám. Na klasickém cvičení mi to přijde nepoužitelné, protože na tom cvičení se mají studenti ten jazyk učit (mimo jiné). Nelze tam probrat syntaxi šesti jazyků. ;) A kdyby bylo pro každý z jazyků jedno cvičení (což je zajímavá myšlenka), tak by se asi muselo vyřešit, že některé jazyky potřebují na začátku více času na probrání syntaxe + že prváci ještě nemusí vědět, jaký jazyk si vybrat. (I na informatice je docela dost lidí, kteří znají jen jeden jazyk či ani ten ne.)
Ano, pre neznalych studentov si moze byt odporucanie. Ale ak student vie, do akeho jazyka ide tak... Keby si vybral niekto C++ by mal pocitat s tym, ze syntaxou sa na cviku nebude stracat cas. Prvak si mnoze zapisal aj Teoriu mnozin. Ale ak je rozumny, tak pocita s tym, ze ho tam nikto nebude ucit citat metamaticke zapisy...
Uživatelský avatar
iwtu
Matfyz(ák|ačka) level I
Příspěvky: 48
Registrován: 15. 3. 2010 21:54
Typ studia: Informatika Bc.

Re: Programovanie v prváku - jazyk

Příspěvek od iwtu »

nejaka zmena? co treba spravit?
Odpovědět

Zpět na „Klubovna“