In this profile I will post some blog posts, some Tips or Tricks, some rambling and ideas about various things regarding to software and hardware developing.
For the hardware side see also my other profile 8 bit computer in German.
Also I will showcase a few open source projects I did in the past that may be interesting for others.
I my area of work I don't just build any kind of software, usually the really oddballs, like extreme performance, exotic environments and mostly stuff "others" said it's impossible.
Some examples wanted?
Imagine a service that gets HTTP requests, does some magic on it and returns an answer that is unique per request and based on database stuff, a lot of processing and logic behind it.
Now imagine that you need to do this in less than 10ms per requests and for millions or even two-digit billions of requests per day.
Just to compare that to a well known site: wikipedia.org.
According to their statistics they get something in the range of 21 billion page requests a month (September 2021), mostly delivered via cache.
Now compare that to one job I did with >10 billion requests A DAY without any kind of caching.
Or a more recent project with a smaller 3-digit million requests per day with average response time of 1.1ms including network latency, measured by the load balancer.
On the other side, I do stuff like this website, various front-end tools for above mentioned and sometime small project using embedded micro controller with 8 Bit and <1KB RAM.
Welcome to my crazy world.
Why the name grumpy?
Simple, in my crazy world I need to do low end stuff and stuff that is stable and does not move on that quickly.
This excludes most of the fancy new stuff where every month there is a new major version that breaks the old version and needs to be fixed again and again. (like any known fancy and hyped Javascript framework out there).
Some of my friends and coworkers called me old-school, innovation resistant and especially when I tell them what I think about their new toy, this hyped thing: basically grumpy old guy that does not want to change. So the name.
But when I see their advertisements of "fast" processing: We were able to to process 500 requests per second and used only a cluster of 3 16 core, 64GB RAM fat high end-servers, I do cringe.
Some background info
My Security series:
- Correct web server permissions 8.5.2020, updated 9.5.2020
- How to handle user uploads 9.5.2020, updated 10.5.2020
- Content Security Policy (CSP) 9.5.2020, updated 10.5.2020
Programming topics:
- How to write a modern webservice part 1 16.6.2020
- Benchmarking is an art 31.1.2022
- Creating an algorithm for string art 31.7.2023
- presentationmaker.js - a tool to make browser based presentations 10.7.2024
Management topics
- Become a better team lead
- Introduction 30.1.2021
- What's your real job as a team lead 30.1.2021, updated 26.4.2021
- Become a team 30.1.2021, updated 23.4.2021
- Do favours 30.1.2021, updated 2.2.2021
- Hiring new team members 2.2.2021, updated 23.4.2021
Quick tips
- Eclipse: disable smart insert 1.7.2020
Random rants
- Websites and ads 2.2.2021
- A frontend (framework) rant 13.5.2021
- A rant why I don't rent software and never will 23.11.2021
- A systemd rant or why I move away from it 11.1.2022
- conrad.de: How to drive business to other shops 14.6.2022
- Why I dislike Containers and per program packages 7.10.2022
- UPS or oops - we messed up 3.10.2024
Nerdy fun stuff
- Play "Music" with stepper motors Part 1 Part 2 Part 3
- DIY air quality sensor (ESP32 based) 22.10.2021
- Building a keyboard filter Part 1 Part 2 Part 3
- Build an path animator tool to create 3D-special effects (Introduction to the tool) 17.1.2022, updated 19.2.2022
- Update: JavaScript version of the Path Animator tool 19.1.2022
- Using the Path Animator tool in Blender 20.1.2022 updated 28.10.2022
- CIMDIT the "completely insane multi device" Introduction Part 1" Part 2 Part 3 Part 4 FAQ MIDI support
- Creating a custom (car) Radio Part 1 Part 2
- Electronics to trigger Cameras, Flash and other things 8.2.2023
Other stuff:
- Using putty without password (private/public key auth) 20.1.2020
- How to set up gpg email encryption with thunderbird 20.1.2020, update on 31.1.2020
- Backup strategies 26.5.2020
- Free and easy ticket system 27.1.2020
- What would you take? 2 Million in one payout or 4000 per week for the rest of your live 22.8.2024
- Running a Bambu Labs P1S or P1P 100% offline 9.10.2024