pyvec / naucse.python.cz Goto Github PK
View Code? Open in Web Editor NEWWebsite with learning materials / Stránka s učebními materiály
Home Page: https://naucse.python.cz
License: Other
Website with learning materials / Stránka s učebními materiály
Home Page: https://naucse.python.cz
License: Other
Vůbec se netýká seznamů a jde dělat čistě nad řetězci. Navíc ta historka o tahu počítače, co umí hrát jen za křížky je taková... ehm, radši opravit než dělat 2 konverze.
(This is an idea I've got after reading the discussion in #55 (comment), although it's not related to the discussion itself, so I'm opening a new issue not to spam that discussion).
See this template. It has content. It says things. I propose we remove the content form the template and save it somewhere where content belongs, such as in this repository a YAML or Markdown file.
Does it make sense?
(This is not intended as bikeshedding, feel free to ignore the proposal until more pressing issues are fixed.)
(přesunuto z PyLadiesCZ/pyladies#45)
K nápadu přivedl Honzu Javorka následující tweet:
Neříkám, že by to měl ilustrovat Honza, neříkám, že by to neměl ilustrovat Honza. Je to asi hlavně o času a nápadech. Pokud by se toho chopila nějaká účastnice, bylo by to fajn 🎨
The PyLadies materials for Git use HTML for colorized shell output. Is there a better way? How to do this in Markdown?
Přesunuto z PyLadiesCZ/pyladies#23
Před nějakou dobou jsem sepsal podrobný návod, jak na Windows nastavit alespoň trochu funkční prostředí – použitelný terminál, bash, editor, git, ssh – How to use terminal on Windows without going crazy… Už pomohl spoustě lidem.
Co z něj vyjít a upravit ho speciálně pro PyLadies (přeložit do češtiny, přidat instalaci Pythonu)?
To zní dobře :)
V Brně už máme instalaci za sebou, takže já se k tomu dostanu minimálně za půl roku.
ConEmu vypadá z toho článku dobře; snad funguje i v praxi.
A ještě bych poprosil o záměnu Sublime třeba za Atom, ať je dál všechno open-source :)
Tabulka na konci lekce o příkazové řádce je škaredá a těžkopádná. Měl by na to být tahák jako na ostatní seznamy encyklopedických znalostí.
...
- pokračování příkazu, většinou chybí závorka; Ctrl+C tě dostane ven
Naucse now uses this syntax for admonitions (notes, warnings, etc.):
!!! note ""
Text of the note
This comes from a python-markdown extension, which is no longer used; naucse has a custom extension for them.
Sadly, the Commonmark standard has no syntax for admonitions.
However, in discussions around Markdown and admonitions, many people are suggesting something based on blockquotes. The advantage of that is that admonitions could render relatively nicely even without the extension, e.g. on Github.
> [note]
> The text goes here.
[note] The text goes here.
(The start text could be different, e.g. > !note:
)
Brněnská verze: basics collaboration
Pražská verze: git-collaboration-2in1
Oskarovy poznámky jsou v Poznámkách kouče v repu PyLadies
Chtělo by to do budoucna přerozdělit, aby to vyhovovalo všem.
Je to napsané až dole, mělo by to být hned na začátku.
(přesunuto z PyLadiesCZ/pyladies#31)
Mac dělá soubory .DS_Store, které je potřeba vyfiltrovat.
Jakub Jirutka tam zároveň doporučuje přidat zmínku o globálním .gitignore, aby to pak zbytečně necpali do každého repositáře.
Blbě se to kopíruje
(přesunuto z PyLadiesCZ/pyladies#17) (NB, Samotný solitaire ještě není v tomhle repozitáři.)
popis_tahu
se volá z nacti_tah
, ale není definovanápriprav_tah
používá proměnnou cíle
místo hromadky
zdrojovy_balicek
, cilovy_balicek
jsou matoucí - "balíčky" jsou jen U/Vzkontroluj_postupku
je asi zbytečnáhttps://travis-ci.org/pyvec/naucse.python.cz/builds/204727745
Generating HTML...
[2017-02-23 20:18:35,876] ERROR in app: Exception on /lessons/beginners/install/static/windows_32v64-bit.png [GET]
Traceback (most recent call last):
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/app.py", line 1982, in wsgi_app
response = self.full_dispatch_request()
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/app.py", line 1614, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/app.py", line 1517, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/app.py", line 1612, in full_dispatch_request
rv = self.dispatch_request()
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/app.py", line 1598, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/travis/build/pyvec/naucse.python.cz/naucse/routes.py", line 61, in lesson_static
return send_from_directory(directory, filename)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/helpers.py", line 663, in send_from_directory
filename = safe_join(directory, filename)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask/helpers.py", line 632, in safe_join
directory = os.path.join(directory, filename)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/posixpath.py", line 89, in join
genericpath._check_arg_types('join', a, *p)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/genericpath.py", line 143, in _check_arg_types
(funcname, s.__class__.__name__)) from None
TypeError: join() argument must be str or bytes, not 'PosixPath'
Traceback (most recent call last):
File "/opt/python/3.5.2/lib/python3.5/runpy.py", line 184, in _run_module_as_main
"__main__", mod_spec)
File "/opt/python/3.5.2/lib/python3.5/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/travis/build/pyvec/naucse.python.cz/naucse/__main__.py", line 3, in <module>
main()
File "/home/travis/build/pyvec/naucse.python.cz/naucse/__init__.py", line 13, in main
cli(app, base_url='http://naucse.python.cz')
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/elsa/_cli.py", line 127, in cli
return command()
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/click/core.py", line 722, in __call__
return self.main(*args, **kwargs)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/click/core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/elsa/_cli.py", line 91, in freeze
freeze_app(app, freezer, path, base_url)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/elsa/_cli.py", line 39, in freeze_app
freezer.freeze()
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask_frozen/__init__.py", line 157, in freeze
new_filename = self._build_one(url)
File "/home/travis/virtualenv/python3.5.2/lib/python3.5/site-packages/flask_frozen/__init__.py", line 286, in _build_one
% (response.status, url))
ValueError: Unexpected status '500 INTERNAL SERVER ERROR' on URL /lessons/beginners/install/static/windows_32v64-bit.png
They are missing and currently non-obvious:
PYTHONPATH=. python -m naucse serve
V aktuálních materiálech je za řešením dlouhá mezera, aby nebyl hned vidět pokračující text (který svádí k přečtení, nebo i k přeskočení úlohy, a navíc často hodně napoví). Po kliknutí se mezera nahradí řešením.
Šlo by to udělat líp?
(přesunuto z PyLadiesCZ/pyladies#29)
Existuje jednoduchá knihovna na přehrávání not (melodie = ['C', 'E', 'G'] * 2 + ['E', 'E', 'D', 'E', 'F', 'D'] * 2 + ['E', 'D', 'C']; play(melodie)
), která by fungovala na všech systémech?
Je PySynth to co hledáme?
Líp to sedí na přiklad ze začátku - z práce na větší změně (na několik revizí) přeskočím na menší změnu
Tato lekce potřebuje nějaký nový způsob, jak čtenáři mohou testovat spolupráci v gitu, potože část pro kouče bude smazána a tím pádem nedává testování s prezenční listinou do budoucna smysl. Leda bychom udělali nějaký automaticky udržovaný repozitář, který by se v pravidelných intervalech mazal.
Nebo nějaké repo, které budeme všichni sledovat a čtenáři, který pošle PR ho prostě mergneme. Když jej budeme sledovat všichni, tak toho snad nebude tolik.
To jsou však jen rychlé nápady.
This is not a critical bug, but rather a tracking issue so we don't forget about it.
Délka slova je pochopitelnější pojem než sinus. Jediný důvod tam ten sinus jako příklad funkce mít je návaznost na sekci s výrazama, ale to snad půjde navázat i na len
.
Z dopisů uživatelů:
Cus, neviem kto presne z vas ma nastarosti ten nauce.python.cz tak pisem obom, ze som nasiel bug :)
http://naucse.python.cz/courses/testing/ (odvolava sa tam na nejaky piskvorky modul, kt predpokladam presli ludia na pyladies, ale nie je to nikde predtym v materialoch..)
Primo to nemame na starosti ani jeden, ale info predame dal. Nejlepsi je nahlasit issue na githubu.
Jsem trosku v rozpacich, zda nejsou v lepsim stavu materialy pyladies. Naucse je mozna porad trochu WIP.
Odpověď:
Aha! Tak v tom pripade este odporucam predat dalsie info dalej nech sa prida na nauce.python.cz aj link na git repo :)
"Strom" výjimek z materiálů by bylo fajn dát na papír (nebo odkázat na PDF), ať je líp k dispozici.
...jednou dohromady a jednou rozděleně. Je třeba se na to podívat a vyřešit to.
Nezapomenout migrovat odkazy, které nejsou přímo součástí materiálů, ale jsou v seznamu lekcí na webu PyLadies - nejčastěji taháky na Githubu.
Při přípravě MI-PYTu mi @hroncok opravoval "pythoní" na "pythonní", tak jsem mu věřil, ale teď jsem si uvědomil že si vlastně nejsem jistý jestli je to správně.
ÚJČ píše:
Přípona -ní se neuplatňuje například u přídavných jmen od jmen zvířat končících na -n. Existují jen přídavná jména kuní, sloní, jelení, laní, klokaní atd. a pravopisné podoby * kunní, * slonní, * jelenní, * lanní, * klokanní jsou chybné.
Bylo by hezké, kdyby code bloky měly syntax highlighting, jako např u MI-PYT na GitHubu.
(přesunuto z PyLadiesCZ/pyladies.cz#185)
V gitovém taháku, tedy PDF nadepsaném „Základy Gitu“, [Glutexovi] přijdou ty barevné rámečky dole neintuitivní svým pořadím. Pracovní adresář je něco, co máme, „stage“ je na půli cesty a revize je to, co z toho nakonec vznikne. Proto by [mu] přišlo srozumitelnější mít je přesně v opačném pořadí – tedy pracovní adresář vlevo a revizi/úložiště vpravo.
Jedna změna, kterou bych osobně rád udělal oproti MI-PYT, je tykání. Např. místo:
Flask opět můžete nainstalovat do virtualenvu, …
Například když v aplikaci výše navštívíme URL …
dát
Flask opět můžeš nainstalovat do virtualenvu, …
Například když v aplikaci výše navštívíš URL …
a tento styl použít v rámci celého naucse.
Je to stále vhodné pro vysokoškolské materiály? Nebo bude lepší tykat jen začátečníkům?
courses/*/index.html
have some duplicate content.
_base.html
).{% block title %}
) could be taken from courses.yml
, instead of repeating it in each template.Python 3.6 řeší Unicode na v příkazové řádce na Windows. To chceme.
Hádání čísla, které si počítač myslí, může být další dobrý úkol na procvičení cyklu while.
Udělám to, jen si to tu odkládám, abych nezapomněl.
Aktuální struktura respektuje to, jjak sou jednotlivá témata probírána v rámci kurzů PyLadies. Chceme to takto i zde?
Jde mi o to, že návštěvník se musí proklikat strukturou, která mu třeba na první pohled nemusí dávat smysl a může komplikovat navigaci jako takovou. Další nevýhodou je nutnost udržovat samostatné hlavní stránky pro každou lekci, které ale většinou obsahují jen odkazy na samotné materiály.
Možnost je udělat jednu velkou společnou úvodní stranu, kde bude pár slov k projektu jako takovému a pod tím kompletní obsah, který může být stále pro přehlednost zobrazen ve více úrovních odsazení (jako obsah knihy).
Přesunuto z PyLadiesCZ/pyladies#12
Toto je diskuzni issue
Mel jsem pri prochazeni ukolu z 2. srazu pocit, ze seznam ruznych erroru a operatoru je prilis encyklopedicky a tudiz nezazivny.
V domácích úkolech je trochu drilu, to k tomu holt patří. Ale doufám že se většinou daří dávat zajímavé příklady...
U prvního úkolu byl účel ukázat jednak jaké různé chyby jsou, takže ten úkol pak může sloužit jako referenční příručka pro 2–4. Alternativa by byla odkázat na dokumentaci, ale to je (jako většina dokumentace) anglická hora textu; ještě nezáživnjší než první úkol. (Možná by ale bylo dobré tam ten odkaz přidat navíc; a asi nejlepší by asi bylo na dalším srazu rozdat "tahák" se seznamem chyb a odkazem na dokumentaci – to by bylo dobré všude; systém "taháků" ze kterých se postupně staví referenční příručka možná udělám na příští brněnský běh.)
Při procházení výjimek by stálo za to se zaměřit na to, jestli pochopily jak chyby vypadají, a jestli zhruba rozumí anglickým jménům, spíš než to procházet po jednom. Stejně u operátorů – jen shrnout, ne procházet.
Možná by se hodil manuál pro kouče; případně to zatím hodit do poznámek?
V domácích úkolech je trochu drilu, to k tomu holt patří.
Toť otázka! :-)
To jo.
Každopádně doufám že drilu není tolik, že to někoho odradí nad každým podúkolem trošku přemýšlet. Třeba 13. úkol ukazuje stále nové věci, a i v 1. je zabudovaná zvláštnost hodná zapřemýšlení :)
Jupyter Notebook 5.0 has nicely styled tables built in.
We don't need to teach the CSS hack, but do need to include similar CSS on naucse.
Některé materiály (např. MI-PYT) obsahují Jupyter/IPython notebook.
Mělo by být poměrně jednoduché ten notebook rozparsovat (je to JSON) a zobrazit obsah, který může být různého typu, ale pro naše potřeby nás zajímá (= v materiálech je) jen markdown
(to už umíme) a code
(to obalíme <pre>
apod.), výstup pak může být plaintext nebo HTML.
We've talked about this with @encukou but I don't want to forgot it.
This repo is getting more and more code, but it has no implicit license, thus in theory the code is not free / open source software.
Apart form code, we also have content, but the content is usually has it's license specified in the metadata. Co I have the following proposal:
License the code with the MIT/Expat license (author "naucse.python.cz contributors") and say that the content has it's own license in the metadata (and fallbacks to CC BY-SA 4.0 if not specified).
Agreed to license the code (not content) with the MIT license with "naucse.python.cz contributors" as <COPYRIGHT HOLDER>
:
The following contributors only added content (not mentioning them to not bother them):
Co takhle na to jít trošku jednodušeji a rychleji, než se s tím zbytečně dlouho mazat (HTML aj.), tj.:
Jednak by se to možná dalo stihnout do LinuxDays, druhak by odpadla starost o navigační strukturu a třeťak bychom se mohli dále věnovat dalším bodíkům v #40 - Akademie vedle v repu "zapojse".
Sice to není moc Pythonový způsob, ale mnohé by se tím vyřešilo. Já bych si nějaký ten čas na to našel, pokud by to bylo odsouhlaseno.
Vím, že je to téma na kurzech řešené stále dokola, ale obdržela jsem teď dotaz i od samostudenta, zda jsou někde k dispozici vyřešené domácí projekty. S PyLadies na kurzu můžeme vždy řešení probrat, ale samostudentům by asi fakt pomohlo, kdybychom něco měli k dispozici. Co si o tom myslíte? Jaké jsou s tím v rámci "naučse" plány?
Crete the run in runs/2017/mi-pyt.
Aktuálně tam žádná není a to ani v lekci následující o JSONu, takže je v podstatě celá lekce jen povídací a u toho by každý usnul.
U slovníků by si mohly účastnice vyzkoušet nějaký příklad, který by je stejně jako ukázkový kus kódu přiměl slovníkem proiterovat a změnit všechny hodnoty na něco jiného. Například jim dát seznam obsahující slovníky, které reprezentují osoby a úkolem by bylo opravit velká a malá písmena u jmen osob v seznamu.
U JSONu by to mohlo být tak, že by si mohly vzít nějaký svůj projekt nebo hru a mohly by do něj implementovat možnost, že si jejich hra bude umět zapamatovat, kde uživatel skončil a pak načíst uloženou pozici. Nebo aby to bylo jednodužší, tak jen nějaký ukázkový slovník a nechat je ho uložit do souboru a pak načíst a použít. Ukládádní do souboru je podle mě podstatné, protože se na výstup mohou podívat a lépe pochopit, k čemu při ukládání vlastně došlo.
Currently, we use Jinja2 to render some lessons written in Markdown and Jupyter Notebook. To link to the static files, the static()
macro/template filter is used. That makes the renders on GitHub and local Jupyter Notebook unusable:
This is especially bad if we want to encourage local evaluation of the Jupyter notebooks, or if we want to evaluate them automatically in the future. Could we get rid of that? Maybe keep the reference like this:
[foo](static/bar.whatnot)
and making sure it works by customizing our markdown conversion to replace all scr
s, and href
s in the form of static/...
into the static()
call after the conversion (or all []
and ![]
targets before the conversion if that's simpler)?
We need a CNAME record for naucse.python.cz to pyvec.github.io
Navrhuji přidat do hlavičky odkaz na návrat na hlavní stranu resp. odkaz na návrat o úroveň výše.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.