<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Software-Development on Michael Hönnig</title><link>https://michael.hoennig.de/en/tags/Software-Development/</link><description>Recent content in Software-Development on Michael Hönnig</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><copyright>© 2026 Michael Hönnig</copyright><lastBuildDate>Sat, 05 Sep 2026 17:00:00 +0200</lastBuildDate><atom:link href="https://michael.hoennig.de/en/tags/Software-Development/index.xml" rel="self" type="application/rss+xml"/><item><title>From JBake to Hugo: a Website Migration Planned with Werkbaum</title><link>https://michael.hoennig.de/en/blog/2026/2026-09-05-website-migration-planned-with-werkbaum/</link><pubDate>Sat, 05 Sep 2026 17:00:00 +0200</pubDate><guid>https://michael.hoennig.de/en/blog/2026/2026-09-05-website-migration-planned-with-werkbaum/</guid><description>This website ran for years on a very old JBake fork and has now moved to Hugo: 73 articles in two languages, old URLs, audio, admonitions. Implemented with an AI agent, steered through a &lt;code&gt;Werkbaum&lt;/code&gt;. This article describes the process and why &lt;code&gt;Werkbaum&lt;/code&gt; proved itself as a planning tool for agentic AI in particular.</description></item><item><title>SQL or CSS — Which Is the Better Language?</title><link>https://michael.hoennig.de/en/blog/2026/2026-09-01-sql-or-css-which-is-the-better-language/</link><pubDate>Tue, 01 Sep 2026 08:47:02 +0200</pubDate><guid>https://michael.hoennig.de/en/blog/2026/2026-09-01-sql-or-css-which-is-the-better-language/</guid><description>SQL and CSS are both declarative languages. Why do many backend developers write complex SQL queries with ease, yet despair over CSS? A comparison of locality, hidden dependencies, and the question of how declarative both languages really are.</description></item><item><title>My Questions on Twitter</title><link>https://michael.hoennig.de/en/blog/featured/my-questions-on-twitter/</link><pubDate>Thu, 14 Jan 2021 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/featured/my-questions-on-twitter/</guid><description>In this article I collection questions which I posted on Twitter, maybe you have an answer? Looking forward to your responses!</description></item><item><title>Checking in the Gradle Wrapper or Not?</title><link>https://michael.hoennig.de/en/blog/2020/2020-11-20-checkin-gradle-wrapper-or-not/</link><pubDate>Fri, 20 Nov 2020 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2020/2020-11-20-checkin-gradle-wrapper-or-not/</guid><description>The gradle wrapper can download and verify a specified version of gradle for a project without the need of a local gradle executable. The gradle documentation suggests to check it into the VCS (version control system, e.g. git). This article discusses the advantages and disadvantages of keeping the gradle wrapper in a VCS and presents an alternative.</description></item><item><title>COBOL in 2020? Try it on your PC!</title><link>https://michael.hoennig.de/en/blog/2020/2020-10-30-cobol-in2020-try-it-on-your-PC/</link><pubDate>Fri, 30 Oct 2020 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2020/2020-10-30-cobol-in2020-try-it-on-your-PC/</guid><description>COBOL (COmmon Business Oriented [programming] Language) dates back to 1959, and is still used in its realm of business software, mostly on mainframe computers. Of course, there are also many related software modernization and migration projects. Thus, once in a while even non-mainframe developers might need some COBOL knowledge. Commercial &lt;em&gt;COBOL&lt;/em&gt; systems, especially on real mainframes, are expensive. In this article I demonstrate how to set up the GnuCOBOL compiler and integrate it with Visual Studio Code on Ubuntu Linux, but it also works on Windows and macOS. This way, experimenting with COBOL becomes easy and cheap.</description></item><item><title>Can Kotlin or kscript be as short as Python?</title><link>https://michael.hoennig.de/en/blog/2019/2019-07-20-can-kotlin-be-as-short-as-python/</link><pubDate>Sat, 20 Jul 2019 00:00:00 +0200</pubDate><guid>https://michael.hoennig.de/en/blog/2019/2019-07-20-can-kotlin-be-as-short-as-python/</guid><description>While researching why so many people like Python, I found and article which showed how much more readable Python code is compared to Java code. I was curious how well Kotlin does that job.</description></item><item><title>An Object Spread Operator for Kotlin</title><link>https://michael.hoennig.de/en/blog/2019/2019-07-13-an-object-spread-operator-for-kotlin/</link><pubDate>Sat, 13 Jul 2019 00:00:00 +0200</pubDate><guid>https://michael.hoennig.de/en/blog/2019/2019-07-13-an-object-spread-operator-for-kotlin/</guid><description>This article demonstrates how at least some uses cases for an object spread operator can be implemented with Kotlin.</description></item><item><title>Book Review: Java by Comparison: Become a Java Craftsman in 70 Examples</title><link>https://michael.hoennig.de/en/blog/2018/2018-11-24-Book-review-Java-by-Comparison/</link><pubDate>Sat, 01 Dec 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-11-24-Book-review-Java-by-Comparison/</guid><description>&amp;ldquo;Java by Comparison&amp;rdquo; leads the reader through 70 examples into software-craftship. Each example compares a snipped of typical &amp;ldquo;unclean&amp;rdquo; code with a &amp;ldquo;clean&amp;rdquo; replacement, including a short discussion about the reasoning.</description></item><item><title>Course Review "Spring Framework 5: Beginner to Guru" (Udemy)</title><link>https://michael.hoennig.de/en/blog/2018/2018-04-02-course-review-spring-framework-5-beginner-to-guru-udemy/</link><pubDate>Mon, 02 Apr 2018 00:00:00 +0200</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-04-02-course-review-spring-framework-5-beginner-to-guru-udemy/</guid><description>Wow, this amazing 34 hours video course Spring Framework 5: Beginner to Guru (with SpringBoot 2.0) is really quite massive! Learning almost full time, it took me a little over 2 weeks to work through. Ok, I admit, I only really completed ~99% because I skipped a few cookbook goodies which are currently completely irrelevant for me.</description></item><item><title>Form submit method-mapping with @RequestMapping / @PostMapping etc. in Spring</title><link>https://michael.hoennig.de/en/blog/2018/2018-03-23-form-submit-method-mapping-with-requestmapping-postmapping-etc-in-spring/</link><pubDate>Fri, 23 Mar 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-03-23-form-submit-method-mapping-with-requestmapping-postmapping-etc-in-spring/</guid><description>Recently I ran across a missing &lt;code&gt;method=&amp;quot;post&amp;quot;&lt;/code&gt; in a &lt;code&gt;&amp;lt;form ...&amp;gt;&lt;/code&gt; tag within a Thymeleaf template which was working despite an &lt;code&gt;@PostMapping&lt;/code&gt; annotation of the SpringFramework on the controller method. I was wondering how this could happen and did some investigation. Hopefully this article gives a better chance for the next one who runs into this problem.</description></item><item><title>LiveReload in Chrome and Firefox with SpringBoot and IntelliJ IDEA</title><link>https://michael.hoennig.de/en/blog/2018/2018-03-19-livereload-in-chrome-and-firefox-with-springboot-and-intellij-idea/</link><pubDate>Mon, 19 Mar 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-03-19-livereload-in-chrome-and-firefox-with-springboot-and-intellij-idea/</guid><description>Working on a web application with SpringBoot and want your changes made in IntelliJ IDEA to be visible in the browser right away? Then this is for you:</description></item><item><title>Course Review "The Complete Microservices with Spring Course" (Udemy)</title><link>https://michael.hoennig.de/en/blog/2018/2018-03-14-course-review-the-complete-microservices-with-spring-course-udemy/</link><pubDate>Wed, 14 Mar 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-03-14-course-review-the-complete-microservices-with-spring-course-udemy/</guid><description>Recently I&amp;rsquo;ve worked through the video course &amp;ldquo;The Complete Microservices with Spring Course&amp;rdquo; by MleTech Academy, LLC, which is an introduction to the most important Spring modules for building microservices.</description></item><item><title>Learning software technologies (and others topics) with Udemy</title><link>https://michael.hoennig.de/en/blog/2018/2018-03-06-learning-software-technologies-and-others-topics-with-udemy/</link><pubDate>Tue, 06 Mar 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-03-06-learning-software-technologies-and-others-topics-with-udemy/</guid><description>The business model does not urge you into a subscription, like many similar services do, but is based on a one-time fee for each course up to several hundred US$/€. There are frequent sales where you can get many courses for just about US$/€ 11 to US$/€ 20. And you get lifetime access for this fee, even on the sales …</description></item><item><title>Course Review „Become at ease with Java 8“ (Udemy)</title><link>https://michael.hoennig.de/en/blog/2018/2018-03-02-course-review-become-at-ease-with-java-8-udemy/</link><pubDate>Fri, 02 Mar 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-03-02-course-review-become-at-ease-with-java-8-udemy/</guid><description>Having mostly used Java 7 in the last years and after some month of coding only with TypeScript, JavaScript and Solidity, I&amp;rsquo;ve now worked through the video course „Become at ease with Java 8“ by Stijn De Mulder. My motivation was to give me a refresh on Java 8 features, which I only knew from magazine articles and &amp;ldquo;playing around&amp;rdquo;.</description></item><item><title>Course Review "Ethereum and Solidity: The Complete Developer's Guide" (Udemy)</title><link>https://michael.hoennig.de/en/blog/2018/2018-02-19-course-review-ethereum-and-solidity-the-complete-developers-guide-udemy/</link><pubDate>Mon, 19 Feb 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-02-19-course-review-ethereum-and-solidity-the-complete-developers-guide-udemy/</guid><description>I&amp;rsquo;ve just completed &amp;ldquo;Ethereum and Solidity: The Complete Developer&amp;rsquo;s Guide&amp;rdquo;. It&amp;rsquo;s really a great course about Solidity/Ethereum smart contract development which enables the learner not just to write their own smart contract on the Ethereum blockchain, but also how to test it (manually and automated) and how to integrate it into a web application.</description></item><item><title>My #swDevTermOfTheDay Campaign on Twitter</title><link>https://michael.hoennig.de/en/blog/2018/2018-02-12-my-swdevtermoftheday-campaign-on-twitter/</link><pubDate>Mon, 12 Feb 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-02-12-my-swdevtermoftheday-campaign-on-twitter/</guid><description>Some weeks ago I talked to some other IT guys about what kind of qualifications software developers really need. Employers and recruiters are usually looking for practical experience in certain technologies or with specific products; but these change quickly over time. Thus it could easily be that somebody got employed for his (or her) experience with e.g. Java EE from …</description></item><item><title>Event-Sourcing - Be complete with your events!</title><link>https://michael.hoennig.de/en/blog/2018/2018-02-03-eventsourcing-be-complete-with-your-events/</link><pubDate>Sat, 03 Feb 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-02-03-eventsourcing-be-complete-with-your-events/</guid><description>In my experimental side-project, Gleanius &lt;a href="https://michael.hoennig.de/en/blog/2018/2018-02-03-eventsourcing-be-complete-with-your-events/#fn-1" &gt;[1]&lt;/a&gt;, a microlearning app, I am using Event-Sourcing &lt;a href="https://michael.hoennig.de/en/blog/2018/2018-02-03-eventsourcing-be-complete-with-your-events/#fn-2" &gt;[2]&lt;/a&gt; and CQRS &lt;a href="https://michael.hoennig.de/en/blog/2018/2018-02-03-eventsourcing-be-complete-with-your-events/#fn-3" &gt;[3, 4]&lt;/a&gt;. This turned out to be an extremely good decision because several times I later found out that new features needed more information in my read model. And the great thing was that in most cases the information was already available in the …</description></item><item><title>Getting rid of endless "../../.." in ES6/TypeScript imports of Ionic projects</title><link>https://michael.hoennig.de/en/blog/2018/2018-01-22-getting-rid-of-endless-in-es6-typescript-imports-of-ionic-projects/</link><pubDate>Mon, 22 Jan 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-01-22-getting-rid-of-endless-in-es6-typescript-imports-of-ionic-projects/</guid><description>You know these ugly ES6/TypeScript import statements with endless sequences of &amp;ldquo;../../..&amp;rdquo; like in this example:</description></item><item><title>Giving my blog another try</title><link>https://michael.hoennig.de/en/blog/2018/2018-01-22-giving-my-blog-another-try/</link><pubDate>Mon, 22 Jan 2018 00:00:00 +0100</pubDate><guid>https://michael.hoennig.de/en/blog/2018/2018-01-22-giving-my-blog-another-try/</guid><description>For quite a while I&amp;rsquo;ve not published any blog entry, even though I&amp;rsquo;ve started some, but yet never published. One reason is, that I consider myself a Coder not a Blogger. I really love to create solutions to problems, but once I figured it out, it all to often looks too simple to me to publish, at least on the …</description></item></channel></rss>