Robert Haken
banner
haken.dev
Robert Haken
@haken.dev
Software & Cloud Architect, Founder at HAVIT, Microsoft MVP: Development Technologies. HAVIT Blazor Bootstrap maintainer.
EF Core 10 [Jiří Kanda, Vzdělávací okénko, 6.11.2025]

Záznam ze Vzdělávacího okénka HAVIT z 6. listopadu 2025. Jirka nám ukazoval, co je nového v Entity Framework Core 10, co se hodí pro naše projekty a jak nyní funguje IN operátor (Contains()) a jeho bucketizace parametrů.
EF Core 10 [Jiří Kanda, Vzdělávací okénko, 6.11.2025]
Záznam ze Vzdělávacího okénka HAVIT z 6. listopadu 2025. Jirka nám ukazoval, co je nového v Entity Framework Core 10, co se hodí pro naše projekty a jak nyní funguje IN operátor (Contains()) a jeho bucketizace parametrů.
knowledge-base.havit.cz
November 20, 2025 at 3:10 PM
NET Conf Keynote Watch Party
úterý 11. listopadu, 17:00
Microsoft Praha, Brumlovka
...a potom 🍺🥩🍺🥩🍺!
www.wug.cz/praha/akce/1...
November 10, 2025 at 9:07 AM
PDF v .NET pomocí PDFSharp/MigraDoc [T. Wagner, Z. Hlinka, Vzdělávací okénko, 2.10.2025]

Záznam ze Vzdělávacího okénka z 2. října 2025. Tomáš a Zdeněk ukazovali bezplatné knihovny pro tvorbu PDF z .NET - PDFSharp a jeho nadstavbu MigraDoc.
PDF v .NET pomocí PDFSharp/MigraDoc [T. Wagner, Z. Hlinka, Vzdělávací okénko, 2.10.2025]
Záznam ze Vzdělávacího okénka z 2. října 2025. Tomáš a Zdeněk ukazovali bezplatné knihovny pro tvorbu PDF z .NET - PDFSharp a jeho nadstavbu MigraDoc.
knowledge-base.havit.cz
October 20, 2025 at 9:25 PM
AI generování obrázků (gpt-image-1) [Gabriela Turcajová, Vzdělávací okénko, 9.10.2025]

Záznam ze Vzdělávacího okénka HAVIT z 9. října 2025, kde nám Gabriela ukazovala použití gpt-image-1` AI modelu pro generování fotek, konkrétně generování pravděpodobné podoby dítěte na základě fotek rodičů.
AI generování obrázků (gpt-image-1) [Gabriela Turcajová, Vzdělávací okénko, 9.10.2025]
Záznam ze Vzdělávacího okénka HAVIT z 9. října 2025, kde nám Gabriela ukazovala použití gpt-image-1` AI modelu pro generování fotek, konkrétně generování pravděpodobné podoby dítěte na základě fotek rodičů.
knowledge-base.havit.cz
October 13, 2025 at 10:06 PM
Vytěžování dokumentů – Azure AI Content Understanding [Robert Haken, Vzdělávací okénko 25.9.2025]

Záznam ze Vzdělávacího okénka HAVIT z 25. září 2025, kde jsem ukazoval třetí způsob AI-vytěžování dokumentů - prostřednictvím all-in-one cloudové služby Azure AI Content Understanding.
Vytěžování dokumentů – Azure AI Content Understanding [Robert Haken, Vzdělávací okénko 25.9.2025]
Záznam ze Vzdělávacího okénka HAVIT z 25. září 2025, kde jsem ukazoval třetí způsob AI-vytěžování dokumentů - prostřednictvím all-in-one cloudové služby Azure AI Content Understanding.
knowledge-base.havit.cz
October 2, 2025 at 2:21 PM
AI vytěžování dokumentů: GPT Vision [Robert Haken, Vzdělávací okénko, 11.9.2025]

Záznam ze Vzdělávacího okénka HAVIT z 11. září 2025, kde jsem ukazoval specificky techniku vytěžování s pomocí GPT-4o Vision (vstup ve formě bitmapových obrázků přímo předávaných LLM, bez mezipřistání v Markdown).
AI vytěžování dokumentů: GPT Vision [Robert Haken, Vzdělávací okénko, 11.9.2025]
Záznam ze Vzdělávacího okénka HAVIT z 11. září 2025, kde jsem ukazoval specificky techniku vytěžování s pomocí GPT-4o Vision (vstup ve formě bitmapových obrázků přímo předávaných LLM, bez mezipřistání v Markdown).
knowledge-base.havit.cz
October 2, 2025 at 2:19 PM
Novinky v .NET 9 a výhled na .NET 10 – záznam a slides [Robert Haken, WUG Days Brno 9/2025]

Záznam z přednášky pro konferenci WUG Days Brno z 5.9.2025, kde jsem telegraficky představoval novinky z ".NET 9 vlny" a pár přicházejících v ".NET 10 vlně". Slides 2025-09-05 - WUG Days Brno - Novinky .NET…
Novinky v .NET 9 a výhled na .NET 10 – záznam a slides [Robert Haken, WUG Days Brno 9/2025]
Záznam z přednášky pro konferenci WUG Days Brno z 5.9.2025, kde jsem telegraficky představoval novinky z ".NET 9 vlny" a pár přicházejících v ".NET 10 vlně". Slides 2025-09-05 - WUG Days Brno - Novinky .NET 9 a výhled .NET 10 - slidesDownload
knowledge-base.havit.cz
September 11, 2025 at 5:40 PM
AI vytěžování dokumentů s OpenAI GPT – Markdown / Vision [WUG Days Brno 09/2025]

Záznam ze přednášky pro konferenci WUG Days Brno z 4. září 2025. Ukázka dvou implementací (POC) vytěžování dokumentů pomocí moderních AI technik: Kombinace Azure Document Intelligence (s výstupem do Markdown) a LLM…
AI vytěžování dokumentů s OpenAI GPT – Markdown / Vision [WUG Days Brno 09/2025]
Záznam ze přednášky pro konferenci WUG Days Brno z 4. září 2025. Ukázka dvou implementací (POC) vytěžování dokumentů pomocí moderních AI technik: Kombinace Azure Document Intelligence (s výstupem do Markdown) a LLM (OpenAI GPT-4o) pro efektivní vytěžování netriviálních dokumentů (zde přijatých faktur i s energetickými přílohami). OpenAI GPT-4o v režimu Vision pro vytěžování údajů obrázků (fotografií zdravotních zpráv).
knowledge-base.havit.cz
September 7, 2025 at 8:29 PM
AI vytěžování dokumentů s OpenAI GPT [Vzdělávací okénko, 12.6.2025]

Záznam ze Vzdělávacího okénka HAVIT z 12. června 2025. Ukázka implementace (POC) vytěžování dokumentů pomocí moderních AI technik. Kombinace Azure Document Intelligence (s výstupem do Markdown) a LLM (OpenAI GPT-4o) pro efektivní…
AI vytěžování dokumentů s OpenAI GPT [Vzdělávací okénko, 12.6.2025]
Záznam ze Vzdělávacího okénka HAVIT z 12. června 2025. Ukázka implementace (POC) vytěžování dokumentů pomocí moderních AI technik. Kombinace Azure Document Intelligence (s výstupem do Markdown) a LLM (OpenAI GPT-4o) pro efektivní vytěžování netriviálních dokumentů (zde přijatých faktur i s energetickými přílohami).
knowledge-base.havit.cz
July 9, 2025 at 2:00 PM
Blazor performance – záznam a slides [TechEd Praha 2025]

Záznam z přednášky pro konferenci TechEd Praha 2025, kde jsem ukazoval některé zajímavé aspekty výkonnosti Blazor (WebAssembly) aplikací. Slides 2024-05-22 - TechEd Praha - Blazor performanceDownload
Blazor performance – záznam a slides [TechEd Praha 2025]
Záznam z přednášky pro konferenci TechEd Praha 2025, kde jsem ukazoval některé zajímavé aspekty výkonnosti Blazor (WebAssembly) aplikací. Slides 2024-05-22 - TechEd Praha - Blazor performanceDownload
knowledge-base.havit.cz
July 9, 2025 at 1:57 PM
Novinky v C# 12, 13 a 14 (.NET 8, 9 a 10) – záznam [TechEd Praha 2025]

Záznam z přednášky pro konferenci TechEd Praha 2025, kde jsem ukazoval novinky v C# 13 v .NET 9 (společně s hlavními novinkami z předchozí verze C# 12 v .NET 8 a ochutnávkou chystaných novinek v C# 14 v .net 10).
Novinky v C# 12, 13 a 14 (.NET 8, 9 a 10) – záznam [TechEd Praha 2025]
Záznam z přednášky pro konferenci TechEd Praha 2025, kde jsem ukazoval novinky v C# 13 v .NET 9 (společně s hlavními novinkami z předchozí verze C# 12 v .NET 8 a ochutnávkou chystaných novinek v C# 14 v .net 10).
knowledge-base.havit.cz
July 9, 2025 at 9:53 AM
FluentValidations vs Today [HAVIT Vzdělávací okénko, 5.6.2025]

Záznam ze Vzdělávacího miniokénka HAVIT z 5. června 2025, kde jsem ukazoval past FluentValidation validátorů, které se registrují do dependency-injection jako scoped-service a definice pravidel vznikají při volání konstruktoru (tj. v…
FluentValidations vs Today [HAVIT Vzdělávací okénko, 5.6.2025]
Záznam ze Vzdělávacího miniokénka HAVIT z 5. června 2025, kde jsem ukazoval past FluentValidation validátorů, které se registrují do dependency-injection jako scoped-service a definice pravidel vznikají při volání konstruktoru (tj. v Blazor WebAssembly jednou).
knowledge-base.havit.cz
June 5, 2025 at 9:48 PM
Thank you ‪@retropipes.org‬ for sponsoring us! 💕
June 1, 2025 at 11:09 PM
WASM: AggregateException_ctor_DefaultMessage (Could not resolve type with token …)

Narazili jsme po instalaci .NET 9 SDK 9.0.204 (a nepomohl ani 9.0.300) na zajímavou chybu published Blazor WebAssembly front-endů (browser console výstup, front-end nenabíhá): ManagedError:…
WASM: AggregateException_ctor_DefaultMessage (Could not resolve type with token …)
Narazili jsme po instalaci .NET 9 SDK 9.0.204 (a nepomohl ani 9.0.300) na zajímavou chybu published Blazor WebAssembly front-endů (browser console výstup, front-end nenabíhá): ManagedError: AggregateException_ctor_DefaultMessage (Could not resolve type with token 01000024 from typeref (expected class 'System.Reflection.Assembly' in assembly 'netstandard, Version=2.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51')) at an (dotnet.runtime.5nhp1wfg9b.js:3:26894) at Kt.resolve_or_reject (dotnet.runtime.5nhp1wfg9b.js:3:26449) at dotnet.runtime.5nhp1wfg9b.js:3:172714 at dotnet.runtime.5nhp1wfg9b.js:3:172778 at fr (dotnet.runtime.5nhp1wfg9b.js:3:35046) at Fc (dotnet.runtime.5nhp1wfg9b.js:3:172361) at dotnet.native.swgexbmoy7.wasm:0x1f1a4 at dotnet.native.swgexbmoy7.wasm:0x1c8ae at dotnet.native.swgexbmoy7.wasm:0xea19 at dotnet.native.swgexbmoy7.wasm:0x1ec88…
knowledge-base.havit.cz
May 28, 2025 at 11:31 AM
OpenAPI + Scalar UI [Alexandr Hájek, Vzdělávací okénko, 22.5.2025]

Záznam ze Vzdělávacího (mini)okénka HAVIT z 22. května 2025. Alex ukazoval Scalar UI jako alternativu k Swagger UI.
OpenAPI + Scalar UI [Alexandr Hájek, Vzdělávací okénko, 22.5.2025]
Záznam ze Vzdělávacího (mini)okénka HAVIT z 22. května 2025. Alex ukazoval Scalar UI jako alternativu k Swagger UI.
knowledge-base.havit.cz
May 25, 2025 at 11:26 PM
Web Accessibility a EAA [Michal Melena, Vzdělávací okénko, 15.5.2025]

Záznam Vzdělávacího okénka HAVIT z 15. května 2025, kdy nám Michal Melena povídal o Accessibility a aktuálních povinnostech webových aplikací v této oblasti.
Web Accessibility a EAA [Michal Melena, Vzdělávací okénko, 15.5.2025]
Záznam Vzdělávacího okénka HAVIT z 15. května 2025, kdy nám Michal Melena povídal o Accessibility a aktuálních povinnostech webových aplikací v této oblasti.
knowledge-base.havit.cz
May 23, 2025 at 2:02 PM
Seedy, UoW a Created v HAVIT stacku [Robert Haken, Vzdělávací okénko, 15.5.2025]

Technická změna v seedech, kde se nyní používá Unit of Work. Není potřeba explicitně nastavovat Created atribut, protože se o to postará systém. Taktéž je vhodné použít ExcludeUpdate, aby se Created hodnota…
Seedy, UoW a Created v HAVIT stacku [Robert Haken, Vzdělávací okénko, 15.5.2025]
Technická změna v seedech, kde se nyní používá Unit of Work. Není potřeba explicitně nastavovat Created atribut, protože se o to postará systém. Taktéž je vhodné použít ExcludeUpdate, aby se Created hodnota nepřepisovala.
knowledge-base.havit.cz
May 15, 2025 at 3:02 PM
Tipy a triky pro mobilní vývoj na webu [Dominik Crha, Vzdělávací okénko, 10.4.2025]

Znáte v CSS funkci clamp()? To a další triky z vývoje webů pro mobilní zařízení nám ukázal Dominik. Záznam ze Vzdělávacího okénka HAVIT z 10. dubna 2025.
Tipy a triky pro mobilní vývoj na webu [Dominik Crha, Vzdělávací okénko, 10.4.2025]
Znáte v CSS funkci clamp()? To a další triky z vývoje webů pro mobilní zařízení nám ukázal Dominik. Záznam ze Vzdělávacího okénka HAVIT z 10. dubna 2025.
knowledge-base.havit.cz
April 28, 2025 at 9:57 AM
Blazor – past cyklu for s RenderFragment [Vzdělávací okénko, 24.4.2025]

Představení problému s cyklem for v Blazoru, kde se při použití s RenderFragment může objevit poslední hodnota řídící proměnné. Je potřeba řídící proměnnou vykopírovat do lokální proměnné nebo se jí vyhnout cyklem foreach.
Blazor – past cyklu for s RenderFragment [Vzdělávací okénko, 24.4.2025]
Představení problému s cyklem for v Blazoru, kde se při použití s RenderFragment může objevit poslední hodnota řídící proměnné. Je potřeba řídící proměnnou vykopírovat do lokální proměnné nebo se jí vyhnout cyklem foreach.
knowledge-base.havit.cz
April 24, 2025 at 2:56 PM
Exception types – kdy který použít [Vzdělávací okénko, 10.4.2025]

NotImplementedException - výhradně během vývoje jako TODO NullReferenceException - nikdy nevyhrazujeme explicitně, výhradně vyhazováno runtimem NotSupportedException - explicitně indikujeme, že o use-case víme, ale není řešen…
Exception types – kdy který použít [Vzdělávací okénko, 10.4.2025]
NotImplementedException - výhradně během vývoje jako TODO NullReferenceException - nikdy nevyhrazujeme explicitně, výhradně vyhazováno runtimem NotSupportedException - explicitně indikujeme, že o use-case víme, ale není řešen InvalidOperationException - "nemělo by v produkci nastat", chyba vývoje (nesprávné volání , switch nad nečekanou hodnotou enum, …) ArgumentNullException, ArgumentOutOfRangeException - výhradně přímé argumenty (ne arg1.Property != null) ArgumentException - obecný problém s argumentem/-y (bližší specifikace v…
knowledge-base.havit.cz
April 10, 2025 at 2:07 PM
Blazor – Proč nepoužívat parametry v OnInitialized [Vzdělávací okénko, 3.4.2025]

V tomto videu se podíváme na důležitý technický detail v Blazoru, který představil – proč by se v metodě OnInitialized popř. OnInitializedAsync neměly používat parametry. Ukážeme si na příkladu konkrétního problému,…
Blazor – Proč nepoužívat parametry v OnInitialized [Vzdělávací okénko, 3.4.2025]
V tomto videu se podíváme na důležitý technický detail v Blazoru, který představil – proč by se v metodě OnInitialized popř. OnInitializedAsync neměly používat parametry. Ukážeme si na příkladu konkrétního problému, který může nastat, když komponenta nezmění instanci při změně routy a parametr zůstane se starou hodnotou. Dozvíš se: Jak funguje lifecycle metoda OnInitialized v Blazoru Proč je nevhodné používat…
knowledge-base.havit.cz
April 3, 2025 at 3:01 PM
YAML Pipelines – Azure DevOps [Jiří Kanda, Vzdělávací okénko, 27.3.2025]

V tomto videu se dozvíte vše o našich nových YAML pipelines v Azure DevOps, které prezentuje Jiří Kanda. Jirka vysvětluje, proč jsme se rozhodli přejít na YAML pipelines a jaké výhody nám to přináší. Specifika našich buildů a…
YAML Pipelines – Azure DevOps [Jiří Kanda, Vzdělávací okénko, 27.3.2025]
V tomto videu se dozvíte vše o našich nových YAML pipelines v Azure DevOps, které prezentuje Jiří Kanda. Jirka vysvětluje, proč jsme se rozhodli přejít na YAML pipelines a jaké výhody nám to přináší. Specifika našich buildů a důvody pro změnu na YAML pipelines. Výhody YAML pipelines, jako jsou lepší parametrizace a paralelizace. Základní syntaxe YAML a struktura YAML pipelines.
knowledge-base.havit.cz
March 31, 2025 at 3:17 PM
await foo?.DoAsync() [Vzdělávací okénko, 20.3.2025]

Krátce o pasti zápisu await foo?.DoAsync(), kdy použití null-conditional accessu vede na await null a NullReferenceException.
await foo?.DoAsync() [Vzdělávací okénko, 20.3.2025]
Krátce o pasti zápisu await foo?.DoAsync(), kdy použití null-conditional accessu vede na await null a NullReferenceException.
knowledge-base.havit.cz
March 31, 2025 at 3:13 PM
Blazor ValueExpression binding a validace – záznam [Vzdělávací okénko, 13.3.2025]

Tentokrát o ValueExpression parametrech v Blazoru a potřebě jejich správného použití pro fungování validací. Záznam ze Vzdělávacího okénka HAVIT z 13. března 2025. Zkoušíme zpestřit novým formátem mini-okének, kde se…
Blazor ValueExpression binding a validace – záznam [Vzdělávací okénko, 13.3.2025]
Tentokrát o ValueExpression parametrech v Blazoru a potřebě jejich správného použití pro fungování validací. Záznam ze Vzdělávacího okénka HAVIT z 13. března 2025. Zkoušíme zpestřit novým formátem mini-okének, kde se budou objevovat ad-hoc témata v řádu 2-10 minut.
knowledge-base.havit.cz
March 31, 2025 at 3:11 PM
Reposted by Robert Haken
What to know what's new for Blazor in .NET 10 Preview 2?

@DanRoth27 and Javier Calvarro Nelson have got you covered in today's #ASPNET Community Standup replay. 🎥 https://msft.it/63322qyh1i
#dotNET
March 14, 2025 at 7:21 PM