Představte si, že může existovat svět ve kterém věci opravdu fungují a lidé dělají to co je baví. Věříme, že klub Silicon Hill si zaslouží informační systém, který odpovídá jeho potenciálu. Udělali jsme co jsme mohli, udělali jsme to co jsme uměli, ale v každém případě jsme dělali něco co nás baví. Na strahově máme takové možnosti, o kterých se dalším lidem ani nezdá! Zaujalo vás to? Přijďte taky podniknout něco velkého!
Broňa se podílel zejména na koncepčním návrhu a serverové architektuře (redundance a load balancing) dále na návrhu, realizaci a optimalizaci databáze, také na importu dat ze SUPPu, implementoval DNS a DHCP a na webové aplikaci se podílel zejména v detailech, které vidí uživatelé.
Dominik je hlavním autorem a programátorem aplikace a workerů na pozadí. Vzhledem k bohatým zkušenostm s Ruby on Rails zvolil tuto platformu. Broňa bohužel v Ruby neuměl ani řádek takže byl Dominik na veškeré programování sám. Během vývoje se situace trošku posunula, nicméně autorem takřka veškeré logiky je Dominik.
Vzhledem ke komplexnímu napojení dalších složitých systémů bylo třeba i tyto aplikace udělat od začátku a načisto, Tomáš je odpovědný zejména za implementaci LDAP, RADIUS, napojení na SH Wi-Fi a Mail/SMTP servery. Vymyslel také koncepci jednotného přihlašování na servery přes LDAP, včetně správy oprávnění. A vše udělal tak jak umí nejlíp - po svém!
V době samotného vývoje ISu byl již na stáži v Norsku, avšak ještě před odjezdem pomohl zařídit testovací prostředí, a i přes velkou vzdálenost pomohl odladit a zkontroloval konfiguraci síťových prvků. Dominik a Broňa sice absolvovali Cisco Akademii, ale bylo to již před delší dobou, a tak to byl právě Bohdy, kdo jim vysvětlil co je to ta IP adresa.
Během vývoje se podílela na několika stránkách aplikace, v několika iteracích otestovala celý IS a připravovala seznam chyb k opravě. Dále připravila prezentační materiály a pomáhala s drobnými záležitostmi.
Při několiké snaze lépe integrovat systém přístupvých čteček na Strahově, provozovaný ČVUT, jsme se rozhodli, že rychlejší bude vyvinout systém vlastní. Dostat se od prototypu až k produkčnímu nasazení netrvalo déle než půl roku. Tehdy se do projektu přidal Adam, který vyvinul jak hardware tak embedded software pro čtečkový systém na platformě BeagleBone a o tento systém se stará dodnes.
Čas plynul a do týmu se přidal Vláďa, který se zájmem začal spravovat LDAP a RADIUS, byly to pro něj sice úplně nové pojmy, ale časem převzal i správu Mail serveru a také začal vyvíjet nové funkce do aplikace. Mimo jiné implementoval Tacacs server.
Již v počátcích sítě (rok 1998) vznikla jednoduchá aplikace v programu PC-Fand, která dostala název DUSPS a i přes své nedostatky vydržela až do dubna roku 2001, kdy byla vytvořena nová verze založená na SQL databázi a webovém rozhraní (Michal Leinweber, Ondřej Bezucha, Eduard Matúš a dále Zbyněk Čech a Stanislav Šmejkal). DUSPS byl tedy první na míru vytvořený systém, který se staral o evidenci členů, plateb a o konfiguraci síťe. Největšími problémy byla zastaralost, bezpečnost, prakticky žádný vývoj a komunikace se správci/autory. Během let 2010 a 2011 byl tedy vyvinut nový systém - SUPP (Martin Komoň, Martin Chloupek, Radim Roška, Petr Přikryl, firma Quanti s.r.o. a další). SUPP byl nasazen během prosince 2011 a používal se až do září roku 2012, SUPP tak nějak neměl kdo vyvíjet a vzhledem k tomu, že byl značně nedodělaný a poměrně problémový (nepoužitelné webové rozhraní, konfigurace prvků, hardwarové nároky a duplicity v databázi), nezbylo nic jiného než přijít s něčím novým - a tak vznikl IS. Od června 2012 byl IS vyvíjen v tajnosti, vědělo o něm pár lidí. Nakonec byl oficiálně představen během prázdninové schůze představenstva dne 14.8.2012 a nasazen do provozu od 1.10.2012. Prezentace ISu před odbornou veřejností proběhla na Installfestu 2013.
IS byl od začátku vyvíjen s tím, že buď budou jednotlivé části fungovat pořádně, nebo nebudou vůbec. Velká část úsilí se věnovala samotnému uživatelskému rozhraní, díky kterému by používání již nemělo být pro uživatele utrpením. Dále pro nás byla důležitá vysoká dostupnost, rychlé reakce systému a také zabezpeční a logování uživatelských akcí.
Informační systém zahrnuje správu členů klubu (uživatelů), členských příspěvků a správu sítě a síťových zařízení. Dále IS zajišťuje tyto služby:
V části aplikace, která jde vidět si nejspíš nejvíce všimnete CSS frameworku Twitter Bootstrap. Samotné webové rozhraní generuje aplikace napsaná v Ruby on Rails, která kromě webu obsahuje workery pro práci na pozadí (konfigurace prvků, exporty, komunikace s bankou, ...).
Serverový cluster je založený na nástroji Pacemaker. Hlavní linuxovou distribucí pro všechny servery byl použit Debian Wheezy.
Jako databázový server bylo vybráno PostgreSQL, zejména jakožto open source a dále pro možnosti expression indexů, snadno implementovatelného full-textového vyhledávání a také pro vidinu materialized views v následujících verzích.
Jako aplikační server byl vybrán pro jednoduchost a nízký overhead Thin. Pro realizaci webového serveru, load balancing, SSL offload a hostování assetů byl použit nginx.
Pro DNS server je použit PowerDNS Recursive Server a Authoritative Server, toto řešení má oproti vyzkoušené implementaci BINDu přímé napojení na databázi a do budoucna je snadno rozšiřitelné o DNSSEC.
DHCP zajišťuje upravená verze ISC DHCP, DHCPv6 upravená verze dhcpy6d.
Pro LDAP interface byl použit OpenDJ a pro RADIUS server freeRADIUS.
Mailové služby zajišťuje Postfix, Amavis a SpamAssasin.