<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Johannes Findeisen - hanez.org</title><description>Homepage of Johannes Findeisen</description><copyright>Johannes Findeisen (hanez) - Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA)</copyright><link>https://hanez.org</link><atom:link href="https://hanez.org/feed.xml" rel="self" type="application/rss+xml"/><pubDate>Tue, 31 Mar 2026 00:00:00 +0200</pubDate><lastBuildDate>Tue, 31 Mar 2026 00:00:00 +0200</lastBuildDate><item><title>Announcing Fun 0.37.62 - The Programming Language that makes You have Fun!</title><description>&lt;p&gt;I am a little bit tired actually, so I won’t write detailed information in this blog post now, but I will update this post in the next days.&lt;/p&gt;
&lt;p&gt;In the past 5 month it was very hard work to implement the &lt;a href="https://fun-lang.xyz/" class="ext"&gt;Fun programming language&lt;/a&gt;, but I am happy to announce this first release of Fun.&lt;/p&gt;
&lt;p&gt;Please read the announcement at &lt;a href="https://fun-lang.xyz/2026/01/25/announcing-fun-0.37.62/" class="ext"&gt;https://fun-lang.xyz/2026/01/25/announcing-fun-0.37.62/&lt;/a&gt; if you want more information about having Fun!&lt;/p&gt;</description><pubDate>Wed, 28 Jan 2026 00:00:00 +0100</pubDate><link>https://hanez.org/2026/01/28/announcing-fun-0.37.62/</link><guid isPermaLink="true">https://hanez.org/2026/01/28/announcing-fun-0.37.62/</guid><category>fun</category><category>programming</category><category>language</category><category>announcement</category></item><item><title>I am looking for a Job!</title><description>&lt;p&gt;If you are looking for an experienced and talented Linux system administrator/engineer and/or software developer, then you are at the right place…&lt;/p&gt;</description><pubDate>Wed, 07 Jan 2026 00:00:00 +0100</pubDate><link>https://hanez.org/2026/01/07/i-am-looking-for-a-job/</link><guid isPermaLink="true">https://hanez.org/2026/01/07/i-am-looking-for-a-job/</guid><category>work</category><category>search</category><category>job</category><category>linux</category><category>administration</category><category>remote</category><category>developer</category><category>code</category><category>c</category><category>python</category><category>unix</category><category>alpine</category><category>lua</category><category>debian</category><category>network</category><category>syslog</category><category>monitoring</category><category>ubuntu</category><category>router</category><category>firewall</category><category>virtualization</category><category>container</category><category>docker</category><category>database</category><category>sql</category><category>automation</category><category>shell</category><category>bash</category><category>pinned</category></item><item><title>R.I.P. Windows 10 - Microsoft Sucks!</title><description>&lt;p&gt;&lt;a href="/images/windows10.png"&gt;&lt;img src="/images/windows10.png" class="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Windows? For me the most incompatible, most insecure and unusable operating system… :)&lt;/p&gt;
&lt;p&gt;Fortunately only in a virtual machine for testing purposes here.&lt;/p&gt;</description><pubDate>Wed, 15 Oct 2025 00:00:00 +0200</pubDate><link>https://hanez.org/2025/10/15/rip-windows-10-microsoft-sucks/</link><guid isPermaLink="true">https://hanez.org/2025/10/15/rip-windows-10-microsoft-sucks/</guid><category>windows</category><category>microsoft</category><category>hate</category></item><item><title>Why I Love C</title><description>&lt;p&gt;When I started seriously implementing projects in C over 20 years ago, I was fascinated by the fact that you can do things in memory without using assembly. C is a very straightforward language with one feature that really impresses me: C is incredibly fast.&lt;/p&gt;
&lt;p&gt;The argument that C is problematic with pointers doesn’t hold water for me. When programming, it’s my job to program in a resource-efficient way. But I’m a bit old-fashioned in that regard.&lt;/p&gt;
&lt;p&gt;Languages ​​like Rust or Go solve many of the problems of C and C++, but they don’t feel as comfortable to me as C. If I had to choose something newer, I would use Rust. But it has hardly any technical background; it’s just a gut feeling I’ve developed over the past 15 years of programming.&lt;/p&gt;
&lt;p&gt;Oh, I don’t use C++. This has nothing to do with a technical decision, but I don’t like C++. C++ isn’t nice. Python, for example, is a very nice language. I feel comfortable when programming languages ​​are feeling natural. C feels very natural to me, like speaking english or german. Java is also nice, but I don’t use it anymore because I don’t have a use case for it. And to be honest, Ruby is weird… ;)&lt;/p&gt;
&lt;p&gt;Ok, I am mixing languages and use cases. That’s not fair! But syntax is really important when writing code… PHP5 had a beautiful and simple style that I loved when it was first released in 2004.&lt;/p&gt;
&lt;p&gt;When I was working on my own &lt;a href="https://fun-lang.xyz/" class="ext"&gt;programming language (fun)&lt;/a&gt; some time ago, wanting to learn more about implementing it in some existing programming language, I chose C, even though I was aware of the advantages of other languages, such as Rust. But C just feels right.&lt;/p&gt;</description><pubDate>Tue, 14 Oct 2025 00:00:00 +0200</pubDate><link>https://hanez.org/2025/10/14/why-i-love-c/</link><guid isPermaLink="true">https://hanez.org/2025/10/14/why-i-love-c/</guid><category>c</category><category>c++</category><category>python</category><category>fun</category><category>programming</category><category>love</category></item><item><title>Quote of the day</title><description/><pubDate>Fri, 29 Aug 2025 00:00:00 +0200</pubDate><link>https://hanez.org/2025/08/29/quote-of-the-day/</link><guid isPermaLink="true">https://hanez.org/2025/08/29/quote-of-the-day/</guid><category>quote</category><category>of</category><category>the</category><category>day</category><category>ntfs</category></item><item><title>Quote of the day</title><description/><pubDate>Tue, 05 Aug 2025 00:00:00 +0200</pubDate><link>https://hanez.org/2025/08/05/quote-of-the-day/</link><guid isPermaLink="true">https://hanez.org/2025/08/05/quote-of-the-day/</guid><category>quote</category><category>of</category><category>the</category><category>day</category><category>unix</category></item><item><title>Hacking on Android</title><description>&lt;p&gt;I wrote a document about &lt;a href="https://hanez.org/document/install-alpine-linux-on-android/"&gt;installing Alpine Linux on Android&lt;/a&gt; some time ago. Today I started working on &lt;a href="https://hanez.org/document/hacking-on-android/"&gt;a new document about setting up a full hacking environment on Android based devices&lt;/a&gt;. It shows you a lot more information about running Linux distributions on your mobile/portable device…&lt;/p&gt;
&lt;p&gt;I am using a rooted SM-T585 tablet from Samsung running a &lt;a href="https://lineageos.org/" class="ext"&gt;LineageOS&lt;/a&gt; based custom ROM.&lt;/p&gt;
&lt;p&gt;The document is not yet finished and will be updated continuously!&lt;/p&gt;</description><pubDate>Wed, 02 Jul 2025 00:00:00 +0200</pubDate><link>https://hanez.org/2025/07/02/hacking-on-android/</link><guid isPermaLink="true">https://hanez.org/2025/07/02/hacking-on-android/</guid><category>linux</category><category>android</category><category>chroot</category><category>proot</category><category>proot-distro</category><category>termux</category><category>hacking</category><category>device</category></item><item><title>Quote of the day</title><description/><pubDate>Fri, 27 Jun 2025 00:00:00 +0200</pubDate><link>https://hanez.org/2025/06/27/quote-of-the-day/</link><guid isPermaLink="true">https://hanez.org/2025/06/27/quote-of-the-day/</guid><category>quote</category><category>of</category><category>the</category><category>day</category><category>containers</category></item><item><title>/bin/checkpw</title><description>&lt;p&gt;&lt;span style="color:red;"&gt;This post was originally postet at &lt;a href="https://xw3.org/blog/2024/09/25/checkpw/" class="ext"&gt;https://xw3.org/blog/2024/09/25/checkpw/&lt;/a&gt;, but it was the wrong place for my personal stuff. I moved it here to keep the content more up to date.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I created a small C program to authenticate against a &lt;a href="https://en.wikipedia.org/wiki/Unix" class="ext"&gt;UNIX&lt;/a&gt;/&lt;a href="https://en.wikipedia.org/wiki/Pluggable_authentication_module" class="ext"&gt;Pluggable authentication module (PAM)&lt;/a&gt; named &lt;a href="https://git.xw3.org/hanez/checkpw" class="git"&gt;checkpw&lt;/a&gt;. This program is only for verifiying a user’s password, that is registered in /etc/passwd using /etc/shadow, or whatever PAM is configured to use.&lt;/p&gt;
&lt;p&gt;The program returns 0 on success, 1 otherwise.&lt;/p&gt;
&lt;p&gt;With this program, it will be possible to authenticate an &lt;a href="https://xw3.org/" class="ext"&gt;xw3&lt;/a&gt; application user against the system’s user database.&lt;/p&gt;
&lt;p&gt;Currently only tested on &lt;a href="https://kernel.org/" class="ext"&gt;Linux&lt;/a&gt;, but it should work on &lt;a href="https://en.wikipedia.org/wiki/IBM_AIX" class="ext"&gt;AIX&lt;/a&gt;, &lt;a href="https://www.dragonflybsd.org/" class="ext"&gt;DragonFly BSD&lt;/a&gt;, &lt;a href="https://www.freebsd.org/" class="ext"&gt;FreeBSD&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/HP-UX" class="ext"&gt;HP-UX&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/MacOS" class="ext"&gt;macOS&lt;/a&gt;, &lt;a href="https://netbsd.org/" class="ext"&gt;NetBSD&lt;/a&gt; and &lt;a href="https://en.wikipedia.org/wiki/Oracle_Solaris" class="ext"&gt;Solaris&lt;/a&gt; operating systems too. I will test API compatibility for all OS’s listed &lt;del&gt;soon&lt;/del&gt; maybe some day… ;)&lt;/p&gt;
&lt;p&gt;Group permissions will be handled using /etc/group in a seperate program - Maybe just with a small wrapper around the “id” command (not available yet, but it should be easy to implement).&lt;/p&gt;
&lt;p&gt;&lt;span style="color:red;"&gt;[UPDATE]:&lt;/span&gt;Renamed project from checkpw to &lt;a href="https://git.xw3.org/hanez/chkpwd" class="git"&gt;chkpwd&lt;/a&gt; since I believe it is more native UNIX style… ;).&lt;/p&gt;
&lt;p&gt;&lt;span style="color:red;"&gt;[UPDATE]:&lt;/span&gt;Renamed project from chkpwd to &lt;a href="https://git.xw3.org/hanez/chkusr" class="git"&gt;chkusr&lt;/a&gt; because I merged other code into it. The chkpwd command still exists along with some more commands in the future.&lt;/p&gt;</description><pubDate>Wed, 04 Jun 2025 00:00:00 +0200</pubDate><link>https://hanez.org/2025/06/04/checkpw/</link><guid isPermaLink="true">https://hanez.org/2025/06/04/checkpw/</guid><category>cgi</category><category>static</category><category>auth</category><category>authentication</category><category>pam</category><category>shadow</category><category>user</category><category>password</category><category>checkpassword</category><category>checkpw</category><category>chkpw</category></item><item><title>My workspace... ;)</title><description>&lt;p&gt;&lt;a href="https://hanez.org/photo/12ee9b14/" title="My Workspace"&gt;&lt;img src="https://hanez.org/photo/12ee9b14/Linux__UNIX_c_20241030031640.jpg" class="x" alt="My Workspace"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="color:red;"&gt;[UPDATE]:&lt;/strong&gt; To be honest, my real workspace actually looks like this:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://hanez.org/photo/44431335/" title="My real workspace"&gt;&lt;img src="https://hanez.org/photo/44431335/My_real_workspace__c_20241231021444.jpg" class="x" alt="My real workspace"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;My real workspace looks sexy too! Not that chaotic, but with all features enabled! Even &lt;a href="https://en.wikipedia.org/wiki/Tux_(mascot)" class="ext"&gt;Tux&lt;/a&gt; got his place...&lt;/p&gt;
&lt;p&gt;I believe it's virtual enough... ;)&lt;/p&gt;</description><pubDate>Wed, 30 Oct 2024 00:00:00 +0100</pubDate><link>https://hanez.org/2024/10/30/my-workspace/</link><guid isPermaLink="true">https://hanez.org/2024/10/30/my-workspace/</guid><category>favorite</category><category>linux</category><category>terminal</category><category>unix</category><category>workspace</category></item></channel></rss>