abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 9
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 744 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Jaký programovací jazyk učit

    3.9.2012 14:37 Robert | skóre: 16 | blog: zabak
    Jaký programovací jazyk učit
    Přečteno: 7198×
    Zdravím všechny, začal jsem učit na jedné průmyslové škole a trochu mě zarazilo, že se tu učí jen obsluha aplikací, rád bych do výuky zavedl také nějakou kreativní činnost, tedy základy algoritmizace + výuku nějakého programovacího jazyka. Delší dobu jsem nad tím přemýšlel, ale pořád se nemohu rozhodnout. Co by bylo podle vás vhodné? Určitě se programováním nebudou živit, ale mohlo by jim to rozšířit obzor a kdo ví... Ten předmět mají jen jednou týdně hodinu :-( .

    Zatím jsem přemýšlel nad těmito variantami:

    Pascal je pro výukové účely dobrý, ale jeho použitelnost dosti pokulhává. Nebo zkusit Lazarus, to by bylo dle mého o něco lepší. C je už větší kalibr, ale použitelnost také nic moc (myšleno pro bežného uživatele). Docela mě zaujal Python, ale nevím, jak by to studentíci brali a také ta použitelnost. Taky jsem přemýšlel nad javascriptem, při tvorvě webu by se jim určitě hodil nějaký základ.

    Starší kolega jim chce ukázat makra (12hodin) v excelu a pak s nimi tvořit prezentace a psát ve wordu. To se mi zdá málo. Jaký je váš názor?

    Řešení dotazu:


    Odpovědi

    3.9.2012 14:42 George O.
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    C je zaklad, pouzivat high-level funkce scriptovacich jazyku, aniz bys poradne vedel, co se deje s pameti a jak moc procesor tika, vede ke spatnym navykum:-)
    3.9.2012 14:49 mich
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud to nejsou budoucí programátoři a mají výuku hodinu týdně, tak jim to C asi moc nedá. Skoro nic z něj nepochopí a zůstanou u "Hello word" aplikací. Zmíněný Python mi přijde mnohem lepší a zajímalo by mě, jak to myslel tazatel s tou jeho použitelností.
    3.9.2012 14:59 George O.
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    No python mam nejradsi:-) A s tou pouzitelnosti - neznam jiny jazyk, ktery by mel takovou sirokou skalu pouzitelnosti, od webovych aplikaci (Django) po desktop appky s wxWidgets atd... Jen jsem proste zastancem toho, ze pokud se necemu venovat, tak poradne :-)))
    3.9.2012 15:02 tom
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Python je na vyuku zlo. Pri zakladnim programovani se pouzivaji objekty, sekvence atd., behem takto kratkeho kurzu neni sance poradne vysvetlit ani zakladni algoritmy, protoze tam porad bude ukryta nejaga magie uvnitr.
    pavlix avatar 3.9.2012 15:16 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Je potřeba rozlišovat, jaká úroveň programování se učí. Jestli má být výsledkem detailní znalost fungování procesoru, tak je nejlepší nějaký assembler. Jestli má být výsledkem slušná znalost systémového programování, je dneska 100% nejlepší C. Ale jestli má být výsledkem schopnost uplácat jednoduchý výpočet, skriptík, nebo třeba i GUI prográmek tak se dá Python klidně doporučit.

    V tomto ohledu nelze vypracovat obecný soud a kdo to dělá, tak se podílí na degradaci vzdělání. Ono to totiž nakonec dopadne úplně jinak, protože když na výuku zatratíte Python, tak se nepoužije C ale třeba PHP nebo Excel.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    rADOn avatar 3.9.2012 16:34 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Každý jazyk složitější než stroják má "nějakou magii uvnitř". V pythonu je aspoň jednoduchá a moc nevyčnívá. Srovnej si to třeba s Javou kde nejde napsat ani Hello world bez objektu a statické metody, nebo s C++ kde totéž nejde bez namespaců as funkcí. V pythonu use toho dá napsat docela dost jen s tim co mas v builtinech.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    pavlix avatar 3.9.2012 18:45 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    V pythonu je aspoň jednoduchá a moc nevyčnívá.
    Že je jednoduchá… to je relativní pojem, ale že nevyčnívá, to je pravda.
    V pythonu use toho dá napsat docela dost jen s tim co mas v builtinech.
    A hlavně se to dá zkoušet bez napsání jediného skriptu.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    3.9.2012 22:02 tom
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    V pythonu je prave ta magie velice slozita. Zkuste si popsat treba popsat cyklus for: Na ten potrebujete objekt, pres ktery jde iterovat. Takze musite popsat, co je objekt a jak se iteruje. Kdyz to same budete delat v C, tak vam staci podminka a skoky, protoze nic jineho v tom neni.

    -----------------------

    A hello world v C++ napisete bez namespacu celkem v pohode, muzete totiz pouzit cstdio.h.
    pavlix avatar 3.9.2012 22:50 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    V pythonu je prave ta magie velice slozita. Zkuste si popsat treba popsat cyklus for: Na ten potrebujete objekt, pres ktery jde iterovat.
    Tomu se říká abstrakce. A Python má úroveň abstrakce velmi přívětivou (samozřejmě nejen Python).
    Takze musite popsat, co je objekt a jak se iteruje.
    Není potřeba. Co je to objekt vnímají lidi intuitivně. Iterovatelný objekt se rovněž nemusí vysvětlovat, protože každý někdy viděl (telefonní) seznam (mladší ročníky alespoň ten svůj v mobilu).

    A každý někdy dělal nějakou rutinní práci, kdy musel z hromady (řady) brát jednu věc za druhou a něco s ní udělat (na což přesně funguje pythoní for cyklus).
    Kdyz to same budete delat v C, tak vam staci podminka a skoky
    Skoky použité ke zpracování cyklů jsou pro začátečníka nepříjemně nízkou úrovní abstrakce. Člověk běžně nepřemýšlí na té nejnižší úrovni abstrakce. Například při mytí sklenic se snaží „umýt každou sklenici, která je na lince“, ne „label START, podmínečně skočit na label STOP pokud je na lince nulový počet sklenic, vzít sklenici, umýt sklenici, skočit na label START, label STOP“.

    Je fajn, že céčko ty skoky umožňuje dělat značně pohodlněji pomocí cyklů, ale pokud člověk neví, jestli kdy bude chtít být programátorem, je mnohem vhodnější úrovní abstrakce ta Pythoní.
    A hello world v C++ napisete bez namespacu celkem v pohode, muzete totiz pouzit cstdio.h.
    Dokonce i v Pythonu se dají posílat řetězce na výstup pomocí POSIXových rutin a oproti nim je ANSI stdio docela vysoká úroveň abstrakce :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 13:06 JS
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Jeste bych k tomu doplnil, ze Active Python ve Windows podporuje COM API, coz se hodi na automatizaci MS Office. A knihovny.. treba takove SQLite primo jako soucast jazyka - parada. Takze realna pouzitelnost Pythonu pro prakticke ucely je casto vyssi nez u C++ nebo Javy.
    xkucf03 avatar 22.9.2012 18:40 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Srovnej si to třeba s Javou kde nejde napsat ani Hello world bez objektu a statické metody
    A v čem je problém?
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    22.9.2012 19:00 Kit
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Problém je v tom, že pro úplné začátečníky je to několik řádek nepřehledného kódu, který musí opsat, aniž by mu rozuměli. Začátečník se zpočátku topí v hromadě klíčových slov a syntaktických pravidel, jejichž význam nechápe. Pokud na něco zapomene, nefunguje to.
    xkucf03 avatar 22.9.2012 19:40 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud je to pro někoho překážkou, tak si ty úplné základy může odkroutit třeba v BASHi – vypsat si tam první textový řetězec, udělat první IF… a pak teprve začít s Javou. Ale osobně v tom žádný problém nevidím, beru to spíš jako výhodu – čistota a jednoduchost, vše funguje na stejných principech (třídy/instance/metody), nejsou tam záludnosti a hacky, jako v jiných jazycích, které dělají cosi magického na pozadí.

    Např. v Perlu, kde se ti po vyhodnocení regulárního výrazu „zázračně“ objevují nové proměnné, které obsahují části textu vyhovujících skupinám v tom regexpu. Je fakt, že jsem si to časem oblíbil a používám to, ale je to prasárna a když někdo začíná programovat, tak bych mu to určitě nedoporučoval (nejen používat, ale vyhnout se takovým jazykům úplně).
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    3.9.2012 14:56 tom
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    +1

    C je primitivni a dobre se na nem vysvetluje, jak pocitac funguje, takze na tom budete moci studentum ukazat, jak pocitac spousti programy a zaroven vysvetlit zakladni algoritmy. Vyssi jazyky jsou ze zacatku mnohem komplikovanejsi a na zakladni vyuku se moc nehodi.
    3.9.2012 15:28 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    -1

    C je sice můj oblibený jazyk, ale v C nejdou triviální věci jednoduše, i hello world musí řešit low-level systémové záležitosti typu inkludování hlavičkových souborů a návratové hodnoty programu. K těm by se sice programátor měl dopracovat -- ale hned v první lekci?

    Navíc je pro začátečníka obtížné ladit program v C, opět to vyžaduje spoustu pomocných znalostí.
    pavlix avatar 3.9.2012 15:39 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Naprostý souhlas. Ladit céčkovský program není žádná prdel. Kdykoli jsem někoho učil programovat v C na Linuxu, tak jsme se po chvilce začali učit i gdb. Na jiné platformě zase jiné nástroje. C není tak platformě nezávislé, jak by si běžný uživatel představoval.

    Céčko pro začátečníky fajn, ale jen pokud je cílem je rychle vypracovat ke znalosti fungování počítače a procesů a hlavně, na jejich cílové platformě. Tedy žádné ANSI IO, pokud je cílem POSIX systém apod. To samé pro Windows. Céčko by mělo jít formou komplexního „výcviku“ ne formou předvedení, jak se dá udělat pár prográmků.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    12.9.2012 22:53 pocitujlasku | skóre: 15
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit

    Ale to ich aspon nauci programovat. Ja som dlhe roky pracoval v Pascale, Delphi, a ked som presiel na C, tak som bol mimo. Pascal ma dost "rozmaznal" doslova ma vodil za rucicku toto mozes, toto uz nie. C-cko ma naucilo davat si pozor na to, co robim.

    Dnesni programatori robia v style: toto si naklikam, ono to nejako skompiluje, optimalizacia a pochopenie co sa vlastne deje je nulova.

    3.9.2012 15:25 psholty2 | skóre: 7 | blog: char
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    C pre studentov strednej fakt nie. Vacsina ludi programovat nikdy nebude a jebat sa so smernikmi len aby som spojil dva retazce skutocne nie je pre neprogramatorov. Mali sme C na strednej (strojnicka priemyslovka) a pochopili sme to tam asi tak 3 ludia (ty co uz programovali v niecom inom). Pascal je fajn ale v praxi tazko pouzitelny (co s tim, laudo laudare, ve šroubárne :D). Prihovaram sa za javascript. Mozu v tom riesit kvadraticke rovnice a podobne skolske blbosti naprosto v pohode, s retazcami to pracuje tiez normalne, a je ista sanca ze to aj realne niekde pouziju.
    23.8.2013 21:14 Jose
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    +1
    pavlix avatar 3.9.2012 15:30 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    myšleno pro bežného uživatele
    Pro běžného uživatele doporučuju jazyk, kde každý řádek něco znamená a který je co nejméně spjat se znalostí hardware a ke kterému existuje slušný interaktivní interpret.

    Mně osobně napadá Python 3 (kvůli bordelu, co se naskládal v Pythonu 2). Použitejnost je všude kromě webových browserů. Nicméně, na webovém javascriptu se nic nenaučí, ztratíte příliš mnoho času řešením problémů s běhovým prostředím, nehledě na to, že většina věcí na webu lze bez javascriptu. A ty, co se bez JS neobejdou jsou na začátečníka příliš složité.

    Jo, kdyby se učili javascript jako obecný jazyk, tak by se to dalo. Ale to se v praxi vyskytuje spíš okrajově a lidi tomu nevěří.
    Starší kolega jim chce ukázat makra (12hodin) v excelu a pak s nimi tvořit prezentace a psát ve wordu. To se mi zdá málo. Jaký je váš názor?
    Python by je alespoň seznámil s příkazovou řádkou a se způsoby, jak dělat věci primitivně a jednoduše, což je dobré. Makra v excelu jsou docela overkill, na to, co se s tím dá rozumně dělat a není při tom vidět, že počítačový program je obyčejný soubor.

    Jinak kdo bude umět trochu Pythonu, může směřovat do mnohých českých firem, které ho používají na všechno možné.

    Učit psaní ve wordu je dost náročné, protože ti lidi se to naučí sami a špatně. Ten nástroj je celý špatně postavený (i když v novějších verzích se snažili), takže bych maximálně věnoval chvilku vysvětlení, co jsou to styly a jak se používají a praktické ukázce. Hodina, maximálně dvě.

    Prezentace? Podle mě ztráta času, ale hodina se tím zabít dá. Lidi by se měli především učit jak prezentovat, ne jak naplácat do slajdu skákající písmeka.

    Makra v tabulkách se občas hodí, ale spíš bych to viděl na ta nejjednodušší (suma nějakého sloupce apod), rozhodně bych se z nich nesnažil dělat programovací jazyk. Když budou chtít plácat programy do maker, naučí se to mimo školu.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    3.9.2012 18:07 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Jo, kdyby se učili javascript jako obecný jazyk, tak by se to dalo. Ale to se v praxi vyskytuje spíš okrajově a lidi tomu nevěří.
    JavaScript je totiž příšerný jazyk.
    LangPa avatar 4.9.2012 01:41 LangPa | skóre: 12 | blog: LangPavel | Hradec Králové
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    JavaScript není příšerný, je to first class jazyk lepší než smalltalk :-) Má pár přišerných vlastností, které souvisejí s typovou konverzí, ale jinak je fajn. First class jako objektový v prvním stupni - objekty jako literály.. {...}

    No lepší než PHP, ne? :-D
    pavlix avatar 4.9.2012 02:24 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    No lepší než PHP, ne? :-D
    Cokoliv, co bylo od začátku navrhováno jako reálný programovací jazyk bude zpravidla lepší než cokoliv, co bylo od začátku navrhováno jako šablonovací systém :). Výjimky se najdou, ale Javascript a PHP jimi rozhodně nebudou :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 09:56 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Zásadní problémy JavaScriptu:
    • způsob, jakým se určuje platnost proměnných – stačí zapomenout var a je veselo
    • nejde vytvořit konstantu
    • uzávěry a nekonstantní reference
    • dvě různé "rovnosti" a "nerovnosti"
    Další problémy JavaScriptu:
    • přítomnost a chování undefined a null
    • automatické vkládání středníků
    • chování typeof
    • konstanty nejsou standard
    • parsování čísel začínajících 0: číslo 0707 je v osmičkové soustavě a číslo 0708 je v desítkové soustavě
    • konstrukce polí: pole new Array(2) i pole new Array(1, 2) mají 2 prvky
    Problém JS, ač se to někomu může líbit, je přílišná volnost, kvůli níž se těžko hledají chyby.
    24.9.2012 14:39 __dark__
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Wow, to by mě zajímalo, v čem programuješ, když ti vadí takové drobnosti.
    24.9.2012 15:55 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Nejčastěji v OCamlu a bohužel hodně často také v C#.
    Jakub Lucký avatar 5.9.2012 19:33 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    9.9.2012 01:42 Messiah
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    +1
    23.8.2013 08:51 ...
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    twat?
    stativ avatar 4.9.2012 20:36 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Dovolil bych si taky zahlasovat pro Python 3, a to zejména kvůli interaktivnímu režimu bez nutnosti hned začít psát skripty.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    3.9.2012 17:47 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Určitě bych zvolil jednoduchý jazyk, u něhož budeš moci snadno vše přesně vysvětlit. Pokud chceš jazyk, který se prakticky používá, tak doporučuji Haskell nebo Erlang. Pro oba jazyky existují pěkné knížky zdarma (například Learn You a Haskell for Great Good nebo Learn You Some Erlang for Great Good). Špičkový jazyk pro výuku programování a teorie programovacích jazyků je Standard ML, bohužel však nemá tak aktivní komunitu jako Haskell nebo Erlang.

    Jednoduchost jazyka je důležitá – aspoň sám budeš vědět, co různé příkazy nebo výrazy znamenají. Jazyky jako C, C#, Java, Python příliš jednoduché nejsou, neboť obsahují mj. věci jako volatile, podtypový polymorfismus, overloading, dědičnost nebo dokonce konstrukce, jejichž efekt není definován. Tohle všechno začátečníkovi komplikuje život. Naopak mají velmi špatnou podporu pro neměnné datové struktury, které programování ulehčují.
    pavlix avatar 3.9.2012 18:57 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    To by mě hodně zajímalo, jak si začátečníci poradí s neimperativním stylem. Možná bych do toho šel, kdybych věděl, že publikum budou všechno lidi dobří v matice.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    3.9.2012 21:46 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    publikum budou všechno lidi dobří v matice
    Záleží, z jakého konce se to vezme. Já bych se inspiroval například kurzem Haskell For Kids: 1-8, kde žádné hluboké znalosti matematiky nejsou třeba.
    pavlix avatar 3.9.2012 22:57 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    S dětmi, které si ještě nevybudovaly zbytečné bloky, to bude mnohem jednodušší. I tak mezi nimi budou rozdíly, ale o to tak nejde. Já nevím, jestli jsi někdy zkoušel učit matiku byť i jediného středoškoláka, kterému to nejde, nebaví ho to, vůbec ho to nezajímá a vůbec to dělat nechce. Jestli ne, doporučuju zkusit :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    3.9.2012 20:55 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud chceš jazyk, který se prakticky používá, tak doporučuji Haskell nebo Erlang.
    Nemám statistiky, zda je více používán Erlang, nebo FORTRAN 77, ale skoro bych se vsadil, že ten druhý. Toť můj komentář k používanosti.
    LangPa avatar 4.9.2012 01:53 LangPa | skóre: 12 | blog: LangPavel | Hradec Králové
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    +1 za erlang
    4.9.2012 07:12 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Klidně +1 za co chceš, ale zdůvodňovat Erlang používaností je zoufalství.
    LangPa avatar 4.9.2012 01:52 LangPa | skóre: 12 | blog: LangPavel | Hradec Králové
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    +1 ale obávám se, že někdo, kdo absolvuje tyto kurzy (funkcionálního programování) (bohužel) nepochopí nic, co se považuje za "důležité znalosti v IT". Pokud někoho takového hledáte, řekněte mi :-)
    4.9.2012 07:08 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Takových těch případů, kteří chtějí řešit problém genetickými algoritmy, ale krachují na tom, že nedokáží přečíst data ze souboru, jsem už viděl dost. Nejdůležitejší jsou opravdu znalosti pomáhající řešit reálné problémy.
    rADOn avatar 3.9.2012 18:05 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud zkurvíš mozky další generace Pascalem, budiž proklet na věky věkův. Amen.

    Javascript potažmo cokoliv webového je závislé na značně složitém běhovém prostředí, učit se něco takového bez základních znalostí IP, http a vnitřností browserů je šílenství.

    C je magořina pro začátečníky, ale pokud se chceš dotknout low-level věcí jako je práce s pamětí a procesy, tak je IMO lepší magořina která se řídí pár jednoduchými a pochopitelnými pravidly než o fous menší magořina která se řídí větší spoustou přesložitělých pravidel (aka C++).

    Makra a podobné vylomeniny mají stejný problém se závislostí na nějakém prostředí jako javascript, ale pokud už to prostředí probíráte v rámci učení se ovládání office, tak to je celkem jedno. Ale učit se základy algoritmizace v oficím basicu… no nevím nevím.

    Já kdybych hledal výukový jazyk tak budu chtít:
    • Běhové prostředí které zachytí chyby. Výjimky se srozumitelnými tracebacky, žádné ošklivé segfaulty a kryptické errory z kompilátoru.
    • Silné typy. Když se někde ocitne něco co tam nemá být, musí to být zachytitelné a musí být zřejmé co tam být mělo.
    • Automatická práce s pamětí.
    • Interaktivní řádka. Na zkoušení, hledání chyb ve složitějších výrazech nebo prostě jen na hraní k nezaplacení.
    • Reálné nasazení. "Výukové" jazyky dříve nebo později ztratí kontakt s realitou a ve výsledku učí něco co se nedá využít.
    • Minimalismus. Jazyky ve kterých nejde psát nejjednodušší úlohy bez záhadných klíčových slov a nepochopitelných obratů nelze chápat postupně, od jednoduchých ke složitým věcem.
    • Maximalismus. V ve výukovém jazyce by mělo být možné zkonstruovat co nejširší paletu úloh. Včetně těch nebezpečných. Zvláště těch nebezpečných.
    Vzato kolem a kolem, python je první co by mě při čtení těchto bodů napadlo. Ale rozhodně ne jediný.

    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    3.9.2012 18:54 Petr
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud zkurvíš mozky další generace Pascalem, budiž proklet na věky věkův.
    Proč?? Náhodou mi přijde ten Pascal z výše vyjmenovaného jako celkem dobrá varianta. Pokud se vykašle na ukazatele, tak je to pohoda - žádný problém se správou paměti, každý řádek kódu je snadno vysvětlitelný. Tak co?
    mess avatar 3.9.2012 19:04 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud se vykašle na ukazatele, tak je to pohoda...
    Vzpomněl jsem si na legendární kód jednoho našeho profesora (schválně, kdo uhodne jeho jméno a fakultu :-D):
    var LUk, PUk: Tuk;
    
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    3.9.2012 19:34 Ivan
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    S tim Pascalem souhlsim. Zacinat Cckem je fakt ulet, to spousti lidi odradi a amater v nem nikdy nic nenapise.

    Pacsal je genialni jazyk na vyuku, na nic nic jineho se uz bohuzel nehodi. Vzdyt i pro vyuku algoritmu se pouziva takovy pseudo Pascal. Pro vyuku je dulezite rychle preskocit tu uvodni fazi, IDE, deklarace promennych, kompilace, spusteni. Kdyz tohle zvladnete tak muzete vesele prikrocit k bubble sortu, stromum, ...

    PS: dokonce i na MIT se donedavna zacinalo Pascalem a Lispem.

    Pokud chcete studenty navnadit a ukazat jim, jak se za malo penez udela hodne muziky, tak je tu Visual "Basic for Applicacions" (FUJ!) anebo PHP.
    pavlix avatar 3.9.2012 21:26 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    PS: dokonce i na MIT se donedavna zacinalo Pascalem a Lispem.
    A čím se tam začíná teď?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 12:18 Ivan
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Myslim, ze Pascal nahradili Javou. Preci jenom dneska, kdyz nekdo nastoupi do prvaku na vejsce, tak tak uz nejaky IDE ovladat umi - neni to uplnej amater.

    Pokud je jde o vyuku zakladu programovani, tak je Borland Pascal skvela vec. Cely "projekt" mate v jednom souboru, nikde se neda nic nastavit a nemusite porad dokola obihat studenty protoze jim zmizelo nejaky okynko a oni ho neumeji vratit nazpatek. Uvedomte si, ze ne vsichni lidi na svete jsou nadseni z programovani a vy to musite dostat i do lidi, ktery to vubec nebavi a ani nechteji chapat jak se ovlada Eclipse. Pro vyuku potrebujete co nejjednodussi IDE, ktere se da vysvetlit i tem nejvetsim ignorantum za pul hodiny.

    V Jave je to vsechno tak nejak "obracene", drive nez studentum vysvetlite co je to promenna, datovy typ, if-else, tak musite nejdrive vytvorit projekt, package, tridu, metodu, static metodu, ...

    4.9.2012 12:29 Kit
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    V Jave je to vsechno tak nejak "obracene", drive nez studentum vysvetlite co je to promenna, datovy typ, if-else, tak musite nejdrive vytvorit projekt, package, tridu, metodu, static metodu, ...
    To mi na Javě dost vadí. Když spustím Python a napíšu první příkaz, tak hned vidím, co to udělá. Postupně to mohu rozšiřovat o proměnné, podmínky, cykly, funkce, objekty,... Přesně tak jak potřebuji postupovat a žáci nejsou zahlceni tunou deklarací.
    pavlix avatar 4.9.2012 17:46 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Myslim, ze Pascal nahradili Javou.
    OK.
    Preci jenom dneska, kdyz nekdo nastoupi do prvaku na vejsce, tak tak uz nejaky IDE ovladat umi - neni to uplnej amater.
    Nevidím souvislost.
    Pokud je jde o vyuku zakladu programovani, tak je Borland Pascal skvela vec.
    Nic skvělého na starém Pascalském kompilátoru, IDE ani tvorbě dosovských aplikací se všemi jejich omezeními v dnešní době jaksi nevidím. Užitečnost nabytých dovedností je taky značně pochybná.
    Cely "projekt" mate v jednom souboru,
    Měl jsem pascalovské projekty ve více souborech a navíc jsem to považoval za výhodu :).
    nikde se neda nic nastavit
    A proto nám padal kód od učitele, dokud jsme nezapnuli zkrácené vyhodnocování, ne?
    a vy to musite dostat i do lidi, ktery to vubec nebavi
    To je omyl vycházející z dlouhodobé profesní deformace.
    Pro vyuku potrebujete co nejjednodussi IDE, ktere se da vysvetlit i tem nejvetsim ignorantum za pul hodiny.
    Když použiješ s/IDE/nástroje/, tak by se s tím dalo částečně souhlasit.
    V Jave je to vsechno tak nejak "obracene", drive nez studentum vysvetlite co je to promenna, datovy typ, if-else, tak musite nejdrive vytvorit projekt, package, tridu, metodu, static metodu, ...
    Java je značně těžkopádná a osobně bych ji na výuku nedoporučil.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    22.9.2012 20:32 w4rr10r
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    > Preci jenom dneska, kdyz nekdo nastoupi do prvaku na vejsce, tak tak uz nejaky IDE ovladat umi - neni to uplnej amater.

    Byl jsem se podívat na první cvičení z programování na nejmenované informatické škole. Na přímou otázku, zda už někdy programovali, odpověděla kladně sotva třetina studentů.
    pavlix avatar 3.9.2012 19:04 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud zkurvíš mozky další generace Pascalem, budiž proklet na věky věkův. Amen.
    Tolik expresivity a žádné zdůvodnění nevhodnosti Pascalu pro výuku.
    Vzato kolem a kolem, python je první co by mě při čtení těchto bodů napadlo. Ale rozhodně ne jediný.
    Až na silné typování. Už jenom funkce a objekty mají slabé typování (typ argumentů lze kontrolovat jen běhově, atributy i metody se vyhledávají podle jména a jejich existence je opět pouze běhová). Automatická reinterpretace datových typů standardními prostředky jazyka a knihovny taky silnému typování nepřispívá.

    Zajímal by mě jazyk, který všechny tyto požadavky splňuje a taky by mě v něm zajímal nějaký ukázkový reálný kód a jeho příjemnost či pochopitelnost pro začátečníka.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    3.9.2012 20:59 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    To zdůvodnění je prosté: učí se snad programovat nikoli jako plané cvičení, nýbrž proto, že by to třeba mohli k něčemu někdy i použít. A většina lidí se víc než jeden jazyk nenaučí.
    pavlix avatar 3.9.2012 21:29 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    A většina lidí se víc než jeden jazyk nenaučí.
    I kdybys měl nakrásně pravdu, je velký rozdíl mezi korelací a kauzalitou. Znalost jednoho jazyka nebrání získání znalosti druhého jazyka. Když člověk umí programovat (přemýšlet o programech), jazyk se naučí během chvilky.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 07:10 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Jak se ti do toho podařilo dostat rozdíl mezi korelací a kauzalitou, když nemluvím ani o jednom?
    pavlix avatar 4.9.2012 17:48 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Přečti si i druhou a třetí větu :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 23:11 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Taky nic ;)
    rADOn avatar 4.9.2012 15:32 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pokud zkurvíš mozky další generace Pascalem, budiž proklet na věky věkův. Amen.
    Tolik expresivity a žádné zdůvodnění nevhodnosti Pascalu pro výuku.

    To je na dlouhé povídání. Dám radší příklad – když se v našich krajích začalo prosazovat php, nikoho z pascalovské generace jsem neviděl používat foreach. Nikdy. Lidi byli prostě naučení že jediný způsob jak procházet struktury je přes numerický index, a když jsem se na tohle téma bavil tak se vždy ukázalo že vůbec nechápou princip iterátoru. Pascal je nenaučil programovat, jen opisovat jednu šablonu.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    4.9.2012 15:45 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Vám tedy vadí, že lidé nepoužívali X, protože Pascal X nepodporoval?
    Pascal je nenaučil programovat, jen opisovat jednu šablonu.
    V čem se jiné jazyky liší?
    rADOn avatar 4.9.2012 17:10 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Mě vadí že lidé, pokud mám pokračovat v příměru, používali jen a pouze jedno X protože Pascal je nejenom nic jiného nenaučil, ale aktivně jim zkurvil mozky aby cokoliv jiného považovali za neexistující nebo nemožné. A nejhorší ze všech X je představa že na všechny problémy se dá jít se stejným nástrojem a žádný další jazyk už znát nemusí.
    V čem se jiné jazyky liší?
    Pokud to srovnám s pythonem, IMO cokoliv z toho mála co se dá učit na pascalu se dá v pythonu vysvětlit stejně dobře. S tím rozdílem že v pythonu můžu od jednoduchých věcí přejít ke složitým aniž bych musel bojovat se umělými omezeními které měly dokazovat něčí dávno neplatnou fantazii o "správném" programování. Ano, ve světě který by se skládal jen z pascalu a C by pascal měl opodstatnění protože by byl jednoduchý (a skalní pascalisti se zkurvenými mozky tak často svět vidí). Jenže ve skutečném světě je dost dobrých jednoduchých jazyků. Python sám není bůhvíjak skvělý, to Pascal je tak primitivní.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    pavlix avatar 4.9.2012 17:54 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Myslím, že v tomto případě i ty zaměňuješ korelaci s kauzalitou. Pascal byl většinovým výukovým jazykem, tudíž logicky většina lidí, co přišli do styku s Pascalem zůstali začátečníky. Protože PHP byl většinovým webařským jazykem, tak se mnoho z nich pustilo do webu. Tudíž jsi mohl potkat hodně špatných PHPkářů a hodně z nich začínalo na Pascalu.

    Když to vezmeš z druhé strany, zjistíš, že i velká část těch dobrých začala na Pascalu a nešťastná část z nich si stihla sáhnout i na PHP.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    rADOn avatar 4.9.2012 19:03 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    To zní logicky, ale mělo by to znamenat že mezi nepascalisty by měl být podobný poměr mezi začátečníky a profíky. Což se mi nezdá, ale zase tolik nepascalistů neznám takže se hádat nemůžu.

    Zato můžu vycházet z vlastní zkušenosti – úspěšně jsem se "odnaučil" paskvilit a naučil programovat v asi půltuctu jazyků. I když by bylo moc hezké myslet si že jsem nějak chytřejší než spousta pascalistů ze stejných dob, připadá mi mnohem logičtější připsat to faktu že jsem byl jestě v programátorské kolébce krátce vystaven působení céčka. Ne že bych se ho naučil, to až mnohem později :-) Ale když pak do náš začali na škole nalejvat pascalovský idiosynkrazie tak jsem věděl že kecaj…
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    pavlix avatar 4.9.2012 21:53 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    To zní logicky, ale mělo by to znamenat že mezi nepascalisty by měl být podobný poměr mezi začátečníky a profíky. Což se mi nezdá, ale zase tolik nepascalistů neznám takže se hádat nemůžu.
    Spíš to neznamená v podstatě vůbec nic.
    Ale když pak do náš začali na škole nalejvat pascalovský idiosynkrazie
    Specifikuj :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    rADOn avatar 5.9.2012 14:04 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Specifikuj :).
    První na co si po těch letech ještě vzpomenu je nasrání že to neumí funkce s proměnným počtem argumentů. Nemělo to žádný makrojazyk. Středníky to používalo podivným způsobem takže někam se dávat musely a někam nesměly. Zabudované typy byly nedostatečné a vlastní typy méněcenné. Minimum operátorů. Nedomyšlený knihovní systém který si neporadil s rekurzivními závislostmi. Strukturované konstrukce neměly break ani continue a simulovalo se to přes pomocné proměnné… fuj, je mi blivno jen na ty hovadný léta pomyslím.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    pavlix avatar 5.9.2012 14:12 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Nic z toho mi nepřijde, že by překáželo v základní výuce programování. Mimochodem pár věcí by mohlo být specifické pro borland a nemuselo by u jiných implementací platit.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    rADOn avatar 5.9.2012 16:43 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Nic z toho mi nepřijde, že by překáželo v základní výuce programování.
    Jinak řečeno, ten jazyk je blbej, ale ne tak moc aby se nedal použít. Sotva polovina toho co se v něm člověk naučí je zbytečná a vysloveně škodlivá ještě méně tak jakýpak copak… Ať si haranti zvykaj že život není peříčko, co?
    Mimochodem pár věcí by mohlo být specifické pro borland a nemuselo by u jiných implementací platit.
    Většina. Ale tím je to horší, nemohu než citovat klasika (Doporučuji přečíst celé, je to velmi poučné.):
    … Because the language is so impotent, it must be extended. But each group extends Pascal in its own direction, to make it look like whatever language they really want. Extensions for separate compilation, Fortran-like COMMON, string data types, internal static variables, initialization, octal numbers, bit operators, etc., all add to the utility of the language for one group, but destroy its portability to others. …
    To je jádro pudla. Nejde (jenom) o to portabilitu učit, je to hlavně prostředek jak jazyk udržet aktuální. Python byl původně podobně primitivní jako pascal, ale díky lepšímu návrhu a fungujícímu standartizačnímu procesu do něj bylo postupně doplněno spousta věcí (včetně takových drobnůstek jako jsou objekty). Jak vidno z výše citovaného textu pascal byl zastaralý už v době kdy byl stejně starý jako je dnes python a java.

    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    pavlix avatar 5.9.2012 23:47 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Jinak řečeno, ten jazyk je blbej, ale ne tak moc aby se nedal použít.
    Tak. I když hodně záleží na dialektu.
    Sotva polovina toho co se v něm člověk naučí je zbytečná a vysloveně škodlivá ještě méně tak jakýpak copak…
    Tady už jsme se myslím shodli na tom, že se neshodnem :).
    Ať si haranti zvykaj že život není peříčko, co?
    To rozhodně, nezávisle na nějakém pascalu.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    5.9.2012 15:22 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Že do toho tak nesměle vstupuji :)…:
    je nasrání že to neumí funkce s proměnným počtem argumentů - to je spíše dobře.
    Středníky se používají naprosto normálně, pravděpodobně je to narážka, na středník za „end“ kde se píše jen za „posledním“ (ne před else apod.). To je snad jediné co mě napadá.
    Zabudované typy byly nedostatečné a vlastní typy méněcenné. co je tím myšleno?
    break a continue tam jsou.
    Zazlíval bych mu to, že klávesa 'e' a 'n' odešla na klávesnici jako první z toho psaní begin a end… :-)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    6.9.2012 11:14 jos
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    já se nesměle přidam, možná sem úplně mimo

    Nedomyšlený knihovní systém který si neporadil s rekurzivními závislostmi

    jakože tohle?
    rADOn avatar 6.9.2012 13:33 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    je nasrání že to neumí funkce s proměnným počtem argumentů - to je spíše dobře.
    I kdyby na tom bylo něco špatného, tak by to ten jazyk měl umět aby šlo názorně ukázat _proč_ je to špatně. Výuka zatajováním je kravina. Je to něco co se používá neustále a ve spoustě jazyků, nelze zavřít oči a dělat že to neexistuje.
    Středníky se používají naprosto normálně, pravděpodobně je to narážka, na středník za „end“ kde se píše jen za „posledním“ (ne před else apod.). To je snad jediné co mě napadá.
    Středníky jsou v pascalu oddělovač (separator) nikoliv terminátor jako v C & co. V Céčkových jazycích může být všude, i jako "prázdný" výraz. V pascalu se často musel odmazávat nebo přidávat. Žádný moderní jazyk (dokonce ani Java která se jinak v syntaktické buzeraci vyžívá :-) ) tuhle pitomost nepřevzal.
    Zabudované typy byly nedostatečné a vlastní typy méněcenné. co je tím myšleno?
    String omezený na 255 znaků. Každá délka pole byla vlastní typ. Nedomyšlené priority operátorů. Neexistující asociativní pole. A aby to náhodou nešlo spravit, definice vlastních typů byla dokurvená tak aby byly k ničemu.
    break a continue tam jsou.
    Zcela záměrně nejsou a verze pascalu o které je řeč to neuměla (pavlix se ptal na idiosynkrazie který do nás lili ve škole, čili BP 6.0). Wirth je zastánce filozofie "jeden vstupní bod – jeden výstupní bod" která už mezitím zastarala (resp. pro netrivialní programy nikdy nefungovala). A pokud jazyk potřebuje 30+ let na standartizaci takové základní věci, tak to samo o sobě něco říká.
    já se nesměle přidam, možná sem úplně mimo Nedomyšlený knihovní systém který si neporadil s rekurzivními závislostmi
    jakože tohle?
    Přesně to. Knihovní systém který neumí zbuildit projekt načisto naučí člověka leda to, jak knihovní systém nemá vypadat.

    BTW ještě než to někdo vypálí – nestandartní rozšíření té nebo oné mutace pascalu na věci nic nezmění, dokud zůstanou "nestandartní". Já si ještě pamatuju jak mi pascalisti říkali že Delphi většinu debilit pascalu nemá a že učit se céčko je ztráta času. A taky jak mi jeden starší fachman trpělivě vysvětloval že "céčko je standartizovaný a co se v něm naučíš, to se nikdy neztratí". Pak Delphi chcíplo a zbytek je historie :-)

    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    6.9.2012 14:47 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Středníky jsou v pascalu oddělovač (separator) nikoliv terminátor jako v C & co. … Žádný moderní jazyk (dokonce ani Java která se jinak v syntaktické buzeraci vyžívá :-) ) tuhle pitomost nepřevzal.
    V Haskellu středník funguje jako oddělovač. V jazycích z rodiny ML je středník binární operátor, který vyhodnotí levý výraz a zahodí jeho hodnotu, poté vyhodnotí pravý výraz a vrátí jeho hodnotu. Takže funguje také jako oddělovač.
    I kdyby na tom bylo něco špatného, tak by to ten jazyk měl umět aby šlo názorně ukázat _proč_ je to špatně. Výuka zatajováním je kravina.
    Přeci nechcete, aby první jazyk obsahoval každou špatnost jen kvůli tomu, aby se řeklo, že je to špatné a nemá se to používat.
    rADOn avatar 9.9.2012 12:36 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Přeci nechcete, aby první jazyk obsahoval každou špatnost jen kvůli tomu, aby se řeklo, že je to špatné a nemá se to používat.
    Nemá používat? Tohle přesně ilustruje jak přihlouplé "výukové" jazyky kazí mozek. Je to součástí většiny moderních jazyků a BUDE se to používat ať se to Wirthovi líbí nebo ne. "Výukový" jazyk by tě tedy měl naučit co je na tom nebezpečné a jak si s tím poradit.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    9.9.2012 14:18 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Má poznámka byla myšlena obecně na každou „špatnost“ – nejen na proměnný počet argumentů. Programovací jazyk prostě nemůže obsahovat vše, a proto se složité nebo nepoužívané nebo špatné věci do jazyka nedají, aby ten jazyk byl buď jednodušší nebo aby se tam mohlo dát něco jiného.
    Tohle přesně ilustruje jak přihlouplé "výukové" jazyky kazí mozek.
    Řekl bych, že omezení na pevný počet argumentů je úplná drobnost proti tomu, jak C++, Java, C# a i další jazyky spojují dědičnost a podtypy – aby jste mohl vytvořit podtyp, musíte použít dědičnost. A přitom obecně podtřída nemusí být podtyp a ani podtyp nemusí být podtřída.
    pavlix avatar 9.9.2012 14:54 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    aby jste mohl vytvořit podtyp, musíte použít dědičnost.
    Interfaces v Javě?
    A přitom obecně podtřída nemusí být podtyp
    To musí být nějaká zvláštní definice podtřídy.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.9.2012 17:13 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Interfaces v Javě?
    Máte pravdu, pro C# a Javu jsem měl napsat: podtyp třídy jde vytvořit pouze pomocí dědičnosti (tj. vytvořením podtřídy).
    A přitom obecně podtřída nemusí být podtyp.
    Stačí do nadtřídy dát metodu foo(x : self), kde self reprezentuje typ aktuální třídy. Když by nadtřída A měla takovou metodu, tak ji podtřída B != A zdědí. Ve třídě A značí self typ A, ve třídě B značí self typ B. Když by B <: A (B je podtyp A), tak musí platit foo(x : B) <: foo(x : A), a tedy musí A <: B (pozice argumentu je kontravariantní), což ale neplatí (použitím B <: A a antisymetrie <: dostaneme A = B).
    pavlix avatar 10.9.2012 00:35 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Popravdě jsem musel dát zavděk jinému zdroji…
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    10.9.2012 09:21 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Zkusím to trochu konkrétněji:
    class A {
      // zde je self typ A
      bool equals(self x);
    }
    
    class B : A {
      // zdědí následující metodu,
      // zde je self typ B
      bool equals(self x);
    
      void novaMetodaKteraNeniVA();
    }
    
    Když by třída B byla podtyp třídy A, tak můžu instance A nahradit instancemi B. V následujícím kódu však nejde nahradit a' instancí třídy B, neboť metoda equals třídy B požaduje více (konkrétnější typ) než metoda třídy A:
    A a = new A();
    A a' = new A();
    a'.equals(a);
    
    Mnoho staticky typovaných jazyků s podporou OOP však nepodporuje typ self – výjimkou je například OCaml.
    7.9.2012 10:48 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Dík za vysvětlení, s něčím souhlas, něco mě nesedí, ale asi by bylo zbytečné to dál kuchat - fčil už rozumím tomu postoji.
    Pak Delphi chcíplo a zbytek je historie
    - kéž by, stále si sem tam musím omlátit ruky od psaní begin/end.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    4.9.2012 17:16 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    OT: Ale v té dávné minulosti také udělali dobře, protože foreach byl o kus pomalejší než for. :-)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    pavlix avatar 4.9.2012 17:50 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    To je na dlouhé povídání. Dám radší příklad – když se v našich krajích začalo prosazovat php, nikoho z pascalovské generace jsem neviděl používat foreach.
    [rejp]To může být i tím, že jim PHP připadalo jako zprasené céčko :).[/rejp]
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 4.9.2012 17:51 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Nikdy.
    Myslím, že se ti i tady na Abclinuxu ozve hromada protipříkladů :). Můžeme začít u mě.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    stativ avatar 4.9.2012 20:35 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Můžeš to dokázat? Třeba fotografií, kde používáš foreach v php a rADOn při tom na tebe kouká?
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    4.9.2012 19:00 Radovan
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pascal je naučil programovat, ale pascalským stylem. Tam se to prostě dělá jinak, netroufnu si tvrdit jestli lépe nebo hůře, je prostě víc způsobů "jak stáhnout kočku z kůže" ;-)

    Mám tu jednu starou učebnici Pascalu, ve které je v každém ukázkovém programu minimálně jedno GOTO. Co bys asi řekl na jejího autora?
    rADOn avatar 4.9.2012 19:05 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    6.9.2012 14:43 vatoz | skóre: 6 | blog: Vatoz
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    6.9.2012 23:40 Kit
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Začínal jsem s Pascalem, napsal jsem v něm spoustu programů. Nyní se snažím vyhnout všem druhům cyklů, protože dnešní jazyky to umožňují. A když už nějaký cyklus, vždy se nejprve pokouším aplikovat foreach, potom teprve while a for. Numerickým indexům se vyhýbám tak, jak jen to jde.

    Pascal byl vhodným výukovým jazykem své doby. Dnes je překonán a nahrazen.
    pavlix avatar 9.9.2012 14:55 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Dnes je překonán a nahrazen.
    Čím?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.9.2012 15:34 Kit
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Dnes je překonán a nahrazen.
    Čím?
    Vším.

    Jediný Správný Programovací Jazyk neexistuje. Každý má své nedostatky a přednosti. Mohu napsat název kteréhokoli z nich a najdu tady příznivce i odpůrce. Dělám v PHP, ale vidím jeho chyby. Nemám rád Javu, ale vidím její přednosti. Obdivuji stručnost Pythonu, ale také má své mouchy. Naučit se C++ je náročné, ale výnosné.

    Co vybrat? Pokud bych šel cestou názornosti, od jednoduššího ke složitějšímu, vybral bych Python. Pokud ho někdo nezvládne, asi nemá smysl ho učit Javu a už vůbec ne C++. Pokud ho zvládne, může ho dál používat jako velmi praktický nástroj. Může také přejít na Javu či C++. Myslím si, že si přenese spíš dobré návyky.
    pavlix avatar 9.9.2012 15:45 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Byla to zcela konkrétní otázka, čím byl nahrazen dřívější král Pascal jakožto dle tvých vlastních slov vhodný výukový jazyk své doby.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.9.2012 17:26 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Já bych řekl: Standard ML '97. Důvodem je jednoduchost jazyka, kvalita návrhu jazyka a také standard, který je stabilní a formální.
    pavlix avatar 9.9.2012 20:01 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    To nevím, co bys musel udělat, abys mě přesvědčil, že lze pascal přímočaře nahradit standard ML.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    7.9.2012 07:10 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Když se v našich krajích začalo prosazovat php, nikoho z pascalovské generace jsem neviděl používat foreach. Nikdy. Lidi byli prostě naučení že jediný způsob jak procházet struktury je přes numerický index, a když jsem se na tohle téma bavil tak se vždy ukázalo že vůbec nechápou princip iterátoru. Pascal je nenaučil programovat, jen opisovat jednu šablonu.

    Když se v našich krajích začalo prosazovat php, nikdo foreach nepoužíval, protože jej PHP neobsahovalo.

    While foo = each používali jen sebevědomí jedinci a dobrodruzi, kteří vylučovali možnost, že by zapomněli vyresetovat iterátor, případně jim to bylo jedno.

    Když přišlo foreach, nepoužívali ho také ti, kterým vadilo, že se celé pole kopíruje a celkově je to pomalé (většinou asi Céčkaři, z těch co jim to bylo jedno se vyvinuli Javisti). A také ho používali ti, kteří někdy chtěli iterovat i ve vnořeným cyklu, protože to s foreach nešlo. Suma sumárum, možná jste se bavil s nějakými truhlíky, ale osobně bych nepoužívání foreach v PHP (!!) v jeho začátcích nikomu nezazlíval, já osobně jsem byl také příliš sexy než abych se zabýval řešení uvedených nedostatků, for byla jistota, nevýhody neexistovaly. Dnes samozřejmě také používám foreach, jader i dramek je všude dost :D
    3.9.2012 22:09 sigma
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Já kdybych hledal výukový jazyk tak budu chtít:

    ...
    Krom silných typů - MATLAB! Na zamýšlený účel to fakt není, ale při přečtení těch požadavků si na nic jiného nevzpomenu. Ve srovnání snad se všemi jinými jazyky, ve kterých jsem něco dělal, z toho je vidět obrovská inženýrská pragmatičnost. Zajímal by mě názor "hardcore" programátorů, pokud tu někdo takový MATLAB zná. Vždycky si říkám, že tihle lidé dbající na čistotu kódu a konceptů by se zbláznili, vidět jak se v tom programuje. Ale používá se to fakt dobře, i v základních konceptech, když zapomeneme na matematiku a matice.

    3.9.2012 22:28 Kit
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Občas používám Octave a skutečně je to skvělá věc. Stačí pár čísel a vykreslí to i grafy. Pokud potřebují dělat protokoly do laboratoří, může být pro ně dostatečnou motivací, aby se ten program nejen naučili, ale také používali.
    pavlix avatar 3.9.2012 22:58 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Jo, to není úplně špatná cesta. Ale matlab bych rovnou zavrhnul, chce to něco obecně dostupného, bezplatného a nejlépe opensourcového.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    3.9.2012 23:41 Kit
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Proto jsem uvedl Octave jako alternativu Matlabu.
    pavlix avatar 3.9.2012 23:52 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Proto jsem napsal, že to není úplně špatná cesta :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 08:41 jos
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Javascript potažmo cokoliv webového je závislé na značně složitém běhovém prostředí, učit se něco takového bez základních znalostí IP, http a vnitřností browserů je šílenství.

    bejvávalo
    3.9.2012 19:41 Vinicius
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Já bych zkusil nejprve vysvětlit datové struktury a algoritmy jen tak bez programovacího jazyka a pak Javu (prozatím bez vymožeností verzí 5 a 6), zpočátku bez použití IDE (aby se studenti naučili pořádně používat editor a překladač).

    Výhody: Jednoduchý jazyk, množství dostupných knihoven, podpora více OS a také velmi dobré IDE dostupné zdarma (NetBeans)
    3.9.2012 21:53 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Java je docela komplikovaný jazyk a kvůli tomu není vhodná na výuku programování – a troufám si tvrdit, že není vhodná ani na výuku podtypového polymorfismu a dědičnosti.
    Bystroushaak avatar 12.9.2012 16:56 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Java a komplikovaný jazyk? Osobně mi vždy přišla silně triviální (mluvím tu o jazyku, ne API), což může být dáno tím, že jsem na ní přešel po pascalu, C, C++ a pythonu, ale stejně, až na naprosté antitalenty s ní nikdo v mém okolí neměl problém.
    12.9.2012 18:33 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Myslím, že Java je složitý jazyk – přispívá k tomu mj. overloading, podtypový polymorfismus, autoboxing, mutace, automatické konverze a null.

    Zkuste třeba říct, co a proč dělá následující kód (samozřejmě bez pomoci kompilátoru :-)). Dám 3 možnosti: buď vypíše Integer nebo vypíše Object nebo se nepřeloží.
    interface A<T> {
      void doIt(T x);
    }
    
    class B implements A<Integer> {
      public void doIt(Integer x) { System.out.println("Integer"); }
      public void doIt(Object x) { System.out.println("Object"); }
    }
    
    class Main {
      public static void main(String[] args) {
        B b = new B();
        b.doIt(null);
      }
    }
    
    stativ avatar 12.9.2012 18:49 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Řekl bych, že zrovna tohle je docela logické…
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    12.9.2012 20:28 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Řekl bych, že zrovna tohle je docela logické…
    Pokud víte, jak Java překládá generika, tak ano.

    3.9.2012 20:18 petrxn
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Spíše bych se na to kouknul z pohledu těch "obsluhovaných" aplikací. Např. pokud je to něco ala Autocad, Inventor, Revit, SolidWorks, tak si myslím, že má význam aby uživatelé měli přehled o možnostech tvorby doplnků pro tyto aplikace a to se děje ve VBA, C# popř Autolispu. Každý technik navíc používá tabulky, takže makra v excelu/Libreoffice je dobré také umět. Dělám admina v projekční firmě a někdy mě dost překvapí, kolik času konstruktéři stráví opakující se prací, které se dá jednoduše naprogramovat a kromě úspory času by se také rapidně omezily některé chyby. Přitom by stačilo kdyby tito konstruktéři věděli, že to jde a přišli s tím za mnou, navíc si myslím, že někteří by si to, pokud by takové školní základy měli, byli schopni sami naprogramovat. Petr
    5.9.2012 18:51 Zdenek
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Uplny souhlas. Manzelku drtili ve skole C++ a jedine, co si z toho pamatuje, ze je to desne a kdyz jsem ji chtel pomoct aspon se zaklady VBasicu, tak uz nechtela.

    scriptovani v ramci kancelarskeho baliku ma asi nejvetsi uplatneni pro zacatecniky a lidi, kteri programovat nikdy nebudou.

    VBasic nemam rad, nikdy bych v tom nic vetsiho nenapsal, ostatne normalne nemam ani bezici windows :), ale pro obycejneho uzivatele je to proste (skoro) vsude a pokud bude nekdy migrovat na unix like system, tak se urcite lehce nauci jiny jazyk, ktery bude pro danou platformu vhodnejsi.

    3.9.2012 20:27 Kill_Bill
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Ten starsi kolega s makry v Excelu je nejbliz realite.
    3.9.2012 20:57 Jack Hokus | skóre: 34 | blog: LostHeaven
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Dobrý den,

    jestli se bude jednat o naprosté začátečníky a frekvence hodin bude malá, nebylo by lepší zkusit místo programování třeba LaTeX?

    Sám jej už nějakou dobu používám na psaní textů a můžu říct, že s dobře sestavenou preambulí hladce strčí do kapsy, kterýkoli kancelářský balík.

    Další jeho výhodou podle mne je, že pokud chcete přijít na to jak něco udělat, stačí hodit do Googlu požadovanou činnost a LaTeX a dost často, i když ne vždycky najdete co hledáte. Takže, po zvládnutí nějakého základu se lze dost věcí naučit samostatně.

    Jako další klad LaTeXu mohu uvést to, že se uživatel naučí číst chybové hlášky. U mnoha lidí, jsem se totiž potkal s tím, že mají v hlavě jakýsi podvědomí "flashblok" a chybová hlášení prostě nevidí.

    Abych zcela neutekl od toho programování na které jste se ptal, tak i tady má LaTeX co nabídnout. Žáci si, krom toho, co jsem uvedl výš zvyknou používat zvýrazňování syntaxe, nebo třeba psát zdrojový text tak, aby se v něm vyznali i za týden. A samozřejmě používat i nějaký čistě textový editor.

    Programování to sice pořád není, ale myslím si, že mnohé z výše uvedených věcí při programování jako když najdou

    A pokud mám uvést nějaké přímé spojení s programováním, tak snad ve všech v diskusi dříve zmíněných jazycích se dá napsat program, který automatizuje některou činnost, jenž se v LaTeXu sice napsat dá, ale je to dost zdlouhavé. Na Freshmeeatu jsem kdysi vyděl program v perlu, který sloužil ke tvorbě tabulek

    S pozdravem

    Petr Štrajt

    http://www.jackhokus.cz/
    pavlix avatar 3.9.2012 21:32 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Další jeho výhodou podle mne je, že pokud chcete přijít na to jak něco udělat, stačí hodit do Googlu požadovanou činnost a LaTeX a dost často, i když ne vždycky najdete co hledáte.
    A pak nad tím dva dny laborujete, i když máte celou dobu pocit, že je to tak jednoduchá věc a vůbec nechápete, proč to nechce jít. Navíc práce s latexem není moc zábavná, programování ano.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    FrostyX avatar 3.9.2012 21:59 FrostyX | skóre: 27 | blog: Frostyho_blog | Olomouc
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Navíc práce s latexem není moc zábavná, programování ano.
    To ano, ale k té zábavě se při jedné hodině za týden nedostanou. Nenechte se zmást, třída na průmce není partička zvědavých nadšenců, kteří se budou těšit, až se naučí něco nového, budou hltat každé slovo a zkoušet, jak věci fungují. Nené, ani náhodou. Takový tam bude jeden, dva. Zbytek bude mít dosti velké problémy vymyslet triviální algoritmus, nebo napsat pár řádek kódu. Výuka bude muset být šíleně pomalá, aby se alespoň větší část třídy chytala.
    Mě se LaTeX zdá taky jako vcelku dobrý nápad. Naučí se alespoň trochu pracovat s kódem, řešit problémy a třeba to i někteří z nich budou moci prakticky využít. Předpokládám, že ve čtvrtém ročníku budou muset psát dokumentaci k (u nás tomu říkali) praktické maturitní práci.
    FrostyX.cz | 1984 was not supposed to be an instruction manual.
    pavlix avatar 3.9.2012 23:13 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Nenechte se zmást, třída na průmce není partička zvědavých nadšenců
    Mám příliš mnoho zkušeností, abych se nechat zmást mohl ;).
    To ano, ale k té zábavě se při jedné hodině za týden nedostanou.
    Právě proto se ta zábava musí dělat i s „nudnými“ základy. V programování je možné vytyčit cíl (jakkoli malý) a splnit ho. Tedy alespoň při jednoduchých úlohách. S latexem když si vytyčím cíl, tak následuje několik pokusů o splnění a následné hledání kompromisu.
    Zbytek bude mít dosti velké problémy vymyslet triviální algoritmus, nebo napsat pár řádek kódu.
    Musí se přizpůsobit úroveň a způsob výkladu i zadání úkolů.
    Naučí se alespoň trochu pracovat s kódem, řešit problémy a třeba to i někteří z nich budou moci prakticky využít.
    Programování na střední škole není od toho, aby se z někoho v hodinách stal programátor. Jediným cílem by mělo být ukázat lidem možnosti. Dneska se většina lidí podceňuje. Jednoduchý vlastnoručně napsaný program v programovacím jazyce (třeba o deseti řádcích) může mít pro mnohé velký psychologický význam :).
    Mě se LaTeX zdá taky jako vcelku dobrý nápad.
    Mně se zdá příliš složitý a těžkopádný. Kdybych uměl něco jiného, co by splňovalo mé požadavky, tak bych na něj nesáhl ani hráběmi. A nevím jak na průmce, ale na gymlu všichni slintali z barevných věcí a naplácaných obrázků. Mám trochu podezření, že středoškoláci, domácí uživatelé kradených wordů a powerpointů, budou z latexu trochu rozpačití a budou mít pocit, jako bys jim předložil MS-DOS nebo Turbo Pascal.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    26.11.2012 14:22 Jarda
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Jednoduchý vlastnoručně napsaný program v programovacím jazyce (třeba o deseti řádcích) může mít pro mnohé velký psychologický význam :).
    podepisuji
    3.9.2012 21:45 sigma
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Další jeho výhodou podle mne je, že pokud chcete přijít na to jak něco udělat, stačí hodit do Googlu požadovanou činnost a LaTeX a dost často, i když ne vždycky najdete co hledáte.

    V LaTeXu jsem pár věcí v rozsahu desítek stránek napsal, a má nepochybné výhody. Nemám problém v tom psát, nevadí mi "programovací" styl. Zároveň ale pragmaticky vidím věci, které mě při práci s tím hodně štvou, a aby tomu tak nebylo, musel bych strávit enormní čas proniknutím do hlubších principů fungování. A tak důležité pro mě psaní dokumentů zas není.

    Co jsou ty problémy? Potřebuju v dokumentu udělat nějakou věc co jsem ještě nedělal. Mám zhruba představu, jak by to mělo vypadat, na přesném vzhledu ale nesejde. Neexistuje nějaká jednotná dokumentace, takže hledám na Google, a zpravidla rychle najdu tak 2-3 balíky/způsoby řešení, případně že to řešit nejde. Takže zkusím první řešení a často dojedu na to, že tam je nějaká kolize s jiným balíkem, nebo to nejede v UTF-8, nebo bych potřebovat aby se to chovalo trochu jinak a nejde to, nebo to jde ale musím nastudovat 20 stránek dokumentace, protože potřebuju 1/20 funkcionality toho balíku. Nejhorší je, když se to tváří, že to jde, a pak to v nějakém okrajovém případě dělá blbosti (často přetékání přes okraj). Takže jednu "blbost" v dokumentu řeším třeba 20 minut nebo taky 2 hodiny. Nestává se to tak často, ale je to k vzteku. Část problému je možná i v tom, že požaduju perfektní výsledek, když už se bavím s tím LaTeXem, a to někdy vyžaduje ošklivé hacky typu záporný vspace. Ale možná jen něco dělám špatně, nevím.

    3.9.2012 22:22 Kit
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Mně se LaTex nejeví pro výuku moc vhodný. Proč? Protože výsledek se nehýbe, nebliká a při chybném vstupu ani nefunguje. Při neznalosti typografie žáků si učitel vyslouží akorát "Ve Wordu bych to měl rychleji".

    Je nutné jim předhodit něco, co jim už při jednom napsaném řádku něco vypíše (třeba jen '+-'*10) a při 3 řádcích se to už hýbe. Python se mi pro tyto účely jeví jako velmi vhodný.
    LangPa avatar 4.9.2012 01:12 LangPa | skóre: 12 | blog: LangPavel | Hradec Králové
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Hledal jsem Karla

    Mluví se tu o Pythonu, Pascalu, C a Javě, ale pro výuku byly stvořeny programovací jazyky rovněž.

    * C je moc blízký procesoru

    * Pascal patří do minulosti (někteří mi neprominou).

    * Java jede "všude", ale bez VM se neobejde, stejně jako python, ruby, smalltalk... neberte to doslova, je to "high level" výš než mrakodrapy :-)

    * javascript je na tom podobně, jediný rozdíl mezi js a zbytkem je, že co dnes umí HTML tak to umí taky JS (a na tom staví FB a hodně dalších miliardových společností)

    No abych to shrnul: Vždy jsem doporučoval nízkoúrovňový ale procesoru ne-vzdálený jazyk => C++, a to platí pořád, ale pro výuku algoritmizace postačí i javascript. Je všude, je nejrozšířenšjší na planetě, a dají se pro něj psát třídy (prototypy), objekty (object literály) a dá se psát funkcionálně => volá se funkce vrácená z funkce...

    Vše co výuka algoritmizace potřebuje

    + Syntaxe hodně podobná C, C++, Javě a dalším

    - pro výuku není moc dobré beztypový přístup, lidi budou plýtvat pamětí a neuvědomí si rozdíl mezy typem - strukturou a referencí/pointerem - což je dost důležité
    LangPa avatar 4.9.2012 01:30 LangPa | skóre: 12 | blog: LangPavel | Hradec Králové
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    a někteří mi neprominou ani pravopisné chyby, jo sorry :-) Pro výuku na základce: -- Karel (ko to už na prvním stupni, no ale někdo spí no...) -- Basic (kdo ví co to je? Jo a VisualBasic je zlo, to ví každý, takže ten ne), taky nedoporučuju, ale slyšel jsem, že jeho zpaskvilina bude použita na VŠ pedagogické v HK jako prostředek právě pro výuku algoritmizace (jo, bohužel...) -- Simula (bohužel mrtvá i když asi nejlepší pro výuku, víte jak se zrodila syntaxe Pascalu?) -- ......

    Vše co má IF, WHILE(a varianty, v asm x86 to je stejně jen DJNZ, CJNE..) CALL( a RET) je potřeba pochopit, ale struktury je potřeba nejen používat, ale i chápat..

    * POINTER!!! většina jazyků ho zakrývá ZÁMĚRNĚ, pole ala C[]

    * Virtuální funkce, polymorfizmus, dědičnost, CALL, RET, JMP...

    * struct, class descriptor ... (ví někdo o nějakém fuction descriptoru? přiznejte se.. jak jede reflexe v javě, C#? :-) )

    * load store procesory VS mov...
    pavlix avatar 4.9.2012 02:34 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    No abych to shrnul: Vždy jsem doporučoval nízkoúrovňový ale procesoru ne-vzdálený jazyk => C++
    Obecná užitečnost C++ je myslím čím dál tím menší. Zatímco C samo o sobě neimplementuje OOP (tudíž lze OOP v C vnímat jako flexibilnější) a Java je takový standardizovaný enterprise jazyk střední úrovně, a Python (Ruby, Lua a další) jsou vysokoúrovňové jazyky, C++ z hlediska výuky přináší spíš bordel, než cokoli jiného.

    Samozřejmě nezpochybňuju C++ v různých výpočetně náročných aplikacích. Ale C++ jako začátečnický jazyk mi přijde jako nesmysl, už jen pro to, že jeho spodní vrstva, které se nelze vyhnout, je C.
    Vše co výuka algoritmizace potřebuje
    Nějaký příklad?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 07:18 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Prosím popsat, jak to bude vypadat, když absolvent takového kursu bude chtít své znalosti použít a automatizovat nějakou jednoduchou operaci, a bude umět akorát ten zkurvený Javascript.
    4.9.2012 08:41 jos
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    použije node.js
    4.9.2012 23:11 l4m4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    OK, a co když bude potřebovat něco přízemnějšího než škálovatelnou server-side architekturu s asynchronním I/O?
    5.9.2012 13:51 jos
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    challenge not accepted
    Bystroushaak avatar 12.9.2012 17:08 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Používat pro výuku karel? Něco zbytečnějšího by nebylo?
    Vždy jsem doporučoval nízkoúrovňový ale procesoru ne-vzdálený jazyk => C++, a to platí pořád
    To jsem si na SŠ zažil. Měli jsme dobré score, pochopili jsme ho dva z dvaceti, jen proto, že já tou dobou už používal po pascalu python a kolega dělal v PHP, takže měl trochu tušení o čem je řeč.

    Zbytek třídy .. nemám ani chuť to popisovat, průměrná známka byla někde okolo 4 a při zmínce o programování všichni projevovali takovou známku frustrace, že lepší nevědět.

    Python jsem se naproti tomu naučil sám a neměl s tím problém ani můj bratr, kterému tenkrát bylo něco okolo 13/14.
    Josef Kufner avatar 12.9.2012 18:52 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    To je hlavně ale tím, že většina lidí na programování prostě nemá mozek a ten způsob myšlení jim vůbec nejde. Čím mladší člověk si k tomu čuchne, tím jednodušší to má, protože ještě nemá mozek pokroucený matematikou a spoustou bordelu, co se ve školách "učí".
    Hello world ! Segmentation fault (core dumped)
    Bystroushaak avatar 12.9.2012 21:08 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Osobně mám za to, že je to tím, že C++ je překomplikovanej starej krám s velmi nízkou abstrakcí a spoustou nechutných vlastností, ale to je čistě můj osobní názor :)
    pavlix avatar 12.9.2012 23:19 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    většina lidí na programování prostě nemá mozek
    Omyl.
    mozek pokroucený matematikou
    Matematika IMO spíše pomáhá.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 12.9.2012 23:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Matematika IMO spíše pomáhá.
    Některé její oblasti ano, ale většina z ní vyžaduje myšlení velmi odlišné od "programovacího". Jasně že bez logiky, lineární algebry a teorie grafů se člověk pořádně nehne, ale když dojde na to, jak vlastně rozložit obsáhlý problém na části a pak ho zas poskládat do programu, tak je potřeba dost odlišný styl myšlení.

    Co jsem viděl programy matematiků a lidí vrtajících se hluboko v algoritmech, snad vždy to byl hrozný hnůj. Algoritmy elegantní a efektivní, ale věci jako architektura, udržovatelnost a rozšiřitelnost jim nic neříká.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 12.9.2012 23:42 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    ale většina z ní vyžaduje myšlení
    Ona je velká výhoda, že většina zní právě požaduje myšlení, byť do jisté míry odlišné.
    Co jsem viděl programy matematiků a lidí vrtajících se hluboko v algoritmech, snad vždy to byl hrozný hnůj.
    To je všechno pravda, jen ten závěr je dle mého názoru zcela chybný. Matematika, logika a schopnost navrhovat efektivní algoritmy jsou pro vývojáře větších celků software velkým plusem. Teda pokud se z něj nestane úchyl na algoritmy a nepíše drobet rychlejší implementaci datových struktur v době, kdy je potřeba řešit, aby program něco dělal.

    Pochybuju, že kdyby ti tvoji špatní programátoři dokázali zapomenout kus matematiky, že by se tím z nich stali lepší programátoři :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 12.9.2012 23:57 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    ale většina z ní vyžaduje myšlení
    Ona je velká výhoda, že většina zní právě požaduje myšlení, byť do jisté míry odlišné.
    Tohle je hodně blbě vytržené z kontextu.
    Pochybuju, že kdyby ti tvoji špatní programátoři dokázali zapomenout kus matematiky, že by se tím z nich stali lepší programátoři :).
    To ani omylem. Ale myslím, že je lepší začít programováním a pak teprve se k tomu naučit tu matematiku. Tím si člověk na začátku pokroutí mozek vhodným směrem, matematika mu sice bude dělat trochu větší potíže, neboť pro něj bude těžší matematiky pochopit, ale bude o to lépe programovat. Ve výsledku bude mít v hlavě stejné znalosti, ale bude myslet jiným způsobem.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 13.9.2012 00:12 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Ale myslím, že je lepší začít programováním a pak teprve se k tomu naučit tu matematiku.
    A úplně nejlepší je věnovat se tvorbě teorie, zda je lepší začínat bušením kódu nebo učením se matematiky, logiky, algoritmů a dalších teoretických disciplín.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 12.9.2012 19:06 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    IMHO je Karel pro úplný začátek dobrá věc. Však on může být klidně implementovaný v C. Umožní to na začátku přeskočit pointery a vrátit se k nim později, kdy se už žáci trošku chytnou. Navíc se s ním dají dělat hezké úlohy, kdy je zadání stručné a přitom zcela jasné ("jdi z A do B", "vyhni se překážkám", "najdi B").
    Hello world ! Segmentation fault (core dumped)
    Bystroushaak avatar 12.9.2012 21:17 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Rozdíl je v tom, že karla jednou budou muset zapomenout, protože ve chvíli kdy přestanou být začátečníky jim už bude k ničemu a nebude mít žádné využití. To se jim u pythonu nestane.

    Další podstatný rozdíl je imho v tom, že v pythonu můžou začít skutečně scriptovat věci, které do té doby museli dělat ručně. Prostě ne jen ten jazyk znát a ovládat, ale taky ho nějak prakticky používat.
    pavlix avatar 12.9.2012 23:19 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    +1
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 12.9.2012 23:41 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Zapomenout? Ja nemluvím o té zrůdnosti, která je popsaná na Wikipedii, ale o implementaci téhož v čistém C. Prostě jednoduchá knihovna s pár fukcema, na začátku #include <karel.h> a hotovo. Z toho jim na nic bude jen popis pár funukcí.
    Hello world ! Segmentation fault (core dumped)
    Bystroushaak avatar 13.9.2012 01:46 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    No nevím, z vlastní zkušenosti vím, že začít něco skutečně dělat je o moc lehčí u pythonu, než u C. Nechci zbrkle soudit karla v C, zkušenosti s ním nemám a možné je lecos. Přesto pokaždé, když mi někdo s tímhle dotazem napíše email, odkážu ho na python a na tom zatím nebudu nic měnit.
    4.9.2012 12:30 smazáno | skóre: 18 | blog: smazáno
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    python
    4.9.2012 18:54 Leoš Literák | skóre: 74 | blog: LL | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Java. A třeba tě bude živit, až zjistíš, že dostaneš 3x větší plat než v tvém oboru :-)
    Zakladatel tohoto portálu. Twitter, LinkedIn, blog, StackOverflow
    rADOn avatar 4.9.2012 19:22 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Tazatel se neptal v čem nabouchat multimilionovej system pro nějakou megafirmu, ale v čem učit programování.

    BTW proč se tolik Javistů kasá jaký berou úžasný peníze? To je nějakej komplex nebo co? Přece víme že nejlíp placenej je dnes Cobol :-P
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    9.9.2012 20:56 Leoš Literák | skóre: 74 | blog: LL | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Já spíše potřebuju nalákat omladinu, ať mám z čeho vybírat :-)
    Zakladatel tohoto portálu. Twitter, LinkedIn, blog, StackOverflow
    9.9.2012 21:04 jehovista
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Treba jenom nechapou, proc za tak malo muziky dostavaji tolik penez :)
    rADOn avatar 10.9.2012 18:34 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    A dostávají? Není to spíš tím že chlubí neochmýřený mláďátka ze škol celý nadšený z první Opravdové Placené Práce kterým nikdo nesvěří nic složitějšího než bouchat nějaký blbiny v jazyce kde nenadělají moc škod? :-)

    Já rozhodně můžu za sebe říci že přechodem z javovské do pajtní práce jsem si zrovna nepohoršil. A to nemluvím jen o penězích :-P
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    10.9.2012 23:55 dotazz
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    tak kolik mas jako python developer?
    pavlix avatar 11.9.2012 00:06 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Takové věci se neříkají :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    4.9.2012 22:44 Jaroslav Grygar | skóre: 4
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Z dotazu je zřejmé, že se nejedná o školu se zaměřením na IT. Navíc jedna hodina týdně není moc. Neučil bych je programovací jazyk, ale programovat. Já používám vizuální programovací nástroj PETR firmy GEMTREE. Anglické stránky programu www.gemtree.com . České stránky komunity www.devbook.cz/petr-lite-programovaci-jazyk-hry-zdrojaky-priklady-tutorialy . I když je zařazen jako program na tvorbu her, dělat lze cokoliv. Například já jsem si udělal vlastní prográmek pro nastavování digitálních ochran přes RS 232, v amatérském divadle jsem používal program na pouštění zvuků od různých čidel a zapínání světel. Myslím si, že pro seznámení s programováním by to úplně stačilo. Přímo z editoru lze program spustit. Po uložení je to jediný exe soubor.
    11.9.2012 16:04 Panda38
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Petr je nyní freeware, nové stránky http://petr.hostuju.cz/
    6.9.2012 10:05 Marek
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Vzhledem k využitelnosti v praxi bych se spokojil s makry (VBA pokud jedete na MS Office, BASIC pokud LibreOffice). Visual Basic je plnohodnotný jazyk, na úvod do programování bohatě stačí (kdo tvrdí něco jiného, nejspíš ho nikdy pořádně nezkusil). Navíc ve spojení s Excelem je to skutečně užitečné téměř pro každého (v komerční sféře). BASIC pro LibreOffice má blbé IDE, ale abych nebyl ukamenován, zmiňuji také (dělal jsem v něm reporting pro jeden IS a také to jde).

    Později bych připojil SQL, se kterým se dají v Excelu + VBA tvořit reporty ze smysluplných zdrojů, protože alespoň základní znalost databází velmi ulehčí studentům další možnost rozvoje a uplatnění.

    Python a další věci mi přijdou dobré pro někoho, kdo chce programovat. VBA a hlavně SQL je něco, co je opravdu praktické a může otevřít dveře do širšího spektra firem. Vycházím z toho, že není třeba studenty ideologicky vychovávat, ale pomoci jim připravit se na pracovní uplatnění.
    Josef Kufner avatar 9.9.2012 00:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Sáhnul bych po C, ale rozhodně bych vynechal C++. Pokud pak chceš pokročit dál a učit objekty, je rozumný Python nebo Java, ale až budou umět C.

    Je potřeba, aby věděli, co se děje pod povrchem, než se začnou zabývat vyššími jazyky.

    Také je fajn, aby se naučili dva rozdílné jazyky a uvědomili si, že ty rozdíly jsou v podstatě zanedbatelné.
    Hello world ! Segmentation fault (core dumped)
    9.9.2012 14:07 pyp
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Možná bych jim moc nechtěl vysvětlovat třeba abstraktní třídy na Pythonu :D Zase ale nevím, proč by měli vědět, co je pod povrchem. Nijak jim to asi nepomůže, protože u Javy také nevíš, jak se která konstrukce přeloží.
    pavlix avatar 9.9.2012 14:58 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Možná bych jim moc nechtěl vysvětlovat třeba abstraktní třídy na Pythonu :D
    Černá magie by neměla být součástí základní výuky :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.9.2012 16:36 pyp
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    "Pane učiteli, já už OOP trochu znám a jak vypadají abstraktní třídy v Pythonu?"
    pavlix avatar 9.9.2012 20:30 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Teď si uvědomuju, že vlastně není zřejmé, zda mluvíme o tom samém. Abstraktní třída v jiném programovacím jazyce je totiž třída, která má tu speciální vlastnost, že s ní něco nejde. To není funcionalita, ale kontrola, a takové věci se v Pythonu moc neřeší. Abstraktní třídy k ničemu nepotřebuješ a zpravidla se na ně ani nikdo nebude ptát :). A když, tak tím prokazuje schopnost si věci najít sám a touhu prudit. Prudiče je vždy nejlepší něčím zaúkolovat :).

    Na abstraktní třídu ti stačí zablokovat konstruktor, ne? Černou magií jsem měl namysli věci kolem ABC, které jsou určené právě k různým takovýmto zvěrstvům.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 9.9.2012 14:57 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Sáhnul bych po C, ale rozhodně bych vynechal C++. Pokud pak chceš pokročit dál a učit objekty, je rozumný Python nebo Java, ale až budou umět C.
    Už vidím, jak je za pár hodin naučí ladit C a za dalších pár hodin objekty (třebe v Pythonu, to už je jedno).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.9.2012 16:21 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Takhle jednoduše se to těžko dá odpovědět. Záleží na tom, co by studenti celkově měli vědět? Pokud by měli rozumět algoritmizaci, tak C je dobrá volba. Jde li o použitelné skriptíky tak i makra v excelu by mohly stačit. Python je také dobrý jazyk. Ale těžiště by mělo být co učit s pomocí toho programingu.

    Proto algoritmizaci chválím. V dnešní době klikacích prostředí a výkonných HW se spousta "taky programátorů" vůbec nezabývá tím, jak je výpočetně náročné to, co napsali. Odzkouší to na pár datech a jsou spokojeni a když přijde na to mát to na desítkách či stovkách tisíc položek tak jim to začne padat. Pak kňučí pro silnější HW a důvod je v tom, že to co napsali má náročnost O(n^2) nebo O(n^3) a mohlo by mít i pouze O(n) nebo O(n*ln(n)), kdyby tomu rozuměli.
    9.9.2012 17:20 tomvec | skóre: 24 | Kojetín
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Viz nový registr vozidel...
    10.9.2012 11:26 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Je to pravděpodobně ten případ. I když konkrétně žádné informace nemám. Mohou to být špatné dotazy do databáze, špatně vymyšlené zámky na datech, mnoho vzájemného čekání, Asi to nebudou přímo špatné algoritmy, ale bezesporu je registr jako celek špatně naprogramovaný, patrně pomocí nějakého nástroje na "rapid development". Stačí si uvědomit zátěž, tuším někde uváděli, že je to tak cca 15 000 vozidel za den, to znamená cca 1 vozidlo za vteřinu (při 4,5 hodinách skutečné práce). i když by na jedno vozidlo potřebovali úředníci třeba 50 interakcí, tak je to pořád jen 50 TPS s registrovou databází a to by snad neměl být problém.
    xkucf03 avatar 22.9.2012 19:47 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    V počátcích bych výkon moc neřešil, spíš bych kladl důraz na správnost a přehlednost – v požadavcích pro vývojáře jednoho svobodného softwaru jsem četl hezké doporučení – volně přeloženo:
    Správnost především! Je snazší zrychlit správně pracující program, než donutit rychlý program, aby pracoval správně.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    24.9.2012 21:23 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Myslím že to je dost častý zdroj chyb. Vezme se správně fungující program, mírně se opraví algoritmus, aby se to zrychlilo, a ejhle, po čase se zjistí, že úprava nebyla co do funkcionality zcela ekvivalentní :) Výsledkem je: co funguje, na to nesahej (a pokud musíš, projdi a předělej to od podlahy). Takže je nakonec lepší se tou rychlostí zabývat už během první iterace.

    To OSS doporučení bych chápal jako že se pro začátek nemají dělat úpravy, které program učiní rychlejším, ale za (nevyhnutelnou) cenu jisté obfuskace a znepřehlednění kódu. Ne že by se mělo psát blbé (pomalé) algoritmy které "hlavně že fungují".
    xkucf03 avatar 24.9.2012 21:58 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    a ejhle, po čase se zjistí, že úprava nebyla co do funkcionality zcela ekvivalentní
    To se nemá zjistit po čase, ale hned. Buď můžeš mít napsané testy, které to odhalí (aspoň jednotkové, ale lépe komplexní testy), nebo si uděláš ruční testy před a po velkém refaktoringu/optimalizaci – porovnáš výstupy a chování dvou verzí programu.
    Takže je nakonec lepší se tou rychlostí zabývat už během první iterace.
    Souhlas v tom smyslu, že by se neměly dělat prasárny a očividně neefektivní a hloupý kód. Opačný extrém je ale předčasná optimalizace – tam se vyplácá čas a energie, zhorší se čitelnost, rozšiřitelnost… jenom kvůli optimalizaci, která se projeví jen minimálně nebo vůbec.

    Z didaktického hlediska mi přijde lepší, když nejdřív člověk programuje neefektivně, ale správně a časem se učí různé fígly, jak to zrychlit a vynechat zbytečné kroky – než aby ze začátku psal rychlé, ale prasácké programy a vytvořil si˙tak špatné návyky ohledně OOP nebo používání funkcí, procedur, stavby programu…
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    24.9.2012 22:41 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Ano to jsem měl na mysli. Až na ten vtip s všeodhalujícími komplexními testy :)
    xkucf03 avatar 24.9.2012 23:07 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Z bezmezné víry v testy mě podezřívat nemusíš :-) (od toho jsou tu jiní). Ale stejně si myslím, že dobrý program by mělo jít překopat/refaktorovat/optimalizovat a člověk by se neměl bát. že se mu to celé zhroutí – pokud se bojí, tak je něco špatně.

    Další chyby odhalí integrační testy, kdy se to napojí na skutečný software, se kterým to poběží v praxi (ne jen nějaké simulátory). Zrovna nedávno se mi jejich užitečnost potvrdila. A pak už jen revize kódu a ruční testování a laborování případně debugger… Ale fakt by se nemělo stávat, že se na něco člověk bojí sáhnout.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    10.9.2012 23:58 dotazz
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Zkusil bych BASH. Je zalozen na I/O prevazne textu, navratovych hodnotach, expanzi, ... A navic umet ho je naramne uzitecne!
    pavlix avatar 11.9.2012 00:07 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Shell je rozhodně zajímavý. Ale aby poskytl něco užitečného, tak na neunixovském systému potřebuješ alespoň něco jako cygwin.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    12.9.2012 13:29 psholty2 | skóre: 7 | blog: char
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Ja som si "dovliekol" bash spolu s gitom pre windows. Funguje ok. Su tam aj nastroje okolo (namatkou: awk, basename, cat, cp, curl, cut, date, echo, find, grep, gzip, ls, pwd, rm, rmdir, sed, sleep, sort, tail, tee, touch, uniq, wc, xargs, ...)
    pavlix avatar 12.9.2012 17:58 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Pravda, Git si s sebou nese Cygwin :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Řešení 1× (iwtu)
    iwtu avatar 15.9.2012 14:09 iwtu | skóre: 7 | blog: Personal Wiki
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit

    Ja by som asi isiel do toho Pythonu. Nie kvoli tomu, aby som ich naucil programovat, ale preto, aby som im dal moznost zistit, ci by ich take nieco bavilo a mohli sa tomu venovat, pripadne dat im nejake dalsie odporucania, poradit, sukromne poradit, ak niecomu nebudu rozumiet atd.. To je, myslim si, jediny realny ciel, ktory mozete splnit za jednu hodinu tyzdenne.

    Potom napiste, ako to skoncilo. Precitat si nejake pozorovanie a vzdy hodi. Drzim palce.

    27.11.2012 13:00 lofcek
    Rozbalit Rozbalit vše Re: Jaký programovací jazyk učit
    Moja osobna volba by asi bola python, ako nie uplne zla volba by som videl pascal. Ale namiesto toho aby som rozpisoval argumenty, si myslim, ze tato otazka nepatri na toto forum. Pytat sa programatorov, co ucit na strednej skole je uplne od veci. Skus sa pytat ludi, ktory maju blizsie k pedagogike. Toto je ako by si sa pytal ako ucit fyziku odbornika, ktory poslednych 20 rokov stravil zapajanim v CERNe zahrabany 200 metrov pod zemou.

    Založit nové vláknoNahoru

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

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