Metal Pipes and Machinery
Photo by Crystal Kwok on Unsplash

Platform-Independent Asynchronous Child Process IPC

Spawning subprocesses and catching their standard output and standard error channels sounds like a trivial task but it is somewhat tricky to make it also work on Windows because of the platform's numerous quirks. It is, however, feasible, as the instructions below show. Code is provided for both C and Perl. You should be able to port it to other scripting languages without major problems.

Development

See All Development
Metal Pipes and Machinery
Photo by Crystal Kwok on Unsplash

Platform-Independent Asynchronous Child Process IPC

Spawning subprocesses and catching their standard output and standard error channels sounds like a trivial task but it is somewhat tricky to make it also work on Windows because of the platform's numerous quirks. It is, however, feasible, as the instructions below show. Code is provided for both C and Perl. You should be able to port it to other scripting languages without major problems.

Stairway to the second story in the House of the Tiles, an Early Helladic II palace in Lerna, Greece
Source: Heinz Schmitz, Licence: CC BY-SA 2.5

Lerna Mono Repos with Internal Dependencies

Mono repos are very popular nowadays for bundling a collection of related JavaScript libraries in one single repository. Figuring out how to handle dependencies between multiple packages inside that repository was a little tricky for me. This is how I got it working.

Number Comparison Without Overflow

When dealing with numbers that come from untrusted sources, you should always expect that these numbers may not fit into the integer data type that you are using. Such number overflows may cause subtle bugs or security problems in your code.

Strawberries on Newspaper
Image by Amber Shadow on Unsplash

Qgoda News (06/2023)

Both this website and the homepage of the Qgoda project have recently been relaunched, of course, with Qgoda, the static site generator (or headless CMS) for flexible and efficient creation of multi-lingua websites. That is reason enough to spread some news about and around Qgoda.

The Gory Details of URL Validation

Angular - Bootstrap Modals With Ngrx Effects

How To Use Google Maps API Keys For Free

Video: Qgoda at the German Perl Workshop 2018

Template Toolkit and Unicode

Unicode Regex Pitfalls

Passwords on post-it attached to monitor

How to Use Saved Passwords Everywhere

Some web sites and applications prevent users from using previously saved credentials. There a very few legitimate reasons to do so. In the vast majority of cases, such measures just patronize users, often those people that actually keep up the service with their financial support. But it is actually quite simple to bypass such paranoid settings.

Single-Sign-On

Simple Single Sign-On Part 1 - (Open)LDAP

Individual user and password databases for every single service in a network are a nuisance for users and for admins, especially when users have a tendency of forgotting their password. Using LDAP for a centralized user management is less complicated than you might think. Even in a SOHO (Small Office/Home Office) environment LDAP is not overkill. Setting it up will pay out in little time.

Dynamic DNS

Simple Dynamic DNS

Most routers for home internet allow you to forward ports of your publicly visible IP address to internal IPs of your home network. In order to make that work, you first need to know your publicly visible IP. Most of the time, the router will fetch its IP from the ISP via DHCP, and the address is not constant. This is where countless dynamic IP services jump in, with the disadvantage that the names that they offer are mostly plain ugly (my-name.dynamic-ip-xyz.example.com) and most of the time they will make you pay for everything but the most basic services. If, however, you are the admin of the nameserver of your domain you can easily set up your own solution.

Syslog-ng Unique Persist Names

Group Authentication For Nginx

Simple Content Negotiation For Nginx

Multilingual Web Sites with Jekyll

Tar Option 'v' Considered Harmful

Fruity Green Lentils Oriental Style

Fruity Green Lentils Oriental Style

Lentils can be combined with pretty much everything. The combination with fruit has been on my list for a long time already. I wanted to go with pomegranate seeds that I could not dig up, however. So I tried it with the goji berries that have been lying around in my pantry for at least a year.

Cologne-Style Black Bread

Bulgarian Yogurt

Dead-nettles in pancake with egg

Red Dead-Nettles in Pancake

Coco Chickpeas, Pakoras, Mango Chutney, and Oriental Yoghurt

Coco Chickpeas, Pakoras, Mango Chutney, and Oriental Yoghurt

Hausgemachte Dickmilch

Home-Made Soured Milk

Homemade Sour Cream Butter

Home-made Sour Cream Butter

Ketchup

Ketchup

Draff Bread

Draff Bread

Olive Paste

Poached Egg With Braised Chard

Spicy Red Lentils On Rucola Bed

Peach Crumble With Fresh Herbs

Salty Caramel Sirup With Roasted Chilies

Pepper-Crusted Tuna With Pomegranate Corn Salad

Miscellaneous

See All Miscellaneous
The U4P branded for cantanea

Ullrich Sport U4P Foosball

The new office finally has enough space for a foosball. Although Italian brands are more popular over here in Bulgaria, I prefer the German style. And yours truly wanted a model with serving-holes as this is more suited for non-professionals like us. After some intensive research I opted for the Ullrich Sport U4P that offers top quality at a very competitive price.

Troubleshooting the IKEA RENGÖRA Anti-Flood Device

The machine beeps three times, continuously, no clean dishes. This acoustic alarm signal of the IKEA RENGÖRA means that the anti-flood device is on, that there is water in the machine in a place where it is not supposed to be. The instructions advice you to contact the service. But the service was not able to fix the problem in my case.

The Kasperle kitchen
Click the image to start a slide show

The Kasperle Kitchen

What are the birthday wishes of a three-year-old? Both a Kasperle puppet theater and a kids' kitchen were long-standing items on the list. Why not simply combine the two?

Ryanair after take-off

Optimize Ryanair

Flying with Ryanair is comparatively cheap but requires a whole lot of patience. Ryanair's aggressive cost optimization strategies do not necessarily improve the flying experience of the passengers. But who cares? They have already bought a ticket. Nonetheless, there are countermeasures for the passenger.

This website uses cookies and similar technologies to provide certain features, enhance the user experience and deliver content that is relevant to your interests. Depending on their purpose, analysis and marketing cookies may be used in addition to technically necessary cookies. By clicking on "Agree and continue", you declare your consent to the use of the aforementioned cookies. Here you can make detailed settings or revoke your consent (in part if necessary) with effect for the future. For further information, please refer to our Privacy Policy.