6-axis Mini Industrial Robot Arm

Unfortunately, I don’t have time at the moment to spend on this project. But I really want to keep this for myself in my blog: Mirobot, 6-axis Mini Industrial Robot Arm.

Inspired by the ABB IRB 6700 industrial robot arm which is utilized in advanced factories around the world, we created the Mirobot robot arm – a small, affordable, and user-friendly industrial robotic arm that is accessible to everyone. Whether you are a robot expert, creative enthusiast or beginner, you can get started in the exciting world of robotics with Mirobot.

It’s currently a Kickstarter project, already funded. The robot will probably be available at a retail price of less than 1.000 €. The Kickstarter early backer price is even about less than 400 $.

If you want to know what I plan to do with it: Skip to 3:15 in the video below. I want to run a GoPro through my my sons Lego… what else.

Kickstrter project: https://www.kickstarter.com/projects/mirobot/mirobot-6-axis-mini-industrial-robot-arm

Unsolicited SMS Advertising

For some days, SMS seems to be in some kind of renaissance. Frequently, I receive unsolicited SMS advertising. Not necessary to add, this is quite annoying.

While I am personally not necessarily happy with all the regulation and rules we have in Germany, I really do like the telecommunication regulations. In the early years of the internet, I successfully dealt with dialers and other malware using the possibility, the Federal Network Agency offers.

Here you see one of the SPAM SMS I receive. No sender number, links which you don’t know where they lead to. And most important, no consent to send me such SMS.

Unwanted SMS
Unsolicited SMS

Luckily, the Federal Network Agency provides a form where you can fill a complaint against such unsolicited SMS or calls.

Eventually, if you get such SMS or calls, you might want to fill out the complaint form, helping to prevent this in the future.

Update: 2019-07-27

Today, I received feedback regarding my complaints from the Federal Network Agency. Unfortunately, nothing can be done as the sender is based in Malta and they do not provide any callback number.

Aus Ihrer Sachverhaltsschilderung ist kein von der Bundesnetzagentur zu verfolgender Verstoß zum Rufnummernmissbrauch oder zu unerlaubter Telefonwerbung erkennbar. Unter den konkreten Umständen besteht daher für die Bundesnetzagentur keine Möglichkeit einzuschreiten. Der Firmensitz des Anbieters befindet sich im Ausland (Malta) und es wird keine Rufnummer  beworben.

This is in fact very unfortunate, as it is obviously SPAM (similar SMS with different sender names), they want to make you to click on the links provided.

Link: https://www.bundesnetzagentur.de/DE/Sachgebiete/Telekommunikation/Verbraucher/RumitelBeschwerde/beschwerde-node.html

NGINX WordPress Rewrites

After moving my blog to its new domain try-catch-finally.net there was one major issue open: Search engines. Google, Bing, DucDuckGo and whatever have their indices. Eventually, I want to make sure when you hit one of the search results, you will end up with the proper site.

Using NGINX allows you to do this with a few files. Using the location section let you match against path segments and applying a rewrite rule.

The trick is done by the two parameters $1 and $1. While the $1 is the content in the first paratheses, $2 is the rest of the path segment from your request which is in the second paratheses. Once I got this pattern, It was easy to write the below rule.

server {   
  location location ~ /(2004|2005|2006|2007|2008|2009|2010|2011|2012|2013|2014|2018|2019|feed|comments|tag|author|category)/(.*) {
    return 301 https://www.hack-the-planet.net/$1/$2;     

In addition to just forwarding your request, the client will receive the HTTP status code 301, that way there is a good chance search engines get the information about the change for this particular URL.

Organizing My Availability

Meanwhile, I spent quite some time answering emails and requested my availability. There is a family calendar, a work calendar, a lecture calendar and maybe I miss one or two.

I usually have to look through all of them. And of course, I usually miss one or two of them. Therefore, I started to use the Doodle MeetMe feature to consolidate the availabilities of various calendars at one place.

Doodle MeetMe

Especially the feature to share the availability times was quite appealing to me. Most users just know Doodle for creating polls about events and meetings. Therefore, I decided to give it a try for some time. To see how this works out.

Link: https://doodle.com/aheil

Log into dockerized MySQL

From time to time there is the need to log into a containerized MySQL instance. And of course, when this time comes, I have completely forgotten how this works. Consequently, I should write it down. Here you go:

Bash into the running container

docker exec -t -i <container_id> /bin/bash

Usually, you should end up with something like the following:

root@localhost:~# docker exec -t -i 365a8a95c335 /bin/bash

Log into MySQL

mysql -u “<useranme>” -p

Once again, it should look similar to the following:

root@365a8a95c335:/# mysql -u "wpuser" -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g. 
Your MySQL connection id is 146
Server version: 5.7.24 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement


Now you should be able to do whatever you want to do with MySQL.


Back from vacation, I had to think about how to go on with things. Things are going to change. Winter is coming. While running this blog for years, I finally decided to move the blog to another domain. I am looking for a “better” brand. aheil was my alias at Microsoft as well as in many other systems. It is my alias in many other systems, my XBOX Live ID and so on.

While this migration will cause a major disruption in the force, many search engines will have issues as well. But still, there are some good reasons for me to do so:

  • It’s a DE top-level domain. Would you guess English content here? Yes, me neither.
  • If you are not a German native speaker you probably can’s say this without causing some major dislocations of your tongue. No, I am serious. How do you pronounce it [éháyl], [áhájl] or [áhíɪ́l]? I think you get the idea.
  • I am looking for a better separation of my interests. The blog is a pure personal kind of diary about tech, development, coding and geek stuff. At the same time, I am using the alias aheil for my consulting work for years as a trademark. I want a better separation in the future.
  • The current domain name has nothing to do with coding, tech or even geek stuff. How could it at all, if you can’t even say it!?

I used to own the domain try-catch-finally.net for years, I canceled it some years ago, it was parked and offered for quite an amount of money bit released recently. So I picked it up again. That’s the name the blog is going to be branded as try-catch-finally.net in the future. And just to make it clear, you call it [traɪ kæʧ ˈfaɪnəli dɑt nɛt].

The domain is up, forwarding is active and if you read this, migration is in progress or already done. If eventually add some forwarding rules for blog articles, so sold links still work. But for now, I will go and think about a nice logo using my limited to non-existing graphical skills.

The Problem with your favorite monospaced Font

Since it was introduced in 2005, Consolas was my favourite monospaced font for development environments. More or less by an accident, I came along an article introducing Inconsolata by Raph Levien, which is a font inspired by Consolas.

Inconsolas Font Example
Inconsolata by Ralph Levien

While it is hard for me to tell the difference out of the box, you can see quite some differences when both fonts are compared to each other.

Consolas Font Example


The differenced are subtle, the letters are tighter and look at the same time more fresh to me. Some major differences you can see at the ‘A’ or more obvious at the pound sign. Especially these differences drove me to try this font out. I started to change the font in my favorite editor, Visual Studio Code as I use it day by day.

To do so, you simply open Preferences / Settings and look up for font in the User section of the settings.

Changing Fonts in Visual Studio Code

While I really like the font, it turned out that code and especially text files are much harder to read for me. You might see the differences in a side by side comparison when clicking on the image below.

Side by Side Incosolata (left) and Consolas (right)

On the left side, the text seems more squashed while Consolas on the right side appears more readable to me. In this case, both examples use a default font size of 14. The problem is, I liked the left side much more the way it looks but can work much better with the appearance on the right side.

I might stick with Consolas for quite some time, while I am looking for an alternative to use.

Sud-o-Visual Studio Code

There are literally no good reasons to start Visual Studio Code on macOS with leveraged rights. Applications on macOS are not designed to run sudoed in general. If you would do so, this can have unintended sided effects. So much for the disclaimer.

If you want to start Visual Studio Code on macOS sudoed, just run

sudo open /Applications/Visual\ Studio\ Code.app

That’s all.