<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Stefan Zils on Arc &amp; Digital</title><link>https://www.zils-kaisersesch.de/tags/stefan-zils/</link><description>Recent content in Stefan Zils on Arc &amp; Digital</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sun, 07 Dec 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://www.zils-kaisersesch.de/tags/stefan-zils/index.xml" rel="self" type="application/rss+xml"/><item><title>Learning Organizations</title><link>https://www.zils-kaisersesch.de/post/learning-organizations/</link><pubDate>Sun, 07 Dec 2025 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/learning-organizations/</guid><description>Book recommendation: a concise review of Uwe Vigenschow&amp;rsquo;s &amp;lsquo;Lernende Organisationen&amp;rsquo; highlighting practical takeaways for organisational learning.</description></item><item><title>Eltz Valley</title><link>https://www.zils-kaisersesch.de/post/eltz-valley-medieval-castles-hiking/</link><pubDate>Wed, 03 Dec 2025 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/eltz-valley-medieval-castles-hiking/</guid><description>Discover the medieval castles of Eltz Valley on award-winning Traumpfade hiking trails. Start at Pyrmont Waterfall and explore Burg Eltz and Burg Pyrmont.</description></item><item><title>Key Insights from the Microsoft AI Tour 2025</title><link>https://www.zils-kaisersesch.de/post/2025-11-10-microsoft-ai-tour/</link><pubDate>Mon, 10 Nov 2025 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/2025-11-10-microsoft-ai-tour/</guid><description>&lt;p&gt;I had the opportunity to participate in the Microsoft AI Tour, and it was exciting to see firsthand the experiences shared from real-life projects, particularly the Zava demo project.&lt;/p&gt;
&lt;figure class="center-image"&gt;
 &lt;a href="https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour.webp" data-size="803x1072"&gt;
 &lt;picture&gt;
 &lt;source srcset="https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour-400w.avif 400w,
 https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour-600w.avif 600w,
 https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour.avif 803w,
 https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour@2x.avif 1606w"
 type="image/avif"
 sizes="(max-width: 480px) 400px, (max-width: 768px) 600px, 803px"&gt;
 &lt;source srcset="https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour-400w.webp 400w,
 https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour-600w.webp 600w,
 https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour.webp 803w,
 https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour@2x.webp 1606w"
 type="image/webp"
 sizes="(max-width: 480px) 400px, (max-width: 768px) 600px, 803px"&gt;
 &lt;img src="https://www.zils-kaisersesch.de/images/2025-11-10-microsoft-ai-tour.webp"
 alt="Microsoft AI Tour, Frankfurt"
 width="803"
 height="1072"
 loading="eager"
 fetchpriority="high"
 decoding="async"
 sizes="(max-width: 480px) 400px, (max-width: 768px) 600px, 803px"&gt;
 &lt;/picture&gt;
 &lt;/a&gt;
 &lt;figcaption&gt;Microsoft AI Tour, Frankfurt&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;Here are my key &lt;strong&gt;takeaways&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;AI will accelerate development and streamline business workflows. It can enhance software quality and security, but it&amp;rsquo;s crucial to remember that a human must always be involved in the process and make the final quality checks.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Topics such as &lt;em&gt;AI governance&lt;/em&gt;, &lt;em&gt;AI security&lt;/em&gt;, and &lt;em&gt;data loss prevention (DLP)&lt;/em&gt; will be critical in creating productive environments for all organizations, including small and mid-sized companies.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Maintaining high data quality is essential for effective data processing. Data lakes comprise multiple data sources. To transform each data source into &lt;em&gt;data meshes&lt;/em&gt; or &lt;em&gt;data products&lt;/em&gt; is increasingly important. This encompasses areas such as &lt;em&gt;event streaming&lt;/em&gt; and &lt;em&gt;data engineering&lt;/em&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In my experience, every organization or team navigates a learning curve when they begin to adopt new approaches and tools in software development. I&amp;rsquo;ve noticed that while low-code solutions can lead to impressive early progress, it&amp;rsquo;s crucial to be aware that a prototype or proof of concept does not meet the criteria for a functional system according to European and German regulations. &lt;strong&gt;T-shaped&lt;/strong&gt; experts will be essential in navigating this AI landscape effectively.&lt;/p&gt;</description></item><item><title>Lighthouse Score 100</title><link>https://www.zils-kaisersesch.de/post/2025-10-09-performance-optimization/</link><pubDate>Thu, 09 Oct 2025 00:00:00 +0200</pubDate><guid>https://www.zils-kaisersesch.de/post/2025-10-09-performance-optimization/</guid><description>&lt;p&gt;This summer, I embarked on a journey to revise the layout of my blog. An update to my Hugo theme customization led to a significant increase in the complexity of the CSS structure. As a result, I faced layout breaks and received disappointing scores on Google&amp;rsquo;s PageSpeed Insights. Today, I proudly celebrate my achievement: my personal blog now boasts a perfect score of 100 points in both mobile and desktop categories. Determined to make a change, I gradually refactored my site to improve its &lt;a href="https://developer.chrome.com/docs/lighthouse"&gt;Lighthouse score&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;One of the most valuable lessons I learned is that optimizing website performance strengthens both security and architecture &lt;a href="https://developer.chrome.com/docs/lighthouse/best-practices/doctype"&gt;Lighthouse - Best Pratices&lt;/a&gt;. Throughout the optimization process, Software Architecture in Stream shared a truly inspiring &lt;a href="https://www.youtube.com/watch?v=ObT05w23oB8"&gt;Web Performance&lt;/a&gt; session.&lt;/p&gt;
&lt;div class="performance-gallery"&gt;
 &lt;div class="performance-gallery__grid"&gt;
 &lt;figure class="performance-gallery__item"&gt;
 &lt;div class="no-photoswipe performance-gallery__media"&gt;
 &lt;img class="performance-gallery__img" src="https://www.zils-kaisersesch.de/images/2025-10-09-performance-mobile.webp" alt="Lighthouse Performance Score 100 for Mobile" loading="lazy" decoding="async" width="400" height="300" /&gt;
 &lt;/div&gt;
 &lt;figcaption class="performance-gallery__caption"&gt;Performance (Mobile)&lt;/figcaption&gt;
 &lt;/figure&gt;

 &lt;figure class="performance-gallery__item"&gt;
 &lt;div class="no-photoswipe performance-gallery__media"&gt;
 &lt;img class="performance-gallery__img" src="https://www.zils-kaisersesch.de/images/2025-10-09-performance-desktop.webp" alt="Lighthouse Performance Score 100 for Desktop" loading="lazy" decoding="async" width="600" height="400" /&gt;
 &lt;/div&gt;
 &lt;figcaption class="performance-gallery__caption"&gt;Performance (Desktop)&lt;/figcaption&gt;
 &lt;/figure&gt;
 &lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Blockchain: A Trusted Database for Systems Boundaries</title><link>https://www.zils-kaisersesch.de/post/2020-01-15-blockchain-a-trusted-database/</link><pubDate>Wed, 15 Jan 2020 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/2020-01-15-blockchain-a-trusted-database/</guid><description>Software Architecture analysis of blockchain technology for enterprise systems. Business analysis perspective on DLT implementation by Stefan Zils, Eifel42.dev</description></item><item><title>Arc42 by Example</title><link>https://www.zils-kaisersesch.de/post/2020-02-02-arc42-by-example/</link><pubDate>Sun, 02 Feb 2020 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/2020-02-02-arc42-by-example/</guid><description>Arc42 software architecture documentation framework review by Stefan Zils, Software Architect at Eifel42.dev. Essential for enterprise architecture and requirements analysis.</description></item><item><title>Star Notary Services Arc42</title><link>https://www.zils-kaisersesch.de/post/2020-01-15-star-notary-services-arc42/</link><pubDate>Wed, 15 Jan 2020 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/2020-01-15-star-notary-services-arc42/</guid><description>Star Notary Service allows you to create stars with coordinates in the Ethereum Blockchain to save. Arc42 (DE) documentation.</description></item><item><title>Organic Oil Manufacturer</title><link>https://www.zils-kaisersesch.de/post/2020-01-10-organic-oil-manufacturer/</link><pubDate>Fri, 10 Jan 2020 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/2020-01-10-organic-oil-manufacturer/</guid><description>Ethereum Dapp example. It illustrates the supply chain from the farmer to the customer as a smart contract.</description></item><item><title>Data in Motion Day 2024</title><link>https://www.zils-kaisersesch.de/post/2024-11-06-data-in-motion-tour-2024/</link><pubDate>Wed, 06 Nov 2024 22:50:55 +0200</pubDate><guid>https://www.zils-kaisersesch.de/post/2024-11-06-data-in-motion-tour-2024/</guid><description>&lt;p&gt;I had the opportunity to participate in &lt;strong&gt;Data in Motion Day 2024&lt;/strong&gt; in Frankfurt, analyzing stream processing from a &lt;strong&gt;business analysis&lt;/strong&gt; and &lt;strong&gt;enterprise architecture&lt;/strong&gt; perspective.&lt;/p&gt;
&lt;p&gt;One of my primary takeaways is that &lt;strong&gt;stream processing&lt;/strong&gt; extends beyond mere software frameworks and data management. It encourages a more profound comprehension of &lt;strong&gt;business operations&lt;/strong&gt; and their specific domains. This understanding is essential for &lt;strong&gt;requirements analysis&lt;/strong&gt; and leveraging data in real-time to drive strategic decision-making.&lt;/p&gt;
&lt;figure class="center-image"&gt;
 &lt;a href="https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion.webp" data-size="600x680"&gt;
 &lt;picture&gt;
 &lt;source srcset="https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion-400w.avif 400w,
 https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion-600w.avif 600w,
 https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion.avif 600w,
 https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion@2x.avif 1200w"
 type="image/avif"
 sizes="(max-width: 480px) 400px, 600px"&gt;
 &lt;source srcset="https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion-400w.webp 400w,
 https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion-600w.webp 600w,
 https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion.webp 600w,
 https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion@2x.webp 1200w"
 type="image/webp"
 sizes="(max-width: 480px) 400px, 600px"&gt;
 &lt;img src="https://www.zils-kaisersesch.de/images/2024-11-06-data-in-motion.webp"
 alt="Data in Motion 2024, Ticket"
 width="600"
 height="680"
 loading="eager"
 fetchpriority="high"
 decoding="async"
 sizes="(max-width: 480px) 400px, 600px"&gt;
 &lt;/picture&gt;
 &lt;/a&gt;
 &lt;figcaption&gt;Data in Motion 2024, Ticket&lt;/figcaption&gt;
&lt;/figure&gt;</description></item><item><title>Agile Increment</title><link>https://www.zils-kaisersesch.de/post/2024-10-20-agile-increment/</link><pubDate>Sun, 20 Oct 2024 11:50:55 +0200</pubDate><guid>https://www.zils-kaisersesch.de/post/2024-10-20-agile-increment/</guid><description>&lt;h2 id="what-is-an-increment---a-business-analysis-perspective"&gt;What is an increment? - A Business Analysis Perspective&lt;/h2&gt;
&lt;p&gt;Agile methods are standard in software development and are expected to produce results. The &lt;strong&gt;Scrum guide&lt;/strong&gt; defines these results as increments.&lt;/p&gt;
&lt;p&gt;A manager in the software industry highlighted that her organization utilizes agile methods. However, she is interested in documenting the workshop outcomes rather than just engaging in agile discussions. This reflects a common &lt;strong&gt;requirements analysis&lt;/strong&gt; challenge in &lt;strong&gt;agile transformation&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="what-is-an-increment"&gt;What is an increment?&lt;/h2&gt;
&lt;p&gt;Agile methods are standard in software development and are expected to produce results. The Scrum guide defines these results as increments. Scrum is an agile and lightweight framework. A manager in the software industry highlighted that her organization utilizes agile methods. However, she is interested in documenting the workshop outcomes rather than just engaging in agile discussions.&lt;/p&gt;
&lt;p&gt;I believe that embracing agile methods is about generating business value across all aspects of the business.&lt;/p&gt;
&lt;h2 id="scrum-guide"&gt;Scrum Guide&lt;/h2&gt;
&lt;p&gt;The Scrum Guide 2020 describes the term of the Increment:&lt;/p&gt;
&lt;h3 id="increment"&gt;Increment&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;An Increment is a concrete stepping stone toward the Product Goal. Each Increment is additive to all prior Increments and thoroughly verified, ensuring that all Increments work together. To provide value, the Increment must be usable.
Multiple Increments may be created within a Sprint. The sum of the Increments is presented at the Sprint Review thus supporting empiricism. However, an Increment may be delivered to stakeholders prior to the end of the Sprint. The Sprint Review should never be considered a gate to releasing value.
Work cannot be considered part of an Increment unless it meets the Definition of Done (&lt;a href="https://scrumguides.org/scrum-guide.html#increment"&gt;Scrum Guide#increment&lt;/a&gt;).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="conclusion"&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Sprint strives to create something of value that aligns with the organization&amp;rsquo;s or product&amp;rsquo;s mission.&lt;/p&gt;
&lt;p&gt;Incorporating agile methods into other areas of knowledge work is an idea worth considering. When using agile methods, it&amp;rsquo;s important to note that they do not prohibit the creation of diagrams. The primary focus is on ensuring that the outcome is valuable and aligns with the overall mission. In traditional finance, business value is often measured in terms of profits and cost contribution. However, German drugstore DM has introduced a concept called &amp;ldquo;valuation accounting or value-development accounting (Wertbildungsrechnung)&amp;rdquo;, which takes into account a broader range of factors than just profit maximization. This approach has the potential to lead to more sustainable and resilient business models in the medium and long term (&lt;a href="https://next-u.de/2018/10/31/nutzen-statt-gewinnmaximierung-mit-der-wertbildungsrechnung/"&gt;Next-U Werbildungsrechnung&lt;/a&gt;).&lt;/p&gt;</description></item><item><title>Forgotten Knowledge</title><link>https://www.zils-kaisersesch.de/post/2024-08-01-documentation-cathedral/</link><pubDate>Thu, 01 Aug 2024 20:21:43 +0100</pubDate><guid>https://www.zils-kaisersesch.de/post/2024-08-01-documentation-cathedral/</guid><description>Software architecture documentation importance analyzed through historical perspective. Business analysis of knowledge preservation by Stefan Zils.</description></item><item><title>GDPR Compliance Pipeline</title><link>https://www.zils-kaisersesch.de/post/2024-05-25-gdpr-pipeline/</link><pubDate>Sat, 25 May 2024 20:16:42 +0100</pubDate><guid>https://www.zils-kaisersesch.de/post/2024-05-25-gdpr-pipeline/</guid><description>&lt;p&gt;In January, I mentioned that the European Union offers a &lt;a href="https://www.zils-kaisersesch.de/post/2024-01-13-eu-gdpr-tool/" title="free compliance checker"&gt;free GDPR compliance checker&lt;/a&gt;. As an &lt;strong&gt;business analyst&lt;/strong&gt; , I analyze how &lt;strong&gt;business process automation&lt;/strong&gt; can streamline &lt;strong&gt;compliance requirements analysis&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Small and medium-sized businesses can benefit greatly from using their websites as digital business cards. For example, I enjoy receiving feedback and knowing that people appreciate my posts. Actively tracking website visitors is too time-consuming for me. There are other marketing activities that are more target-oriented.&lt;/p&gt;
&lt;p&gt;When the EU introduced laws about cookie banners, I found it daunting to comply. However, I realized it was a chance to rethink my marketing strategies and ensure user privacy. This shift empowered me to understand that I do not have to track every visitor to be successful.&lt;/p&gt;
&lt;p&gt;Hugo does not create cookies by default. I will ensure that future updates only create cookies with my permission. Web design is not my main focus. As a hands-on architect, I need to stay updated on the latest techniques. Even open-source software can change key quality features over time, so I will verify cookie compliance after each deployment.&lt;/p&gt;
&lt;h3 id="github-actions-job"&gt;GitHub Actions Job&lt;/h3&gt;
&lt;p&gt;Since I only write a limited number of posts or articles per quarter, I do not have to consider the execution times.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The GitHub action includes:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Installing the latest version of the Website Evidence Collector.&lt;/li&gt;
&lt;li&gt;Running the tool.&lt;/li&gt;
&lt;li&gt;Storing the result on GitHub for ten days.&lt;/li&gt;
&lt;li&gt;Terminate the job if one or more cookies are discovered. The GitHub platform automatically triggers error notifications.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="github-job-collect-evidence"&gt;GitHub Job collect-evidence&lt;/h4&gt;
&lt;div class="gh-codeblock"&gt;
 &lt;div class="gh-codeblock-header"&gt;
 &lt;span class="gh-codeblock-lang"&gt;YAML&lt;/span&gt;
 &lt;button class="gh-copy-btn"&gt;
 &lt;svg class="gh-icon gh-icon-copy" viewBox="0 0 16 16" width="16" height="16" fill="currentColor"&gt;
 &lt;path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"&gt;&lt;/path&gt;
 &lt;path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"&gt;&lt;/path&gt;
 &lt;/svg&gt;
 &lt;svg class="gh-icon gh-icon-check" viewBox="0 0 16 16" width="16" height="16" fill="currentColor"&gt;
 &lt;path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.75.75 0 0 1 1.06-1.06L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"&gt;&lt;/path&gt;
 &lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
 &lt;div class="gh-codeblock-body"&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;span class="lnt"&gt;23
&lt;/span&gt;&lt;span class="lnt"&gt;24
&lt;/span&gt;&lt;span class="lnt"&gt;25
&lt;/span&gt;&lt;span class="lnt"&gt;26
&lt;/span&gt;&lt;span class="lnt"&gt;27
&lt;/span&gt;&lt;span class="lnt"&gt;28
&lt;/span&gt;&lt;span class="lnt"&gt;29
&lt;/span&gt;&lt;span class="lnt"&gt;30
&lt;/span&gt;&lt;span class="lnt"&gt;31
&lt;/span&gt;&lt;span class="lnt"&gt;32
&lt;/span&gt;&lt;span class="lnt"&gt;33
&lt;/span&gt;&lt;span class="lnt"&gt;34
&lt;/span&gt;&lt;span class="lnt"&gt;35
&lt;/span&gt;&lt;span class="lnt"&gt;36
&lt;/span&gt;&lt;span class="lnt"&gt;37
&lt;/span&gt;&lt;span class="lnt"&gt;38
&lt;/span&gt;&lt;span class="lnt"&gt;39
&lt;/span&gt;&lt;span class="lnt"&gt;40
&lt;/span&gt;&lt;span class="lnt"&gt;41
&lt;/span&gt;&lt;span class="lnt"&gt;42
&lt;/span&gt;&lt;span class="lnt"&gt;43
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;collect-evidence&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;runs-on&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;ubuntu-latest&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;needs&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;deploy.....&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;steps&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Install jq&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;run&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; sudo apt-get install jq
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; sudo wget https://github.com/mikefarah/yq/releases/download/v4.6.1/yq_linux_amd64 -O /usr/bin/yq &amp;amp;&amp;amp; sudo chmod +x /usr/bin/yq&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Setup Node.js&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;uses&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;actions/setup-node@v4&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;with&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;node-version&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;18&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Install Cypress&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;run&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;npm install cypress&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Install Website Evidence Collector&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;run&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;npm install --global https://github.com/EU-EDPS/website-evidence-collector/tarball/latest&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Collect evidence from websites&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;collect-eifel42&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;run&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; website-evidence-collector -y -q --no-output https://www.eifel42.dev/ &amp;gt; eifel42.yaml
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; yq e -j eifel42.yaml &amp;gt; eifel42.json&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Upload evidence&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;uses&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;actions/upload-artifact@v4.3.3&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;with&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;evidence&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;path&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; eifel42.yaml &lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Check cookies eifel42&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;run&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; isEmpty=$(jq &amp;#39;.cookies | length == 0&amp;#39; eifel42.json)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; if [ &amp;#34;$isEmpty&amp;#34; = &amp;#34;true&amp;#34; ]; then
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; echo &amp;#34;Cookies array is empty&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; else
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; echo &amp;#34;Cookies array is not empty&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; exit -1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; fi&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id="links"&gt;Links&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.zils-kaisersesch.de/docs/2024-05-25-eifel42.yaml"&gt;Example of website-evidence-collector output&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Part I-GenAI (Oswald Ungers)</title><link>https://www.zils-kaisersesch.de/post/2023-12-27-part-i-oswald-ungers-generative-ai/</link><pubDate>Wed, 27 Dec 2023 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/2023-12-27-part-i-oswald-ungers-generative-ai/</guid><description>&lt;h3 id="use-case"&gt;Use Case&lt;/h3&gt;
&lt;p&gt;Where are you from? We hear this question often, every day. I usually answer the question with the close cities of Koblenz (Rhine), the Roman city of Trier or the Nürburgring, the vulcano lakes (Maare), the picturesque castles or places in the Eifel and the Moselle (e.g., Eltz Castle, Beilstein, Cochem, Monreal, etc.).&lt;/p&gt;
&lt;p&gt;As a software architect, I refer to Oswald Ungers, an architect born in my hometown, Kaisersesch. Oswald Ungers influences modern architecture. Known buildings are the Alfred-Wegener-Institut in Kiel and the Messe Torhaus in Frankfurt.&lt;/p&gt;
&lt;p&gt;Oswald Ungers is known a little; he is suitable as a test for generative AI. I asked Microsoft Copilot, ChatGPT 3.5, and Google Bard to create a blog.&lt;/p&gt;
&lt;h3 id="test-question"&gt;Test Question&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;Please write a blog about Oswald Ungers and the influences from his hometown. Consider his influences on modern architecture and his professorships.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="chatgpt-35"&gt;ChatGPT 3.5&lt;/h3&gt;
&lt;p&gt;Oswald Mathias Ungers, an icon in modern architecture, was profoundly shaped by the influences of his hometown and his academic roles. Born in Kaisersesch, Germany, in 1926, Ungers&amp;rsquo; architectural journey was a fusion of his formative experiences in Kaisersesch and the profound impact of his academic tenures. Let&amp;rsquo;s explore the symbiotic relationship between Ungers&amp;rsquo; hometown influences, his contributions to modern architecture, and his influential roles as an educator.&lt;/p&gt;
&lt;h4 id="kaisersesch-a-crucible-of-inspiration"&gt;Kaisersesch: A Crucible of Inspiration&lt;/h4&gt;
&lt;h5 id="cultural-heritage-and-architectural-context"&gt;Cultural Heritage and Architectural Context:&lt;/h5&gt;
&lt;p&gt;Kaisersesch, nestled in the idyllic Rhineland-Palatinate, served as an early architectural canvas for Ungers. The town&amp;rsquo;s heritage, steeped in historical architecture and regional aesthetics, likely instilled in him an appreciation for context, form, and structure. The timber-framed houses and the picturesque landscapes might have laid the groundwork for his design sensibilities.&lt;/p&gt;
&lt;h5 id="natures-influence"&gt;Nature&amp;rsquo;s Influence:&lt;/h5&gt;
&lt;p&gt;The serene landscapes of the Eifel region, with their rolling hills and verdant panoramas, possibly fostered Ungers&amp;rsquo; deep connection between architecture and the natural environment. This communion between built structures and the surrounding landscape became a recurring theme in his designs.&lt;/p&gt;</description></item><item><title>Microservices Basics</title><link>https://www.zils-kaisersesch.de/post/2021-10-12-microservices-basics/</link><pubDate>Tue, 12 Oct 2021 00:00:00 +0000</pubDate><guid>https://www.zils-kaisersesch.de/post/2021-10-12-microservices-basics/</guid><description>Microservices architecture basics guide by Stefan Zils, Software Architect. Enterprise architecture patterns for scalable business applications.</description></item></channel></rss>