1533B4dC0.dehttps://www.1533b4dc0.de/1533B4dC0.deHugo -- gohugo.ioen-usAbout mehttps://www.1533b4dc0.de/about/Mon, 01 Jan 0001 00:00:00 +0000https://www.1533b4dc0.de/about/<p>My name&rsquo;s Peter. I&rsquo;m a passionate software developer especially interested in all kind of networking stuff but also asynchronous data processing, software architecture, testing and automatic software quality analysis and many more.</p> <p>I&rsquo;m the author of <a href="https://gitlab.com/inetmock/inetmock">InetMock</a> and <a href="https://github.com/baez90/goveal">Goveal</a> (more on <a href="https://www.1533b4dc0.de/projects">projects</a>) but I&rsquo;m also trying to contribute to other open source projects.</p>Projectshttps://www.1533b4dc0.de/projects/Mon, 01 Jan 0001 00:00:00 +0000https://www.1533b4dc0.de/projects/<h2 id="inetmock" >INetMock <span> <a href="#inetmock"> <svg viewBox="0 0 28 23" height="100%" width="19" xmlns="http://www.w3.org/2000/svg"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" fill="none" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" fill="none" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2"/></svg> </a> </span> </h2><p><a href="https://gitlab.com/inetmock/inetmock">INetMock</a> started as an resource/container friendly alternative to <a href="https://www.inetsim.org/">INetSim</a>. While working on a project we tried to reduce analysis complexity coming from &lsquo;noise&rsquo; in the network traffic recorded to a central INetSim cluster we were running. We decided to decentralize the internet simulation, put it into a container image and run directly on every host multiple times in virtual networks. Unfortunately INetSim has a relatively huge memory footprint (~1GB) which alone wouldn&rsquo;t been a showstopper but in combination with a relatively long startup time I felt having something smaller could be beneficial so I started to implement a prototype in Go.</p> <p>2 years later INetMock has grown to kind of a full router (supporting DNS and DHCP) with support for faking HTTP/s (direct or proxy requests) requests. Furthermore it is able to record PCAP files for further analysis and it emits events for every handled request.</p> <p>It comes with a descriptive configuration language (embedded in a YAML configuration) to setup the behavior of all components and to define health checks/integration tests to validate your configuration.</p> <p>Apart from working as a router it can also be used e.g. for integration tests of HTTP APIs, DNS/DoT/DoH clients and most likely other things I haven&rsquo;t even thought about.</p> <h2 id="goveal" >Goveal <span> <a href="#goveal"> <svg viewBox="0 0 28 23" height="100%" width="19" xmlns="http://www.w3.org/2000/svg"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" fill="none" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" fill="none" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2"/></svg> </a> </span> </h2><p><a href="https://github.com/baez90/goveal">Goveal</a> is similar to <a href="https://github.com/webpro/reveal-md">reveal-md</a> or previously <em>GitPitch</em> but obviously in Go. Originally I used GitPitch but then the author decided to go with a commercial license. The commercial license made sense when I was working at the university but after that it didn&rsquo;t really make sense any more. So I decided to replace it with a small custom CLI rendering the markdown into a static HTML file and serving it as a local web server (basically).</p> <p>Later on I refined it more and more. Currently I&rsquo;m working on a rewrite which adds e.g. 1st class support for <a href="https://mermaid-js.github.io">mermaid-js</a> diagrams in slides.</p>