Dne 23.10.2010 jsem vyrazil na Den s vývojáři Seznam.cz v Brně Na cestě jsem se již nemohl dočkat až dojedu do Brna. Vlak byl značně nepohodlný, ale co bych neudělal pro to, abych se více dozvěděl pro sebe i pro vás co nejvíce informací ze zákulisí Seznam a.s..
Po příjezdu jsem se účastnil přednášky kterou vedl Tomáš Pergner s názvem Scrum & popis vzniku nové služby. ○ Fáze projektu: 1) Návrh … může podat jakýkoliv zaměstnanec … o tom co se bude realizovat rozhoduje řídící komise 2) Strategie 3) Analýza … nápadu … nákladů … lidí 4) Realizace 5) Ukončení … Projekt je vyhodnocen, poté se z projektu získá poučení pro příště Projekt je posuzován: Vvelký mlýn (řídící komise) - schvaluje návrhy
Střední mlýn - dohlíží na stav projektů - má na starosti meziprojektový vliv Cíl vs. Přínosy
Cíl - stav do kterého se snaží projekt přenést
Přínosy - finance - uživatelé
Náklady - cena projektu? … náklady by se měli vyvážit ziskem Přehled priorit k nákladům: Kvalita - klíč k úspěchu
Čas - musí mít termín
Náklady - málokdy jsou hlavní osou
Snaha o řízení - agilemanifesto.org Většinou se projekt mění po cestě a proto je zapotřebí mít priority a informovaný (propojený) vývojový tým, proto vývojáři pracují synchronizovaně. ○ Agilní manifest spolupráce je důležitější, než vyjednáváni o smlouvě se zákazníkem → v seznamu neplatí ○ SCRUM v Seznamu SCRUM v Seznamu koncem roku 2008 se začal rozvíjet SCRUM v seznamu, díky nově přijatému pracovníkovi. Lidem v seznamu vysvětlil v jednodenní prezentaci SCRUM a již to začalo. Museli vysvětlit, že SCRUM má smysl, certifikace SCRUM MASTRŮ proběhla u seznamu a přineslo se do seznamu spousta nových nápadů → začíná se šířit SCRUM po celém seznamu a vzniká skupina lidi pro SCRUM, od roku 2011 bude ve SCRUMU tak zvané „SCRUM 2.01“ neboli upravená verze SCRUMU seznamem pro seznam, SCRUM je vpodstatě blog ○ Body říření pro vývojáře seznamu jsou: 1) Radši fungující software než dokumentace. ○ SCRUM - interaktivní způsob vývoje softwaru - není zkratkou i když se píše většinou velkými písmeny ○ SCRUM - Sprint produkt backlog → sprint backlog → sprint → fungující část Sprinty jsou malé kousky projektu na nichž se pracuje zhruba 2 až 3 týdny. Lidi ve SCRUMU: scrum master
product owner
- není součastí týmu - reprezentuje zákazníka - má dohled nad projektem (u seznamu) (dohlíží, že tým dokáže to k - vysvětluje co a jak se má čemu se zavázal) vyvíjet
tým - klíčoví lidé, kteří vyvíjejí - programátoři, webmastři a další
○ SPRINT - BACKLOG Určuje co se musí vytvořit ve sprintu. skládá se z USER STORY 1) priroita 2) odhad v bodech 3) definice finále ○ SCRUM MEETINGY 1) co vyrobime 2) jak vyrobit 3) jak si stojime (koná se denně, probírá se co se za 24 následlujicich hodin bude dělat a kdo to bude dělat) 4) ukázka 5) co jde, co zlepšit U seznamu se 1 a 2 se často slučují. Pokud má programátor problém a nedaří se mu ho vyřešit, pošle ho SCRUM MASTEROVI. ○ Tabule SCRUMU obsahuje sloupce s položkami: co se má udělat, co se dělá, co je hotové, časový graf, neplanované, co dál. ○ SCRUM KOLOBĚH MUSÍ ► MĚLI ► TŘEŠNIČKY NA DORTU ► KONEC ▼ KONEC Když nejsou finance nebo podpora, či něco jiného, tak se projekt končí na měli. Když je možné pokračovat, tak až za „třešničkou“. Slovníček & přehled dalších pojmů: VELOCITY – zkušenost s předchozími sprinty RETROSPEKTIVA - Co jde dobře. Co šlo. Co může jít líp. ○ CO SCRUM PŘINESL - přinesl informovanost ve firmě ○ Práce na dálku & Spolupráce mezi centry - Seznam má celkem má tři vývojové centra. - Komunikace mezi centry probíhá přes videokonference. □ Dotaz: zákazníky jste vy sami, termin není důležitý? - termíny jsou důležité, stejně jak náklady. □ Dotaz: používá se planning poker? - ano
Poté následovala přednáška Lukáše Greba s názvem Hlavní stránka Seznamu a její obsah. Úvodní slovo „Život není jen hledání“ - Lukáš Greba. ○ Hlavní stránka Seznamu je jedna defakto RSS čtečka => Homepage vygneruje denně 31 milionů stránek => dvě servrovny pro homepage pracují na co nejvyšší možné duplicitě ○ Šetření výpočtové kapacity: – C++ – VLASTNI KNIHOVNY – VICEUROVNOVE CACHOVANI – NoSQL databaze – BINARNI KOMUNIKACE – MEZI KOMPONENTY – PERSONALIZACE HOMEPAGE … každý si může přizpůsobit vzhed či obsah svým potřebám ○ Homepage prochází: → razantni změny, evolučně → A, B testování → Výkonnostní testování ○ Programovaci jazyky: C++ , Python, Java □ Můj dotaz: jak se dostat do katalogu pro RSS? RSS pro ostatní uživatele se vybírají za pomoci globálních statistik.
Poté následovala přednáška Štěpána Škroba s názvem Fulltext. – Zálohování -primární .. ještě jedna servrovna zálohuje se servrovna … robot má 21 MySQL servru s jednou tabulkou dohromady, kde jsou údaje o URL …. když se rozpadne - katastrofa a proto je záloha jinde úplně stejná taky 21 (zrcadlení) … chystá se nový robot pro ukládání stránek do klastrů zhruba 30 servrů - indexace 2 000 stránek za sekundu … větsina se zákazem robotů ani nevi, že to tam má (zapomene po aktualizaci, atd.) … objem dat při reindexaci … denně 20 000 000 stránek – druhý den ve fullu … připravovaný 2 000 stránek za sekundu … vyhledavani v zahranici … sloučení svět a cr do jednoho … pokles návštěvnosti zmenšený podil na českém internetu? … top list → prakticky nejisté (nevime co čísla znamenaji) … s robotem nesouvisí, protože není kompletni – zářijový update „asi ne“ …. BEZ KOMENTÁŘE …. … master tool seznamu → plánuje se … jiné nástroje >> informace …. ověření indexace pro veřejnost
Poté následovala přednáška Leoše Póla s názvem Používanné technologie v Seznamu. Seznam má dva server housy, které nejsou v budově seznamu. ○ Schéma server housu: GO (H) DNS NG (H) ○ Teng - šablonovací systém open-source ○ Metaserver … Automatické vkládáni headeru ○ Databáze - PostgreSQL - MySQL ○ Databáze Super master ► Master ▼ ▼ ▼ ▼ slave slave slave slave ○ FastRPC – open.source, protokol pro vzdálené volání ○ NoSQL … Memcached, Redis ○ Fulltext search Energy … Sphinx ○ Hadoop … našeptávač
Poté následovala přednáška Dušana Janovského & Jiřího Materny s názvem Fultex a výzkum. ○ Oprava výrazů … viz. fejsbook na facebook ○ Nástroj AIKA → lematizace ○ Synonymie … viz. zubař → stomatolog … překládal – jazyk = tlumočil písek = tlumočil X neshodné ! … laterní sématická analýza > ○ Kontextové cílení reklamy … Sklik → výbírání reklam, které jsou vhodné pro daný web … slova na stránce se nadají použít, musí se z nich použít jen část za pomoci lexikální metody ○ lexikální metody
… kategorie → → věty 600 stránek byl základ … cílem klíčových slov (+ návrhy pro inzerenty) ← ← pro inzerenty
○ Distribuované výpočty → hadoop Poté následovala přednáška Michala Feixe s názvem informace o provozu. ○ Operativa – nasazování – udržování služeb
○ Inovace – snižování nákladů – reakce na technologie a o bchodní změny ○ Zajímavá čísla 1100 serverů 1900 instalovaných operačních systémů virtualizace Open VZ přes 70% 95% Linux … pak Solaris, Windows (nejméně) Administrace – skriptové SSH děleni servrů mezi centry je 60:40 99,9% dostupnost – tedy asi 8 hodin ročně jsou výpadky 110 milionů operaci za vteřinu ze 4 serverů 4,5 miliardy vygenerovaných stránek za měsic
○ Nasazení – rollout – INSTALAČNÍ POŽADAVEK ZASLÁN SKRZE REQUEST TRACKER open-source – Požadavek je struktorován tak, aby administrátorovi umožnil vyznat se – podle služby je směrován požadavek ○ Monitoring podle rolloutu - ověřit monitoring a opravit - upravit na wiki, když vzniká nový monitoring → je pro operátory ○ Postup oprav: operátor při opravě → podiva se do wikiny → opravuje → když se oprava povede běží, když ne volá aminidtrátora - reakčni doba operátora není u všech služeb stejná, řadi se dle významu - po době, která je daná službě, je nutné kontaktovat administrátora, pokud není oprava funkční – operátor používá spíš in-house nástroje (nejsou tolik technicky zdatní) – ○ Statistiky: za první pololeti 2010 byla dostupnost 99,94 Seznam komunikuje – Jabber,telefon,videokonference mezi zaměstnanci □ Dotaz: monitorovaný? … interní – zevnitř (spolehlivost 50%) … mimo síť – (zbývajících 50%) … helpDESK – (dalších 50%) … softwarer MOON, Nagios, Syux □ Dotaz: upravené programy jdou ven?? … většinou ne … tým není veliký, má moc práce a proto není moc propracovaný … letos něco půjde ven, už půl roku se na tom pracuje
Poté následovala přednáška Luboše Starého s názvem Odborné služby ○ pilíře seznamu FOBR
SMOB
IRES, SRCH, OGEN ○ společné rysy - pilíře seznamu db ← backend …
← user web ← admin web ← import
podrobnější popis nemám přednášející mluvil potichu a já seděl poměrně vzadu ○ vzník a rozvoj služeb Produktový Manažer ▲ ▲ ▼ ▼ obchod ◄► vývoj + Optimálně produktový manažer – uspokojit uživatele obchod – vydelat zákazníky vyvoj – vyhotovit funkčni verzi služby ○ co čeka Seznam za práci? – – – –
Sjednoceni hledáni jednotná technologie synergie služeb efektivnějšípodpora podnikáni v ČR
Závěr repotáž na vyvojari.seznam.cz Můj závěr Na seznam den s vývojáři Seznam.cz mi přestal fungovat foťák, proto je tu fotka z webky a nemám fotky prednášejicich. Je to smůla.