OpenChaos.dev je 'samovolně se vyvíjející open source projekt' s nedefinovaným cílem. Každý týden mohou lidé hlasovat o návrzích (pull requestech), přičemž vítězný návrh se integruje do kódu projektu (repozitář na GitHubu). Hlasováním je možné změnit téměř vše, včetně tohoto pravidla. Hlasování končí vždy v neděli v 9:00 UTC.
Byl vydán Debian 13.3, tj. třetí opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.13, tj. třináctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
Na stránkách Evropské komise, na portálu Podělte se o svůj názor, se lze do 3. února podělit o názor k iniciativě Evropské otevřené digitální ekosystémy řešící přístup EU k otevřenému softwaru.
Společnost Kagi stojící za stejnojmenným placeným vyhledávačem vydala (𝕏) alfa verzi linuxové verze (flatpak) svého proprietárního webového prohlížeče Orion.
Firma Bose se po tlaku uživatelů rozhodla, že otevře API svých chytrých reproduktorů SoundTouch, což umožní pokračovat v jejich používání i po plánovaném ukončení podpory v letošním roce. Pro ovládání také bude stále možné využívat oficiální aplikaci, ale už pouze lokálně bez cloudových služeb. Dokumentace API dostupná zde (soubor PDF).
Jiří Eischmann se v příspěvku na svém blogu rozepsal o open source AdGuard Home jako domácí ochraně nejen před reklamou. Adguard Home není plnohodnotným DNS resolverem, funguje jako DNS forwarder s možností filtrování. To znamená, že když přijme DNS dotaz, sám na něj neodpoví, ale přepošle ho na vybraný DNS server a odpovědi zpracovává a filtruje dle nastavených pravidel a následně posílá zpět klientům. Dá se tedy používat k blokování reklamy a škodlivých stránek a k rodičovské kontrole na úrovni DNS.
AI Claude Code od Anthropicu lépe rozumí frameworku Nette, tj. open source frameworku pro tvorbu webových aplikací v PHP. David Grudl napsal plugin Nette pro Claude Code.
Byla vydána prosincová aktualizace aneb nová verze 1.108 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.108 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Na lasvegaském veletrhu elektroniky CES byl předveden prototyp notebooku chlazeného pomocí plazmových aktuátorů (DBD). Ačkoliv se nejedná o první nápad svého druhu, nepochybně to je první ukázka praktického použití tohoto způsobu chlazení v běžné elektronice. Co činí plazmové chladící akční členy technologickou výzvou je především vysoká produkce jedovatého ozonu, tu se prý podařilo firmě YPlasma zredukovat dielektrickou
… více »Patchouli je open source implementace EMR grafického tabletu (polohovací zařízení). Projekt je hostován na GitLabu.
JavaScript používáme nejen v HTML5 webovém klientu, ale i na serveru prostřednictvím node.js. V kombinaci jazyků C a Perl je napsán klíčový ROLAP server a také unikátní a inovativní datové úložiště EventStore. V Javě zase ETL komponenty, které propojují naši platformu s partnerskými aplikacemi a jiným zdroji dat. O exekuci a rovnoměrné rozložení výpočetních, transformačních i jiných úkolů v clusteru se pak stará middleware v Erlangu, jazyku s přirozenou podporou pro vytváření škálovatelných aplikací, a platfomě OTP (Open Telecom Platform), která poskytuje bohatou knihovnu funkcí pro psaní robustních distibuovaných aplikací.
Na členy QA týmu klade takové vysoce heterogenní prostředí mnohdy větší nároky než na vývojáře, kteří se většinou drží víceméně na "svém písečku", tedy v prostředí svého oblíbeného programovacího jazyka. QA engineer musí jednotlivé komponenty a jejich interakce vidět v širších souvislostech a dohlédnout důsledky nových a nových funkcionalit začleňovaných během času do systému. QA engineer sice nemusí být expertem na tu kterou konkrétní technologii, ale zároveň musí disponovat jakýmsi obecným přehledem o jejích principech, specifikách a vhodnosti jejího použití v té které situaci. Z druhé strany lze ovšem říci, že tato komplexnost je i největším pozitivem takové práce. Možnost osahat si zblízka tak široké spektrum moderních technologií a odhalovat úskalí a potenciální problémy jejich vzájemné integrace je velikou výzvou a dobrodružstvím.
Kvalita kódu a vývojem dodávané funkcionality je kontrolována na mnoha úrovních. Testy řízený vývoj a kontinuální integrace jsou v GoodData samozřejmostí, takže vývojáři standardně pokrývají svůj kód unit testy a komponentovými testy. Úkolem infrastrukturní části QA oddělení je pak efektivní exekuce tisíců takových testů v Hudsonu, serveru pro kontinuální integraci, a zajištění včasného varování. Kromě těchto nízkoúrovňových testů máme k dispozici ještě další indikátory a nástroje k detekci problémů. Například data-driven testy chroupající neustále desítky gigabajtů dat a u tisíců reálných reportů a dashboardů porovnávající vypočtená čísla pro předchozí a novou verzi produktu. A samostatnou kapitolu tvoří takzvané REST testy, což jsou integrační testy, které pokrývají de facto všechny komponenty platformy kromě webového klienta. Ten komunikuje se serverem výhradně prostřednictvím RESTových API, takže každý případ užití, každou funkcionalitu, kterou GoodData nabízí, lze reprezentovat jako sekvenci HTTP požadavků. Od loginu přes vytvoření projektu, nalití dat až po konfiguraci a spočítání reportu.
Velkou QA výzvou zůstává automatické testování webového klienta. Jelikož je napsán kompletně v JavaScriptu, je možné sice řadu aspektů prověřit na úrovni unit testů a je také možné také jednotlivé UI komponenty separátně instanciovat v browseru, ovšem automatizované testy na akceptační úrovni jsou vzhledem k dynamičnosti a všudypřítomné asynchronicitě (AJAX) velkým oříškem. Nelze říci, že bychom nezaznamenali na tomto poli alespoň částečné úspěchy, ale robustní a flexibilní framework pro tento typ testů je jeden z úkolů, který v GoodData chceme a budeme řešit v blízké budoucnosti.
I když věříme v automatizaci, je jasné, že bez manuálního testování se zejména v rychle se měnícím webovém uživatelském rozhraní neobejdeme. V této oblasti hraje v GoodData hlavní roli testovací tým našeho kontraktora z vietnamského Ho Či Minova města, firmy LHV, která má s outsourcovaným testováním bohaté zkušenosti, včetně spolupráce s několika českými společnostmi. Říká se, že off-shoring nemá kromě ceny žádnou jinou výhodu. Jenže outsourcovat QA do Vietnamu je jako outsourcovat běžecký tým do Keni: pracovitost, pečlivost, disciplína a smysl pro detail jsou v QA vlastnostmi nejcennějšími a naši asijští kolegové jimi disponují od přírody. V agilním prostředí GoodData se pak i šestihodinový (v létě pětihodinový - ve Vietnamu není letní čas) časový rozdíl stává výhodou: když přijdeme v Praze do práce, máme k dispozici výsledky testů a JIRA je plná ještě teplých defektů, z nichž mnohé jsou během dne opraveny. A poslední odpolední, automatickými testy prověřený build je večer nasazen na testovací prostředí, které je ráno vietnamského času připraveno na verifikaci a další testovací scénáře. Klíčová je samozřejmě komunikace: primitivní představa o off-shoringu, že pošlete e-mail se specifikací na jiný kontinent a zpátky se vám vrátí dokonalý produkt je scestná. Kromě časové bariéry je tu i bariéra jazyková a také možná ta největší: kulturní. Intenzivní komunikací a každodenním přenosem znalostí lze však všechny tyto obtíže překonat a zajistit spolupráci, která je ekonomicky výhodná nejen na první pohled, ale je efektivní, vzájemně inspirativní a nevede k oboustranné frustraci tak časté, jak tomu bývá při pokusech o realizaci tohoto konceptu.
QA v GoodData nejenže bedlivě sleduje práci vývojářů, ale také jim poskytuje nástroje k tomu, aby mohli rychle otestovat své výtvory. Produkční cluster GoodData platformy čítá v současné době téměř 70 linuxových serverů většinou dedikovaných specifickému úkolu, ale pro testovací účely jsme schopni desítky běžících služeb a komponent směstnat na jeden stroj se 7,5 GB paměti a čtyřmi procesory (v terminologii Amazon EC2 m1.large). Nástroj, který takovou tzv. personální instanci (PI) je schopen nastartovat v Amazon Elastic Cloudu, nainstalovat na ní potřebný software a zároveň ji na různých úrovních (REST API, UI,...) otestovat, pochází právě z dílny GoodData QA. Vývojář má během krátké doby k dispozici úplně nový, čistý stroj nainstalovaný z vlastní gitové větve a vše, včetně deployment skriptů, na něm může otestovat. Když je hotov, může stroj vypnout a "zahodit". Odpadají tak problémy typické pro sdílená testovací prostředí, kde je každá část rozbita zásahy jednoho developera a dlouhé hodiny jsou vyplýtvány na údržbu a zjišťováním příčin záhadných selhání.
GoodData dodává svým zákazníkům novou funkcionalitu každé dva týdny a QA manager zastává současně i roli release managera, který plánuje a koordinuje celé období stabilizace a určuje, které defekty je nutno opravit okamžitě, a které mohou počkat na následující "Bug-fixing Day" (koná se jednou za vývojový cyklus a vývojáři ho tráví spravováním problémů s nižší prioritou a "čištěním" bug trackeru). Pozice QA v GoodData je tradičně velmi silná a je v její pravomoci odložit release v případě problémů, které by mohly ovlivnit našeho zákazníka. Zároveň je třeba říci, že vývojáři v GoodData si důležitost kvality uvědomují a vztah obou oddělení je tak rovnocenně partnerský.
Každý release s sebou samozřejmě přináší nějaký ten stres, ale na druhou stranu, když se vše povede, můžete ještě tentýž den čekat zpětnou vazbu od zákazníků. Ve staromódním produktovém vývoji bývá vývojový cyklus půl roku i více, přičemž po vydání nové verze ještě nějakou dobu trvá než se dostane k zákazníkovi. U softwaru jako služby na zákaznické ohlasy čekat nemusíte: o případných problémech se dozvíte hned a můžete začít plánovat okamžité i dlouhodobější kroky nutné k nápravě a vylepšení kvality. Na druhou stranu, když problémy nejsou a zákaznické reakce jsou pozitivní, následuje ihned po lehce adrenalinovém releasu zasloužená radost a uspokojení z dobře vykonané práce.
Lubomír Zrnečko
QA Manager
GoodData
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
efektivní exekuce tisíců takových testů v Hudsonu
vas nejvyssi je poradcem v Cloudbees a vy pouzivate Hudson?? Zajimave
Jinak bych ocenil spis podrobnejsi popis, v cem jake testy pisete, co pouzivate, jake zajimave problemy jste resili (napr. tak, jak je popsan onen nastorj na tzv. personální instanci (PI) na me pusobi dojmem, ze tohle jde naklikat v Hudson/Jenkins pomerne jednoduse a nemusi se na to delat zadny novy nastoj - ve skutecnosti to ale hadam asi tak jednoduche neni) atd.
Testy řízený vývoj a kontinuální integrace jsou v GoodData samozřejmostíTo mám radost, že to aspoň někdo tak vidí
Este, ze jich tam maj tolik na vyber