Hello, I'm Stanko, a software engineer in Belgrade, making digital products and generative art.
Recently I implemented a fly out menu in React, and stumbled on the following problem - I had to catch a blur event on the menu, but it had multiple focusable children. When user is tabbing between these menu items, blur event is triggered every time on the parent, followed by the focus event on the next item. As I wanted to close the menu on blur, this would close it before user was able to get to the next menu item.
2020 was a hard one.
I started writing this post in December, but I couldn’t make myself finish it. The whole situation with COVID made me anxious at times and I didn’t really have motivation for my side projects including this blog. But I won’t focus on bad things, everyone had a tough year, so let’s try to stay positive.
I already built a mount for my Raspberry Pi camera, but it was 3d printed. Meaning that it has one fixed position. I used it a couple of times, but I wasn’t super satisfied. Then I stumbled on these images, and thought it was a great idea to use Lego to build a new, more versatile mount.
A friend of mine had a bunch of spare Legos laying around, so he gave me two bags full of Legos to play around. I wasn’t sure where to start, especially because I wanted to make both height and rotation adjustable. After fiddling with the blocks for about an hour, I came up with this:
For multiple projects, I had to add a simple video component with Always include at least basic video controls for accessibility and a buffering loader. It is not hard to detect the buffering state, but it can be tricky to get everything right.
Therefore, I created a simple component which I now copy from project to project with slight style adjustments. Jump to the code if you are not interested in how it’s made.
It is funny, I would never say I would be sad to deprecate a software project. Especially a project boilerplate. But I just merged the deprecation notice, and I do feel down a little.