S kolegy z C++ teamu jsme se zamýšleli nad tím, jak se vypořádat s enumy, které mají mít pár funkcionalit navíc.
Kolega Zdeněk vyprávěl pro podcast Komora+ o tom, co dělá náš produkt TripGate. Jeho jádro tvoří GOL IBE D4 a GOL API. Samostatný tým pak vytváří v AWS další komponentu, která TripGate dotváři.
Co dělat, když už vývojáře nebaví vyvíjet na serveru s textovým terminálem?
Kolega Lukáš připravil krátkou prezentaci, co bychom pro sebe mohli během dne udělat, aby naše tělesné schránky tolik netrpěly extrémní povahou naší vývojářské práce (= sezením).
Vylepšování procesu celého vývojového cyklu, nebo zavádění nových nástrojů a jiných činností vycházejících například i z teorie omezení. A samozřejmě hledáním nových testerů :).
Náš QA Libor prezentoval minulý rok používání nástroje Postman pro [pro:]Test! komunitu a záznam přednášky měl největší sledovanost :)
Přejme veselé Vánoce a šťastný nový rok 2022. Ani letošní rok nebyl pro letectví jednoduchý. Přesto nezahálíme a pilně vyvíjíme naše produkty.
Pracujete vzdáleně přes OpenVPN? Jestli ano, Štěpán má pro vás malý tip na užitecnou konfiguraci.
Pro dynamickou analýzu kódu v C++ používáme Valgrind. Štěpán v následujícím článku připravil malou ukázku. Pokud Valgrind používáte, možná jste se s ní taky setkali. Pokud Valgrind nepoužíváte, můžete se aspoň podívat, s čím by vám mohl pomoci.
Pár slidů na téma Dědičnost v db modelu - dekompozice tabulek podle 3. normální formy není nutně způsobem, který používat vždy. Krátká LodTod přednáška s živou diskusí proběhla v rámci pravidelného středečního meetingu.
S narůstajícím počtem variant naší mobilní aplikace GOL Mobile bylo potřeba zautomatizovat vydávání do příslušných obchodů (Google Play a Apple App Store). Martina v následujícím článku popsala důvody, které nás vedly k volbě jednotlivých technologií a detaily celého deployment procesu, který nově začíná pushnutím do produkční větve a končí automatickým upgradem všech variant Android a iOS aplikací patřícím různým zákazníkům.
Sem tam každý z nás potřebuje převést JSON na Yaml a zpět, rozkódovat nějaký ten Base64 řetězec z logů. Takových udělátek je na internetu spousta. Ovšem v JSONu a Yamlu je typicky konfigurace aplikace, v Base64 bývají tokeny, prostě citlivá data, která by neměla nikde uniknout. My jsme paranoidní a máme i paranoidní utility, u kterých je riziko ztráty výrazně menší, protože převody se dějí pouze na straně internetového prohlížeče. Dostupné jsou na níže uvedené adrese včetně zdrojových kódu.
Postman toho umí opravdu hodně a o pár funkcionalitách vyprávěl i náš QA Libor pro [pro:]Test! komunitu.
Včera se náš QA Libor Šimo účastnil webináře o CI/CD, který pořádala společnost Tesena. Jan Egermaier popisoval, jak nastavit automatizované testy pomocí nástroje GitLab. Závěr je pozitivní: přesně tak probíhá continues integration i u nás :)
V našich zadáních často využíváme Use Case - strukturovaný postup, jak bude probíhat požadovaná akce. UC podporuje i nacházení a řešení různých nečekaných situací. Mise připravil stručný návod, na co si dát při psaní UC pozor.
Vyvíjíme rezervační systém, kterému říkame GOL. Zkratka IBE znamená Internet booking (= rezervační) engine. Rezervujeme primárně letenky. Označení D4 značí čtvrtou generaci, vyvinutou v javascriptovém frameworku Next.js, postaveném na Reactu. Z původního Flow jsme přešli na Typescript. Testujeme v Jestu a Cypressu. Aplikace má i verzi určenou pro korporátní zákazníky - TripGate a s využitím React Native i verzi mobilní.
Uvnitř GOLu se skrývá C++ jádro staré více než 10 let. Historicky podporovalo několik zdrojů letenkových a hotelových dat, rezervace aut a pojištění. Stále je v něm co zlepšovat. Při vývoji si pomáháme mockováním všech externích zdrojů dat, se kterými spolupracujeme. To nám umožňuje psát automatické testy. Nový kód píšeme v C14 a když je to potřeba, využíváme Boost.
Vyvíjíme také rezervační systém pro dodatečné služby k letenkám Trip Manager. K již zakoupené letence umožňuje dokoupit služby, jako jsou konkrétní sedadlo, check-in, dodatečná zavazadla nebo jídlo na palubě. Verze PHP je 8.0 a využíváme PHPStan. Trip Managera najdete v historii zpráv pod starším názvem Trawys.
Starší verze GOLu. Systém stále intenzivně vyvíjíme a zároveň udržujeme v provozu přes 10 let. To znamená, že v začátcích GOLu vypadal webový vývoj úplně jinak než dnes. Ale neznamená to, že bychom ho dělali celou dobu stejně. Jsme na PHP 8.0, využíváme PHPStan (na nižších levelech), testy píšeme v Codeception a PHPUnit.
Využíváme různá API z cestovního ruchu. Nejvíce používáme API k systému Galileo, které využívají i největší hráči v oboru. V ČR jsou to například Kiwi.com, StudentAgency, nebo Pelikan. Obdobné je to s API Travelfusion.