Tato stránka popisuje, jak celý předmět vypadá a co od něj máte čekat.

Cvičení a přednáška

Tento předmět je zaměřen na praktické dovednosti, které lze získat pouze prací na počítači a vlastním zkoušením věcí.

K našemu (velkému) překvapení jsme zjistili, že příliš mnoho studentů není schopno číst technickou dokumentaci a samostatně se učit.

V tomto předmětu klademe velký důraz na samostudium. Nemá smysl mluvit o věcech teoreticky, když si je stejně musíte sami vyzkoušet. Každý však preferuje trochu jiné tempo při učení.

Takže je tento předmět organizován následujícím způsobem.

Přednášky jsou určeny jako další časový prostor pro konzultace. Přijďte, pokud máte nějaké otázky nebo chcete některé téma probrat podrobněji. Ale nebudou mít klasický formát přednášejícího, který mluví 90 minut s výsledkem, kdy si studenti zapamatují asi 10 % tohoto povídání.

Téměř veškerá práce bude cílena v rámci přípravného samostudia před cvičením. Poskytneme vám studijní materiály (příklady atd.), ale musíte se z nich učit sami. Materiály by měly obsahovat všechny požadované informace a spoustu příkladů a kvízů.

Takto označený text označuje informace, které nejsou zásadní pro pochopení zbytku textu, ale my je považujeme za dostatečně zajímavé/užitečné na to, abychom je zmínili.
A tenhle rámeček vás bude informovat o potenciálně nebezpečných činnostech.

Před příchodem na cvičení pak odevzdáte řešení úloh před cvičením.

Na cvičení dáme zpětnou vazbu k vašim řešením, projdeme další příklady a budeme diskutovat o tom, co jste se naučili.

Abyste své znalosti ještě více prohloubili, budete po hodině plnit úlohy, v nichž uplatníte poznatky ze cvičení.

Věříme, že tento systém je nejefektivnější pro všechny zúčastněné. Přípravu si můžete zorganizovat podle svého uvážení (někdo se radši připraví ve více 20 minutových oknech, někdo dává přednost nepřerušovanému několikahodinovému učení). Vlastní cvičení pak můžeme věnovat zajímavým tématům namísto triviálních věcí, které stejně najdete na internetu v různých návodech. A díky tomu, že úkoly odevzdáte před cvičením, můžeme se na ně během cvičení podívat a dát vám okamžitou zpětnou vazbu, čímž bychom měli zlepšit vaše znalosti, dokud máte vše ještě čerstvě v paměti.

Cvičení

Cvičení probíhají v počítačových laboratořích v IMPAKTu nebo v Rotundě. Klidně si ale přineste váš vlastní notebook. Pokusíme se vám pomoci na něj nainstalovat Linux abyste mohli studovat, experimentovat a hrát si i doma.

Nejdůležitější pravidlo je: pokud si nevíte rady, ptejte se. Doopravdy. Jsme tu abychom vám pomohli, abychom vás navedli správným směrem. Nebojte se ptát.

Účast na cvičeních není povinná: pokud se neplánujete vůbec účastnit, prosím, zapište se do virtuálního cvičení.

Pokud se bez předchozího upozornění nezúčastníte žádného z prvních cvičení, automaticky vás přesuneme na to virtuální.

Pro každé cvičení budou k dispozici učební výstupy abyste si mohli sami vyzkoušet, zda rozumíte všem důležitým částem cvičení. Ty budou vždy rozděleny do dvou skupin – znalost konceptů a praktické dovednosti. První se týká věcí, které byste měli umět vysvětlit nebo o nich hovořit (např. vysvětlit, co je to překladač). Druhé se týká věcí, které byste měli umět používat (např. vědět, jak spustit překladač).

Jak úlohy před cvičením tak i úlohy po cvičení jsou povinné i v případě, že jste zapsáni na virtuální cvičení.

Hodnocení

Hodnocení je popsané na samostatné stránce.

Úlohy

Všechny kvízy a úlohy musí být odevzdané skrz fakultní GitLab. Budete mít přístup k projektu v podstromu NSWI177 kam budete nahrávat vaše řešení.

Na řešení nahraná po termínu nebude brán zřetel.

Prosím, odpovídejte na kvízy česky, slovensky nebo anglicky.

Podrobnosti k odevzdávání budou vysvětleny na prvním cvičení.

Většina úloh budou malé programovací úkoly. Pro tyto úlohy budete od nás mít vždy sadu automatických testů která zkontroluje vaše řešení. Připravili jsme samostatná stránku, která popisuje jak číst výsledky těchto testů.

Některé úlohy budou formou kvízu, kde vyžadujeme textovou odpověď. Prosím, pište vaše odpovědi stručně, zaměřte se na důležité body. Pokud budete vybírat odpověď z připraveného seznamu, vždy si zkontrolujte, jestli je odpověď jediná nebo je více možných odpovědí.

První úlohy po cvičení budou již ze Cvičení 01, první úlohy před cvičením jsou pro Cvičení 02.

Deadline pro úlohy před cvičením jsou vždy před začátkem vašeho cvičení (dbejte prosím na to, abyste chodili na stejné cvičení, do které jste zapsáni v SISu). Deadline pro úlohy po cvičení je přibližně na 3 týdny, takže byste měli dostatek času na další dotazy, pokud budou k danému tématu potřeba.

Kontakt

Pokud se chcete na něco zeptat, nejlepší čas a místo je pochopitelně během cvičení.

Technické dotazy

Pokud máte dotaz k některému z probíraných témat nebo příkladů, otevřete prosím issue v tomto projektu na GitLabu.

Nepište e-mail přímo vašemu cvičícímu. Nebudeme na tyto e-maily reagovat.

Pokud se váš dotaz týká některé z hodnocených úloh a máte pocit, že byste sdělovali řešení, označte issue jako confidential.

Důvody pro tento přístup jsou dva. Budete alespoň více používat GitLab a navíc je to efektivní způsob jak sdílet odpovědi. Čili, nejdříve projděte existující dotazy a pak se ptejte.

Ostatní dotazy

Obecně preferujeme, pokud používáte GitLab Issues na vše, protože je to pro nás jednodušší. Označením issue jako confidential zajistí, že ji uvidí jen vyučující.

Můžete se samozřejmě ozvat i přímo svému cvičícímu, ale otevřením issue se typicky zkrátí čas na odpověď.

Pokud potřebujete poslat e-mail všem vyučujícím, e-mailový alias teachers-nswi177@d3s.mff.cuni.cz je tu pro vás.

Zvláštní případy (pozdní odevzdání apod.)

Na řešení nahraná po deadlinu nebude brán zřetel.

Zdůvodnění: pokud prošvihnete kvízy z jednoho nebo dvou týdnů, nemělo by to nijak ovlivnit celkovou známku a ušetří to všem spousty času, že se nebudeme muset domlouvat na nových termínech atd.

Ale víme, že ne vždy je možné vše dopředu naplánovat. Pokud máte pocit, že vaše situace vyžaduje speciální přístup, prosím, ozvěte se nám co nejdříve a domluvíme podrobnosti (typicky jde o situace jako dlouhodobá nemoc apod. u kterých skutečně doufáme, že nenastanou).

Buďte sví …

… a neopisujte.

Cílem tohoto předmětu je seznámit vás s Linuxem a naučit vás jak v něm efektivně pracovat. Odevzdávání řešení opsaných z Internetu tento cíl nesplní. Tohle také není týmový předmět – diskuze nad možnostmi řešení je v pořádku, odevzdání společného kódu není.

Cizí kód musí být jasně označen, použití cizího kódu bez citace (URL ale obvykle stačí) je považováno za podvod. Pokud se rozhodnete zkopírovat cizí kód, uveďte, kterou část jste zkopírovali a proč. Pokud se rozhodnete cizí kód upravit na své řešení, označte, které části jste upravovali a proč.

Pokud budete kopírovat z cizího řešení, zvažte, proč to děláte. Každá úloha po vás chce prokázat určité dovednosti, ale může taky vyžadovat extra práci, jen abyste mohli vůbec začít úlohu řešit. Pokud vám existující kód pomůže jen s tím druhým, je to v pořádku. Pokud se prokazujete dovednostmi někoho jiného (ať už skutečné osoby nebo výplodem neuronové sítě nebo něčeho podobného), tak už to v pořádku není.

Zde je drobný příklad pro úlohu, kdy máte naimplementovat program, který určí, zda je číslo zadané uživatelem prvočíslem.

Pokud zkopírujete kód z této stránky, nesplnili jste cíl úlohy: naprogramovat daný algoritmus. Budete to také znamenat okamžité nesplnění předmětu.

Pokud zkopírujete kód z této stránky a přidáte vlastní implementaci pro prvočíselnost, bude to v pořádku (pokud uvedete zdroj). Proč? Protože zkopírovaný kód přímo nesouvisí s úlohou. Úlohu jste si rozšířili (a učinili ji i více praktickou) a pořád jste dokázali, že umíte naprogramovat požadovaný algoritmus.

Pokud na kódu budete spolupracovat se spolubydlícím, pak neodevzdáváte vlastní práci.

Pokud se spolubydlícím proberete, jak tuto úlohu vyřešit a pak každý napíše vlastní implementaci, je to v pořádku.

Pokud si nejste jisti, zeptejte se.