PageSourceSearch

https://dirkriehle.com/about/

html dirkriehle.com collected 2026-10-02 04:39:09 UTC 182,344 bytes, 802 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en-US">
3<head>
4	<meta charset="UTF-8" />
5	<meta name="viewport" content="width=device-width, initial-scale=1" />
6<meta name='robots' content='max-image-preview:large' />
7<!-- Jetpack Site Verification Tags -->
8<meta name="google-site-verification" content="z5ea3j8b-SpDJ2TbXTETFTODYUpqnKyrJb2naxwsPF4">
9<title>About &#8211; Dirk Riehle&#039;s Industry and Research Publications</title>
10<link rel='dns-prefetch' href='//www.googletagmanager.com' />
11<link rel='dns-prefetch' href='//jetpack.wordpress.com' />
12<link rel='dns-prefetch' href='//s0.wp.com' />
13<link rel='dns-prefetch' href='//public-api.wordpress.com' />
14<link rel='dns-prefetch' href='//secure.gravatar.com' />
15<link rel='dns-prefetch' href='//widgets.wp.com' />
16<link rel='preconnect' href='//c0.wp.com' />
17<link rel="alternate" type="application/rss+xml" title="Dirk Riehle&#039;s Industry and Research Publications &raquo; Feed" href="https://dirkriehle.com/feed/" />
18<link rel="alternate" type="application/rss+xml" title="Dirk Riehle&#039;s Industry and Research Publications &raquo; Comments Feed" href="https://dirkriehle.com/comments/feed/" />
19<link rel="alternate" type="application/rss+xml" title="Dirk Riehle&#039;s Industry and Research Publications &raquo; About Comments Feed" href="https://dirkriehle.com/about/feed/" />
20<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://dirkriehle.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fdirkriehle.com%2Fabout%2F" />
21<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://dirkriehle.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fdirkriehle.com%2Fabout%2F&#038;format=xml" />
22<style id="wp-img-auto-sizes-contain-inline-css">
23img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
24/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
25</style>
26<link rel='stylesheet' id='jetpack_related-posts-css' href='https://c0.wp.com/p/jetpack/16.2/modules/related-posts/related-posts.css' media='all' />
27<style id="wp-block-site-title-inline-css">
28.wp-block-site-title{box-sizing:border-box}.wp-block-site-title :where(a){color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-decoration:inherit}
29/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/site-title/style.min.css */
30</style>
31<style id="wp-block-image-inline-css">
32.wp-block-image>a,.wp-block-image>figure>a{display:inline-block}.wp-block-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom}@media not (prefers-reduced-motion){.wp-block-image img.hide{visibility:hidden}.wp-block-image img.show{animation:show-content-image .4s}}.wp-block-image[style*=border-radius] img,.wp-block-image[style*=border-radius]>a{border-radius:inherit}.wp-block-image.has-custom-border img{box-sizing:border-box}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull>a,.wp-block-image.alignwide>a{width:100%}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption,.wp-block-image.aligncenter>figcaption,.wp-block-image.alignleft>figcaption,.wp-block-image.alignright>figcaption{caption-side:bottom;display:table-caption}.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-image.is-style-circle-mask img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius:9999px}.wp-block-image figure{margin:0}.wp-lightbox-container{display:flex;flex-direction:column;position:relative}.wp-lightbox-container img{cursor:zoom-in}.wp-lightbox-container img:hover+button{opacity:1}.wp-lightbox-container button{align-items:center;backdrop-filter:blur(16px) saturate(180%);background-color:rgba(90,90,90,.25);border:none;border-radius:4px;cursor:zoom-in;display:flex;height:20px;justify-content:center;opacity:0;padding:0;position:absolute;right:16px;text-align:center;top:16px;width:20px;z-index:100}@media not (prefers-reduced-motion){.wp-lightbox-container button{transition:opacity .2s ease}}.wp-lightbox-container button:focus-visible{outline:3px auto rgba(90,90,90,.25);outline:3px auto -webkit-focus-ring-color;outline-offset:3px}.wp-lightbox-container button:hover{cursor:pointer;opacity:1}.wp-lightbox-container button:focus{opacity:1}.wp-lightbox-container button:focus,.wp-lightbox-container button:hover,.wp-lightbox-container button:not(:hover):not(:active):not(.has-background){background-color:rgba(90,90,90,.25);border:none}.wp-lightbox-overlay{box-sizing:border-box;
32cursor:zoom-out;height:100vh;left:0;overflow:hidden;position:fixed;top:0;visibility:hidden;width:100%;z-index:100000}.wp-lightbox-overlay .wp-lightbox-close-button{align-items:center;cursor:pointer;display:flex;font-family:inherit;gap:8px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 4px;position:absolute;right:calc(env(safe-area-inset-right) + 16px);top:calc(env(safe-area-inset-top) + 16px);z-index:5000000}.wp-lightbox-overlay .wp-lightbox-close-button:focus,.wp-lightbox-overlay .wp-lightbox-close-button:hover,.wp-lightbox-overlay .wp-lightbox-close-button:not(:hover):not(:active):not(.has-background){background:none;border:none}.wp-lightbox-overlay .wp-lightbox-close-button:has(.wp-lightbox-close-text:not([hidden])) .wp-lightbox-close-icon svg{height:1em;width:1em}.wp-lightbox-overlay .wp-lightbox-close-icon svg{display:block}.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{align-items:center;bottom:16px;cursor:pointer;display:flex;font-family:inherit;gap:4px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 8px;position:absolute;z-index:2000002}.wp-lightbox-overlay .wp-lightbox-navigation-button-next[hidden],.wp-lightbox-overlay .wp-lightbox-navigation-button-prev[hidden]{display:none}@media (min-width:960px){.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{bottom:50%;transform:translateY(-50%)}}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:not(:hover):not(:active):not(.has-background),.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:not(:hover):not(:active):not(.has-background){background:none;border:none;padding:0 8px}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg{display:block;height:1.5em;width:1.5em}.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{left:calc(env(safe-area-inset-left) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-button-next{right:calc(env(safe-area-inset-right) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-icon svg{vertical-align:middle}.wp-lightbox-overlay .lightbox-image-container{height:var(--wp--lightbox-container-height);left:50%;overflow:hidden;position:absolute;top:50%;transform:translate(-50%,-50%);transform-origin:top left;width:var(--wp--lightbox-container-width);z-index:2000001}.wp-lightbox-overlay .wp-block-image{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:center;margin:0;position:relative;transform-origin:0 0;width:100%;z-index:3000000}.wp-lightbox-overlay .wp-block-image img{height:var(--wp--lightbox-image-height);min-height:var(--wp--lightbox-image-height);min-width:var(--wp--lightbox-image-width);width:var(--wp--lightbox-image-width)}.wp-lightbox-overlay .wp-block-image figcaption{display:none}.wp-lightbox-overlay button{background:none;border:none}.wp-lightbox-overlay .scrim{background-color:#fff;height:100%;opacity:.9;position:absolute;width:100%;z-index:2000000}.wp-lightbox-overlay.active{visibility:visible}@media not (prefers-reduced-motion){.wp-lightbox-overlay.active{animation:turn-on-visibility .25s both}.wp-lightbox-overlay.active img{animation:turn-on-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active){animation:turn-off-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active) img{animation:turn-off-visibility .25s both}.wp-lightbox-overlay.zoom.active{animation:none;opacity:1;visibility:visible}.wp-lightbox-overlay.zoom.active .lightbox-image-container{animation:lightbox-zoom-in .4s}.wp-lightbox-overlay.zoom.active .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.active .scrim{animation:turn-on-visibility .4s forwards}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active){animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container{animation:lightbox-zoom-out .4s}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .scrim{animation:turn-off-visibility .4s forwards}}
32@keyframes show-content-image{0%{visibility:hidden}99%{visibility:hidden}to{visibility:visible}}@keyframes turn-on-visibility{0%{opacity:0}to{opacity:1}}@keyframes turn-off-visibility{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes lightbox-zoom-in{0%{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale))}to{transform:translate(-50%,-50%) scale(1)}}@keyframes lightbox-zoom-out{0%{transform:translate(-50%,-50%) scale(1);visibility:visible}99%{visibility:visible}to{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale));visibility:hidden}}
33/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/image/style.min.css */
34</style>
35<style id="wp-block-group-inline-css">
36.wp-block-group{box-sizing:border-box}:where(.wp-block-group.wp-block-group-is-layout-constrained){position:relative}
37/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/group/style.min.css */
38</style>
39<style id="wp-block-search-inline-css">
40.wp-block-search__button{margin-left:10px;word-break:normal}.wp-block-search__button.has-icon{line-height:0}.wp-block-search__button svg{fill:currentColor;height:1.25em;min-height:24px;min-width:24px;vertical-align:text-bottom;width:1.25em}:where(.wp-block-search__button){border:1px solid #ccc;padding:6px 10px}.wp-block-search__inside-wrapper{display:flex;flex:auto;flex-wrap:nowrap;max-width:100%}.wp-block-search__label{width:100%}.wp-block-search.wp-block-search__button-only .wp-block-search__button{box-sizing:border-box;display:flex;flex-shrink:0;justify-content:center;margin-left:0;max-width:100%}.wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{min-width:0!important;transition-property:width}.wp-block-search.wp-block-search__button-only .wp-block-search__input{flex-basis:100%;transition-duration:.3s}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden,.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper{overflow:hidden}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input{border-left-width:0!important;border-right-width:0!important;flex-basis:0;flex-grow:0;margin:0;min-width:0!important;padding-left:0!important;padding-right:0!important;width:0!important}:where(.wp-block-search__input){-webkit-appearance:initial;-moz-appearance:initial;appearance:none;border:1px solid #949494;flex-grow:1;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin-left:0;margin-right:0;min-width:3rem;padding:8px;text-decoration:unset!important;text-transform:inherit}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper){background-color:#fff;border:1px solid #949494;box-sizing:border-box;padding:4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input{border:none;border-radius:0;padding:0 4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input:focus{outline:none}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button){padding:4px 8px}.wp-block-search.aligncenter .wp-block-search__inside-wrapper{margin:auto}.wp-block[data-align=right] .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{float:right}
41/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/search/style.min.css */
42</style>
43<style id="wp-block-navigation-link-inline-css">
44.wp-block-navigation .wp-block-navigation-item__label{overflow-wrap:break-word}.wp-block-navigation .wp-block-navigation-item__description{display:none}.link-ui-tools{outline:1px solid #f0f0f0;padding:8px}.link-ui-block-inserter{padding-top:8px}.link-ui-block-inserter__back{margin-left:8px;text-transform:uppercase}
45/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/navigation-link/style.min.css */
46</style>
47<link rel='stylesheet' id='wp-block-navigation-css' href='https://c0.wp.com/c/7.1.2/wp-includes/blocks/navigation/style.min.css' media='all' />
48<style id="wp-block-post-title-inline-css">
49.wp-block-post-title{box-sizing:border-box;word-break:break-word}.wp-block-post-title :where(a){display:inline-block;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-decoration:inherit}
50/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/post-title/style.min.css */
51</style>
52<style id="wp-block-paragraph-inline-css">
53.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg}
54/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/paragraph/style.min.css */
55</style>
56<style id="wp-block-list-inline-css">
57ol,ul{box-sizing:border-box}:root :where(.wp-block-list.has-background){padding:1.25em 2.375em}
58/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/list/style.min.css */
59</style>
60<style id="wp-block-heading-inline-css">
61h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg}
62/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/heading/style.min.css */
63</style>
64<style id="wp-block-post-content-inline-css">
65.wp-block-post-content{display:flow-root}
66/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/post-content/style.min.css */
67</style>
68<style id="wp-block-post-comments-form-inline-css">
69:where(.wp-block-post-comments-form input:not([type=submit])),:where(.wp-block-post-comments-form textarea){border:1px solid #949494;font-family:inherit;font-size:1em}
69:where(.wp-block-post-comments-form input:where(:not([type=submit]):not([type=checkbox]))),:where(.wp-block-post-comments-form textarea){padding:calc(.667em + 2px)}.wp-block-post-comments-form{box-sizing:border-box}.wp-block-post-comments-form[style*=font-weight] :where(.comment-reply-title){font-weight:inherit}.wp-block-post-comments-form[style*=font-family] :where(.comment-reply-title){font-family:inherit}.wp-block-post-comments-form[class*=-font-size] :where(.comment-reply-title),.wp-block-post-comments-form[style*=font-size] :where(.comment-reply-title){font-size:inherit}.wp-block-post-comments-form[style*=line-height] :where(.comment-reply-title){line-height:inherit}.wp-block-post-comments-form[style*=font-style] :where(.comment-reply-title){font-style:inherit}.wp-block-post-comments-form[style*=letter-spacing] :where(.comment-reply-title){letter-spacing:inherit}.wp-block-post-comments-form :where(input[type=submit]){box-shadow:none;cursor:pointer;display:inline-block;overflow-wrap:break-word;text-align:center}.wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]):not([type=hidden]),.wp-block-post-comments-form .comment-form textarea{box-sizing:border-box;display:block;width:100%}.wp-block-post-comments-form .comment-form-author label,.wp-block-post-comments-form .comment-form-email label,.wp-block-post-comments-form .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments-form .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-comments-form .comment-reply-title{margin-bottom:0}.wp-block-post-comments-form .comment-reply-title :where(small){font-size:var(--wp--preset--font-size--medium,smaller);margin-left:.5em}
70/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/post-comments-form/style.min.css */
71</style>
72<style id="wp-block-buttons-inline-css">
73.wp-block-buttons{box-sizing:border-box}.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}.wp-block-buttons[style*=text-decoration] .wp-block-button,.wp-block-buttons[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons .wp-block-button__link{width:100%}.wp-block-button.aligncenter{text-align:center}
74/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/buttons/style.min.css */
75</style>
76<style id="wp-block-button-inline-css">
77.wp-block-button__link{align-content:center;box-sizing:border-box;cursor:pointer;display:inline-block;height:100%;text-align:center;word-break:break-word}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-button[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1% - var(--wp--style--block-gap, .5em)*(1 - var(--wp--block-button--width)/100))}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{flex-basis:100%;width:100%}.wp-block-buttons.is-vertical>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1%)}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}:root :where(.wp-block-button .wp-block-button__link.is-style-outline),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link){border:2px solid;padding:.667em 1.333em}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)){color:currentColor}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)){background-color:transparent;background-image:none}
78/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/button/style.min.css */
79</style>
80<style id="wp-block-avatar-inline-css">
81.wp-block-avatar{line-height:0}.wp-block-avatar,.wp-block-avatar img{box-sizing:border-box}.wp-block-avatar.aligncenter{text-align:center}
82/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/avatar/style.min.css */
83</style>
84<style id="wp-block-comment-author-name-inline-css">
85.wp-block-comment-author-name{box-sizing:border-box}
86/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/comment-author-name/style.min.css */
87</style>
88<style id="wp-block-comment-date-inline-css">
89.wp-block-comment-date{box-sizing:border-box}
90/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/comment-date/style.min.css */
91</style>
92<style id="wp-block-comment-content-inline-css">
93.comment-awaiting-moderation{display:block;font-size:.875em;line-height:1.5}.wp-block-comment-content{box-sizing:border-box}
94/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/comment-content/style.min.css */
95</style>
96<style id="wp-block-comment-reply-link-inline-css">
97.wp-block-comment-reply-link{box-sizing:border-box}
98/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/comment-reply-link/style.min.css */
99</style>
100<style id="wp-block-columns-inline-css">
101.wp-block-columns{box-sizing:border-box;display:flex;flex-wrap:wrap!important}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap!important}}.wp-block-columns{align-items:normal!important}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column[style*=flex-basis]{flex-grow:0}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap!important}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column[style*=flex-basis]{flex-grow:0}:where(.wp-block-columns){margin-bottom:1.75em}:where(.wp-block-columns.has-background){padding:1.25em 2.375em}.wp-block-column{flex-grow:1;min-width:0;overflow-wrap:break-word;word-break:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-stretch{align-self:stretch}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%}
102/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/columns/style.min.css */
103</style>
104<style id="wp-block-comment-template-inline-css">
105.wp-block-comment-template{box-sizing:border-box;list-style:none;margin-bottom:0;max-width:100%;padding:0}.wp-block-comment-template li{clear:both}.wp-block-comment-template ol{list-style:none;margin-bottom:0;max-width:100%;padding-left:2rem}.wp-block-comment-template.alignleft{float:left}.wp-block-comment-template.aligncenter{margin-left:auto;margin-right:auto;width:-moz-fit-content;width:fit-content}.wp-block-comment-template.alignright{float:right}
106/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/comment-template/style.min.css */
107</style>
108<style id="wp-block-comments-inline-css">
109.wp-block-post-comments{box-sizing:border-box}.wp-block-post-comments .alignleft{float:left}.wp-block-post-comments .alignright{float:right}
109.wp-block-post-comments .navigation:after{clear:both;content:"";display:table}.wp-block-post-comments .commentlist{clear:both;list-style:none;margin:0;padding:0}.wp-block-post-comments .commentlist .comment{min-height:2.25em;padding-left:3.25em}.wp-block-post-comments .commentlist .comment p{font-size:1em;line-height:1.8;margin:1em 0}.wp-block-post-comments .commentlist .children{list-style:none;margin:0;padding:0}.wp-block-post-comments .comment-author{line-height:1.5}.wp-block-post-comments .comment-author .avatar{border-radius:1.5em;display:block;float:left;height:2.5em;margin-right:.75em;margin-top:.5em;width:2.5em}.wp-block-post-comments .comment-author cite{font-style:normal}.wp-block-post-comments .comment-meta{font-size:.875em;line-height:1.5}.wp-block-post-comments .comment-meta b{font-weight:400}.wp-block-post-comments .comment-meta .comment-awaiting-moderation{display:block;margin-bottom:1em;margin-top:1em}.wp-block-post-comments .comment-body .commentmetadata{font-size:.875em}.wp-block-post-comments .comment-form-author label,.wp-block-post-comments .comment-form-comment label,.wp-block-post-comments .comment-form-email label,.wp-block-post-comments .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments .comment-form textarea{box-sizing:border-box;display:block;width:100%}.wp-block-post-comments .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-comments .comment-reply-title{margin-bottom:0}.wp-block-post-comments .comment-reply-title :where(small){font-size:var(--wp--preset--font-size--medium,smaller);margin-left:.5em}.wp-block-post-comments .reply{font-size:.875em;margin-bottom:1.4em}.wp-block-post-comments input:not([type=submit]),.wp-block-post-comments textarea{border:1px solid #949494;font-family:inherit;font-size:1em}.wp-block-post-comments input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments textarea{padding:calc(.667em + 2px)}:where(.wp-block-post-comments input[type=submit]){border:none}.wp-block-comments{box-sizing:border-box}
110/*# sourceURL=https://dirkriehle.com/wp-includes/blocks/comments/style.min.css */
111</style>
112<style id="jetpack-block-cookie-consent-inline-css">
113.wp-block-jetpack-cookie-consent{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.wp-block-jetpack-cookie-consent .wp-block-button__link{white-space:nowrap!important}.wp-block-jetpack-cookie-consent:not([role=document]){animation:cookie-consent-slide-in .2s ease-in-out;bottom:50px;position:fixed;transition:opacity .2s ease-in-out;z-index:50001}.wp-block-jetpack-cookie-consent:not([role=document]) span{display:none}.wp-block-jetpack-cookie-consent:not([role=document]) .wp-block-button{white-space:nowrap}@keyframes cookie-consent-slide-in{0%{opacity:0}to{opacity:1}}.wp-block-jetpack-cookie-consent:not([role=document]).is-dismissed{opacity:0;pointer-events:none}.wp-block-jetpack-cookie-consent:not([role=document]).alignleft,.wp-block-jetpack-cookie-consent:not([role=document]).alignright{flex-wrap:nowrap;max-width:50%}.wp-block-jetpack-cookie-consent:not([role=document]).alignright{margin-left:auto!important;right:10px}.wp-block-jetpack-cookie-consent:not([role=document]).alignleft{left:10px}.wp-block-jetpack-cookie-consent:not([role=document]).alignwide{left:5%!important;max-width:90%!important;width:100vw!important}.wp-block-jetpack-cookie-consent:not([role=document]).alignfull{width:100%}@media screen and (max-width:768px){.wp-block-jetpack-cookie-consent:not([role=document]).alignleft,.wp-block-jetpack-cookie-consent:not([role=document]).alignright{flex-wrap:wrap;left:5%;margin-left:0!important;max-width:90%;width:100vw}}
114/*# sourceURL=https://dirkriehle.com/wp-content/plugins/jetpack/_inc/blocks/cookie-consent/view.css?minify=false */
115</style>
116<link rel='stylesheet' id='wp-block-social-links-css' href='https://c0.wp.com/c/7.1.2/wp-includes/blocks/social-links/style.min.css' media='all' />
117<style id="wp-emoji-styles-inline-css">
118
119	img.wp-smiley, img.emoji {
120		display: inline !important;
121		border: none !important;
122		box-shadow: none !important;
123		height: 1em !important;
124		width: 1em !important;
125		margin: 0 0.07em !important;
126		vertical-align: -0.1em !important;
127		background: none !important;
128		padding: 0 !important;
129	}
130/*# sourceURL=wp-emoji-styles-inline-css */
131</style>
132<style id="wp-block-library-inline-css">
133:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}
133.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
134/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */
135</style>
136<style id="global-styles-inline-css">
137:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--base: #ffffff;--wp--preset--color--contrast: #000000;--wp--preset--color--primary: #9DFF20;--wp--preset--color--secondary: #345C00;--wp--preset--color--tertiary: #F6F6F6;--wp--preset--color--custom-color-1: #000000;--wp--preset--color--custom-color-2: #ffffff;--wp--preset--color--custom-color-3: #404040;--wp--preset--color--custom-color-4: #808080;--wp--preset--color--custom-color-5: #d0d0d0;--wp--preset--color--custom-color-6: #69488e;--wp--preset--color--custom-color-7: #ffa400;--wp--preset--color--custom-color-8: #6abf4b;--wp--preset--color--custom-color-9: #448aff;--wp--preset--color--custom-color-10: #d50d01;--wp--preset--color--custom-color-11: #34a3c5;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,
1370,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.227), 1rem);--wp--preset--font-size--medium: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.227), 1.125rem);--wp--preset--font-size--large: clamp(1.75rem, 1.75rem + ((1vw - 0.2rem) * 0.227), 1.875rem);--wp--preset--font-size--x-large: 2.25rem;--wp--preset--font-size--xx-large: clamp(4rem, 4rem + ((1vw - 0.2rem) * 10.909), 10rem);--wp--preset--font-family--dm-sans: "DM Sans", sans-serif;--wp--preset--font-family--ibm-plex-mono: 'IBM Plex Mono', monospace;--wp--preset--font-family--inter: "Inter", sans-serif;--wp--preset--font-family--system-font: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;--wp--preset--font-family--source-serif-pro: "Source Serif Pro", serif;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: clamp(1.5rem, 5vw, 2rem);--wp--preset--spacing--40: clamp(1.8rem, 1.8rem + ((1vw - 0.48rem) * 2.885), 3rem);--wp--preset--spacing--50: clamp(2.5rem, 8vw, 4.5rem);--wp--preset--spacing--60: clamp(3.75rem, 10vw, 7rem);--wp--preset--spacing--70: clamp(5rem, 5.25rem + ((1vw - 0.48rem) * 9.096), 8rem);--wp--preset--spacing--80: clamp(7rem, 14vw, 11rem);--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}.wp-block-post-featured-image{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--base: #ffffff;--wp--preset--color--contrast: #000000;--wp--preset--color--primary: #9DFF20;--wp--preset--color--secondary: #345C00;--wp--preset--color--tertiary: #F6F6F6;--wp--preset--color--custom-color-1: #000000;--wp--preset--color--custom-color-2: #ffffff;--wp--preset--color--custom-color-3: #404040;--wp--preset--color--custom-color-4: #808080;--wp--preset--color--custom-color-5: #d0d0d0;--wp--preset--color--custom-color-6: #69488e;--wp--preset--color--custom-color-7: #ffa400;--wp--preset--color--custom-color-8: #6abf4b;--wp--preset--color--custom-color-9: #448aff;--wp--preset--color--custom-color-10: #d50d01;--wp--preset--color--custom-color-11: #34a3c5;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,
1370,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.227), 1rem);--wp--preset--font-size--medium: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.227), 1.125rem);--wp--preset--font-size--large: clamp(1.75rem, 1.75rem + ((1vw - 0.2rem) * 0.227), 1.875rem);--wp--preset--font-size--x-large: 2.25rem;--wp--preset--font-size--xx-large: clamp(4rem, 4rem + ((1vw - 0.2rem) * 10.909), 10rem);--wp--preset--font-family--dm-sans: "DM Sans", sans-serif;--wp--preset--font-family--ibm-plex-mono: 'IBM Plex Mono', monospace;--wp--preset--font-family--inter: "Inter", sans-serif;--wp--preset--font-family--system-font: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;--wp--preset--font-family--source-serif-pro: "Source Serif Pro", serif;--wp--preset--spacing--30: clamp(1.5rem, 5vw, 2rem);--wp--preset--spacing--40: clamp(1.8rem, 1.8rem + ((1vw - 0.48rem) * 2.885), 3rem);--wp--preset--spacing--50: clamp(2.5rem, 8vw, 4.5rem);--wp--preset--spacing--60: clamp(3.75rem, 10vw, 7rem);--wp--preset--spacing--70: clamp(5rem, 5.25rem + ((1vw - 0.48rem) * 9.096), 8rem);--wp--preset--spacing--80: clamp(7rem, 14vw, 11rem);}.wp-block-post-featured-image img, .wp-block-post-featured-image .components-placeholder{--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:root { --wp--style--global--content-size: 650px;--wp--style--global--wide-size: 1200px; }:where(body) { margin: 0; }.wp-site-blocks { padding-top: var(--wp--style--root--padding-top); padding-bottom: var(--wp--style--root--padding-bottom); }.has-global-padding { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }.has-global-padding > .alignfull { margin-right: calc(var(--wp--style--root--padding-right) * -1); margin-left: calc(var(--wp--style--root--padding-left) * -1); }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) { padding-right: 0; padding-left: 0; }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) > .alignfull { margin-left: 0; margin-right: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: var(--wp--preset--spacing--30); margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: var(--wp--preset--spacing--30); }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: var(--wp--preset--spacing--30);margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: var(--wp--preset--spacing--30);margin-block-end: 0;}:root :where(.is-layout-flex){gap: var(--wp--preset--spacing--30);}:root :where(.is-layout-grid){gap: var(--wp--preset--spacing--30);}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained >
137 :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{background-color: var(--wp--preset--color--custom-color-5);color: var(--wp--preset--color--contrast);font-family: var(--wp--preset--font-family--system-font);font-size: var(--wp--preset--font-size--medium);line-height: 1.5;--wp--style--root--padding-top: 0;--wp--style--root--padding-right: var(--wp--preset--spacing--30);--wp--style--root--padding-bottom: 0;--wp--style--root--padding-left: var(--wp--preset--spacing--30);}a:where(:not(.wp-element-button)){color: var(--wp--preset--color--contrast);text-decoration: underline;}:root :where(a:where(:not(.wp-element-button)):hover){text-decoration: none;}:root :where(a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}:root :where(a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}h1, h2, h3, h4, h5, h6{font-weight: 400;line-height: 1.5;}h1{font-size: var(--wp--preset--font-size--x-large);font-style: normal;font-weight: 700;line-height: 1.5;}h2{font-size: var(--wp--preset--font-size--large);font-style: normal;font-weight: 700;line-height: 1.5;}h3{font-size: var(--wp--preset--font-size--medium);font-style: normal;font-weight: 700;}h4{font-size: var(--wp--preset--font-size--medium);}h5{font-size: var(--wp--preset--font-size--medium);font-weight: 700;text-transform: none;}h6{font-size: var(--wp--preset--font-size--medium);text-transform: none;}:root :where(.wp-element-button, .wp-block-button__link){background-color: var(--wp--preset--color--custom-color-7);border-radius: 0;border-width: 0;color: var(--wp--preset--color--custom-color-2);font-family: inherit;font-size: var(--wp--preset--font-size--medium);font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}:root :where(.wp-element-button:visited, .wp-block-button__link:visited){color: var(--wp--preset--color--contrast);}:root :where(.wp-element-button:hover, .wp-block-button__link:hover){background-color: var(--wp--preset--color--contrast);color: var(--wp--preset--color--base);}:root :where(.wp-element-button:focus, .wp-block-button__link:focus){background-color: var(--wp--preset--color--contrast);color: var(--wp--preset--color--base);}:root :where(.wp-element-button:active, .wp-block-button__link:active){background-color: var(--wp--preset--color--secondary);color: var(--wp--preset--color--base);}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-base-color{color: var(--wp--preset--color--base) !important;}.has-contrast-color{color: var(--wp--preset--color--contrast) !important;}.has-primary-color{color: var(--wp--preset--color--primary) !important;}.has-secondary-color{color: var(--wp--preset--color--secondary) !important;}.has-tertiary-color{color: var(--wp--preset--color--tertiary) !important;}.has-custom-color-1-color{color: var(--wp--preset--color--custom-color-1) !important;}.has-custom-color-2-color{color: var(--wp--preset--color--custom-color-2) !important;}.has-custom-color-3-color{color: var(--wp--preset--color--custom-color-3) !important;}.has-custom-color-4-color{color: var(--wp--preset--color--custom-color-4) !important;}.has-custom-color-5-color{color: var(--wp--preset--color--custom-color-5) !important;}.has-custom-color-6-color{color: var(--wp--preset--color--custom-color-6) !important;}.has-custom-color-7-color{color: var(--wp--preset--color--custom-color-7) !important;}.has-custom-color-8-color{color: var(--wp--preset--color--custom-color-8) !important;}.has-custom-color-9-color{color: var(--wp--preset--color--custom-color-9) !important;}.has-custom-color-10-color{color: var(--wp--preset--color--custom-color-10) !important;}.has-custom-color-11-color{color: var(--wp--preset--color--custom-color-11) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-background-color{background-color: var(--wp--preset--color--base) !important;}.has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}.has-primary-background-color{background-color: var(--wp--preset--color--primary) !important;}.has-secondary-background-color{background-color: var(--wp--preset--color--secondary) !important;}.has-tertiary-background-color{background-color: var(--wp--preset--color--tertiary) !important;}.has-custom-color-1-background-color{background-color: var(--wp--preset--color--custom-color-1) !important;}.has-custom-color-2-background-color{background-color: var(--wp--preset--color--custom-color-2) !important;}.has-custom-color-3-background-color{background-color: var(--wp--preset--color--custom-color-3) !important;}.has-custom-color-4-background-color{background-color: var(--wp--preset--color--custom-color-4) !important;}.has-custom-color-5-background-color{background-color: var(--wp--preset--color--custom-color-5) !important;}.has-custom-color-6-background-color{background-color: var(--wp--preset--color--custom-color-6) !important;}.has-custom-color-7-background-color{background-color: var(--wp--preset--color--custom-color-7) !important;}.has-custom-color-8-background-color{background-color: var(--wp--preset--color--custom-color-8) !important;}.has-custom-color-9-background-color{background-color: var(--wp--preset--color--custom-color-9) !important;}.has-custom-color-10-background-color{background-color: var(--wp--preset--color--custom-color-10) !important;}.has-custom-color-11-background-color{background-color: var(--wp--preset--color--custom-color-11) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-border-color{border-color: var(--wp--preset--color--base) !important;}.has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}.has-primary-border-color{border-color: var(--wp--preset--color--primary) !important;}.has-secondary-border-color{border-color: var(--wp--preset--color--secondary) !important;}.has-tertiary-border-color{border-color: var(--wp--preset--color--tertiary) !important;}.has-custom-color-1-border-color{border-color: var(--wp--preset--color--custom-color-1) !important;}.has-custom-color-2-border-color{border-color: var(--wp--preset--color--custom-color-2) !important;}.has-custom-color-3-border-color{border-color: var(--wp--preset--color--custom-color-3) !important;}.has-custom-color-4-border-color{border-color: var(--wp--preset--color--custom-color-4) !important;}.has-custom-color-5-border-color{border-color: var(--wp--preset--color--custom-color-5) !important;}.has-custom-color-6-border-color{border-color: var(--wp--preset--color--custom-color-6) !important;}.has-custom-color-7-border-color{border-color: var(--wp--preset--color--custom-color-7) !important;}.has-custom-color-8-border-color{border-color: var(--wp--preset--color--custom-color-8) !important;}.has-custom-color-9-border-color{border-color: var(--wp--preset--color--custom-color-9) !important;}.has-custom-color-10-border-color{border-color: var(--wp--preset--color--custom-color-10) !important;}.has-custom-color-11-border-color{border-color: var(--wp--preset--color--custom-color-11) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
137.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-xx-large-font-size{font-size: var(--wp--preset--font-size--xx-large) !important;}.has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}.has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}.has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}.has-system-font-font-family{font-family: var(--wp--preset--font-family--system-font) !important;}.has-source-serif-pro-font-family{font-family: var(--wp--preset--font-family--source-serif-pro) !important;}:where(.wp-block-post-featured-image).has-black-color{color: var(--wp--preset--color--black) !important;}:where(.wp-block-post-featured-image).has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}:where(.wp-block-post-featured-image).has-white-color{color: var(--wp--preset--color--white) !important;}:where(.wp-block-post-featured-image).has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}:where(.wp-block-post-featured-image).has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}:where(.wp-block-post-featured-image).has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}:where(.wp-block-post-featured-image).has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}:where(.wp-block-post-featured-image).has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}:where(.wp-block-post-featured-image).has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}:where(.wp-block-post-featured-image).has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}:where(.wp-block-post-featured-image).has-base-color{color: var(--wp--preset--color--base) !important;}:where(.wp-block-post-featured-image).has-contrast-color{color: var(--wp--preset--color--contrast) !important;}:where(.wp-block-post-featured-image).has-primary-color{color: var(--wp--preset--color--primary) !important;}:where(.wp-block-post-featured-image).has-secondary-color{color: var(--wp--preset--color--secondary) !important;}:where(.wp-block-post-featured-image).has-tertiary-color{color: var(--wp--preset--color--tertiary) !important;}:where(.wp-block-post-featured-image).has-custom-color-1-color{color: var(--wp--preset--color--custom-color-1) !important;}:where(.wp-block-post-featured-image).has-custom-color-2-color{color: var(--wp--preset--color--custom-color-2) !important;}:where(.wp-block-post-featured-image).has-custom-color-3-color{color: var(--wp--preset--color--custom-color-3) !important;}:where(.wp-block-post-featured-image).has-custom-color-4-color{color: var(--wp--preset--color--custom-color-4) !important;}:where(.wp-block-post-featured-image).has-custom-color-5-color{color: var(--wp--preset--color--custom-color-5) !important;}:where(.wp-block-post-featured-image).has-custom-color-6-color{color: var(--wp--preset--color--custom-color-6) !important;}:where(.wp-block-post-featured-image).has-custom-color-7-color{color: var(--wp--preset--color--custom-color-7) !important;}:where(.wp-block-post-featured-image).has-custom-color-8-color{color: var(--wp--preset--color--custom-color-8) !important;}:where(.wp-block-post-featured-image).has-custom-color-9-color{color: var(--wp--preset--color--custom-color-9) !important;}:where(.wp-block-post-featured-image).has-custom-color-10-color{color: var(--wp--preset--color--custom-color-10) !important;}:where(.wp-block-post-featured-image).has-custom-color-11-color{color: var(--wp--preset--color--custom-color-11) !important;}:where(.wp-block-post-featured-image).has-black-background-color{background-color: var(--wp--preset--color--black) !important;}:where(.wp-block-post-featured-image).has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}:where(.wp-block-post-featured-image).has-white-background-color{background-color: var(--wp--preset--color--white) !important;}:where(.wp-block-post-featured-image).has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}:where(.wp-block-post-featured-image).has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}:where(.wp-block-post-featured-image).has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}:where(.wp-block-post-featured-image).has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}:where(.wp-block-post-featured-image).has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}:where(.wp-block-post-featured-image).has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}:where(.wp-block-post-featured-image).has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}:where(.wp-block-post-featured-image).has-base-background-color{background-color: var(--wp--preset--color--base) !important;}:where(.wp-block-post-featured-image).has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}:where(.wp-block-post-featured-image).has-primary-background-color{background-color: var(--wp--preset--color--primary) !important;}:where(.wp-block-post-featured-image).has-secondary-background-color{background-color: var(--wp--preset--color--secondary) !important;}:where(.wp-block-post-featured-image).has-tertiary-background-color{background-color: var(--wp--preset--color--tertiary) !important;}:where(.wp-block-post-featured-image).has-custom-color-1-background-color{background-color: var(--wp--preset--color--custom-color-1) !important;}:where(.wp-block-post-featured-image).has-custom-color-2-background-color{background-color: var(--wp--preset--color--custom-color-2) !important;}:where(.wp-block-post-featured-image).has-custom-color-3-background-color{background-color: var(--wp--preset--color--custom-color-3) !important;}:where(.wp-block-post-featured-image).has-custom-color-4-background-color{background-color: var(--wp--preset--color--custom-color-4) !important;}:where(.wp-block-post-featured-image).has-custom-color-5-background-color{background-color: var(--wp--preset--color--custom-color-5) !important;}:where(.wp-block-post-featured-image).has-custom-color-6-background-color{background-color: var(--wp--preset--color--custom-color-6) !important;}:where(.wp-block-post-featured-image).has-custom-color-7-background-color{background-color: var(--wp--preset--color--custom-color-7) !important;}:where(.wp-block-post-featured-image).has-custom-color-8-background-color{background-color: var(--wp--preset--color--custom-color-8) !important;}:where(.wp-block-post-featured-image).has-custom-color-9-background-color{background-color: var(--wp--preset--color--custom-color-9) !important;}:where(.wp-block-post-featured-image).has-custom-color-10-background-color{background-color: var(--wp--preset--color--custom-color-10) !important;}:where(.wp-block-post-featured-image).has-custom-color-11-background-color{background-color: var(--wp--preset--color--custom-color-11) !important;}:where(.wp-block-post-featured-image).has-black-border-color{border-color: var(--wp--preset--color--black) !important;}:where(.wp-block-post-featured-image).has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}:where(.wp-block-post-featured-image).has-white-border-color{border-color: var(--wp--preset--color--white) !important;}:where(.wp-block-post-featured-image).has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}:where(.wp-block-post-featured-image).has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}:where(.wp-block-post-featured-image).has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}:where(.wp-block-post-featured-image).has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}:where(.wp-block-post-featured-image).has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}:where(.wp-block-post-featured-image).has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}:where(.wp-block-post-featured-image).has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}:where(.wp-block-post-featured-image).has-base-border-color{border-color: var(--wp--preset--color--base) !important;}:where(.wp-block-post-featured-image).has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}:where(.wp-block-post-featured-image).has-primary-border-color{border-color: var(--wp--preset--color--primary) !important;}:where(.wp-block-post-featured-image).has-secondary-border-color{border-color: var(--wp--preset--color--secondary) !important;}:where(.wp-block-post-featured-image).has-tertiary-border-color{border-color: var(--wp--preset--color--tertiary) !important;}:where(.wp-block-post-featured-image).has-custom-color-1-border-color{border-color: var(--wp--preset--color--custom-color-1) !important;}:where(.wp-block-post-featured-image).has-custom-color-2-border-color{border-color: var(--wp--preset--color--custom-color-2) !important;}:where(.wp-block-post-featured-image).has-custom-color-3-border-color{border-color: var(--wp--preset--color--custom-color-3) !important;}:where(.wp-block-post-featured-image).has-custom-color-4-border-color{border-color: var(--wp--preset--color--custom-color-4) !important;}:where(.wp-block-post-featured-image).has-custom-color-5-border-color{border-color: var(--wp--preset--color--custom-color-5) !important;}:where(.wp-block-post-featured-image).has-custom-color-6-border-color{border-color: var(--wp--preset--color--custom-color-6) !important;}:where(.wp-block-post-featured-image).has-custom-color-7-border-color{border-color: var(--wp--preset--color--custom-color-7) !important;}:where(.wp-block-post-featured-image).has-custom-color-8-border-color{border-color: var(--wp--preset--color--custom-color-8) !important;}:where(.wp-block-post-featured-image).has-custom-color-9-border-color{border-color: var(--wp--preset--color--custom-color-9) !important;}:where(.wp-block-post-featured-image).has-custom-color-10-border-color{border-color: var(--wp--preset--color--custom-color-10) !important;}:where(.wp-block-post-featured-image).has-custom-color-11-border-color{border-color: var(--wp--preset--color--custom-color-11) !important;}:where(.wp-block-post-featured-image).has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}:where(.wp-block-post-featured-image).has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}:where(.wp-block-post-featured-image).has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
137:where(.wp-block-post-featured-image).has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}:where(.wp-block-post-featured-image).has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}:where(.wp-block-post-featured-image).has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}:where(.wp-block-post-featured-image).has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}:where(.wp-block-post-featured-image).has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}:where(.wp-block-post-featured-image).has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}:where(.wp-block-post-featured-image).has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}:where(.wp-block-post-featured-image).has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}:where(.wp-block-post-featured-image).has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}:where(.wp-block-post-featured-image).has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}:where(.wp-block-post-featured-image).has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}:where(.wp-block-post-featured-image).has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}:where(.wp-block-post-featured-image).has-xx-large-font-size{font-size: var(--wp--preset--font-size--xx-large) !important;}:where(.wp-block-post-featured-image).has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}:where(.wp-block-post-featured-image).has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}:where(.wp-block-post-featured-image).has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}:where(.wp-block-post-featured-image).has-system-font-font-family{font-family: var(--wp--preset--font-family--system-font) !important;}:where(.wp-block-post-featured-image).has-source-serif-pro-font-family{font-family: var(--wp--preset--font-family--source-serif-pro) !important;}
138:root :where(.wp-block-navigation){font-size: var(--wp--preset--font-size--medium);}
139:root :where(.wp-block-navigation a:where(:not(.wp-element-button))){text-decoration: none;}
140:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
141:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}
142:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):active){text-decoration: none;}
143:root :where(.wp-block-post-content a:where(:not(.wp-element-button))){color: var(--wp--preset--color--custom-color-6);}
144:root :where(.wp-block-post-title){font-style: normal;font-weight: 700;margin-top: 1.25rem;margin-bottom: 1.25rem;}
145:root :where(.wp-block-post-title a:where(:not(.wp-element-button))){text-decoration: none;}
146:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
147:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}
148:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}
149:root :where(.wp-block-comment-author-name a:where(:not(.wp-element-button))){text-decoration: none;}
150:root :where(.wp-block-comment-author-name a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
151:root :where(.wp-block-comment-author-name a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}
152:root :where(.wp-block-comment-author-name a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}
153:root :where(.wp-block-comment-date){font-size: var(--wp--preset--font-size--medium);}
154:root :where(.wp-block-comment-date a:where(:not(.wp-element-button))){text-decoration: none;}
155:root :where(.wp-block-comment-date a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
156:root :where(.wp-block-comment-date a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}
157:root :where(.wp-block-comment-date a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}
158:root :where(.wp-block-comment-reply-link){font-size: var(--wp--preset--font-size--medium);}
159:root :where(.wp-block-site-title){font-size: var(--wp--preset--font-size--large);font-weight: normal;line-height: 1.4;}
160:root :where(.wp-block-site-title a:where(:not(.wp-element-button))){text-decoration: none;}
161:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
162:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):focus){text-decoration: underline dashed;}
163:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):active){color: var(--wp--preset--color--secondary);text-decoration: none;}
164:root :where(.wp-block-search){font-size: var(--wp--preset--font-size--medium);}
165:root :where(.wp-block-post-comments-form){font-size: var(--wp--preset--font-size--medium);}
166/*# sourceURL=global-styles-inline-css */
167</style>
168<style id="core-block-supports-inline-css">
169.wp-container-core-group-is-layout-5f3fe452{gap:0px;}.wp-container-core-group-is-layout-d344c601{justify-content:space-between;}.wp-container-core-navigation-is-layout-fa838b63{justify-content:flex-start;}.wp-container-core-columns-is-layout-f06e4358{flex-wrap:nowrap;}.wp-container-core-group-is-layout-f01d84c1{justify-content:space-between;}.wp-container-core-group-is-layout-11295aa2 > .alignfull{margin-right:calc(var(--wp--preset--spacing--30) * -1);margin-left:calc(var(--wp--preset--spacing--30) * -1);}.wp-container-core-group-is-layout-11295aa2 > *{margin-block-start:0;margin-block-end:0;}.wp-container-core-group-is-layout-11295aa2 > * + *{margin-block-start:0;margin-block-end:0;}
170/*# sourceURL=core-block-supports-inline-css */
171</style>
172<style id="wp-block-template-skip-link-inline-css">
173/*! This file is auto-generated */
174.skip-link.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal!important}.skip-link.screen-reader-text:focus{background-color:#eee;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
175/*# sourceURL=/wp-includes/css/wp-block-template-skip-link.min.css */
176</style>
177<link rel='stylesheet' id='jetpack-instant-search-css' href='https://dirkriehle.com/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-search/build/instant-search/jp-search.chunk-main-payload.css?minify=false&#038;ver=25d86678d0b48f702f8f' media='all' />
178<style id="jetpack-stats-inline-css">
179img#wpstats{display:none}
180/*# sourceURL=jetpack-stats-inline-css */
181</style>
182<script id="jetpack-blocks-assets-base-url-js-before">
183var Jetpack_Block_Assets_Base_Url="https://dirkriehle.com/wp-content/plugins/jetpack/_inc/blocks/";
184//# sourceURL=jetpack-blocks-assets-base-url-js-before
185</script>
vendor: 1 bytes, line 185
185
186<script id="wp-dom-ready-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/dist/dom-ready.min.js"></script>
vendor: 1 bytes, line 186
186
187<script data-wp-strategy="defer" defer id="jetpack-cookie-consent-view-script-js" src="https://c0.wp.com/p/jetpack/16.2/_inc/blocks/cookie-consent/view.js"></script>
187
188
189<!-- Google tag (gtag.js) snippet added by Site Kit -->
190<!-- Google Analytics snippet added by Site Kit -->
vendor: 80 bytes, lines 190-191
190
191<script id="google_gtagjs-js" src="https://www.googletagmanager.com/gtag/js?id=
191GT-WKRWKSFZ
vendor: 18 bytes, line 191
191" async></script>
192<script id="google_gtagjs-js-after">
193window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}
194gtag("set","linker",{"domains":["dirkriehle.com"]});
195gtag("js", new Date());
196gtag("set", "developer_id.dZTNiMT", true);
197gtag("config", "GT-WKRWKSFZ");
198//# sourceURL=google_gtagjs-js-after
199</script>
199
200<link rel="https://api.w.org/" href="https://dirkriehle.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://dirkriehle.com/wp-json/wp/v2/pages/5375" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://dirkriehle.com/xmlrpc.php?rsd" />
201<meta name="generator" content="WordPress 7.1.2" />
202<link rel="canonical" href="https://dirkriehle.com/about/" />
203<link rel='shortlink' href='https://dirkriehle.com/?p=5375' />
204<meta name="generator" content="Site Kit by Google 1.188.0" />
204<script id="wp-importmap" type="importmap">
205{"imports":{"@wordpress/interactivity":"https://dirkriehle.com/wp-includes/js/dist/script-modules/interactivity/index.min.js?ver=efaa5193bbad9c60ffd1"}}
206</script>
206
207<link rel="modulepreload" href="https://dirkriehle.com/wp-includes/js/dist/script-modules/interactivity/index.min.js?ver=efaa5193bbad9c60ffd1" id="@wordpress/interactivity-js-modulepreload" fetchpriority="low">
208<meta name="description" content="I&#039;m a professor of computer science at a large university in Germany. I became a professor after working in the software industry for 15 years. I have lived and worked in Germany, Switzerland, and the U.S.A. Also, project travel brings me to S/E Asia a lot. I can be reached by Email at [email protected] or&hellip;" />
209
210<!-- Jetpack Open Graph Tags -->
211<meta property="og:type" content="article" />
212<meta property="og:title" content="About" />
213<meta property="og:url" content="https://dirkriehle.com/about/" />
214<meta property="og:description" content="I&#8217;m a professor of computer science at a large university in Germany. I became a professor after working in the software industry for 15 years. I have lived and worked in Germany, Switzerland…" />
215<meta property="article:published_time" content="2008-01-08T04:24:50+00:00" />
216<meta property="article:modified_time" content="2025-10-17T12:29:49+00:00" />
217<meta property="og:site_name" content="Dirk Riehle&#039;s Industry and Research Publications" />
218<meta property="og:image" content="https://dirkriehle.com/wp-content/uploads/2023/06/wp-1685822180351.png" />
219<meta property="og:image:width" content="510" />
220<meta property="og:image:height" content="510" />
221<meta property="og:image:alt" content="" />
222<meta property="og:locale" content="en_US" />
223<meta name="twitter:site" content="@dirkriehle" />
224<meta name="twitter:text:title" content="About" />
225<meta name="twitter:image" content="https://dirkriehle.com/wp-content/uploads/2023/06/wp-1685822180351-300x300.png" />
226<meta name="twitter:card" content="summary" />
227
228<!-- End Jetpack Open Graph Tags -->
229<style class="wp-fonts-local">
230@font-face{font-family:"DM Sans";font-style:normal;font-weight:400;font-display:fallback;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Regular.woff2') format('woff2');font-stretch:normal;}
231@font-face{font-family:"DM Sans";font-style:italic;font-weight:400;font-display:fallback;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Regular-Italic.woff2') format('woff2');font-stretch:normal;}
232@font-face{font-family:"DM Sans";font-style:normal;font-weight:700;font-display:fallback;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Bold.woff2') format('woff2');font-stretch:normal;}
233@font-face{font-family:"DM Sans";font-style:italic;font-weight:700;font-display:fallback;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/dm-sans/DMSans-Bold-Italic.woff2') format('woff2');font-stretch:normal;}
234@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:300;font-display:block;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Light.woff2') format('woff2');font-stretch:normal;}
235@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:block;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Regular.woff2') format('woff2');font-stretch:normal;}
236@font-face{font-family:"IBM Plex Mono";font-style:italic;font-weight:400;font-display:block;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Italic.woff2') format('woff2');font-stretch:normal;}
237@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:700;font-display:block;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/ibm-plex-mono/IBMPlexMono-Bold.woff2') format('woff2');font-stretch:normal;}
238@font-face{font-family:Inter;font-style:normal;font-weight:200 900;font-display:fallback;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/inter/Inter-VariableFont_slnt,wght.ttf') format('truetype');font-stretch:normal;}
239@font-face{font-family:"Source Serif Pro";font-style:normal;font-weight:200 900;font-display:fallback;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/source-serif-pro/SourceSerif4Variable-Roman.ttf.woff2') format('woff2');font-stretch:normal;}
240@font-face{font-family:"Source Serif Pro";font-style:italic;font-weight:200 900;font-display:fallback;src:url('https://dirkriehle.com/wp-content/themes/twentytwentythree/assets/fonts/source-serif-pro/SourceSerif4Variable-Italic.ttf.woff2') format('woff2');font-stretch:normal;}
241</style>
242<link rel="icon" href="https://dirkriehle.com/wp-content/uploads/2023/06/wp-1685822180351-150x150.png" sizes="32x32" />
243<link rel="icon" href="https://dirkriehle.com/wp-content/uploads/2023/06/wp-1685822180351-300x300.png" sizes="192x192" />
244<link rel="apple-touch-icon" href="https://dirkriehle.com/wp-content/uploads/2023/06/wp-1685822180351-300x300.png" />
245<meta name="msapplication-TileImage" content="https://dirkriehle.com/wp-content/uploads/2023/06/wp-1685822180351-300x300.png" />
246</head>
247
248<body class="wp-singular page-template-default page page-id-5375 page-parent wp-embed-responsive wp-theme-twentytwentythree jps-theme-twentytwentythree">
249<script id='jetpack-search-theme-token-sampler'>(function(){try{var c=getComputedStyle(document.body),r=document.documentElement,ink=c.color,bg=c.backgroundColor;if(ink){r.style.setProperty('--jp-search-page-ink',ink);}if(bg&&bg!==ink&&bg!=='rgba(0, 0, 0, 0)'&&bg!=='transparent'){r.style.setProperty('--jp-search-page-surface',bg);}}catch(e){}})();</script>
249
250<a class="skip-link screen-reader-text" id="wp-skip-link" href="#wp--skip-link--target">Skip to content</a><div class="wp-site-blocks"><header class="wp-block-template-part">
251<div class="wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained" style="margin-top:var(--wp--preset--spacing--30);margin-bottom:var(--wp--preset--spacing--30)"><p class="has-text-align-left alignwide wp-block-site-title"><a href="https://dirkriehle.com" target="_self" rel="home">Dirk Riehle&#039;s Industry and Research Publications</a></p>
252
253
254<div class="wp-block-group alignwide is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-d344c601 wp-block-group-is-layout-flex">
255<div class="wp-block-group is-layout-flex wp-container-core-group-is-layout-5f3fe452 wp-block-group-is-layout-flex">
256<figure class="wp-block-image size-medium is-resized"><a href="https://bayave.com/"><img decoding="async" width="300" height="77" src="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-1-Services-Framed-Dark-300x77.png" alt="" class="wp-image-16691" style="width:160px;height:40px" srcset="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-1-Services-Framed-Dark-300x77.png 300w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-1-Services-Framed-Dark-768x198.png 768w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-1-Services-Framed-Dark.png 830w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
257
258
259
260<figure class="wp-block-image size-medium is-resized"><a href="https://dirkriehle.com/"><img decoding="async" width="300" height="77" src="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-2-Industry-Framed-300x77.png" alt="" class="wp-image-16692" style="width:160px;height:40px" srcset="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-2-Industry-Framed-300x77.png 300w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-2-Industry-Framed-768x198.png 768w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-2-Industry-Framed.png 830w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
261
262
263
264<figure class="wp-block-image size-medium is-resized"><a href="https://profriehle.com/"><img decoding="async" width="300" height="77" src="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-3-Academia-Framed-Dark-300x77.png" alt="" class="wp-image-16695" style="width:160px;height:40px" srcset="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-3-Academia-Framed-Dark-300x77.png 300w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-3-Academia-Framed-Dark-768x198.png 768w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-3-Academia-Framed-Dark.png 830w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
265
266
267
268<figure class="wp-block-image size-medium is-resized"><a href="https://uni1.de/"><img decoding="async" width="300" height="77" src="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-4-Teaching-Framed-Dark-300x77.png" alt="" class="wp-image-16697" style="width:160px;height:40px" srcset="https://dirkriehle.com/wp-content/uploads/2023/05/Menu-4-Teaching-Framed-Dark-300x77.png 300w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-4-Teaching-Framed-Dark-768x198.png 768w, https://dirkriehle.com/wp-content/uploads/2023/05/Menu-4-Teaching-Framed-Dark.png 830w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
269</div>
270
271
272<form role="search" method="get" action="https://dirkriehle.com/" class="wp-block-search__button-outside wp-block-search__text-button wp-block-search" ><label class="wp-block-search__label screen-reader-text" for="wp-block-search__input-1" >Search</label><div class="wp-block-search__inside-wrapper" ><input class="wp-block-search__input" id="wp-block-search__input-1" placeholder="" value="" type="search" name="s" required /><button aria-label="Search" class="wp-block-search__button wp-element-button" type="submit" >Search</button></div></form></div>
273
274
275<nav class="is-responsive items-justified-left alignwide wp-block-navigation is-content-justification-left is-layout-flex wp-container-core-navigation-is-layout-fa838b63 wp-block-navigation-is-layout-flex" aria-label="Header Menu" 
276		 data-wp-interactive="core/navigation" data-wp-context='{"overlayOpenedBy":{"click":false,"hover":false,"focus":false},"type":"overlay","roleAttribute":"","ariaLabel":"Menu"}'><button aria-haspopup="dialog" aria-label="Open menu" class="wp-block-navigation__responsive-container-open" 
277				data-wp-on--click="actions.openMenuOnClick"
278				data-wp-on--keydown="actions.handleMenuKeydown"
279			><svg width="24" height="24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
279<path d="M4 7.5h16v1.5H4z"></path><path d="M4 15h16v1.5H4z"></path></svg></button>
280				<div class="wp-block-navigation__responsive-container"  id="modal-2" 
281				data-wp-class--has-modal-open="state.isMenuOpen"
282				data-wp-class--is-menu-open="state.isMenuOpen"
283				data-wp-watch="callbacks.initMenu"
284				data-wp-on--keydown="actions.handleMenuKeydown"
285				data-wp-on--focusout="actions.handleMenuFocusout"
286				tabindex="-1"
287			>
288					<div class="wp-block-navigation__responsive-close" tabindex="-1">
289						<div class="wp-block-navigation__responsive-dialog" 
290				data-wp-bind--aria-modal="state.ariaModal"
291				data-wp-bind--aria-label="state.ariaLabel"
292				data-wp-bind--role="state.roleAttribute"
293			>
294							<button aria-label="Close menu" class="wp-block-navigation__responsive-container-close" 
295				data-wp-on--click="actions.closeMenuOnClick"
296			><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" focusable="false"><path d="m13.06 12 6.47-6.47-1.06-1.06L12 10.94 5.53 4.47 4.47 5.53 10.94 12l-6.47 6.47 1.06 1.06L12 13.06l6.47 6.47 1.06-1.06L13.06 12Z"></path></svg></button>
297							<div class="wp-block-navigation__responsive-container-content" 
298				data-wp-watch="callbacks.focusFirstElement"
299			 id="modal-2-content">
300								<ul class="wp-block-navigation__container is-responsive items-justified-left alignwide wp-block-navigation"><li class="wp-block-navigation-item current-menu-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/about" aria-current="page"><span class="wp-block-navigation-item__label">About</span></a></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="/open-source/"><span class="wp-block-navigation-item__label">Open Source</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="Open Source submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="/open-source/software/"><span class="wp-block-navigation-item__label">Open-Source Software</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="Open-Source Software submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter
300="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="/open-source/software/free-and-open/"><span class="wp-block-navigation-item__label">Free and open-source software</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="Free and open-source software submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-source/software/free-and-open/why-use-reasons-for/"><span class="wp-block-navigation-item__label">Why use open-source software?</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-source/software/free-and-open/intellectual-property-rights/"><span class="wp-block-navigation-item__label">Intellectual property rights</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-source/software/free-and-open/licenses/"><span class="wp-block-navigation-item__label">Open-source software licenses</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-source/software/free-and-open/end-users-and-distributors/"><span class="wp-block-navigation-item__label">End-users and distributors</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-source/software/free-and-open/the-copyleft-obligation/"><span class="wp-block-navigation-item__label">The copyleft obligation</span></a></li></ul></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-source/software/program-offices/"><span class="wp-block-navigation-item__label">Open source program offices</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/open-source/software/bill-of-materials/"><span class="wp-block-navigation-item__label">The software bill of materials</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-source/software/license-compliance/"><span class="wp-block-navigation-item__label">License compliance</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/open-source/software/supply-chain-security/"><span class="wp-block-navigation-item__label">Supply chain security</span></a></li></ul></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="/publications"><span class="wp-block-navigation-item__label">Publications</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="Publications submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false">
300<path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2026-selected/"><span class="wp-block-navigation-item__label">2026 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2026 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/2026-selected/single-vendor-open-source-its-not-a-project-it-is-a-feature/"><span class="wp-block-navigation-item__label">Single-Vendor Open Source: It’s not a Project, it is a Feature!</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2023-selected/"><span class="wp-block-navigation-item__label">2023 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2023 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2023-selected/the-future-of-the-open-source-definition/"><span class="wp-block-navigation-item__label">The Future of the Open Source Definition</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2023-selected/mit-open-source-und-offenheit-gewinnen/"><span class="wp-block-navigation-item__label">Mit Open Source und Offenheit gewinnen</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter
300="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2021-selected/"><span class="wp-block-navigation-item__label">2021 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2021 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2021-selected/the-open-source-distributor-business-model/"><span class="wp-block-navigation-item__label">The Open Source Distributor Business Model</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2020-selected/"><span class="wp-block-navigation-item__label">2020 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2020 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2020-selected/single-vendor-open-source-firms-and-their-intellectual-property-strategies/"><span class="wp-block-navigation-item__label">Single-Vendor Open Source Firms (and Their Intellectual Property Strategies)</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2019-selected/"><span class="wp-block-navigation-item__label">2019 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2019 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false">
300<path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2019-selected/the-innovations-of-open-source/"><span class="wp-block-navigation-item__label">The Innovations of Open Source</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2017-selected/"><span class="wp-block-navigation-item__label">2017 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2017 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2017-selected/license-clearance-in-software-product-governance/"><span class="wp-block-navigation-item__label">Open Source License Compliance in Software Supply Chains</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2014-selected/"><span class="wp-block-navigation-item__label">2014 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2014 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2014-selected/the-five-stages-of-open-source-volunteering/"><span class="wp-block-navigation-item__label">The Five Stages of Open Source Volunteering</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2014-selected/the-open-source-software-developer-career-and-its-benefits/"><span class="wp-block-navigation-item__label">The Open Source Software Developer Career and Its Benefits</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter
300="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2011-selected/"><span class="wp-block-navigation-item__label">2011 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2011 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2011-selected/control-points-and-steering-mechanisms-in-open-source-software-projects/"><span class="wp-block-navigation-item__label">Control Points and Steering Mechanisms in Open Source Software Projects</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2010-selected/"><span class="wp-block-navigation-item__label">2010 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2010 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2010-selected/the-economic-case-for-open-source-foundations/"><span class="wp-block-navigation-item__label">The Economic Case for Open Source Foundations</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2009-selected/"><span class="wp-block-navigation-item__label">2009 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2009 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false">
300<path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2009-selected/open-collaboration-within-corporations-using-software-forges/"><span class="wp-block-navigation-item__label">Open Collaboration within Corporations Using Software Forges</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2009-selected/the-commercial-open-source-business-model/"><span class="wp-block-navigation-item__label">The Single-Vendor Commercial Open Source Business Model</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2008-selected/"><span class="wp-block-navigation-item__label">2008 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2008 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2008-selected/bringing-open-source-best-practices-into-corporations-using-a-software-forge/"><span class="wp-block-navigation-item__label">Bringing Open Source Best Practices into Corporations Using a Software Forge</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2008-selected/the-total-growth-of-open-source/"><span class="wp-block-navigation-item__label">The Total Growth of Open Source</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2008-selected/wiki-creole/"><span class="wp-block-navigation-item__label">Wiki Creole Grammar, Schema, and Transformations</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2007-selected/"><span class="wp-block-navigation-item__label">2007 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2007 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false">
300<path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://riehle.org/computer-science/research/2007/computer-2007-article.html"><span class="wp-block-navigation-item__label">The Economic Motivation of Open Source Software: Stakeholder Perspectives</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/2000-selected/"><span class="wp-block-navigation-item__label">2000 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="2000 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/2000-selected/framework-design-a-role-modeling-approach/"><span class="wp-block-navigation-item__label">Framework Design: A Role Modeling Approach</span></a></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="https://dirkriehle.com/publications/1998-selected/"><span class="wp-block-navigation-item__label">1998 (Selected)</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="1998 (Selected) submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://dirkriehle.com/publications/1998-selected/values-in-object-systems/"><span class="wp-block-navigation-item__label">Values in Object systems</span></a></li></ul></li></ul></li><li data-wp-context="{ &quot;submenuOpenedBy&quot;: { &quot;click&quot;: false, &quot;hover&quot;: false, &quot;focus&quot;: false }, &quot;type&quot;: &quot;submenu&quot;, &quot;modal&quot;: null, &quot;previousFocus&quot;: null }" data-wp-interactive="core/navigation" data-wp-on--focusout="actions.handleMenuFocusout" data-wp-on--keydown="actions.handleMenuKeydown" data-wp-on--pointerenter
300="actions.openMenuOnHover" data-wp-on--pointerleave="actions.closeMenuOnHover" data-wp-watch="callbacks.initMenu" tabindex="-1" class="wp-block-navigation-item has-child open-on-hover-click wp-block-navigation-submenu"><a class="wp-block-navigation-item__content" href="/open-books"><span class="wp-block-navigation-item__label">Open Books</span></a><button data-wp-bind--aria-expanded="state.isSubmenuOpen" data-wp-on--click="actions.toggleMenuOnClick" aria-label="Open Books submenu" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" ><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg></button><ul data-wp-on--focus="actions.openMenuOnFocus" class="wp-block-navigation__submenu-container wp-block-navigation-submenu"><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-books/open-source-expanded-column/"><span class="wp-block-navigation-item__label">Open Source (IEEE Computer Column)</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/open-books/a-geeks-tour-of-silicon-valley/"><span class="wp-block-navigation-item__label">A Photo Tour of Silicon Valley</span></a></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://uni1.de/photo-galleries/"><span class="wp-block-navigation-item__label">Photo Galleries</span></a></li></ul></li><li class="wp-block-navigation-item wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="https://profriehle.com/open-courses"><span class="wp-block-navigation-item__label">Open Courses</span></a></li></ul>
301								
302							</div>
303						</div>
304					</div>
305				</div></nav></div>
306</header>
307
308
309<main id="wp--skip-link--target" class="wp-block-group has-base-background-color has-background has-global-padding is-layout-constrained wp-block-group-is-layout-constrained" style="padding-top:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30)">
310<div class="wp-block-group alignwide is-layout-flow wp-block-group-is-layout-flow"><h1 class="wp-block-post-title">About</h1>
311
312
313
314<div class="entry-content wp-block-post-content is-layout-flow wp-block-post-content-is-layout-flow">
315<p class="wp-block-paragraph">I&#8217;m a professor of computer science at a large university in Germany. I became a professor after working in the software industry for 15 years. I have lived and worked in Germany, Switzerland, and the U.S.A. Also, project travel brings me to S/E Asia a lot. I can be reached by</p>
316
317
318
319<ul class="wp-block-list">
320<li>Email at <strong><a href="mailto:[email protected]">[email protected]</a></strong> or</li>
321
322
323
324<li>Phone at <strong>+49 157 8153 4150.</strong></li>
325</ul>
326
327
328
329<p class="wp-block-paragraph">If you are so inclined, you can also check out the <a href="/legal-notices/">legal notices</a> for this site.</p>
330
331
332
333<h2 class="wp-block-heading">Short Biography (English)</h2>
334
335
336
337<p class="wp-block-paragraph">Dirk Riehle is a <a href="https://oss.cs.fau.de/">professor of computer science</a> at FAU Erlangen. They are also the CEO of <a href="https://bayave.com/">Bayave GmbH</a>, a training and consulting firm. Their work helps companies succeed in and through software, with a specialization in open source, inner source, and product strategy. Before joining academia, Prof. Riehle led the open source research group at SAP Labs in Palo Alto, California (Silicon Valley). They also worked for software startups and large corporations in Boston, MA and Zurich, Switzerland, as a software developer, architect, and engineering manager. Riehle holds a Ph.D. in computer science from <a href="https://ethz.ch/">ETH Zurich</a> and an M.B.A. from <a href="https://gsb.stanford.edu/">Stanford Graduate School of Business</a>. They welcome email at <a href="mailto:[email protected]">[email protected]</a>, blog at <a href="https://dirkriehle.com">https://dirkriehle.com</a>, and tweet as <a href="https://twitter.com/dirkriehle">@dirkriehle</a>.</p>
338
339
340
341<p class="wp-block-paragraph">(768 characters)</p>
342
343
344
345<h2 class="wp-block-heading">Kurzbiographie (Deutsch)</h2>
346
347
348
349<p class="wp-block-paragraph">Dirk Riehle ist Professor für Informatik an der FAU Erlangen. Zudem ist er Geschäftsführer der Bayave GmbH, einem Trainings- und Beratungsunternehmen. Spezialisiert auf Open Source, Inner Source, und Produktstrategie, hilft er Unternehmen, mit Software erfolgreich zu sein. Bevor er in die Wissenschaft wechselte, leitete Prof. Riehle die Open-Source-Forschungsgruppe der SAP Labs in Palo Alto, Kalifornien (Silicon Valley). Außerdem arbeitete er für Startups und große Unternehmen in Boston und Zürich als Softwareentwickler, Architekt und Entwicklungsleiter. Riehle promovierte in Informatik an der ETH Züric
349h und besitzt einen M.B.A. der Stanford Graduate School of Business. Er ist per E-Mail unter <a>[email protected]</a> erreichbar, bloggt unter <a href="https://dirkriehle.com">https://dirkriehle.com</a> und twittert als <a href="https://twitter.com/dirkriehle">@dirkriehle</a>.</p>
350
351
352
353<p class="wp-block-paragraph">(796 Zeichen)</p>
354
355
356
357<p class="wp-block-paragraph"></p>
358</div>
359
360<div class="wp-block-template-part">
361<div class="wp-block-comments alignwide">
362<h2 class="wp-block-heading">Comments</h2>
363
364
365
366		<div id="respond" class="comment-respond wp-block-post-comments-form">
367			<h3 id="reply-title" class="comment-reply-title">Leave a Reply<small><a rel="nofollow" id="cancel-comment-reply-link" href="/about/#respond" style="display:none;">Cancel reply</a></small></h3>			<form id="commentform" class="comment-form">
368				<iframe
369					title="Comment Form"
370					src="https://jetpack.wordpress.com/jetpack-comment/?blogid=3355508&#038;postid=5375&#038;comment_registration=0&#038;require_name_email=1&#038;stc_enabled=0&#038;stb_enabled=1&#038;show_avatars=1&#038;avatar_default=mystery&#038;greeting=Leave+a+Reply&#038;jetpack_comments_nonce=44cc4926fa&#038;greeting_reply=Leave+a+Reply+to+%25s&#038;color_scheme=light&#038;lang=en_US&#038;jetpack_version=16.2&#038;iframe_unique_id=3&#038;show_cookie_consent=10&#038;has_cookie_consent=0&#038;is_current_user_subscribed=0&#038;token_key=%3Bnormal%3B&#038;sig=57f303dbc3e755bb06d013ca40832c32ecca9380#parent=https%3A%2F%2Fdirkriehle.com%2Fabout%2F"
371											name="jetpack_remote_comment"
372						style="width:100%; height: 430px; border:0;"
373										class="jetpack_remote_comment"
374					id="jetpack_remote_comment"
375					sandbox="allow-same-origin allow-top-navigation allow-scripts allow-forms allow-popups"
376				>
377									</iframe>
378									<!--[if !IE]><!-->
379					
379<script>
380						document.addEventListener('DOMContentLoaded', function () {
381							var commentForms = document.getElementsByClassName('jetpack_remote_comment');
382							for (var i = 0; i < commentForms.length; i++) {
383								commentForms[i].allowTransparency = false;
384								commentForms[i].scrolling = 'no';
385							}
386						});
387					</script>
387
388					<!--<![endif]-->
389							</form>
390		</div>
391
392		
393		<input type="hidden" name="comment_parent" id="comment_parent" value="" />
394
395		<p class="akismet_comment_form_privacy_notice">This site uses Akismet to reduce spam. <a href="https://akismet.com/privacy/" target="_blank" rel="nofollow noopener">Learn how your comment data is processed.</a></p>
396
397<ol style="padding-top:0;padding-bottom:0" class="wp-block-comment-template"><li id="comment-5441" class="pingback even thread-even depth-1">
398
399<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
400<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"></div></div>
401
402
403
404<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://inspohub.de/software-testing-open-source-sicher-und-einfach-einsetzen/" target="_self" >Software Testing: Open Source sicher und einfach einsetzen - Inspohub</a></div>
405
406
407<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2025-07-22T09:21:18+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-5441">2025-07-22</a></time></div>
408
409</div>
410
411
412<div class="wp-block-comment-content"><p>[&#8230;] Software Testing über die zentrale Rolle von Open Source in der heutigen Softwareentwicklung. Dirk Riehle, Informatik-Professor an der Universität Erlangen, erläutert, warum es für Unternehmen [&#8230;]</p>
413</div>
414
415<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=5441#respond" data-commentid="5441" data-postid="5375" data-belowelement="comment-5441" data-respondelement="respond" data-replyto="Reply to Software Testing: Open Source sicher und einfach einsetzen - Inspohub" aria-label="Reply to Software Testing: Open Source sicher und einfach einsetzen - Inspohub">Reply</a></div></div>
416</div>
417
418</li><li id="comment-5257" class="pingback odd alt thread-odd thread-alt depth-1">
419
420<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
421<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"></div></div>
422
423
424
425<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://inspohub.de/software-architektur-tv-open-source-komponenten-rechtssicher-verwenden-heise-online/" target="_self" >software-architektur.tv: Open-Source-Komponenten rechtssicher verwenden | heise online - Inspohub</a></div>
426
427
428<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2025-07-04T11:18:44+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-5257">2025-07-04</a></time></div>
429
430</div>
431
432
433<div class="wp-block-comment-content"><p>[&#8230;] Prof. Dirk Riehle ist Professor für Open-Source-Software und diskutiert diese und andere Fragen in Eberhard Wolffs Videocast. Weitere Informationen über den heutigen Gast finden sich auf dessen Website. [&#8230;]</p>
434</div>
435
436<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=5257#respond" data-commentid="5257" data-postid="5375" data-belowelement="comment-5257" data-respondelement="respond" data-replyto="Reply to software-architektur.tv: Open-Source-Komponenten rechtssicher verwenden | heise online - Inspohub" aria-label="Reply to software-architektur.tv: Open-Source-Komponenten rechtssicher verwenden | heise online - Inspohub">Reply</a></div></div>
437</div>
438
439</li>
439<li id="comment-168" class="pingback even thread-even depth-1">
440
441<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
442<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"></div></div>
443
444
445
446<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://dirkriehle.com/2019/03/08/levels-of-complexity-in-inner-source-projects/" target="_self" >Escalating Levels of Complexity in Inner Source Projects - Software Research and the Industry</a></div>
447
448
449<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2020-05-09T21:38:23+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-168">2020-05-09</a></time></div>
450
451</div>
452
453
454<div class="wp-block-comment-content"><p>[&#8230;] About   [&#8230;]</p>
455</div>
456
457<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=168#respond" data-commentid="168" data-postid="5375" data-belowelement="comment-168" data-respondelement="respond" data-replyto="Reply to Escalating Levels of Complexity in Inner Source Projects - Software Research and the Industry" aria-label="Reply to Escalating Levels of Complexity in Inner Source Projects - Software Research and the Industry">Reply</a></div></div>
458</div>
459
460</li><li id="comment-167" class="pingback odd alt thread-odd thread-alt depth-1">
461
462<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
463<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"></div></div>
464
465
466
467<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://dirkriehle.com/2019/08/08/why-self-enlightened-contribution-to-open-source-projects-is-difficult/" target="_self" >Why Self-Enlightened Contribution to Open Source Projects is Difficult - Software Research and the Industry</a></div>
468
469
470<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2019-08-08T16:52:44+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-167">2019-08-08</a></time></div>
471
472</div>
473
474
475<div class="wp-block-comment-content"><p>[&#8230;] About   [&#8230;]</p>
476</div>
477
478<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=167#respond" data-commentid="167" data-postid="5375" data-belowelement="comment-167" data-respondelement="respond" data-replyto="Reply to Why Self-Enlightened Contribution to Open Source Projects is Difficult - Software Research and the Industry" aria-label="Reply to Why Self-Enlightened Contribution to Open Source Projects is Difficult - Software Research and the Industry">Reply</a></div></div>
479</div>
480
481</li><li id="comment-166" class="pingback even thread-even depth-1">
482
483<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
484<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"></div></div>
485
486
487
488<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://bayave.com/2016/05/10/about-bayave-gmbh/" target="_self" >About Bayave GmbH &#8211; BAYAVE GMBH</a></div>
489
490
491<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2019-07-24T14:53:37+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-166">2019-07-24</a></time></div>
492
493</div>
494
495
496<div class="wp-block-comment-content"><p>[&#8230;] learn more about Prof. Riehle, please see his professional blog and his short resume. He also leads the Open Source Research Group at [&#823
4960;]</p>
497</div>
498
499<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=166#respond" data-commentid="166" data-postid="5375" data-belowelement="comment-166" data-respondelement="respond" data-replyto="Reply to About Bayave GmbH &#8211; BAYAVE GMBH" aria-label="Reply to About Bayave GmbH &#8211; BAYAVE GMBH">Reply</a></div></div>
500</div>
501
502</li><li id="comment-165" class="pingback odd alt thread-odd thread-alt depth-1">
503
504<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
505<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"></div></div>
506
507
508
509<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://dirkriehle.com/2016/08/30/an-example-charter-for-inner-source-programs/" target="_self" >An Example Charter for Inner Source Programs - Software Research and the Industry</a></div>
510
511
512<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2019-03-08T16:41:32+01:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-165">2019-03-08</a></time></div>
513
514</div>
515
516
517<div class="wp-block-comment-content"><p>[&#8230;] About   [&#8230;]</p>
518</div>
519
520<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=165#respond" data-commentid="165" data-postid="5375" data-belowelement="comment-165" data-respondelement="respond" data-replyto="Reply to An Example Charter for Inner Source Programs - Software Research and the Industry" aria-label="Reply to An Example Charter for Inner Source Programs - Software Research and the Industry">Reply</a></div></div>
521</div>
522
523</li><li id="comment-164" class="comment even thread-even depth-1">
524
525<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
526<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"><img alt='Dirk Riehle Avatar' src='https://secure.gravatar.com/avatar/4841e86fba7986e38d1aa30c0e39a90e46a889814b7294d696eab1e3c4c5897b?s=40&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/4841e86fba7986e38d1aa30c0e39a90e46a889814b7294d696eab1e3c4c5897b?s=80&#038;d=mm&#038;r=g 2x' class='avatar avatar-40 photo wp-block-avatar__image' height='40' width='40'  style="border-radius:20px;" loading='lazy' decoding='async'/></div></div>
527
528
529
530<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://dirkriehle.com" target="_self" >Dirk Riehle</a></div>
531
532
533<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2010-08-14T17:42:12+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-164">2010-08-14</a></time></div>
534
535</div>
536
537
538<div class="wp-block-comment-content"><p>Hi Mekki,<br />
539thanks for the note. I make a point of being explicit in licensing but the default is indeed (C) by me unless specified otherwise, i.e. no license.<br />
540Fair use rights let&#8217;s you take things in reasonable quantities but if you want to reuse whole works and I didn&#8217;t specify a license, I&#8217;d prefer if you talk to me. (Always curious.)<br />
541Cheers,<br />
542Dirk</p>
543</div>
544
545<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=164#respond" data-commentid="164" data-postid="5375" data-belowelement="comment-164" data-respondelement="respond" data-replyto="Reply to Dirk Riehle" aria-label="Reply to Dirk Riehle">Reply</a></div></div>
546</div>
547
548</li>
548<li id="comment-163" class="comment odd alt thread-odd thread-alt depth-1">
549
550<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
551<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"><img alt='Mekki MacAulay Avatar' src='https://secure.gravatar.com/avatar/1756d8d76ed7cc90fe9ac5bead28ec207fddeab40a1273b71324ce6849c4af1f?s=40&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/1756d8d76ed7cc90fe9ac5bead28ec207fddeab40a1273b71324ce6849c4af1f?s=80&#038;d=mm&#038;r=g 2x' class='avatar avatar-40 photo wp-block-avatar__image' height='40' width='40'  style="border-radius:20px;" loading='lazy' decoding='async'/></div></div>
552
553
554
555<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="http://osstrategy.org" target="_self" >Mekki MacAulay</a></div>
556
557
558<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2010-08-13T06:54:59+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-163">2010-08-13</a></time></div>
559
560</div>
561
562
563<div class="wp-block-comment-content"><p>I note that a lot of your work is CC licensed.  Great stuff!  I came across your page when doing research for an IEEE conference presentation on open source.<br />
564It would be really helpful for people like me if there were a general copyright statement in the &#8220;About&#8221; section.  Something like &#8220;Unless otherwise specified, things on this page are licensed as CC BY-SA-NC&#8221;, or whatever license you feel comfortable with (or none, if that&#8217;s your choice).<br />
565I make a point of respecting the choices of authors with their work and it&#8217;s helpful to locate that choice in an easy to see place on the page.<br />
566Keep up the great work! 🙂</p>
567</div>
568
569<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=163#respond" data-commentid="163" data-postid="5375" data-belowelement="comment-163" data-respondelement="respond" data-replyto="Reply to Mekki MacAulay" aria-label="Reply to Mekki MacAulay">Reply</a></div></div>
570</div>
571
572</li><li id="comment-162" class="comment byuser comment-author-dirk-riehle bypostauthor even thread-even depth-1">
573
574<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
575<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"><img alt='Dirk Riehle Avatar' src='https://secure.gravatar.com/avatar/4841e86fba7986e38d1aa30c0e39a90e46a889814b7294d696eab1e3c4c5897b?s=40&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/4841e86fba7986e38d1aa30c0e39a90e46a889814b7294d696eab1e3c4c5897b?s=80&#038;d=mm&#038;r=g 2x' class='avatar avatar-40 photo wp-block-avatar__image' height='40' width='40'  style="border-radius:20px;" loading='lazy' decoding='async'/></div></div>
576
577
578
579<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="https://dirkriehle.com" target="_self" >Dirk Riehle</a></div>
580
581
582<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2010-07-10T14:47:17+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-162">2010-07-10</a></time></div>
583
584</div>
585
586
587<div class="wp-block-comment-content"><p>Check out our current project at <a href="http://dosis.sf.net" rel="nofollow ugc">http://dosis.sf.net</a>; also, there is so much that I can&#8217;t list it all here; try your local or country&#8217;s SIG (special interest group) on the subject. &#8211;Dirk</p>
588</div>
589
590<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=162#respond" data-commentid="162" data-postid="5375" data-belowelement="comment-162" data-respondelement="respond" data-replyto="Reply to Dirk Riehle" aria-label="Reply to Dirk Riehle">Reply</a></div></div>
591</div>
592
593</li>
593<li id="comment-161" class="comment odd alt thread-odd thread-alt depth-1">
594
595<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-f06e4358 wp-block-columns-is-layout-flex" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--40)">
596<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"><div class="wp-block-avatar"><img alt='Fernando Crespo Avatar' src='https://secure.gravatar.com/avatar/536dfb779a067e8e97bb87fe81e7698f8299ba1dfeafc9a98d874b96b16ec7ab?s=40&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/536dfb779a067e8e97bb87fe81e7698f8299ba1dfeafc9a98d874b96b16ec7ab?s=80&#038;d=mm&#038;r=g 2x' class='avatar avatar-40 photo wp-block-avatar__image' height='40' width='40'  style="border-radius:20px;" loading='lazy' decoding='async'/></div></div>
597
598
599
600<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-comment-author-name"><a rel="external nofollow ugc" href="http://www2.ing.puc.cl/~fcrespo" target="_self" >Fernando Crespo</a></div>
601
602
603<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex" style="margin-top:0px;margin-bottom:0px"><div class="wp-block-comment-date"><time datetime="2010-05-16T07:56:59+02:00"><a href="https://dirkriehle.com/about/comment-page-1/#comment-161">2010-05-16</a></time></div>
604
605</div>
606
607
608<div class="wp-block-comment-content"><p>I read your paper of Computer&#8217;s IEEE. And I like to know over links to research over open source medical software. This report was more important to me.<br />
609Bye,<br />
610Fernando Crespo R.</p>
611</div>
612
613<div class="wp-block-comment-reply-link"><a rel="nofollow" class="comment-reply-link" href="https://dirkriehle.com/about/comment-page-1/?replytocom=161#respond" data-commentid="161" data-postid="5375" data-belowelement="comment-161" data-respondelement="respond" data-replyto="Reply to Fernando Crespo" aria-label="Reply to Fernando Crespo">Reply</a></div></div>
614</div>
615
616</li></ol>
617
618</div>
619</div></div>
620</main>
621
622
623<footer class="wp-block-template-part">
624<div class="wp-block-group has-global-padding is-layout-constrained wp-container-core-group-is-layout-11295aa2 wp-block-group-is-layout-constrained" style="margin-top:var(--wp--preset--spacing--30);margin-bottom:var(--wp--preset--spacing--30);padding-top:0;padding-right:var(--wp--preset--spacing--30);padding-bottom:0;padding-left:var(--wp--preset--spacing--30)"><div class="wp-block-jetpack-cookie-consent">
625<div class="wp-block-jetpack-cookie-consent alignwide has-text-color has-background" style="color:var(--wp--preset--color--contrast, #000000);background-color:var(--wp--preset--color--tertiary, #f0f0f0);padding-top:1em;padding-right:1em;padding-bottom:1em;padding-left:1em" role="dialog" aria-modal="true"><p>This site uses cookies. By continuing to use this website, you agree to their use. To find out more, including how to control cookies, see here: <a href="https://automattic.com/cookies/">Cookie Policy</a>.</p>
626<div class="wp-block-button"><a class="wp-block-button__link wp-element-button">Accept</a></div>
627<span>365</span></div>
628</div>
629
630
631<div class="wp-block-group alignwide is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-f01d84c1 wp-block-group-is-layout-flex">
632<div class="wp-block-group is-layout-flex wp-block-group-is-layout-flex">
633<p class="wp-block-paragraph"><strong>Follow me on</strong></p>
634
635
636
637<ul class="wp-block-social-links is-layout-flex wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-linkedin wp-block-social-link"><a href="https://www.linkedin.com/in/dirkriehle/" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,
6371.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z"></path></svg><span class="wp-block-social-link-label screen-reader-text">LinkedIn</span></a></li></ul>
638
639
640
641<ul class="wp-block-social-links is-layout-flex wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-twitter wp-block-social-link"><a href="https://twitter.com/dirkriehle/" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M22.23,5.924c-0.736,0.326-1.527,0.547-2.357,0.646c0.847-0.508,1.498-1.312,1.804-2.27 c-0.793,0.47-1.671,0.812-2.606,0.996C18.324,4.498,17.257,4,16.077,4c-2.266,0-4.103,1.837-4.103,4.103 c0,0.322,0.036,0.635,0.106,0.935C8.67,8.867,5.647,7.234,3.623,4.751C3.27,5.357,3.067,6.062,3.067,6.814 c0,1.424,0.724,2.679,1.825,3.415c-0.673-0.021-1.305-0.206-1.859-0.513c0,0.017,0,0.034,0,0.052c0,1.988,1.414,3.647,3.292,4.023 c-0.344,0.094-0.707,0.144-1.081,0.144c-0.264,0-0.521-0.026-0.772-0.074c0.522,1.63,2.038,2.816,3.833,2.85 c-1.404,1.1-3.174,1.756-5.096,1.756c-0.331,0-0.658-0.019-0.979-0.057c1.816,1.164,3.973,1.843,6.29,1.843 c7.547,0,11.675-6.252,11.675-11.675c0-0.178-0.004-0.355-0.012-0.531C20.985,7.47,21.68,6.747,22.23,5.924z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Twitter</span></a></li></ul>
642
643
644
645<ul class="wp-block-social-links is-layout-flex wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-youtube wp-block-social-link"><a href="https://youtube.com/dirkriehle" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z"></path></svg><span class="wp-block-social-link-label screen-reader-text">YouTube</span></a></li></ul>
646
647
648
649<ul class="wp-block-social-links is-layout-flex wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-mastodon wp-block-social-link"><a href="https://hachyderm.io/@dirkriehle" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M23.193 7.879c0-5.206-3.411-6.732-3.411-6.732C18.062.357 15.108.025 12.041 0h-.076c-3.068.025-6.02.357-7.74 1.147 0 0-3.411 1.526-3.411 6.732 0 1.192-.023 2.618.015 4.129.124 5.092.934 10.109 5.641 11.355 2.17.574 4.034.695 5.535.612 2.722-.15 4.25-.972 4.25-.972l-.09-1.975s-1.945.613-4.129.539c-2.165-.074-4.449-.233-4.799-2.891a5.499 5.499 0 0 1-.048-.745s2.125.52 4.817.643c1.646.075 3.19-.097 4.758-.283 3.007-.359 5.625-2.212 5.954-3.905.517-2.665.475-6.507.475-6.507zm-4.024 6.709h-2.497V8.469c0-1.29-.543-1.944-1.628-1.944-1.2 0-1.802.776-1.802 2.312v3.349h-2.483v-3.35c0-1.536-.602-2.312-1.802-2.312-1.085 0-1.628.655-1.628 1.944v6.119H4.832V8.284c0-1.289.328-2.313.987-3.07.68-.758 1.569-1.146 2.674-1.146 1.278 0 2.246.491 2.886 1.474L12 6.585l.622-1.043c.64-.983 1.608-1.474 2.886-1.474 1.104 0 1.994.388 2.674 1.146.658.757.986 1.781.986 3.07v6.304z"/></svg><span class="wp-block-social-link-label screen-reader-text">Mastodon</span></a></li></ul>
650
651
652
653<ul class="wp-block-social-links is-layout-flex wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-github wp-block-social-link"><a href="https://github.com/dirkriehle/" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
653<path d="M12,2C6.477,2,2,6.477,2,12c0,4.419,2.865,8.166,6.839,9.489c0.5,0.09,0.682-0.218,0.682-0.484 c0-0.236-0.009-0.866-0.014-1.699c-2.782,0.602-3.369-1.34-3.369-1.34c-0.455-1.157-1.11-1.465-1.11-1.465 c-0.909-0.62,0.069-0.608,0.069-0.608c1.004,0.071,1.532,1.03,1.532,1.03c0.891,1.529,2.341,1.089,2.91,0.833 c0.091-0.647,0.349-1.086,0.635-1.337c-2.22-0.251-4.555-1.111-4.555-4.943c0-1.091,0.39-1.984,1.03-2.682 C6.546,8.54,6.202,7.524,6.746,6.148c0,0,0.84-0.269,2.75,1.025C10.295,6.95,11.15,6.84,12,6.836 c0.85,0.004,1.705,0.114,2.504,0.336c1.909-1.294,2.748-1.025,2.748-1.025c0.546,1.376,0.202,2.394,0.1,2.646 c0.64,0.699,1.026,1.591,1.026,2.682c0,3.841-2.337,4.687-4.565,4.935c0.359,0.307,0.679,0.917,0.679,1.852 c0,1.335-0.012,2.415-0.012,2.741c0,0.269,0.18,0.579,0.688,0.481C19.138,20.161,22,16.416,22,12C22,6.477,17.523,2,12,2z"></path></svg><span class="wp-block-social-link-label screen-reader-text">GitHub</span></a></li></ul>
654</div>
655
656
657<nav class="is-responsive wp-block-navigation is-layout-flex wp-block-navigation-is-layout-flex" aria-label="Footer Menu" 
658		 data-wp-interactive="core/navigation" data-wp-context='{"overlayOpenedBy":{"click":false,"hover":false,"focus":false},"type":"overlay","roleAttribute":"","ariaLabel":"Menu"}'><button aria-haspopup="dialog" aria-label="Open menu" class="wp-block-navigation__responsive-container-open" 
659				data-wp-on--click="actions.openMenuOnClick"
660				data-wp-on--keydown="actions.handleMenuKeydown"
661			><svg width="24" height="24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M4 7.5h16v1.5H4z"></path><path d="M4 15h16v1.5H4z"></path></svg></button>
662				<div class="wp-block-navigation__responsive-container"  id="modal-4" 
663				data-wp-class--has-modal-open="state.isMenuOpen"
664				data-wp-class--is-menu-open="state.isMenuOpen"
665				data-wp-watch="callbacks.initMenu"
666				data-wp-on--keydown="actions.handleMenuKeydown"
667				data-wp-on--focusout="actions.handleMenuFocusout"
668				tabindex="-1"
669			>
670					<div class="wp-block-navigation__responsive-close" tabindex="-1">
671						<div class="wp-block-navigation__responsive-dialog" 
672				data-wp-bind--aria-modal="state.ariaModal"
673				data-wp-bind--aria-label="state.ariaLabel"
674				data-wp-bind--role="state.roleAttribute"
675			>
676							<button aria-label="Close menu" class="wp-block-navigation__responsive-container-close" 
677				data-wp-on--click="actions.closeMenuOnClick"
678			><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" focusable="false"><path d="m13.06 12 6.47-6.47-1.06-1.06L12 10.94 5.53 4.47 4.47 5.53 10.94 12l-6.47 6.47 1.06 1.06L12 13.06l6.47 6.47 1.06-1.06L13.06 12Z"></path></svg></button>
679							<div class="wp-block-navigation__responsive-container-content" 
680				data-wp-watch="callbacks.focusFirstElement"
681			 id="modal-4-content">
682								<ul class="wp-block-navigation__container is-responsive wp-block-navigation"><li class="wp-block-navigation-item menu-item menu-item-type-post_type menu-item-object-page wp-block-navigation-link"><a class="wp-block-navigation-item__content"  href="/legal-notices" title=""><span class="wp-block-navigation-item__label">Legal Notices</span></a></li></ul>
683								
684							</div>
685						</div>
686					</div>
687				</div></nav></div>
688</div>
689</footer></div>
690<script type="speculationrules">
691{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/twentytwentythree/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
692</script>
692
693		<div class="jetpack-instant-search__widget-area" style="display: none">
694							<div id="jetpack-search-filters-1" class="widget jetpack-filters widget_search">			<div id="jetpack-search-filters-1-wrapper" class="jetpack-instant-search-wrapper">
695		</div></div>					</div>
696		
696<script data-wp-router-options="{&quot;loadOnClientNavigation&quot;:true}" fetchpriority="low" id="@wordpress/block-library/navigation/view-js-module" src="https://dirkriehle.com/wp-includes/js/dist/script-modules/block-library/navigation/view.min.js?ver=1bf28ded04f9f188bdcb" type="module"></script>
vendor: 1 bytes, line 696
696
697<script id="wp-script-module-data-@wordpress/interactivity" type="application/json">
698{"state":{"jetpack-search":{"siteId":3355508,"apiRoot":"https://dirkriehle.com/wp-json/","nonce":"c62cbfc067","isPrivateSite":false,"isWpcom":false,"isPhotonEnabled":false,"disableTracking":false,"isWooCommerceBlocksEnabled":false,"homeUrl":"https://dirkriehle.com","locale":"en-US","dateFormat":"Y-m-d","searchQuery":"","hasSearchParam":false,"searchParamName":"q","sortOrder":"relevance","activeFilters":[],"filterLogic":[],"priceRange":null,"staticFilterSelections":{},"filterConfigs":[],"results":[],"aggregations":{},"retainedFilterOptions":{},"totalResults":0,"pageHandle":null,"isLoading":false,"isLoadingMore":false,"hasError":false,"resultsCountText":"","strings":{"searching":"Searching…","resultsCountSingle":"Found %d result","resultsCountPlural":"Found %d results","removeFilter":"Remove %s","ratingStarsTop":"5 stars","ratingStarsAndUpSingle":"%d star and up","ratingStarsAndUpPlural":"%d stars and up","priceRangeFromTo":"%1$s – %2$s","priceRangeFrom":"%s+","priceRangeUpTo":"Under %s","priceLabel":"Price","suggestionLabelQuery":"Suggestions","suggestionLabelTaxonomy":"Popular Filters","suggestionLabelPost":"Articles","aiErrorMessage":"Sorry, an error occurred while generating an answer.","aiErrorCode":"Error code: %s"},"priceCurrencySymbol":"$","aiExtendedLoadingHints":["Searching harder","Looking deeper into this","Finding a more complete answer","Analyzing additional sources","Gathering more details","Pulling in more context","Expanding the search","Rolling up my virtual sleeves","Digging through the archives","Putting on my reading glasses","Checking under the digital couch cushions","Consulting the oracle","Asking a smarter algorithm","Brewing a fresh batch of insights","Unleashing the full power of search"],"wcStockStatusLabels":{"instock":"In stock"},"highlightPhraseOnly":false,"highlightFilterStopwords":[],"highlightFields":null,"additionalBlogIds":[],"adminQueryFilter":null,"customResults":[]}}}
699</script>
vendor: 1 bytes, line 699
699
700<script defer id="akismet-frontend-js" src="https://dirkriehle.com/wp-content/plugins/akismet/_inc/akismet-frontend.js?ver=1787198076"></script>
vendor: 1 bytes, line 700
700
701<script async data-wp-strategy="async" fetchpriority="low" id="comment-reply-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/comment-reply.min.js"></script>
vendor: 1 bytes, line 701
701
702<script data-wp-strategy="defer" defer id="jetpack-block-cookie-consent-js" src="https://dirkriehle.com/wp-content/plugins/jetpack/_inc/blocks/cookie-consent/view.js?minify=false&#038;ver=16.2"></script>
vendor: 1 bytes, line 702
702
703<script id="wp-hooks-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/dist/hooks.min.js"></script>
vendor: 1 bytes, line 703
703
704<script id="wp-i18n-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/dist/i18n.min.js"></script>
vendor: 1 bytes, line 704
704
705<script id="wp-i18n-js-after">
706wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } );
707//# sourceURL=wp-i18n-js-after
708</script>
vendor: 1 bytes, line 708
708
709<script id="wp-jp-i18n-loader-js" src="https://dirkriehle.com/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-assets/build/i18n-loader.js?minify=true&#038;ver=5ba5dddc04be2306aaf0"></script>
vendor: 1 bytes, line 709
709
710<script id="wp-jp-i18n-loader-js-after">
711wp.jpI18nLoader.state = {"baseUrl":"https://dirkriehle.com/wp-content/languages/","locale":"en_US","domainMap":{"jetpack-account-protection":"plugins/jetpack","jetpack-activity-log":"plugins/jetpack","jetpack-admin-ui":"plugins/jetpack","jetpack-agents-manager":"plugins/jetpack","jetpack-assets":"plugins/jetpack","jetpack-boost-core":"plugins/jetpack","jetpack-boost-speed-score":"plugins/jetpack","jetpack-config":"plugins/jetpack","jetpack-connection":"plugins/jetpack","jetpack-explat":"plugins/jetpack","jetpack-ip":"plugins/jetpack","jetpack-jitm":"plugins/jetpack","jetpack-licensing":"plugins/jetpack","jetpack-menu-badges":"plugins/jetpack","jetpack-my-jetpack":"plugins/jetpack","jetpack-password-checker":"plugins/jetpack","jetpack-plugins-installer":"plugins/jetpack","jetpack-protect-models":"plugins/jetpack","jetpack-protect-status":"plugins/jetpack","jetpack-sync":"plugins/jetpack","jetpack-transport-helper":"plugins/jetpack-protect","jetpack-waf":"plugins/jetpack","jetpack-wp-build-polyfills":"plugins/jetpack","jetpack-backup-pkg":"plugins/jetpack","jetpack-blaze":"plugins/jetpack","jetpack-block-delimiter":"plugins/jetpack","jetpack-classic-theme-helper":"plugins/jetpack","jetpack-comments":"plugins/jetpack","jetpack-compat":"plugins/jetpack","jetpack-external-connections":"plugins/jetpack","jetpack-external-media":"plugins/jetpack","jetpack-feature-flags":"plugins/jetpack","jetpack-forms":"plugins/jetpack","jetpack-image-cdn":"plugins/jetpack","jetpack-import":"plugins/jetpack","jetpack-jwt":"plugins/jetpack","jetpack-masterbar":"plugins/jetpack","jetpack-newsletter":"plugins/jetpack","jetpack-paypal-payments":"plugins/jetpack","jetpack-podcast":"plugins/jetpack","jetpack-post-list":"plugins/jetpack","jetpack-post-media":"plugins/jetpack","jetpack-premium-analytics-pkg":"plugins/jetpack","jetpack-publicize-pkg":"plugins/jetpack","jetpack-scan-page":"plugins/jetpack","jetpack-search-pkg":"plugins/jetpack","jetpack-seo":"plugins/jetpack","jetpack-stats-admin":"plugins/jetpack","jetpack-stats-pkg":"plugins/jetpack","jetpack-videopress-pkg":"plugins/jetpack","jetpack-wp-abilities":"plugins/jetpack"},"domainPaths":{"jetpack-account-protection":"jetpack_vendor/automattic/jetpack-account-protection/","jetpack-activity-log":"jetpack_vendor/automattic/jetpack-activity-log/","jetpack-admin-ui":"jetpack_vendor/automattic/jetpack-admin-ui/","jetpack-agents-manager":"jetpack_vendor/automattic/jetpack-agents-manager/","
711jetpack-assets":"jetpack_vendor/automattic/jetpack-assets/","jetpack-boost-core":"jetpack_vendor/automattic/jetpack-boost-core/","jetpack-boost-speed-score":"jetpack_vendor/automattic/jetpack-boost-speed-score/","jetpack-config":"jetpack_vendor/automattic/jetpack-config/","jetpack-connection":"jetpack_vendor/automattic/jetpack-connection/","jetpack-explat":"jetpack_vendor/automattic/jetpack-explat/","jetpack-ip":"jetpack_vendor/automattic/jetpack-ip/","jetpack-jitm":"jetpack_vendor/automattic/jetpack-jitm/","jetpack-licensing":"jetpack_vendor/automattic/jetpack-licensing/","jetpack-menu-badges":"jetpack_vendor/automattic/jetpack-menu-badges/","jetpack-my-jetpack":"jetpack_vendor/automattic/jetpack-my-jetpack/","jetpack-password-checker":"jetpack_vendor/automattic/jetpack-password-checker/","jetpack-plugins-installer":"jetpack_vendor/automattic/jetpack-plugins-installer/","jetpack-protect-models":"jetpack_vendor/automattic/jetpack-protect-models/","jetpack-protect-status":"jetpack_vendor/automattic/jetpack-protect-status/","jetpack-sync":"jetpack_vendor/automattic/jetpack-sync/","jetpack-transport-helper":"jetpack_vendor/automattic/jetpack-transport-helper/","jetpack-waf":"jetpack_vendor/automattic/jetpack-waf/","jetpack-wp-build-polyfills":"jetpack_vendor/automattic/jetpack-wp-build-polyfills/","jetpack-backup-pkg":"jetpack_vendor/automattic/jetpack-backup/","jetpack-blaze":"jetpack_vendor/automattic/jetpack-blaze/","jetpack-block-delimiter":"jetpack_vendor/automattic/block-delimiter/","jetpack-classic-theme-helper":"jetpack_vendor/automattic/jetpack-classic-theme-helper/","jetpack-comments":"jetpack_vendor/automattic/jetpack-comments/","jetpack-compat":"jetpack_vendor/automattic/jetpack-compat/","jetpack-external-connections":"jetpack_vendor/automattic/jetpack-external-connections/","jetpack-external-media":"jetpack_vendor/automattic/jetpack-external-media/","jetpack-feature-flags":"jetpack_vendor/automattic/jetpack-feature-flags/","jetpack-forms":"jetpack_vendor/automattic/jetpack-forms/","jetpack-image-cdn":"jetpack_vendor/automattic/jetpack-image-cdn/","jetpack-import":"jetpack_vendor/automattic/jetpack-import/","jetpack-jwt":"jetpack_vendor/automattic/jetpack-jwt/","jetpack-masterbar":"jetpack_vendor/automattic/jetpack-masterbar/","jetpack-newsletter":"jetpack_vendor/automattic/jetpack-newsletter/","jetpack-paypal-payments":"jetpack_vendor/automattic/jetpack-paypal-payments/","jetpack-podcast":"jetpack_vendor/automattic/jetpack-podcast/","jetpack-post-list":"jetpack_vendor/automattic/jetpack-post-list/","jetpack-post-media":"jetpack_vendor/automattic/jetpack-post-media/","jetpack-premium-analytics-pkg":"jetpack_vendor/automattic/jetpack-premium-analytics/","jetpack-publicize-pkg":"jetpack_vendor/automattic/jetpack-publicize/","jetpack-scan-page":"jetpack_vendor/automattic/jetpack-scan-page/","jetpack-search-pkg":"jetpack_vendor/automattic/jetpack-search/","jetpack-seo":"jetpack_vendor/automattic/jetpack-seo/","jetpack-stats-admin":"jetpack_vendor/automattic/jetpack-stats-admin/","jetpack-stats-pkg":"jetpack_vendor/automattic/jetpack-stats/","jetpack-videopress-pkg":"jetpack_vendor/automattic/jetpack-videopress/","jetpack-wp-abilities":"jetpack_vendor/automattic/jetpack-wp-abilities/"}};
712//# sourceURL=wp-jp-i18n-loader-js-after
713</script>
vendor: 1 bytes, line 713
713
714<script id="wp-polyfill-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/dist/vendor/wp-polyfill.min.js"></script>
vendor: 1 bytes, line 714
714
715<script id="wp-url-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/dist/url.min.js"></script>
vendor: 1 bytes, line 715
715
716<script id="jetpack-instant-search-js-before">
717var JetpackInstantSearchOptions={"overlayOptions":{"colorTheme":"light","enableInfScroll":true,"enableFilteringOpensOverlay":true,"enablePostDate":true,"enableProductPrice":true,"enableSort":true,"highlightColor":"#FFC","overlayTrigger":"submit","resultFormat":"expanded","showPoweredBy":true,"defaultSort":"relevance","excludedPostTypes":[],"fallbackImageUrl":"","enableFallbackImage":false},"homeUrl":"https://dirkriehle.com","locale":"en-US","postsPerPage":6,"siteId":3355508,"searchSuggestionsEnabled":false,"postTypes":{"post":{"singular_name":"Post","name":"Posts"},"page":{"singular_name":"Page","name":"Pages"},"attachment":{"singular_name":"Media","name":"Media"}},"webpackPublicPath":"https://dirkriehle.com/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-search/build/instant-search/","isPhotonEnabled":false,"isFreePlan":true,"apiRoot":"https://dirkriehle.com/wp-json/","apiNonce":"c62cbfc067","isPrivateSite":false,"isWpcom":false,"hasOverlayWidgets":true,"widgets":[{"filters":[{"name":"Categories","type":"taxonomy","taxonomy":"category","count":5,"widget_id":"jetpack-search-filters-1","filter_id":"taxonomy_0"},{"name":"Tags","type":"taxonomy","taxonomy":"post_tag","count":5,"widget_id":"jetpack-search-filters-1","filter_id":"taxonomy_1"},{"name":"Year","type":"date_histogram","count":5,"field":"post_date","interval":"year","widget_id":"jetpack-search-filters-1","filter_id":"date_histogram_2"}],"widget_id":"jetpack-search-filters-1"}],"widgetsOutsideOverlay":[],"hasNonSearchWidgets":false,"preventTrackingCookiesReset":false,"disableTracking":false,"aiAnswersEnabled":false,"aiMasterEnabled":true};
718//# sourceURL=jetpack-instant-search-js-before
719</script>
vendor: 1 bytes, line 719
719
720<script id="jetpack-instant-search-js" src="https://dirkriehle.com/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-search/build/instant-search/jp-search.js?minify=false&#038;ver=25d86678d0b48f702f8f"></script>
vendor: 1 bytes, line 720
720
721<script id="jp-tracks-js" src="//stats.wp.com/w.js?ver=202640"></script>
vendor: 1 bytes, line 721
721
722<script id="jetpack-stats-js-before">
723_stq = window._stq || [];
724_stq.push([ "view", {"v":"ext","blog":"3355508","post":"5375","tz":"2","srv":"dirkriehle.com","j":"1:16.2"} ]);
725_stq.push([ "clickTrackerInit", "3355508", "5375" ]);
726//# sourceURL=jetpack-stats-js-before
727</script>
vendor: 1 bytes, line 727
727
728<script data-wp-strategy="defer" defer fetchpriority="low" id="jetpack-stats-js" src="https://stats.wp.com/e-202640.js"></script>
vendor: 1 bytes, line 728
728
729<script id="wp-emoji-settings" type="application/json">
730{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://dirkriehle.com/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}}
731</script>
vendor: 1 bytes, line 731
731
732<script type="module">
733/*! This file is auto-generated */
734var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))});
735//# sourceURL=https://dirkriehle.com/wp-includes/js/wp-emoji-loader.min.js
736</script>
736
737		
737<script type="text/javascript">
738			(function () {
739				const iframe = document.getElementById( 'jetpack_remote_comment' );
740								const watchReply = function() {
741					// Check addComment._Jetpack_moveForm to make sure we don't monkey-patch twice.
742					if ( 'undefined' !== typeof addComment && ! addComment._Jetpack_moveForm ) {
743						// Cache the Core function.
744						addComment._Jetpack_moveForm = addComment.moveForm;
745						const commentParent = document.getElementById( 'comment_parent' );
746						const cancel = document.getElementById( 'cancel-comment-reply-link' );
747
748						function tellFrameNewParent ( commentParentValue ) {
749							const url = new URL( iframe.src );
750							if ( commentParentValue ) {
751								url.searchParams.set( 'replytocom', commentParentValue )
752							} else {
753								url.searchParams.delete( 'replytocom' );
754							}
755							if( iframe.src !== url.href ) {
756								iframe.src = url.href;
757							}
758						};
759
760						cancel.addEventListener( 'click', function () {
761							tellFrameNewParent( false );
762						} );
763
764						addComment.moveForm = function ( _, parentId ) {
765							tellFrameNewParent( parentId );
766							return addComment._Jetpack_moveForm.apply( null, arguments );
767						};
768					}
769				}
770				document.addEventListener( 'DOMContentLoaded', watchReply );
771				// In WP 6.4+, the script is loaded asynchronously, so we need to wait for it to load before we monkey-patch the functions it introduces.
772				document.querySelector('#comment-reply-js')?.addEventListener( 'load', watchReply );
773
774								
775				const commentIframes = document.getElementsByClassName('jetpack_remote_comment');
776
777				window.addEventListener('message', function(event) {
778					if (event.origin !== 'https://jetpack.wordpress.com') {
779						return;
780					}
781
782					if (!event?.data?.iframeUniqueId && !event?.data?.height) {
783						return;
784					}
785
786					const eventDataUniqueId = event.data.iframeUniqueId;
787
788					// Change height for the matching comment iframe
789					for (let i = 0; i < commentIframes.length; i++) {
790						const iframe = commentIframes[i];
791						const url = new URL(iframe.src);
792						const iframeUniqueIdParam = url.searchParams.get('iframe_unique_id');
793						if (iframeUniqueIdParam == event.data.iframeUniqueId) {
794							iframe.style.height = event.data.height + 'px';
795							return;
796						}
797					}
798				});
799			})();
800		</script>
800
801		</body>
802</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.