Czasem tak bywa…
Fonte: Programmer’s Life
Hope you are having a lovely Columbus Day weekend!

Hope you are having a lovely Columbus Day weekend!
#leaves #fall #autumn #MIT
Co prawda zdjęcie nie było robione z B1. B1 jest tyko tłem dla pięknie wyrównanego placu na którym kiedyś stałą…

Co prawda zdjęcie nie było robione z B1. B1 jest tyko tłem dla pięknie wyrównanego placu na którym kiedyś stałą stołówka. Spécialité de la maison (w czasach gdy tam jadałem) był kotlet schabowy „delta Diraca” (mięsko tak rozklepane, że nieskończenie cienkie). Ale wygodna była, bo znajdowała się na terenie kampusu.
Z drugiej strony, oddawała spore ilości ścieków do kanalizacji, które ledwo to obsługiwała. Budynek B1 potrafił nie tylko pięknie śmierdzieć, ale trujące opary powodowały korozję wszystkiego. Po każdym ataku smrodu nasz ówczesny serwer (OpenDesktop SCO na komputerze 386) cierpiał z tego powodu. I trzeba było raz na tydzień lub dwa ruszyć wszystkimi kartami, a czasami nawet wzruszyć kości cache (były w podstawkach na płycie) bo nie działało. A w czasach jeszcze wcześniejszych obecne w laboratorium maszyny (Odra 1325 czy SM4) musiały być poddawana podobnej konserwacji: spirytus, pędzelek i gumka do czyszczenia wszystkich możliwych styków.
Później, później miejsce stało się kultowe, gdyż działała tam giełda komputerowa. Stać trzeba było w kolejce żeby tam wejść. To były czasy. Później stołówka zaczęła popadać w ruinę. I, w końcu, dokonał się jej los.
Listy obecności (w LATEXu)
Listy obecmości
Byliśmy niegrzeczni i nas pokarało. Jak już pisałem obecnosć na wykłądach dla studentów pierwszego roku jest obowiązkowa. Na całe szczęście mam ich (tym razem) niewiele. Jeżeli obecność jest obowiązkowa — trzeba przygotować sobie listę obecności. Można, co prawda, w systemie Edukacja wygenerować listę obecnosci, ale:
-
po pierwsze jest generowana bardzo „rzadko” (to znaczy zajmuje dużo miejsca);
-
pdf generowany przez system Edukacja jest, po prostu, ułomny: literki włażą na siebie, trudno cokolwiek odczytać.
Na całę szczęście, można z systemu dostać listę studentów w formacie CSV. Wykorzystam go do wygenerowania listy obecności
Potrzebne będą nam następujące pakiety:
Oraz standardowe (polski ze względu na polskie litery i inputenc ze względu na kodowanie znaków).
Najciekawszym z pakietów jest pakiet datatool pozwala on czytać dane z plików csv, i robić różne rzeczy z polami każdego rekordu. Dokumentacja jest bardzo obszerna i gwarantuję, ze zapoznanie się z nią daje ogromne szanse na zwrot z inwestycji.
Przeambułą dokumentu wyglądać będzie tak:
|
1 2 3 4 5 6 7 |
\documentclass{article} \usepackage[T1]{polski} \usepackage[cp1250]{inputenc} \usepackage{datatool} \usepackage{xstring} \usepackage[a4paper,landscape,scale=0.95]{geometry} \usepackage{longtable} |
Użyłem kodowania cp1250, bo plik csv jest tak zakodowany. Zakładam, że w pliku źródłowym nie pojawią się już inne znaki z rozszerzonego zestawu ASCII (Linux standardowo wszystko koduje jako utf8 i mógłby to być jakiś problem, edytor TeXworks pozwala zdefiniować używane w pliku kodowanie i problemu nie będzie. Inne edytory nie muszą mieć tej sympatycznej właściwości.)
Lista będzie drukowana na kartkach a4, poziomo (landscape) maksymalnie wykorzystując (scale=0.95) powierzchnię kartki.
Pakiet longtable użyty jest żeby wygenerować wielostronicową tabelkę.
Dalsza część dokumentu:
|
1 2 3 4 5 6 |
\begin{document} \DTLsetseparator{;} \DTLloaddb[noheader, keys={Lp,Album,Nazwisko,Imie}, omitlines=11] {lista}{listaSluchaczy_K00-33f.csv} |
Pierwsze polecenie \DTLseparator definiuje średnik jako znak oddzielający kolumny (to jest taki polski wariant przecinka z CSV). drugie otwiera bazę danych zapisaną w pliku (listaSluchaczy_K00-33f.csv) i nazywa ją „lista”. Zakładamy, że plik nie ma nagłówka — będziemy pomijali wszystkie informacje organizacyjne (policzyłem, jest ich jedenaście linii) zawarte w pliku razem z obecnym tam nagłówkiem). Nadajemy własne nazwy poszczególnym polom: Lp, Album, Nazwisko, Imię (i tylko z nich będziemy korzystali). Pozostałe kolumny zignorujemy.
Teraz wystarczy zbudować tablicę longtable. Wygląda to jakoś tak (jest rozliczona na osiem zajęć plus uwagi)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
\noindent \begin{longtable}{|r|r|l|l|l|l|l|l|l|l|l|l|l|l|} \multicolumn{13}{c}{MTR, sroda TN 9:15}\\ \hline \multicolumn{1}{|l|}{Lp.} & \multicolumn{1}{l|}{Nr albumu} & Nazwisko & Imiona & \multicolumn{1}{r|}{1} & \multicolumn{1}{r|}{2} & \multicolumn{1}{r|}{3} & \multicolumn{1}{r|}{4} & \multicolumn{1}{r|}{5} & \multicolumn{1}{r|}{6} & \multicolumn{1}{r|}{7} & \multicolumn{1}{r|}{8} & Uwagi \\ \hline \endhead |
Powyższy nagłówek będzie powtarzany na każdej stronie.
A teraz magia, czyli pakiet datatool w działaniu:
|
1 2 3 4 |
\DTLforeach{lista}{\Lp=Lp,\Nazwisko=Nazwisko,\Imie=Imie,\Album=Album}{ \Lp& \StrGobbleLeft{\Album}{4} & \Nazwisko & \Imie & & & & & & & & & \\ \hline } |
Dla każdego rekordu doczytujemy wartość czterech pól w takiej kolejności w jakiej są w pliku i przypisujemy ich zawartość do poleceń (\Lp, \Nazwisko,…) i budujemy kolejny wiersz tabelki wstawiając odpowiednią wartość w odpowiednią kolumnę.
Teraz pozostaje zakończyć tabelkę i dokument:
|
1 2 3 4 5 6 7 8 9 10 11 |
& & & & \rule{7.5mm}{0pt} & \rule{7.5mm}{0pt} & \rule{7.5mm}{0pt} & \rule{7.5mm}{0pt} & \rule{7.5mm}{0pt} & \rule{7.5mm}{0pt} & \rule{7.5mm}{0pt} & \rule{7.5mm}{0pt} & \\ \hline \end{longtable} \end{document} |
Na samym końcu tabeli dodałem dodatkowy wiersz (może być ich więcej, dane w systemie edukacja na początku roku nie są kompletne). W każdej komórce umieściłem obiekt o wymiarach 0pt wysokości i 7,5mm szerokości — zadba on o to, żeby było wystarczająco dużo miejsca na podpisy. Szerokość trzeba dobrać doświadczalnie, żeby wszystko mieściło się na stronie.
I tyle. Happy TeXing|
Jak odejmować przez dodawanie…
…czyli arytmetyka komputerów:
Obowiązkowa obecność na wykładach
Ponoć, zgodnie z nowym Regulaminem Studiów, który ma obowiązywać od 1. października 2015 dla wszystkich studentów pierwszego roku obecność na wszystkich zajęciach ma być obowiązkowa. Otrzymany komunikat jest dosyć lakoniczny:
W imieniu Dziekana informujemy o planowanych zmianach w regulaminie studiów, które mają wejść pod koniec września 2015r. Jedną z istotnych zmian jest zmiana w paragrafie 13 „Uczestnictwo w kursach” punkt 6: „Zajęcia dla studentów pierwszego roku studiów pierwszego stopnia, w tym i wykłady są obowiązkowe”.
OK. Grupa wykładowa na Technologiach Informacyjnych to zazwyczaj \(100 \div 150\) osób co daje od 36 do 54 sekund na znalezienie swojego nazwiska, podpis i przekazanie listy dalej. Dowiedziałem się, że jedna z moich grup będzie miała około 300 osób, a to już problem:
\begin{equation}
\frac{90 \times 60}{300}=18
\end{equation}
Zatem nie jest możliwe rozwiązanie tego problemu za pomocą jednej listy obecności. Będą musiały być dwie (a nawet raczej trzy). Osobiście nie wyobrażam sobie innego niż symboliczne egzekwowania tego przepisu. Nie jest to racjonalne.
(Ilustracja za East Los Angeles College CampusNews: Cartoon by Kien Ha.)
Dziedziniec wewnętrzny Budynku A1 Politechnika Wrocławska

Dziedziniec wewnętrzny Budynku A1 Politechnika Wrocławska
Drogi Google Polska czy ktoś mi powie jak to wrzucić w tam gdzie będzie mogło być oglądane publicznie (mapy?)
Wychodzi na to, że ruszyły prace zwiazane z budową bulwar u nad Odrą.
Wychodzi na to, że ruszyły prace zwiazane z budową bulwar u nad Odrą.


No więc u nas Kongres Górniczy. Jest orkiestra dęta i Górnicza, podjeżdżają limuzyny z generałami (Patrz, patrz!…
No więc u nas Kongres Górniczy. Jest orkiestra dęta i Górnicza, podjeżdżają limuzyny z generałami (Patrz, patrz! Czym przyjechał ten z KGHM! No, przyjechał elegancką limuzyną, wysiadając włożył szamerowany złotem mundur. Mnie zadziwili to, że limuzyna wyposażona była w CB-radio, co sugeruje, że żadnych innych przywilejów generał nie posiada.)
Do niektórych naszych górników mam bardzo wiele szacunku. Mamy taką Panią Profesor, w hierarchii górniczej bardzo wysoko i do tego z głową i (wybaczcie mi kolokwialność niegodną damy — również z innymi przymiotami niezbędnymi u każdego krasnoluda górnika). Zaimponowała mi na jednym zebraniu dotyczącym Informatyzacji uczelni. Twierdziła, że się na tym nie zna, ale w formułowaniu postulatów była najbardziej konkretna.
Nie wiem ile w tym prawdy, ale dopuszczalna jest (choć nie wiem ile w tym prawdy) do karczm piwnych. I opowiada tam takie dowcipy, że…


Powrót do pracy zawsze bywa uciążliwy. Ale na kampusie jest cisza i spokój. Odwiedziłem więc #kasztanjadalny a tam…

Powrót do pracy zawsze bywa uciążliwy. Ale na kampusie jest cisza i spokój. Odwiedziłem więc #kasztanjadalny a tam jakieś deliryczne szkodniki żerują. Ale kasztanów sporo — może nie wszystkie zeżrą.
cc: Jacek Mońko