Skočiť na hlavný obsah

Vráti mi to môj súbor?

Importing from FET 6 min čítania

Váš súbor .fet je termínom práce, preto pred odovzdaním akémukoľvek nástroju stojí za to položiť si jednu otázku a vykonať dvojminútový test, ktorý na ňu odpovie.

Súbor .fet nevyzerá nijako zvláštne. Pár stoviek kilobajtov XML, ktoré ležia v priečinku vedľa toho z minulého roka.

Vy však viete, čo všetko v ňom je. Tie dva augustové týždne strávené vymýšľaním toho, ako zabezpečiť, aby prírodovedný blok nemohol hostiť dve praktické cvičenia naraz. Ten kompromis s vedúcim jazykovej sekcie, ktorý si vyžiadal tri rozhovory. Tých jedenásť obmedzení, ktoré ste pridávali jedno po druhom, vždy po tom, čo sa niečo pokazilo a vy ste to už nikdy nechceli zažiť.

Nič z toho nie je napísané nikde inde. Existuje to ako obmedzenia v danom súbore, a ak sa stratí, nestrácate len dokument — strácate logiku celého procesu a v septembri zistíte, že váš rozvrh nedáva zmysel.

Keď vám teda webový nástroj ponúkne, že ho otvorí, otázkou nie je, či je tento nástroj užitočný. Otázkou je: vráti mi môj súbor v pôvodnom stave?

Prečo je odpoveď zvyčajne "nie tak celkom"

Väčšina nástrojov, ktoré čítajú súbor .fet, to robí tým najjednoduchším spôsobom. Niekto si preštuduje formát, napíše kód pre časti, ktoré potrebuje — Učitelia, Predmety, Miestnosti, aktivity, bežné obmedzenia — a vydá aplikáciu.

Funguje to, ale zlyháva to potichu. FET má rozsiahlu slovnú zásobu obmedzení a s každým vydaním rastie. Čokoľvek, čo autor nástroja neimplementoval, sa jednoducho nenačíta, a keď sa súbor uloží späť, to, čo sa nikdy nenačítalo, sa ani neuloží. Súbor sa stále otvorí. Je stále platný. Len mu chýbajú tie tri obmedzenia, na ktorých vám záležalo najviac, a nikde sa o tom nepíše.

To je zlyhanie, proti ktorému sa oplatí navrhnúť ochranu, pretože je neviditeľné presne v momente, kedy by ste ho chceli odhaliť.

Čo robíme inak

FET Explorer sa nesnaží pochopiť každé obmedzenie. Snaží sa, aby to ani nepotreboval.

Keď sa súbor načíta, každé obmedzenie v ňom sa uloží pod svojím vlastným názvom, pričom jeho obsah zostane nezmenený — bez ohľadu na to, či táto aplikácia vie, čo dané obmedzenie znamená. Keď si súbor stiahnete, každé z nich sa zapíše späť pod rovnakým názvom, s rovnakým obsahom a v rovnakom poradí.

Neexistuje žiadny zoznam podporovaných typov obmedzení, pretože nie je čo podporovať. Typ obmedzenia predstavený vo verzii FET, o ktorej sme nikdy nepočuli, prejde systémom nedotknutý, z rovnakého dôvodu, prečo slovo, ktoré nepoznáte, prežije ručné prepísanie.

V rozvrhoch, ktoré máme dnes v našom vlastnom korpuse, je to 2 987 obmedzení naprieč 20 rôznymi typmi, ktoré prešli celým procesom bez toho, aby boli v exportnom kóde akýmikoľvek špeciálnymi prípadmi.

Váhy sa vrátia ako váhy. Obmedzenie nastavené na 80 % je stále 80 % — nie je zaokrúhlené, nie je prepočítané, nie je povýšené na "zapnuté". Neaktívne obmedzenie sa vráti ako neaktívne. Vaše komentáre sa vrátia.

Súbor je pred získaním skontrolovaný

Existuje jedna vec, kvôli ktorej vás prerušíme.

Súbor .fet, ktorý FET odmietne otvoriť, je horší ako žiadny súbor: zistíte to až na konci, bez akéhokoľvek náznaku, ktorý z niekoľkých tisíc záznamov je chybný. Preto je súbor pred odovzdaním zostavený a skontrolovaný.

Riadok na stiahnutie s podtitulkom o kontrole pod ním
Riadok na stiahnutie s podtitulkom o kontrole pod ním

Ak chýba niečo skutočne potrebné — aktivita bez Predmetu, vyučovacia hodina priradená Učiteľovi, ktorý nie je v zozname učiteľov — dozviete sa to, pričom budú menované konkrétne záznamy. Veci, ktoré možno bezpečne nastaviť na predvolené hodnoty, sa tak nastavia a nikdy sa nestanú vaším problémom.

Ak je súbor platný, ale vyzerá neúplne, dostanete upozornenie a tlačidlo Stiahnuť napriek tomu. Je to rada, nie prekážka.

A ak kontrola samotná zlyhá, sťahovanie jednoducho pokračuje. Kontrola, ktorá nevytvorila žiadny výsledok, nie je dôvodom, aby sme stáli medzi vami a vaším súborom.

Neberte nás za slovo — venujte tomu dve minúty

Toto je časť, ktorú sa skutočne oplatí urobiť, pretože nestojí takmer nič a natrvalo vyrieši túto otázku.

  1. Nahrajte svoj súbor .fet.
  2. Stiahnite si ho hneď späť, bez akýchkoľvek zmien.
  3. Porovnajte oba súbory.
Nástroj na kontrolu cyklu hlási všetko zelené: to, čo bolo exportované, sa zhoduje s tým, čo bolo importované.
Nástroj na kontrolu cyklu hlási všetko zelené: to, čo bolo exportované, sa zhoduje s tým, čo bolo importované.

Mali by sa líšiť iba vo formátovaní — odsadenie, medzery v atribútoch, poradie niekoľkých voliteľných polí — a v ničom inom. Rovnaké aktivity, rovnaké obmedzenia, rovnaké váhy, rovnaké komentáre.

Ak sa tieto dva súbory líšia v obsahu, je to chyba a chceme o nej vedieť. Nie je to niečo, čo by ste mali obchádzať, a nie je to niečo, čo by ste mali objaviť až v septembri.

Jedna čestná výnimka

Ak bol váš rozvrh vytvorený z tabuliek a nie zo súboru .fet, existuje drobnosť, ktorú je dobré vedieť. Riadky CSV neobsahujú identifikátory aktivít FET a obmedzenia umiestnenia potrebujú stabilné ID, aby mohli odkazovať na jednotlivé vyučovacie hodiny.

Namiesto odmietnutia tieto identifikátory pri vytváraní súboru priradíme — a uložíme ich, aby sa nemenili. Druhé stiahnutie sa zhoduje s prvým. Môžete vytvoriť rozvrh z tabuliek a stále získať koherentný súbor .fet na druhej strane.

Čo toto nie je

FET Explorer negeneruje rozvrhy. Neoptimalizuje, neprepočítava ani nevylepšuje to, čo FET vytvoril. FET robí tú ťažkú prácu; toto aplikácia výsledok číta, prezentuje, zdieľa a umožňuje jeho úpravu.

A práve preto je dôležitý tento cyklus. Nástroj, ktorý vám rozvrh iba ukazuje, si môže dovoliť rozumieť len polovici súboru. Nástroj, v ktorom môžete vykonávať úpravy, musí vrátiť všetko v pôvodnom stave.

Vyskúšajte to s vlastným súborom →