<!DOCTYPE html><html><head><meta charset="utf-8"><meta http-equiv="x-ua-compatible" content="ie=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><meta name="generator" content="Gatsby 5.16.1"><meta name="theme-color" content="#f2930d"><meta name="description" content="Engineering at Scopevisio, networking tools in Rust, and notes from a CTO in the middle of an AI-native transformation." data-gatsby-head="true"><meta name="theme-color" content="#f9f9f8" data-gatsby-head="true"><meta property="og:title" content="Lukas Pustina" data-gatsby-head="true"><meta property="og:description" content="Engineering at Scopevisio, networking tools in Rust, and notes from a CTO in the middle of an AI-native transformation." data-gatsby-head="true"><meta property="og:type" content="website" data-gatsby-head="true"><meta property="og:site_name" content="Lukas Pustina" data-gatsby-head="true"><meta property="og:url" content="https://lukas.pustina.de/" data-gatsby-head="true"><meta property="og:image" content="https://lukas.pustina.de/og-image.png" data-gatsby-head="true"><meta name="twitter:card" content="summary_large_image" data-gatsby-head="true"><meta name="twitter:title" content="Lukas Pustina" data-gatsby-head="true"><meta name="twitter:description" content="Engineering at Scopevisio, networking tools in Rust, and notes from a CTO in the middle of an AI-native transformation." data-gatsby-head="true"><meta name="twitter:image" content="https://lukas.pustina.de/og-image.png" data-gatsby-head="true"><style data-href="/styles.d272b21b817a42017976.css" data-identity="gatsby-global-css">:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin:normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{-webkit-box-sizing:content-box;box-sizing:content-box;display:var(--fa-display,inline-block);height:1em;overflow:visible;vertical-align:-.125em;width:var(--fa-width,1.25em)}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714285714em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa .fa-pull-start,.svg-inline--fa.fa-pull-left{-webkit-margin-end:var(--fa-pull-margin,.3em);float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.svg-inline--fa .fa-pull-end,.svg-inline--fa.fa-pull-right{-webkit-margin-start:var(--fa-pull-margin,.3em);float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{inset-block-start:.25em;inset-inline-start:calc(var(--fa-li-width, 2em)*-1);width:var(--fa-li-width,2em)}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:var(--fa-width,1.25em)}.fa-layers .svg-inline--fa{inset:0;margin:auto;position:absolute;-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);overflow:hidden;padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);-webkit-transform:scale(var(--fa-counter-scale,.25));transform:scale(var(--fa-counter-scale,.25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);top:auto;-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);right:auto;top:auto;-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:var(--fa-right,0);top:var(--fa-top,0);-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:top left;transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{-webkit-margin-start:var(--fa-li-margin,2.5em);-webkit-padding-start:0;list-style-type:none;margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(var(--fa-li-width, 2em)*-1);line-height:inherit;position:absolute;text-align:center;width:var(--fa-li-width,2em)}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);-webkit-box-sizing:var(--fa-border-box-sizing,content-box);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{-webkit-margin-end:var(--fa-pull-margin,.3em);float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-end,.fa-pull-right{-webkit-margin-start:var(--fa-pull-margin,.3em);float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation:none!important;animation:none!important;-webkit-transition:none!important;transition:none!important}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,0));transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse,#fff)}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-inverse{color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{inset:0;margin:auto;position:absolute;z-index:var(--fa-stack-z-index,auto)}code[class*=language-],pre[class*=language-]{word-wrap:normal;background:none;color:#000;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;-ms-hyphens:none;hyphens:none;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;text-align:left;text-shadow:0 1px #fff;white-space:pre;word-break:normal;word-spacing:normal}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{background:#b3d4fc;text-shadow:none}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{background:#b3d4fc;text-shadow:none}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{margin:.5em 0;overflow:auto;padding:1em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{border-radius:.3em;padding:.1em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{background:hsla(0,0%,100%,.5);color:#9a6e3a}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}</style><link rel="alternate" type="application/rss+xml" title="Lukas Pustina - Notes" href="/rss.xml"><style type="text/css">
    .anchor.before {
      position: absolute;
      top: 0;
      left: 0;
      transform: translateX(-100%);
      padding-right: 4px;
    }
    .anchor.after {
      display: inline-block;
      padding-left: 4px;
    }
    h1 .anchor svg,
    h2 .anchor svg,
    h3 .anchor svg,
    h4 .anchor svg,
    h5 .anchor svg,
    h6 .anchor svg {
      visibility: hidden;
    }
    h1:hover .anchor svg,
    h2:hover .anchor svg,
    h3:hover .anchor svg,
    h4:hover .anchor svg,
    h5:hover .anchor svg,
    h6:hover .anchor svg,
    h1 .anchor:focus svg,
    h2 .anchor:focus svg,
    h3 .anchor:focus svg,
    h4 .anchor:focus svg,
    h5 .anchor:focus svg,
    h6 .anchor:focus svg {
      visibility: visible;
    }
  </style><script>
    document.addEventListener("DOMContentLoaded", function(event) {
      var hash = window.decodeURI(location.hash.replace('#', ''))
      if (hash !== '') {
        var element = document.getElementById(hash)
        if (element) {
          var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
          var clientTop = document.documentElement.clientTop || document.body.clientTop || 0
          var offset = element.getBoundingClientRect().top + scrollTop - clientTop
          // Wait for the browser to finish rendering before scrolling.
          setTimeout((function() {
            window.scrollTo(0, offset - 0)
          }), 0)
        }
      }
    })
  </script><link rel="manifest" href="/manifest.webmanifest" crossorigin="anonymous"><link rel="apple-touch-icon" sizes="192x192" href="/android-chrome-192x192.png"><link rel="sitemap" type="application/xml" href="/sitemap-index.xml"><title data-gatsby-head="true">Lukas Pustina</title><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" data-gatsby-head="true"><link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32" data-gatsby-head="true"><link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16" data-gatsby-head="true"><link rel="manifest" href="/manifest.json" data-gatsby-head="true"><link rel="mask-icon" href="/safari-pinned-tab.svg" color="#f2930d" data-gatsby-head="true"><style data-emotion="css-global" data-s="">html{box-sizing:border-box;}@media print{html{background-color:transparent;}}*,*:before,*:after{box-sizing:inherit;}::selection{background-color:#f2930d;}svg{fill:currentColor;}a{-webkit-text-decoration:none;text-decoration:none;text-decoration-skip:ink;text-decoration-skip-ink:auto;}*:focus-visible{outline:2px solid #f2930d;outline-offset:2px;}@media print{nav,footer{display:none!important;}}</style><style data-emotion="css 1ip6upi" data-s="">.css-1ip6upi{padding:0.5rem;background-color:#fff;-webkit-background-position:center top;background-position:center top;-webkit-background-size:900px;background-size:900px;}@media screen and (min-width: 48em){.css-1ip6upi{padding:1rem;}}@media (min-width: 48em){.css-1ip6upi{-webkit-background-size:1200px;background-size:1200px;}}@media print{.css-1ip6upi{background:transparent;padding:0;}}</style><style data-emotion="css rp63w5" data-s="">.css-rp63w5{padding-top:1rem;padding-bottom:1rem;padding-left:1rem;padding-right:1rem;color:#443e35;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";border-radius:0.25rem;border-radius:0.25rem;min-height:calc(100vh - 2rem);}@media screen and (min-width: 48em){.css-rp63w5{padding-left:2rem;padding-right:2rem;}}@media (min-width: 48em){.css-rp63w5{min-height:calc(100vh - 4rem);}}@media print{.css-rp63w5{min-height:0;}}</style><style data-emotion="css 85g6oq" data-s="">.css-85g6oq{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;max-width:64rem;margin-left:auto;margin-right:auto;min-height:calc(100vh - 4rem);}@media (min-width: 48em){.css-85g6oq{min-height:calc(100vh - 8rem);}}</style><style data-emotion="css 7b30a2" data-s="">.css-7b30a2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-top:0;margin-bottom:4rem;}@media screen and (min-width: 48em){.css-7b30a2{margin-top:0.5rem;margin-bottom:8rem;}}@media screen and (min-width: 64em){.css-7b30a2{margin-top:1rem;}}</style><style data-emotion="css ick2i3" data-s="">.css-ick2i3{padding-left:0.25rem;padding-right:0.25rem;padding-bottom:0.25rem;margin-right:0.5rem;font-size:0.875rem;color:#443e35;font-family:sfmono,"roboto mono",consolas,monaco,monospace;}@media screen and (min-width: 48em){.css-ick2i3{font-size:1rem;}}.css-ick2i3:hover,a:hover .css-ick2i3,button:hover .css-ick2i3{color:#945200;}</style><style data-emotion="css 1bunp4h" data-s="">.css-1bunp4h{margin:0;padding:0;list-style-type:none;margin-left:auto;font-family:sfmono,"roboto mono",consolas,monaco,monospace;}</style><style data-emotion="css pc499u" data-s="">.css-pc499u{display:inline-block;}</style><style data-emotion="css cdlmka" data-s="">.css-cdlmka{padding-left:0.25rem;padding-right:0.25rem;padding-bottom:0;margin-right:0.5rem;font-size:0.875rem;color:#443e35;border-bottom:0.25rem solid;border-color:#f2930d;border-bottom:0.25rem solid;border-color:#f2930d;}@media screen and (min-width: 48em){.css-cdlmka{font-size:1rem;}}.css-cdlmka:hover,a:hover .css-cdlmka,button:hover .css-cdlmka{color:#945200;}</style><style data-emotion="css 12cx4tu" data-s="">.css-12cx4tu{padding-left:0.25rem;padding-right:0.25rem;padding-bottom:0;margin-right:0.5rem;font-size:0.875rem;color:#443e35;}@media screen and (min-width: 48em){.css-12cx4tu{font-size:1rem;}}.css-12cx4tu:hover,a:hover .css-12cx4tu,button:hover .css-12cx4tu{color:#945200;}</style><style data-emotion="css tya95j" data-s="">.css-tya95j{padding-left:0.25rem;padding-right:0.25rem;padding-bottom:0;font-size:0.875rem;color:#443e35;}@media screen and (min-width: 48em){.css-tya95j{font-size:1rem;}}.css-tya95j:hover,a:hover .css-tya95j,button:hover .css-tya95j{color:#945200;}</style><style data-emotion="css 3c02sq" data-s="">.css-3c02sq{margin-bottom:4rem;}@media (min-width: 48em){.css-3c02sq{margin-bottom:8rem;}}</style><style data-emotion="css 1epyhtf" data-s="">.css-1epyhtf{margin-top:0;margin-bottom:2rem;font-size:2.25rem;font-weight:700;line-height:1.25;}@media screen and (min-width: 48em){.css-1epyhtf{font-size:3rem;}}</style><style data-emotion="css 1h5lf9m" data-s="">.css-1h5lf9m{max-width:33em;margin-top:0;margin-bottom:2rem;font-size:1.25rem;line-height:1.5;}@media screen and (min-width: 48em){.css-1h5lf9m{font-size:1.5rem;}}</style><style data-emotion="css 1d8k5xf" data-s="">.css-1d8k5xf{color:#443e35;-webkit-text-decoration:underline;text-decoration:underline;text-decoration-color:orange;}.css-1d8k5xf:hover,a:hover .css-1d8k5xf,button:hover .css-1d8k5xf{color:#945200;}</style><style data-emotion="css 2xtaup" data-s="">.css-2xtaup{max-width:33em;margin-top:0;margin-bottom:0;font-size:1.25rem;line-height:1.5;}@media screen and (min-width: 48em){.css-2xtaup{font-size:1.5rem;}}</style><style data-emotion="css 13alfi6" data-s="">.css-13alfi6{color:#443e35;text-decoration-color:orange;}.css-13alfi6:hover,a:hover .css-13alfi6,button:hover .css-13alfi6{color:#945200;}</style><style data-emotion="css riwbpd" data-s="">.css-riwbpd{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;margin-top:auto;margin-bottom:1rem;font-family:sfmono,"roboto mono",consolas,monaco,monospace;}@media screen and (min-width: 48em){.css-riwbpd{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}}@media screen and (min-width: 64em){.css-riwbpd{-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}}@media screen and (min-width: 48em){.css-riwbpd{margin-bottom:1rem;}}@media screen and (min-width: 64em){.css-riwbpd{margin-bottom:2rem;}}</style><style data-emotion="css 1pnp4jc" data-s="">.css-1pnp4jc{margin:0;padding:0;list-style-type:none;}</style><style data-emotion="css 12z9jlh" data-s="">.css-12z9jlh{display:inline-block;margin-right:2rem;}</style><style data-emotion="css qe7pqj" data-s="">.css-qe7pqj{font-size:0.875rem;color:#767676;}@media screen and (min-width: 48em){.css-qe7pqj{font-size:1rem;}}.css-qe7pqj:hover,a:hover .css-qe7pqj,button:hover .css-qe7pqj{color:#945200;}</style><style data-emotion="css 17fojgi" data-s="">.css-17fojgi{font-size:0.875rem;color:#767676;}@media screen and (min-width: 48em){.css-17fojgi{font-size:1rem;}}</style></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="css-1ip6upi er4tyul3"><div color="black" font-family="sans-serif" class="css-rp63w5 er4tyul2"><div class="css-85g6oq er4tyul1"><nav aria-label="Primary navigation" class="css-7b30a2 e147ppku0"><a aria-current="page" class="" href="/"><span font-family="monospace" font-size="0,1" color="black" class="css-ick2i3 e1nh58xo0">Dr. Lukas Pustina</span></a><ul font-family="monospace" class="css-1bunp4h e1b1vcdq1"><li display="inline-block" class="css-pc499u e1b1vcdq0"><a aria-current="page" class="" href="/"><span font-size="0,1" color="black" class="css-cdlmka e1nh58xo0">Home</span></a></li><li display="inline-block" class="css-pc499u e1b1vcdq0"><a href="/now/"><span font-size="0,1" color="black" class="css-12cx4tu e1nh58xo0">Now</span></a></li><li display="inline-block" class="css-pc499u e1b1vcdq0"><a href="/notes/"><span font-size="0,1" color="black" class="css-12cx4tu e1nh58xo0">Notes</span></a></li><li display="inline-block" class="css-pc499u e1b1vcdq0"><a href="/projects/"><span font-size="0,1" color="black" class="css-12cx4tu e1nh58xo0">Projects</span></a></li><li display="inline-block" class="css-pc499u e1b1vcdq0"><a href="/publications/"><span font-size="0,1" color="black" class="css-12cx4tu e1nh58xo0">Publications</span></a></li><li display="inline-block" class="css-pc499u e1b1vcdq0"><a href="/about/"><span font-size="0,1" color="black" class="css-12cx4tu e1nh58xo0">About</span></a></li><li display="inline-block" class="css-pc499u e1b1vcdq0"><a href="/archive/"><span font-size="0,1" color="black" class="css-12cx4tu e1nh58xo0">Archive</span></a></li><li display="inline-block" class="css-pc499u e1b1vcdq0"><a aria-label="Search" href="/search/"><span font-size="0,1" color="black" class="css-tya95j e1nh58xo0"><svg data-prefix="fas" data-icon="magnifying-glass" class="svg-inline--fa fa-magnifying-glass" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376C296.3 401.1 253.9 416 208 416 93.1 416 0 322.9 0 208S93.1 0 208 0 416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"></path></svg></span></a></li></ul></nav><main class="css-3c02sq er4tyul0"><article><header><h1 font-size="4,5" font-weight="7" class="css-1epyhtf e1b1vcdq5">Hi, I’m Lukas.</h1></header><main><p font-size="2,3" class="css-1h5lf9m e1b1vcdq3">I run engineering at<!-- --> <a href="https://scopevisio.com" target="_blank" rel="noopener noreferrer"><span color="black" text-decoration="underline" class="css-1d8k5xf e1nh58xo0">Scopevisio</span></a>, a Bonn-based ERP company quietly betting its weight on becoming AI-native. My job is to drive the technical and engineering strategy that gets us there — and the small but persistent miracle of getting a hundred-plus engineers to ship in the same direction.</p><p font-size="2,3" class="css-1h5lf9m e1b1vcdq3">Most of the job is people. The tech keeps me honest about the people part — so I keep my hands in it. Right now that means agentic engineering: coding agents that read, edit, and reason across whole codebases. They’ve given me back the plain fun of writing software — which I’d half-thought I’d lost — and they’re reshaping the engineering organisation I run. I’d rather be the CTO using the tools while we figure out the answers than reading reports about what other people think.</p><p font-size="2,3" class="css-1h5lf9m e1b1vcdq3">My testbed is<!-- --> <a href="https://netray.info" target="_blank" rel="noopener noreferrer"><span color="black" text-decoration="underline" class="css-1d8k5xf e1nh58xo0">netray.info</span></a>, a small Rust suite of network-intelligence tools —<!-- --> <a href="https://github.com/lukaspustina/mhost" target="_blank" rel="noopener noreferrer"><span color="black" text-decoration="underline" class="css-1d8k5xf e1nh58xo0">mhost</span></a> <!-- -->chief among them — built mostly with agents. The codebase is mine and the bar is real, which is where I learn what these tools can actually do.</p><p font-size="2,3" class="css-1h5lf9m e1b1vcdq3">This site is where I write up what I learn — agentic engineering from the inside, Rust at the systems level, and the occasional honest report from a CTO in the middle of an AI-native transformation.</p><p font-size="2,3" class="css-2xtaup e1b1vcdq3">Find me on <span><a href="https://github.com/lukaspustina" aria-label="GitHub" target="_blank" rel="noopener noreferrer"><span color="black" class="css-13alfi6 e1nh58xo0"><svg data-prefix="fab" data-icon="github" class="svg-inline--fa fa-github fa-xs" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M173.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM252.8 8c-138.7 0-244.8 105.3-244.8 244 0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1 100-33.2 167.8-128.1 167.8-239 0-138.7-112.5-244-251.2-244zM105.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></span></a>&nbsp;<a href="https://www.linkedin.com/in/lukaspustina" aria-label="LinkedIn" target="_blank" rel="noopener noreferrer"><span color="black" class="css-13alfi6 e1nh58xo0"><svg data-prefix="fab" data-icon="linkedin" class="svg-inline--fa fa-linkedin fa-xs" role="img" viewBox="0 0 448 512" aria-hidden="true"><path fill="currentColor" d="M416 32L31.9 32C14.3 32 0 46.5 0 64.3L0 447.7C0 465.5 14.3 480 31.9 480L416 480c17.6 0 32-14.5 32-32.3l0-383.4C448 46.5 433.6 32 416 32zM135.4 416l-66.4 0 0-213.8 66.5 0 0 213.8-.1 0zM102.2 96a38.5 38.5 0 1 1 0 77 38.5 38.5 0 1 1 0-77zM384.3 416l-66.4 0 0-104c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9l0 105.8-66.4 0 0-213.8 63.7 0 0 29.2 .9 0c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9l0 117.2z"></path></svg></span></a>&nbsp;<a href="https://keybase.io/lukaspustina" aria-label="Keybase" target="_blank" rel="noopener noreferrer"><span color="black" class="css-13alfi6 e1nh58xo0"><svg data-prefix="fab" data-icon="keybase" class="svg-inline--fa fa-keybase fa-xs" role="img" viewBox="0 0 448 512" aria-hidden="true"><path fill="currentColor" d="M286.2 419a18 18 0 1 0 0 36 18 18 0 1 0 0-36zM398.1 271.4c-9.5-14.6-39.4-52.4-87.3-73.7-6.1-2.7-12.2-5.1-18.4-7.3 4.1-9.9 6-20.6 5.8-31.4s-2.7-21.3-7.2-31.1-10.9-18.5-18.9-25.7-17.4-12.6-27.6-16c-12.4-4.1-23.3-6-32.4-5.8-.6-2-1.9-11 9.4-35l-22.9-13.5-5.5 7.6c-8.7 12.1-16.9 23.6-24.3 34.9-2.7-.6-5.5-1.1-8.3-1.2-41.5-2.4-39-2.3-41.1-2.3-50.6 0-50.8 52.1-50.8 45.9l-2.4 36.7c-1.6 27 19.8 50.2 47.6 51.8l8.9 .5C106 215.5 90.4 227.5 76.6 241.4 14 304.7 14 374 14 429.8l0 33.6 23.3-29.8c3.1 13.1 8 25.8 14.6 37.6 5.8 10.1 14.9 9.4 19.6 7.3 4.2-1.9 10-6.9 3.8-20.1-8-16.8-13.3-34.7-15.8-53.1l46.8-59.8-24.7 74.1c58.2-42.4 157.4-61.8 236.2-38.6 34.2 10.1 67.4 .7 84.7-23.8 .7-1 1.2-2.2 1.8-3.2 1.8 9.4 2.7 18.9 2.8 28.4 0 23.3-3.7 52.9-14.9 81.6-2.5 6.5 1.8 14.5 8.6 15.7 7.4 1.6 15.3-3.1 18.4-11.1 9.6-25.5 14.6-54.6 14.6-86.2 0-38.6-13-77.5-35.9-110.9zM142.4 128.6l-15.7-.9-1.4 21.8 13.1 .8c-.6 6.5-.5 13.1 .3 19.6l-22.4-1.3c-1.6-.1-3.2-.5-4.7-1.1s-2.8-1.6-3.9-2.8-1.9-2.6-2.5-4.1-.8-3.1-.7-4.7L107 119c1-12.2 13.9-11.3 13.3-11.3l29.1 1.7c-2.8 6.2-5.1 12.6-7 19.2zM290.8 300.8c-2.1 1.6-4.8 2.4-7.5 2.2s-5.1-1.5-6.9-3.5l-9.7-11.5-34.4 27c-1.6 1.3-3.7 1.9-5.8 1.7s-4-1.2-5.3-2.8l-15.8-18.6c-1.2-1.6-1.7-3.5-1.5-5.4s1.3-3.7 2.8-4.9l34.6-27.2-14.1-16.7-17.1 13.5c-1.6 1.2-3.5 1.8-5.5 1.6s-3.8-1.1-5.1-2.6c0 0-3.7-4.4-3.8-4.5-1.2-1.6-1.7-3.5-1.5-5.5s1.3-3.7 2.8-4.9L214 225.2s-18.5-22-18.6-22.1c-.8-1-1.3-2.1-1.7-3.3s-.4-2.5-.3-3.7 .6-2.4 1.2-3.5 1.5-2 2.5-2.8c2.1-1.7 4.8-2.4 7.4-2.2s5.1 1.5 6.9 3.6l81.1 96.3c.8 1 1.3 2.1 1.7 3.3s.4 2.5 .3 3.7-.6 2.5-1.2 3.5-1.5 2.1-2.5 2.8zM187.4 419a18 18 0 1 0 0 36 18 18 0 1 0 0-36z"></path></svg></span></a></span>.</p></main></article></main><footer font-family="monospace" class="css-riwbpd e1y0cw0l0"><ul class="css-1pnp4jc e1b1vcdq1"><li display="inline-block" class="css-12z9jlh e1b1vcdq0"><a href="/legal_notice/"><span color="lightgrey" font-size="0,1" class="css-qe7pqj e1nh58xo0">Legal Notice</span></a><span color="lightgrey" font-size="0,1" class="css-17fojgi e1nh58xo1"> <!-- -->/<!-- --> </span><a href="/impressum/"><span color="lightgrey" font-size="0,1" class="css-qe7pqj e1nh58xo0">Impressum</span></a></li><li display="inline-block" class="css-12z9jlh e1b1vcdq0"><a href="/privacy_policy/"><span color="lightgrey" font-size="0,1" class="css-qe7pqj e1nh58xo0">Privacy Policy</span></a><span color="lightgrey" font-size="0,1" class="css-17fojgi e1nh58xo1"> <!-- -->/<!-- --> </span><a href="/datenschutz_erklaerung/"><span color="lightgrey" font-size="0,1" class="css-qe7pqj e1nh58xo0">Datenschutzerklärung</span></a></li></ul></footer></div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script type="text/javascript">console.log('Wondering how this site was made? Check out the colophon. https://lukas.pustina.de/colophon/')</script><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/";/*]]>*/</script><!-- slice-start id="_gatsby-scripts-1" -->
          <script id="gatsby-chunk-mapping">
            window.___chunkMapping="{\"polyfill\":[\"/polyfill-bee6fc26c6af2020bacf.js\"],\"app\":[\"/app-8d170ed55c7916318086.js\"],\"component---src-pages-404-js\":[\"/component---src-pages-404-js-33039b5481f5ecc8cb18.js\"],\"component---src-pages-about-js\":[\"/component---src-pages-about-js-07a4179797da6afe139e.js\"],\"component---src-pages-archive-js\":[\"/component---src-pages-archive-js-99aac108ae82bc49280a.js\"],\"component---src-pages-colophon-js\":[\"/component---src-pages-colophon-js-a11fe979f9925aa4f331.js\"],\"component---src-pages-datenschutz-erklaerung-js\":[\"/component---src-pages-datenschutz-erklaerung-js-db799ce951bebb04c2a7.js\"],\"component---src-pages-impressum-js\":[\"/component---src-pages-impressum-js-8fb16dabbac69c8f1c93.js\"],\"component---src-pages-index-js\":[\"/component---src-pages-index-js-246070ad45dd69181df0.js\"],\"component---src-pages-legal-notice-js\":[\"/component---src-pages-legal-notice-js-7ef96438bbfe535ae6e2.js\"],\"component---src-pages-notes-js\":[\"/component---src-pages-notes-js-596320edf78bbf099f0c.js\"],\"component---src-pages-now-js\":[\"/component---src-pages-now-js-21e2507cf31565ceffc4.js\"],\"component---src-pages-privacy-policy-js\":[\"/component---src-pages-privacy-policy-js-ee13605524fd88f7c9de.js\"],\"component---src-pages-projects-js\":[\"/component---src-pages-projects-js-253937472f26d281a076.js\"],\"component---src-pages-publications-js\":[\"/component---src-pages-publications-js-abb0c66117d99a1d0369.js\"],\"component---src-pages-search-js\":[\"/component---src-pages-search-js-b4756379e27ff3ac8d7a.js\"],\"component---src-templates-notes-post-js\":[\"/component---src-templates-notes-post-js-f49aeb479f80153d6f79.js\"]}";
          </script>
        <script>window.___webpackCompilationHash="43c8e9e1fe1e90a59e16";</script><script src="/webpack-runtime-5eb8f50e7b5c9e58fce4.js" nomodule=""></script><script src="/polyfill-bee6fc26c6af2020bacf.js" nomodule=""></script><script src="/webpack-runtime-5eb8f50e7b5c9e58fce4.js" async=""></script><script src="/framework-6bf44a84a8a9d516d2c4.js" async=""></script><script src="/app-8d170ed55c7916318086.js" async=""></script><!-- slice-end id="_gatsby-scripts-1" --></body></html>