Programovaci jazyk budoucnosti

Re:programovaci jazyk budoucnosti
« Odpověď #15 kdy: 19. 08. 2015, 17:14:22 »
Citace
dam priklad chtel bych udelat agregator top 3 posts ze vsech mych subredditu za poslednich 24 hodin jako jednu html stranku tedy mam problem a mam cil- je tam na to api fce neumim pouzit

Řešením tohoto problému je
1) Naučit se používat ty nástroje
2) Někomu zaplatit

Cortana/Siri apod. jsou jen další pomůcky, které vám umožní udělat něco, co jiný předpřipravil a způsobem, který se autor usmyslel vám "povolit".


tom45

Re:programovaci jazyk budoucnosti
« Odpověď #16 kdy: 19. 08. 2015, 17:28:48 »
@robert: Mozno by si napriek tomu mohol skusit naucit sa nejaky klasicky programovaci jazyk. Hodim aj jeden konkretny tip - zaujimavy prakticky tutorial pre python - https://automatetheboringstuff.com/ - v 11. kap. sa napr. riesi stahovanie z webu, potom automatizacia prace s excelom, pdf, a podobne :)

BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:programovaci jazyk budoucnosti
« Odpověď #17 kdy: 19. 08. 2015, 17:30:37 »
Citace
dam priklad chtel bych udelat agregator top 3 posts ze vsech mych subredditu za poslednich 24 hodin jako jednu html stranku tedy mam problem a mam cil- je tam na to api fce neumim pouzit

Řešením tohoto problému je
1) Naučit se používat ty nástroje
2) Někomu zaplatit

Cortana/Siri apod. jsou jen další pomůcky, které vám umožní udělat něco, co jiný předpřipravil a způsobem, který se autor usmyslel vám "povolit".
Berme to jako výzvu k úvaze, zda dnešní vysokoúrovňovost jazyků by se nedala ještě posunout. A samozřejmě jak.

anonim

Re:programovaci jazyk budoucnosti
« Odpověď #18 kdy: 19. 08. 2015, 17:38:51 »
Prepac, ale nebol som schopny docitat ten text. Uz ma prilis rozmaznal komfort bodiek a ciarok oddelujucich vety a suvetia a nemyslim, ze som povinny lustit tvoj text.

Ak programujes tak ako pises, tak je potom jasne kde je problem.

Vím, že to trochu zavání osobním útokem, ale nemůžu si pomoct:
Hmmmm má pravdu. Mám výkonný neuronový počítač, který se třicet let pomocí formálního i neformálního učení trénoval zpracovávat jazyk češtinu a porozumět tvému příspěvku byl stejně problém. Jinak chápu, že tě zaujal zrovna Python, já ho nemám moc rád, protože se v něm píše bez středníků, zanoření se dělá pomocí tabulátoru atd. (můj osobní názor a preference, nechci tu řešit Python).
---------------------
Teď k tématu.

Když se na to podíváš z pohledu obecného jazyka, představ si sám, že bys dostal takové instrukce, jako jsi sám napsal. Je to strašně nekonkrétní, nevím, jak se mám nalogovat (heslo), větou č.2 nechápu, co chceš říct, protože moc neznám pojmy na redditu, tři je ok (předpokládá, že jazyk pochopí, co je first - nejstarší? nejnovější?.) jak udělat html stránku? jak má vypadat, na jaký server atd? jak zobrazit? html kód, otevřít v prohlížeči? atd. atd. Tj stejně bys musel svoje instrukce popsat daleko přesněji.
Být tebou, tak se zaměřím na to strukturovat svoje dotazy přesně a syntakticky správně nejdřív v češtině. To je první krok. Potom přemýšlet nad tím, jak nějaký požadavek v češtině převést do algoritmické řeči, které porozumí počítač. To je hlavní rozdíl, který odlišuje programátora od neprogramátora, že bez toho tréningu v programování lidi většinou nejsou schopní dobře definovat požadavky. Mimochodem pracuji jako konzultant a s klienty tohle řeším každý den. Zadání vypadá triviálně, potom ale přijde na to, že je potřeba všechno přesně definovat. Ošetřit různé scénáře použití, kdy si rozpomenou na dalších sto věcí navíc, co to má splňovat. Když už mám přesné zadání a vytvořím výsledek tak se potom třikrát upravuje, protože "to tak sice říkali, ale představovali si to jinak". Nabušit to do kódu je ve srovnání s tímhle častokrát triviální.

Žádný programovací jazyk podle mě nemůže zaručit, že věci, které napíšeš, budou dávat smysluplný výsledek. V tom je kouzlo programování. Je to mocný nástroj, který dokáže vytvořit výsledky, které nikoho předtím nenapadly. Takže bohužel i blbosti.

Ten příklad, co jsi napsal, dokážu si představit, že by to mohlo fungovat v nějakém uzavřeném systému, kde se už počítá s tím, že něco takového můžeš volat. Možná jednou neuronové sítě nebo o něco blíž Cortana a spol pro před připravené věci.

Jestli chceš mít výsledky v nejbližším desetiletí, doporučuji nějaký kurz, kde bude praxe i trocha teorie. V současné době existuje hodně knihoven, které dokážou udělat komplexní operace. Stačí je zakomponovat do programu. Napadají mě taky tampletovací jazyky jako django. Nebo Google script, tak je výhoda, že si můžeš jednoduše vytvořit objekty a potom je pomocí programu upravovat. Určitě se nauč o objektovém programování, i v Pythonu jde programovat objektově.

ava



Re:programovaci jazyk budoucnosti
« Odpověď #20 kdy: 19. 08. 2015, 17:48:38 »
nejde mi to tak mne jen napadlo jestli by slo vymyslet nejaky metaprogramovaci jazyk treba nad pythonem ktery by byl jednodussi pro hlupaky jako jsem ktery by opravoval nejen tu jednodussi syntaxi v tomto jazyce predstavuju si ze by se pouzivalo neco jako orezana simple english
Není to úplně od věci, jak psali kolegové výš - AppleScript je výborný příklad, chtěl jsem ho taky napsat. Ale obecně bych to nepřeceňoval - když uděláš jazyk superpoužitelný pro jednu doménu, bude otravné ho použít jinde (pokud to vůbec půjde). Pokud chceš jazyk omezený na nějaké konkrétní použití, tak to jde. Třeba teď jsem vymyslel jazyk OnOff, který slouží k ovládání žárovky - když ji chceš zapnout, napíšeš On, když vypnout, napíšeš Off ;) Přímočaré, efektivní, pochopitelné. Dokud někoho nenapadne jazyk OnOff rozšířit tak, aby v něm mohl napsat browser, to pak dopadne špatně :) Takže máš pravdu v tom, že pokud ti programování v "normálním" jazyce nejde, mohlo by ti jít nějaké jednodušší programování přesně jenom pro tu doménu, kterou chceš řešit. Ovšem to by ti někdo musel takový jazyk vymyslet, pokud možno přímo pro tebe :)

Obecnější poznámka, kterou si prosím neber osobně: čtu "nešlo mi to...tak jsem vymyslel, že je problém v jazyce". Myslím, že ne. Problém je v tobě - nevěnoval jsi dostatek úsilí tomu, aby ti to šlo. Třeba ten zmíněný Python je tak přístupný, že podle mě člověk s průměrným nebo i lehce podprůměrným IQ musí být schopný v něm něco napsat. Možná bude muset věnovat delší čas studiu a tréningu, ale nakonec to (na nějaké úrovni) dá. Zkus popřemýšlet spíš tímhle směrem - jestli jsi ochotný do toho dát trochu víc úsilí, jestli ti to za to stojí a jestli nemáš po ruce někoho, kdo by ti s tím pomohl. Myslím, že to je plodnější směr úvahy než o tom "metajazyce" :)

Re:programovaci jazyk budoucnosti
« Odpověď #21 kdy: 19. 08. 2015, 17:50:02 »
Berme to jako výzvu k úvaze, zda dnešní vysokoúrovňovost jazyků by se nedala ještě posunout. A samozřejmě jak.
Otázka je, co je "dnešní úroveň". AFAIK jsou nějaké pokusy o automatické generování kódu z UML apod. To už je dost vysoká úroveň ;)

robert

Re:programovaci jazyk budoucnosti
« Odpověď #22 kdy: 19. 08. 2015, 18:13:05 »
omlouvam se za tu spatnou strukturu psal jsem to na mobilu v autobuse

jinak proste pral bych si nejaky minimalismus blbuvzdornej s tim metajazykem jsem to myslel tak ze jako existuji vyssi a nizsi programovaci jazyky tak by existoval jeste vyssi ktery by fungoval nejak jak jsem popsal, vysledek by se poslal do nejakeho "vyssiho kompilatoru" ktery by z toho basic simple english vykouzlil neco co by uz slo povazovat za vazny programovy kod, na to uz by se nekdo podival pripadne lehce zeditoval a slo by to pak bud do interpretu nebo klasickeho kompilatoru

jinak toto mi pripada zajimave vim ze tonouci se stebla ...

http://www.google.com/patents/US7860815

The ultimate vision, enabled by the present invention, is to have Subject Matter Experts (SME) simply document their knowledge in a simple, universal, near-natural language which is sufficiently unambiguous for computer systems to process. “Requirements Documentation” and “code” are no longer separate entities but one and the same. The SME can view and validate knowledge while building, using a tool set that provides many different views and formats, and zooms in or out to the desired level of detail. Many views and formats are supported through plug-ins built for textual and graphical representations, such as listings, swim lanes, flow charts, UML diagrams, MIDI sequences, etc., The system, then auto-builds the application required by the user, on the fly, in an interpreter mode, or compiles for deployment. The IT staff's role is to support the infrastructure and optimize, partition, fine tune, and deploy the auto-built applications, produced from the knowledge.


Kit

Re:programovaci jazyk budoucnosti
« Odpověď #23 kdy: 19. 08. 2015, 18:14:54 »
Berme to jako výzvu k úvaze, zda dnešní vysokoúrovňovost jazyků by se nedala ještě posunout. A samozřejmě jak.
Otázka je, co je "dnešní úroveň". AFAIK jsou nějaké pokusy o automatické generování kódu z UML apod. To už je dost vysoká úroveň ;)

Zajímavé jsou i opačné pokusy: Automatické generování UML z kódu.

Radek Miček

Re:programovaci jazyk budoucnosti
« Odpověď #24 kdy: 19. 08. 2015, 19:13:35 »
BTW jsou pokusy generovat kód z příkladů (tj. z testů).

Re:programovaci jazyk budoucnosti
« Odpověď #25 kdy: 19. 08. 2015, 21:35:53 »
dam priklad chtel bych udelat agregator top 3 posts ze vsech mych subredditu za poslednich 24 hodin jako jednu html stranku tedy mam problem a mam cil- je tam na to api fce neumim pouzit

naivni predstava programovani budoucnosti:

log on reddit.com
get top lists last 24 hrs all of my subreddits
get first 3 posts of all these top lists
make html page of all of these 3 posts
show html

Na tohle ale nepotřebujete nový jazyk. Potřebujete knihovnu pro pro práci s reddit.com a knihovnu pro generování html. A pokud budou ty knihovny dobře a jednoduše navržené, nebude ten program v reálu o mnoho složitější, než ve Vaší ukázce.

Co ale nejspíš budete potřebovat je mít u sebe někoho zkušenějšího, kdo vám pomůže překonat první problémy a dospět rychle k funkčnímu kódu. Opravdu není tak složité napsat nějaký skript, který bude dělat takovéto jednoúčelovky - pokud máte někoho po ruce a existuje na ten úkol vhodná knihovna.

Re:programovaci jazyk budoucnosti
« Odpověď #26 kdy: 19. 08. 2015, 23:22:21 »
Berme to jako výzvu k úvaze, zda dnešní vysokoúrovňovost jazyků by se nedala ještě posunout. A samozřejmě jak.

Dá se to brát jako výzva, ale k tomu jsou nutné předpoklady od uživatelů.

1) Abstrakce alespoň druhého řádu
2) Algoritmizace, zde stačí nulitní minimum. Jen být schopen v krocích říct, co chci.
3) Umět se vyjadřovat. Spousta lidí používá termíny jako shodit (minimalizovat), nakliknout ...
...
Ale je to nereálné, úroveň vzdělání v exaktních oborech klesá. Média odnaučují lidi myslet, aby pouze přebírali, co je jim zdělováno.


robert

Re:Programovaci jazyk budoucnosti
« Odpověď #27 kdy: 20. 08. 2015, 10:16:08 »
na redditu je k tomu cele api, bohuzel ho neumim pouzit

https://www.reddit.com/dev/api

napr. listings ->top

///////
kdyz to napisu cesky bez toho pseudokodu, tak reddit.com je klasicke forum s tematickymi podfory(subreddits) do kterych se uzivatel muze prihlasit (subscribe)

kazde jeho subforum (subscribed) kdyz do nej registrovany uzivatel vleze, ma nahore moznost serazeni prispevku v subforu mimo jine podle Top a v ramci serazeni Top mimo jine volbu last 24 hrs

co bych ja potreboval, protoze jsem se prihlasil do nekolika desitek subforumu je agregator, ktery na kazdem z mych subforumu seradi prispevky podle Top Last 24 hrs, vezme jen prvni tri prispevky od shora (to jsou ty nejlepsi tri za poslednich 24 hodin z daneho subforumu) z kazdeho meho subforumu a ty mi vylistuje jako jedinou html stranku


NooN

Re:Programovaci jazyk budoucnosti
« Odpověď #28 kdy: 20. 08. 2015, 10:42:48 »
Hod si to translátorom do Anglictiny a posli to nejakému Indovi, ten to mozno pochopi.
Ale kedze kazde forum je postavene na inom zaklade, kazde forum je mofifikovatelne, kedze .... tak si neviem predstavit ako by si to chcel univerzalne spravit bez API alebo znalosti konkrétnej struktury

Lucas

Re:Programovaci jazyk budoucnosti
« Odpověď #29 kdy: 20. 08. 2015, 10:47:34 »
Ono by to chtělo začít od začátku. To je jako kdybych si já nazul běžecký boty a vyrazil na přespolní běh - zpátky mě nejspíš poveze černá dodávka. Lepší nápad bude dávat si dvakrát týdně pár koleček kolem baráku a na přespolák vyrazit za rok.

https://wiki.python.org/moin/BeginnersGuide/NonProgrammers