Long time, no new posts
The last post I wrote is more than 4 Months old. A lot has happened in this time.
But first, why no new posts? Short story, I had no energy to write and completely lost motivation.
The last post I wrote is more than 4 Months old. A lot has happened in this time.
But first, why no new posts? Short story, I had no energy to write and completely lost motivation.
Over the years, I got used to a specific stack. As a Web Developer, the main use case is creating websites and -apps. In this field, you have plenty of tools to choose from. Which is a blessing and a curse at the same time. ๐
As a base, I use Next.js. Here I enable Typescript + ESLint and Tailwind CSS. Typescript and ESLint are a no-brainer for me. Sadly, Prettier is not in the box. So I install it afterward. On vercel.com, Next.js can be easily deployed and you have a good free tier. So you can develop and share a URL with your client, for example.
The next bigger thing is Tailwind CSS. For years, I was using Styled-Components, but was unhappy with it. Then I started my first project with Tailwind CSS and styling made fun again. To let play nicely with React.js, I'll use tailwind-merge. From their description: Merge Tailwind CSS classes without style conflicts.
To build nice components, there are Radix-UI Primitives. These pair really nice with Tailwind CSS. The biggest win on the Radix-UI Primitives is the react-form
, which saves an extra installation of a separate React.js form library.
Every App or Site needs Icons. Here I found Heroicons, from the Tailwind CSS creators. The collection is big enough to get the most out of it. For comparison, the Radix-UI Icons have a nicer look, but they are very basic, and I often didn't find what I was searching for.
So, Next.js, Tailwind CSS, Radix-UI Primitives and the Heroicons cover the Frontend. Time for the Backend. ๐ฅณ
For the Backend, I simply use Supabase. Which covers all my needs. A Database, Authentication, and Storage. That's it. Nothing more to say. Supabase has also a good free tier and can be self-hosted if needed. ๐
As mentioned before, I use pirsch.io. Web-Analytics from Germany. I like that it is privacy-friendly and that there is no need for cookies. The Standard tier with โฌ6/Months is the only thing in my current Stack2go which is paid.
And that's it. Have fun with it. ๐
31/100 of #100DaysToOffload
Writing this post was harder than I thought. ๐
My thoughts are just a constant stream of something chaotic. I struggle with getting a clear path in my head. So I need to write it down, why not in public? For some years, I'm doing it in my notion app but in private. Hopefully, a post can help to make it right and good.
Writing about a topic will help me to let things go through my head again. With it, I'm able to think more about a topic in detail and extend what I've learned.
A place where I can come back to and realize that this was not the first time I did something dump, so I have written it down in advance.
Gaining experience is never bad. So writing will get me some good, I hope. Like with coding, you get better, when you do it. Not just copy and paste from StackOverflow. Just writing actual code could help.
I'm not the best speaker or someone who can explain things good. I require time and reiterations. With writing a post, I can iterate over again and again until a post looks good.
30/100 of #100DaysToOffload
Wow, what a long time without an update post. I feel bad and have a lot of topics I want to write about. We are on a vacation trip, and I'll try to use the evenings to complete some of my posts, I've started writing but never finished.
The last few weeks have really drained us. But not working wise, more privately in combination with work. Keeping care of the little one while working, turned out more stressful than expected. When we were forced to start in March, we were optimistic and everything worked quite well. But the little one is growing and claims a lot of attention lately. Which is good, he is not just lying around anymore and plays with his loud toys. Now he is discovering the world through his โeyesโ. Which is wonderful, and we love everything he is doing. However, we are counting the days until the Kindergarten starts in September. We are not the multitaskers we thought we were. And you feel that the little one needs more input from us and other people. Which is also good, and you can see how he grows with the input. ๐ We've met his Individual case assistance and both seem to like each other. Hopefully, in September everything will go well, and they will be together for a long time. :)
Some topic regarding the #GoodBadUgly posts. I've decided to remove the โ โ Week 19-25โ count. It builds too much pressure on me, to write these posts, and it keeps too much time writing them. This time can be spent on some more interesting posts. I will keep collecting my stuff like in the past because it makes fun to write them and helps me. Maybe I think too much about it and make it too complicated. ๐ I should just write and go on.
So, enough pre-banter, let's start with #GoodBadUgly of the last 6 Weeks. ๐ฅณ
Lately, I discovered this CSS value of the align-items
property, which I didn't know about. I just wanted to share it. For me, it came quite handy in a project.
align-items: "last baseline";
More about this feature:
I hope it will help someone.
28/100 of #100DaysToOffload
What did I do the last 3 Weeks? The last 3 weeks passed very quickly, and I thought I had nothing to say. But there is something. ๐ With my current client, I'm switching between 2 notebooks. My MacBook Pro and the Windows Thinkpad from my client. When I'm done working for my client, I usually don't have the motivation to sit on my MacBook to do something. I even leave tax matters lying around and don't process them. But when I have the motivation, I work on my private side project, on which I will tell more, when the next milestone is completed.
๐ I've started buying 4k Blu-rays of movies I really like and watched more than 2โ3 times. Just because, often, I had this problem, that I wanted to watch the movie, but it was not on a streaming service, I pay for. I know it is not a minimalistic way, which I try to live as far as possible. But for me, it is Ok collecting stuff, I love.
๐งโ๐ป There is progress on my client's project. I'm now able to work in some way. ๐ I completed the first tickets and worked out some new tickets where I clean up the project and refactor parts, to get a better developer experience. It is the first project where I didn't have a real onboarding session. The one responsible for this project left without a word or documentation. So I'm on my own here. Which is in some way also quite fun. The only downer here is that I have to use Windows and can't install neovim, because of some policy. ๐คท
๐ฆ We as a family visited the Jurassic World Exhibition in Berlin. Really impressive what they created there. Sure, as an adult you saw that it was not real, but they did a real good job on keeping up the illusion. Only the last part, where a T-Rex escaped, was rushed and ended in the merch store. It ended when you realized what really happened there. But nevertheless, it was good and I can recommend it.
๐ฅ I've made some progress on my private app project. The last milestone I've completed added some new features which put the project in a presentable state. Now I'm working on the next milestone, which will prepare everything for a small test release. Working on the last milestone also led to some ideas for new posts. Now I need time to write them. ๐
๐๏ธ After making my 15 min Kettlebell workout, I've tried a new workout, which is 20ย min long and exhausting. I feel awesome after the workout, exhausted but in a good way. Let's see when this will get normal, and I have to look for a new one, to boost my workout. Maybe I can increase the weight of the kettlebell, which is 12ย kg at the moment.
๐ I've added pirsch.io tracking to my blog: https://bruegge.dev/add-pirsch-io-tracking-to-write-as
๐ค After ~5 Weeks of not going to any concert, I was at a concert to see Escuela Grind and Rotten Sound: https://bruegge.dev/escuela-grind-und-rotten-sound-in-reset-club-berlin
๐ค I'm kind of sick for more than a 1 week, not too sick to stay in bed, but sick enough to feel unwell by everything I'm doing. At the time of completing this post, I'm feeling way better. I hope this will last some time. ๐
๐ It will hunt me until it has an ending, going every day to the kindergarten to bring and pick up my oldest makes me feel unwell. Seeing the people responsible for rejecting the youngest drives me crazy. I'm not that kind of person who can deal with something like that very well. And I see no escape, besides waiting for the next year to come, where the oldest will be going to school, and we don't have to deal with this kindergarten anymore.
27/100 of #100DaysToOffload
Write.as has the option to add custom CSS and JS to the site. Write.as has also basic tracking for the posts and how they are performing. But it is just basic tracking and only for the last 30 days. So I wanted a bit more. For private projects, I use prisch.io. Which is privacy-friendly and hosted in Germany. I will try this out. If it is not working as expected, I will remove the script.
First, go to your pirsch.io Dashboard and click the +
Icon on the top-right.
You will be asked between Client or Server implementation. Go to Client implementation and copy the script tag.
<script defer src="https://api.pirsch.io/pa.js"
id="pianjs"
data-code="YOUR_SITE_CODE"></script>
Now, transfer this HTML into JavaScript. Here we create a new element and add it to the document <head />
.
// Add prisch tracking --- START
const script = document.createElement('script');
script.setAttribute('id', 'pianjs');
script.setAttribute('defer', true);
script.setAttribute('src', 'https://api.pirsch.io/pa.js');
script.setAttribute('data-code', 'YOUR_SITE_CODE');
document.head.appendChild(script);
// Add prisch tracking --- END
This snipped can be added to your write.as blog. Go to your write.as Dashboard and select the Customize Button. Here is an area where you can add custom JavaScript.
Hit โSave changesโ and reload your blog. The script should now be added. :)
I hope this will help someone.
25/100 of #100DaysToOffload
๐ชฃ Wow, more than 6 weeks since my last link dump post. But I like how this is going. I collect the links over time and revisit them later to write something about them. Some of them I hve totally forgotten by now. ๐
3 Vim commands for blazingly fast navigation between brackets: you can always learn something new. After +10 years of vim/neovim, I didn't know these little gems, mostly 2 and 3. 1 is a long time goto for me. Link: https://m4xshen.dev/posts/vim-commands-for-navigation-between-brackets/
Draw an iceberg and see how it will float: Lately, we had this topic where an iceberg is not floating like you know it from movies, where you see just the tip and the rest is underneath, like for example, a bottle half filled with water. This little game illustrates it nicely, how an ice could actually float. Link: https://joshdata.me/iceberger.html
Show distances of a map by time instead of space: I really like the Idea behind this. The Author also hast a Video where he explains everything about the idea. Link: https://spacetime-maps.vercel.app/
Price Per Part for Lego Sets: A little Lego geeking here. Link: https://brickinsights.com/statistics/ppp
Breaking Down Tasks: I had a nice read with this post, also the other posts from this author are good reads. This is how I have tried to tackle my tasks for some years now, and it works good enough, I think. Sometimes I'm a bit too lazy to work out the details, this is where my estimates are not the best ones. ๐ Link: https://jacobian.org/2024/mar/11/breaking-down-tasks/
Rethinking the startup MVP: Building a competitive product: Another good read. Link: https://linear.app/blog/rethinking-the-startup-mvp-building-a-competitive-product
Refactoring.Guru makes it easy for you to discover everything you need to know about refactoring, design patterns, SOLID principles, and other smart programming topics: This is a site I check out from time to time and read about some topics, mostly about design patterns. Just to verify that I still could explain a term. Link: https://refactoring.guru/
24/100 of #100DaysToOffload
This will be a short one. โก
๐ก The facade of our house is finally done.
๐ฎ I was able to play some hours on my PS5. Currently, I'm testing the game Outward which I bought on a Sale and I have some fun with it. ๐
๐ค No concerts in the past 2 weeks. ๐
๐ฐ๏ธ Currently it feels strange, I need to do part-time work for my current client, but I find less time to write or do work on my side project. Turns out, while we are both working, my wife and me, it is harder to also take care of the little one.
๐งโ๐ป I'm still not able to work properly on my new client's project. Because there was no real handover, and I have to figure out how my precursor has done all the things. Sadly, basic things like npm start
or a simple docker build && docker run
are not working because of some window's administration settings. But I'm getting closer to a working environment with each step.
๐ Each day, going to the Kindergarten stresses me out every time I see the teachers there. Pretending everything is nice while lied in your face.
23/100 of #100DaysToOffload
Recently, I needed to convert plenty of images from jpeg
to webp
. For tasks like this, I like to use the shell. In my case, bash.
The one-liner I've used to batch covert the images is the following:
fd -e jpg --exec cwebp {} -o webp/{.}.webp
To get all my images, I've used fd, an alternative to the default find
command. Both can do the job, but I prefer fd because of the simpler syntax.
And to convert the images, there is cwebp. I don't know if there are alternatives, this is the first I've found in my search, and it did the job well. ๐
In the end, I've saved ~90% of the file size, which is quite impressive. ๐
22/100 of #100DaysToOffload