Code Monkey home page Code Monkey logo

naucse.python.cz's People

Contributors

aprillion avatar asgeirrr avatar befeleme avatar brabemi avatar coobas avatar encukou avatar frenzymadness avatar glutexo avatar honzajavorek avatar hroncok avatar ivcajelinkova avatar janpipek avatar jas02 avatar krejdom avatar lspdv avatar mareksuchanek avatar messa avatar mikicz avatar mordae avatar rusinsky-pavel avatar sanqui avatar stlk avatar tomasroj avatar torsava avatar vahalova avatar vasekch avatar vojtechruz avatar zitkat avatar zoellenka avatar zuzejk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

naucse.python.cz's Issues

Proposal: Strictly separate content and templates

(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.)

Ilustrovat lekce

(přesunuto z PyLadiesCZ/pyladies#45)

K nápadu přivedl Honzu Javorka následující tweet:

screen shot 2016-02-27 at 14 11 52

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 🎨

[beginners/install] Návod na instalaci funkčního prostředí na Windows

Přesunuto z PyLadiesCZ/pyladies#23

@jirutka (2015-10-12)

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)?

@encukou (2015-10-12)

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 :)

Ugly admonitions syntax

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:)

[pyladies/solitaire] Chybky v Solitaire

(přesunuto z PyLadiesCZ/pyladies#17) (NB, Samotný solitaire ještě není v tomhle repozitáři.)

  • funkce popis_tahu se volá z nacti_tah, ale není definovaná
  • funkce priprav_tah používá proměnnou cíle místo hromadky
  • priprav_tah: zdrojovy_balicek, cilovy_balicek jsou matoucí - "balíčky" jsou jen U/V
  • Provedení tahu: " Přidá počet karet" → " Vezme počet karet"
  • zkontroluj_postupku je asi zbytečná

Elsa freeze nefunguje

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

Materiály – styl na řešení úloh

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?

Najít knihovnu na hudbu

(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?

Spolupráce a OSS

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.

Piskvorky chybí

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..)

@kvbik:

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 :)

Migrace odkazů

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.

"pythonní" vs "pythoní"

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é.

Syntax highlight

Bylo by hezké, kdyby code bloky měly syntax highlighting, jako např u MI-PYT na GitHubu.

[git] Gitový tahák – pořadí barevných obdélníků

(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.

kybel gitu

Tykání

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?

Duplication in course index pages

courses/*/index.html have some duplicate content.

  • The list of lessons should be in a common template, from which they should inherit (and which itself would inherit from _base.html).
  • The title (in {% block title %}) could be taken from courses.yml, instead of repeating it in each template.

Struktura

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).

[beginners/hello-world] Domácí projekt je příliš podrobný

Přesunuto z PyLadiesCZ/pyladies#12

@vasekch

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.

@encukou

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?

@honzajavorek

V domácích úkolech je trochu drilu, to k tomu holt patří.

Toť otázka! :-)

@encukou

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í :)

Zobrazit na webu obsah Jupyter/IPython notebooku

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.

License for the code

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):

  • Glutexo
  • asgeirrr
  • vasekch
  • honzajavorek (also deleted CNAME, which is fine)
  • zuzejk
  • lspdv
  • Aprillion
  • stlk
  • zoellenka
  • andrenvk
  • budinm1
  • petrblaho
  • baradrb
  • jirutka
  • tulinkry
  • ggljzr
  • MarekSuchanek
  • vknaisl
  • rludva

Přepis materiálů do Markdownu a stránky přes MkDocs

Co takhle na to jít trošku jednodušeji a rychleji, než se s tím zbytečně dlouho mazat (HTML aj.), tj.:

  • přepsat materiály z PyLadies do Markdownu, případně jiného formátu
  • vygenerovat stránky přes MkDocs, případně přes jiný generátor
  • klidně nechat defaultní theme

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.

Řešení k domácím projektům

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?

[begginers/dicts] Lekce o slovnících by potřebovala úkol (samostatnou práci)

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.

Ugly {{ static('...') }}

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:

static-md-pic-gh

static-md-gh

static-ipyn-gh

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 scrs, and hrefs in the form of static/... into the static() call after the conversion (or all [] and ![]targets before the conversion if that's simpler)?

DNS record

We need a CNAME record for naucse.python.cz to pyvec.github.io

Navigace v hlavičce

Navrhuji přidat do hlavičky odkaz na návrat na hlavní stranu resp. odkaz na návrat o úroveň výše.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.