Lastest Articles

Œuvre

I kept moving forward and never looked back. So I built a room to look back from.

Œuvre is more than twenty projects from three decades — hung as a museum: an entrance hall, three decade galleries, brass plaques, framed photos.

Kommons process execution: Kotlin and Docker

Kommons: Execute Commands, Scripts & Containers the Kotlin Way

The process APIs introduced in version 1.5 of the library now known as Kommons let you run command lines and shell scripts, either on your host or in a Docker container, synchronously or asynchronously, with optional logging and process interaction—all with zero boilerplate.

Update: These examples document the original 1.5 release, published as Koodies, and retain its package names and Maven coordinates. The Docker helpers shown below are no longer part of the current API. See the current Kommons documentation and Maven Central for current releases.

Continue reading…

copy-out

copying out the complete file tree from an ext4 formatted partition right on macOS

Mac and Windows users share one thing. Accessing an ext4 formatted partition is virtually impossible. The problem is serious enough so that IoT distributions like Raspberry Pi OS offer workarounds that give Mac and Windows users at least a few opportunities to customize their flashed memory cards before booting the IoT device itself.

Since tools like guestfish are able to mound ext4 partitions why not run such a tool using Docker and access the files this way? I saw the one or the other try but getting it running was a nightmare. Already due to the fact that guestfish logs all of its output as an error which is not forward by Docker. Therefor I developed a script on my own to see if things can’t be easier. And I suppose they can as you can convince yourself on my new gist on copying-out files from ext4 partition resp. any img guestfish can access.

Kommons — Random Kotlin Goodies, with the Kotlin logo

Kommons

RANDOM SOFTWARE GOODIES

A few days ago—while working on a larger project—I released my first multi-platform software library for the awesome Kotlin language.

Kommons is a random selection of goodies to make a Kotlin developer’s life even easier. Features range from various generic builders and special purpose builders (like for shell scripts or Docker command lines) over Java NIO 2 extension functions to various utilities for easier dealing with time, graphics, Unicode, etc.

Kaomojis.`(#-_-)o´・━・・━・━━・━☆`

Kommons is available from Maven Central and is hosted on GitHub.

Sketch Notes on a Scrum Master Training

Mastering Scrum does not lose any of its importance for me. Therefor I decided to go for a Scrum Master Certificate months ago. Due to the Corona pandemic my plans relativized, since the next trainings would be online and I wanted in person. But last week it happened: The training with a small group of other finally took place 😁

It was a 3 day training by Timon Fiddike and Anton Skornyakov from agile.coach. Those guys did a great job at coping with the range of experience the participants had. The most unexpected thing for me was—and I guess that was the key driver for that highly valuable training—they actually implemented Scrum elements during the training itself. Having dailies, a retrospective, and most importantly: they listened to what the group wished for. And: they checked if their “corrections” had the intended effect. (That is something so important and far too rarely done.)

Oh and one last thing: I’m so happy I did it. 10min before leaving my apartment I saw some empty sketch books laying around. Unused. So—although I never did that before—I grabbed one and documented everything I considered relevant to myself in it (which is the excuse for being too late on the first day). As I got unexpectedly positive feedback on it, I decided to share it with you. I hope you enjoy!

Alphabet cards, stickers, and a ring-bound card showing German characters

A Hand-Lettered Envelope

I have been reading Lettering Journey: Fast. Functional. Fun! by Heather Leavitt Martinez. What an inspiring book! It also left me with a few rather specific questions about the letters I was practising.

So I wrote Heather a letter. Were there lowercase Roman letters? What would the German letters ä, ö and ü look like in one of her fonts? And what about the slightly strange German capital ẞ? Quite a lot of questions for a single letter.

Continue reading…
Three broad markers laid on a dark surface with their wide flat nibs exposed.

Going Large

After experimenting with different markers, I wanted to practise writing bigger. Much bigger. With 5 cm and 6 cm markers from Montana and MOLOTOW, my alphabet took up most of a door.

A flipchart sheet mounted on a door, filled with large black capital letters.
A door-sized alphabet practice sheet

I used Neuland’s handlettering practice sheets as a reference. This was lettering practice at a rather different scale. The wide, flat nibs give a good idea of what 5 cm and 6 cm actually look like. There is a lot of marker to work with.

Continue reading…
Close-up of reflective Liquid Chrome strokes over dark MOLOTOW lettering.

Going Experimental

This time, I wanted to play with the markers themselves: MOLOTOW Liquid Chrome, Coversall and Speedflow. A magazine page became my test surface. No finished flipchart required.

I tried broad curves, overlapping letters and large dark shapes. Some strokes let the print show through; others almost covered it. The magazine article was having a difficult time competing for attention.

Continue reading…
Overlapping printed mixing tables with blue and green ink swatches beside a color reference.

Finding the Right Color

Having plenty of marker colors is one thing. Having the right ones is another. At paydirekt, I wanted to mix the company’s corporate design colors for my visual facilitation work.

I had already used the corporate design when renovating the Scrum boards. Now I wanted to get the inks closer to that palette. So I started mixing, using printed tables to record the ratios and paint a sample of each mixture.

Continue reading…
Ten markers hanging beneath a strip of matching color-number labels.

Equipping the Teams

My enthusiasm for markers has made its way from my sketchbooks onto our shared boards. As I wrote in Renovating Scrum Boards, I wanted my colleagues to enjoy those tools, too. That also meant giving the markers a home.

Before putting the sets together, I tried different colors on glass. A few icons, strokes and swatches helped me compare the inks on the board itself. Lettering practice was another chance to get to know the tools.

Continue reading…

First Retrospectives

A couple of weeks ago I started my visual facilitator career and started introducing respectively renovating an existing Scrum board to put my newly acquired knowledge into practice.

Now it was time to combine my new skills with my goal to become more proficient in the Scrum process. As I was always a team player who’s goal was to bring people together and treat each other with the most respect possible, it was just natural to volunteer organising retrospectives.

Continue reading…

Becoming a Visual Facilitator

What happens if you give more than a grand to computer scientist with a weak spot for team organization, Scrum and Agile in general?
He buys markers and learning material about doodling … to soon understand that there’s a whole lot more than being able to doodle things nicely. At least that’s what happened to me.

Continue reading…

Online Grid Generator for Photoshop

For those who layout their websites with grids it is very common to use grid systems like grid the 960 GRID SYSTEM.

The bugging thing about it is always to prepare a corresponding photoshop file. But now the GRID CALCULATOR comes to help!

Simply enter your grid definition and the online tool creates a photoshop script you only need to double click. Et voilà: the corresponding guides are created directly in your photoshop file.

iPhone Siri Bug

All I wanted to know is the weather in Berlin…
However Siri’s answer looks like some interpretation is still needed.

CSS preprocessing

I always thought that CSS lacks in expressiveness which is far below the one of XPath. For example you can’t select elements based on their child elements. How nice would it be if you could format anker tags if and only if they contain a single image tag.
For this to work you would simply use the following XPath expression:

//a[count(img)=1]

Continue reading…

Color Wizard

Tired of bright red, green or blue?
Then try out the Color Wizard on colorsontheweb.com.

Given one color the tool gives you 3 variations (hue, saturation and tint&shade) as much as 6 corresponding colors (monochromatic, analogous, triadic, tetradic, complimentary and split complimentary). Give it a shot!

WordPress Web Service

You are an enthusiastic WordPress user?
You want to implement a Flash based WordPress front end / theme?
You want to use WordPress as a back end for you software?

My new WordPress Web Service plugin is your solution!

WPWS allows you to access your WordPress installation via WSDL/SOAP. In contrast to classical RESTful services WSDL/SOAP is type safe meaning that you always get what you expect. RESTful services can change their normally not explicitly defined API from one day to the other and … BANG! You web application crashes.

After you have installed WPWS you can simply open your blog and append ?/wpws to your blog’s url.
My plugin for example is accessible through bkahlert.com/blog/?/wpws.
The following screenshot shows what the plugin’s homepage looks like.

Continue reading…

generic ISOCUBE

Zachary Johnson and Paul Hayes showed some really nice examples of the CSS 2D transformation capabilites (isocube, 3D isocube using 2D CSS).

What I missed was the math behind it. Both (and every other isocube I could find on the net) statically positioned the three rectangles that form the isocube.

So what I did was to implement a generic isocube that renders based on the dimensions w, h and a degree α. The sources can be downloaded as a jQuery Plugin.

The math is mainly based on the Pythagorean theorem. In order to geometrically verify some hypotheses that came up I used Cinderella.

Continue reading…

Improvement of the Out-Of-Box Experience (OOBE) in Saros though Heuristic Evaluation and Usability Tests

Four days ago at 11:30 I finished my Master’s thesis.

Everyone knows the term usability but only a few the special aspect called out-of-box experience. In short OOBE is about the experience a user has when first confronted with a product.

Verbesserung der Out-Of-Box-Experience in Saros mittels Heuristischer Evaluation und Usability-Tests

Osama Bin Laden killed live on a news broadcast! watch the video: …

A worm has started to spread over Facebook promising
the user a video where the killed Osama Bin Laden can be seen.

The link is:

http://www.facebook.com/pages/Osama-Bin-Laden-Killed-Live-on-Video/201198676585608?sk=app_190322544333196&71029

On the corresponding Facebook profile you are asked to copy a javascript line following line into the browser’s location bar which reloads a JavaScript file named “bin.js” from a doubtful source.

Continue reading…

Client-Server Communication for Humanoid Robots

Last month I finished my Bachelor thesis with the German title Client-Server-Kommunikation für humanoide Roboter (engl. “Client-Server Communication for Humanoid Robots”).

Within the framework of this work I implemented an application based on the Eclipse Rich Client Platform (RCP) that allows for the communication with humanoid soccer playing robots – namely FUmanoids – developed at the Freie Universität Berlin.

Continue reading…