A while ago I optimized some images for the site you are looking at, by using the
webp format
because I had forgotten to do that, and
PageSpeed Insights
suggested to do so.
I forgot how to do that, so I am writing it down now. Read on if you also want to know how to convert any kind of image to webp and embed it in your site.
Continue reading →
I am currently working on a React Native app that uses redux saga heavily. My main concern with it is the traceability of code that goes together, the modularization. It is hard, if not impossible to know what belongs together, what is needed in combination with what.
Continue reading →
All my projects use docker-compose. In my setup I want every nodejs packages that provides an executable, such as mocha
or tsc
to be available globally on the command line.
Continue reading →
After clarifying why I use Docker for every project I set up
let me try to clarify also: Why would I use a docker-compose setup over a single Dockerfile setup?
I had been doing the single Dockerfile setup for quite a while. I was doing a lot of manual work, that made the setup work. But I don't regret it, it taught me a lot! But that was not sustainable, and it didn't scale.
Continue reading →
I used to install everything on my machine. I used to have ruby, nodejs, python, java, rebol, red and all the programming languages and environments, their packagers and tools I needed installed on my machine. It was heaven. Except for the moment when I had to install a new tool, that needed a newer version, and the old ones might broke and then I had to choose or reinstall every time, switch to rvm, nvm, pyenv or something else. For a while vagrant was cool.
Continue reading →
I have been using tundra as template engine for this site. And I am thankful for it, but it's time to move on. I mainly chose it because it is tiny, has no dependencies and it has the features I was looking for. It just does the things I am used to from django-like template engines not well enough, misses a tiny useful feature here and there. This does especially hurt, when I want to reuse HTML sceletons, tags, HTML snippets or functions to generate them. That is where tundra stops working. Knowing the code a bit I also think I have a feeling that getting it there would be quite some work.
Continue reading →
Until today I was just a copy+paster of nginx configs. I thought I had my share back when I learned and undestood apache very well, so why learn another one. But my nextcloud setup and letsencrypt that comes with it has an nginx "bundled", so I would like to understand things a bit better. So I started reading the docs and will take my notes here.
Continue reading →
I want to get my nextcloud setup to run using docker-compose, and to start with I need a linux machine with docker running at start up. This is task #1, it looks like this blog post
has the answers how to do it.
Continue reading →
When I was involved in page speed optimization, in my last job, I was always fighting for measuring in two ways. One using tools like webpagetest and lighthouse and two measuring the real user's experience, on the site. There are even names for it, I didn't know, until now:
Continue reading →
When I started digging into the styles.xml
file of our React Native app I found XML like this:
Continue reading →
I had deleted a git branch locally, which I wanted to restore. It's totally easy. A tiny bit of knowledge upfront. There is something called the reflog, it's kinda like the hidden git history, that knows every change you did on the repo, every change, and it does NOT throw away anything.
Continue reading →
I want to use my real android device to preview stuff, not the emulator anymore. If I don't get the CPU power I need, I need to work around it.
Continue reading →
I was just struggling to find out how to start a different emulated Android device from the command line. I found the relevant commands:
Continue reading →
Since I moved to Linux for work I started to look up and collect the git commands I need most. On Linux I do not have my beloved GitUp app
which is an amazing visual and fully keyboard controllable git tool available for MacOS only. Here is my list of git commands. As usual I created this collection so I know where to copy+paste commands from ;).
I just watched the very good, How to run Nginx inside Docker container
video. In 9 minutes you will learn the basics of docker while starting up an nginx server running on docker. The real take away for me is the updated docker commands, which are finally as explicit as I always had wished they had been from the beginning. Like docker container run
which was docker run
.
Continue reading →
While reading about github actions I note down a couple of things here, that I find worth noting and remembering. Basically I can imagine what it looks like, it's a travis with a tighter integration into github, but some details are interesting.
Continue reading →
Lately I thought more often about automating my blog using webmentions
and while reading the Github Actions docs, I found the following might come in handy. So I am parking that info here.
Continue reading →
I wanted to deploy to github-pages using the renamed branch "main", but it seems not to be possible with github (yet) to turn on github-pages with a branch different then "master". So I thought it might be a good time to try out github actions, maybe this will help? If not I will have learned something.
Continue reading →
It is painful sometimes, but having a setup that works on any machine (that has docker), just git-clone and run is AMAZING. I use a bash script
and a 2-line Dockerfile for it.
Continue reading →
I saw a video that VS Code creates directories and file when adding a file named like dir1/dir2/file.js
, I tried it in WebStorm. It works.
Continue reading →
It is a bit more than a month ago that WebStorm has shipped the feature
Displaying terminal sessions side by side
and I am using it every day now.
Continue reading →
Since QuickTime on Mac is great for short screen recordings, but the web can handle animated gifs better, I need https://cloudconvert.com/mov-to-gif it's a simple and awesome service!
Pricing: "absolutely free for up to 25 conversions per day", totally cool. Thanks!
TypeScript 3.9 was released. Since I am basically a fan of making code safer and better to understand, that's what I use types for, I see nothing interesting to me in this release. But I also use TypeScript in a much simpler way than the cracks and fans.
https://devblogs.microsoft.com/typescript/announcing-typescript-3-9/
Continue reading →
WebStorm has this awesome feature they call Live Templates
where you can configure a text in a certain filetype to autocomplete to something, even dynamic. See how I built the auto-completion for dateC
which becomes
dateCreated: 2020-05-02 15:27 CET
, which is current date of course, in my custom format.
Continue reading →
My favourite git tool GitUp, which allows me to do everything with the keyboard and still has a UI has just received an update and if I had not read the release notes I wouldn't have known that now the "Fix double clicking title not expanding window" landed. I had already trained my muscle memory and would probably not have realized.
Continue reading →
Jeremy Keith nailed it again:
Continue reading →
I still often type document.querySelector()
or document.querySelectorAll()
even though even before this was available in the browser the developer consoles, FireBugs or whatever they were called had a shorter version available $
and $$
. Yep, it works almost exactly the same, just that one returns a NodeList
the other an array. Just try it. It works in all browsers as far as I know, I tried Firefox, Safari, Chrome and Edge. See the image below for how it works in Firefox.
Continue reading →
what if an code editor had #refactoring as the default when changing variables names, etc. and not as a sub-menu item which one has to search for
Continue reading →
gitup makes branches easy to understand show perfect overivew