~/blog

#Development

2026 1

  • #News #AI #Agents #Development

    Week with my-pi-agent

    Last week I’ve set a goal for myself to go 100% without writing a single line of code manually. I’ve been trying agentic workflows for a year now. My first agentic tool I’ve tried was aider and it was pretty cool experience at that time. For the last few months I’ve been using OpenCode but I haven’t been able to let it control 100% of my results. Mainly because it hasn’t been able to earn my trust. I’ve been watching different tools for a long time and decided that it was time to try out something minimal. Something that I can make work for me. Make it work with my workflows and tools I use during work. Pi is a bare bones CLI agent similar to Claude Code, Codex CLI and OpenCode. Pi itself is very simple. It might be a turnoff for anyone who wants to just download and start using it. You have to spend some time tinkering it. There is a lot of packages, that can bring the functionality of other CLIs to Pi.

2024 3

  • #News #Development #Rust

    Auto-commit & push git repositories

    I’ve been writing my notes for over 4 years in markdown. I write my notes in similar style of a Zettelkasten method. I was inspired by foambubble project and was using it for quite some time. The goal of foambubble was to re-use as much free technology for writing and keeping second brain. The author Jani Eväkallio has chosen to write a plugin for VSCode and utilize git workflow. This approach as complicated for average human was very appealing to me as I was already user of certain tools. Since then, I stopped using VSCode as my code editor and therefore, as there wasn’t support for foam outside of VSCode I’ve migrated to a simpler workflow using zk. Since then, I have struggled a lot with forgetting to commit my changes as I often write updates, mark completed tasks, or write new TODOs throughout the day.

  • #News #Development #Rust

    My first published Cargo crate

    I’ve become obsessed with cameras, during our Tenerife trip, where I got to use a borrowed mirrorless camera for the first time. After that, I researched which camera I’d buy for myself for five months. While watching all the reviews, I was interested in the exposure settings for each picture presented. I’ve displayed many photographs in our Tenerife vlog with my wife. I’ve decided that I’d like to show those exposure settings in my other videos as they might inspire other photographers. I’ve tried many image editors and tools, but not one was able to fulfill my demands on how I’d like to display those settings underneath each picture. Many tools supported some kind of framing, however it was always in a limited way. I knew straight away that this would be a cool and small side-project that I could create. I could use my favorite technologies and have good content for my streams. At first, I thought, that I would have to render the text right into the image. It will however be in some aspect a deformation to the quality of the original image. There was also a question of how should the text be displayed in a way that for any image size, the text will be of a similar or determinable size.

  • #News #Development #Rust

    This site has been rewritten again

    Hey world, After a few months of work, I can finally present to you a new style for this site. The style isn’t the only thing that changed. I’ve completely rewritten how this site is produced. With the front-end tech world spinning too fast I’ve noticed this cool little library called HTMX that takes front-end development back 10 years and provides a completely different look at how web development could’ve been done.

2022 2

  • #News #Weekly #Development

    Our attempt at Rusty game jam - Weekly #25-2022

    Long time no see! I noticed that I haven’t even posted about our wedding day. It was the best day of my life. Very beautiful day. I cried almost the whole day because it was so beautiful. I love my wife! This week I’ve attended a Rusty game jam #2. It was a great experience for me as I have been able to dive deeper into Rust and bevy game-development engine. Big thanks to @silen-z, who joined my team and helped me get going at the start. We didn’t manage to finish the game in time. As we only had a week and we also didn’t code each day of the week. We have only been able to get some collision mechanics and map creation working. But I am very proud anyway. You can check the source code for the game on my GitHub and also download binaries to try the game out on any platform. Thanks to @septum for providing a good boilerplate for a bevy project. The whole process was broadcasted on my stream. I am very thankful for anyone who participated.

  • #Development #Guide

    Error handling with Either<Type>

    We have started a new small internal project for automating a few workflows around counting worked hours and time offs. The application is a slack bot on top of node js, TypeScript and PostgreSQL database. We use 3rd party APIs to fetch data about the times which we need to accumulate and process to calculate valuable information to our users. It will run on a server with a possibility of migrating into serverless when we decide if it’s a good use case for it. We’ve decided that we won’t experiment too much for development as we want to make it useful first. As it is not a classic web server application I had to come up with slightly different error handling as we are used to. I’ve been trying to find a semi-functional API with all the good practices described in my guide on error handling. The main goal is to not let users be presented with internal information about errors. We want to show user-friendly messages instead.

2021 2

  • #Development #Testing

    Introduction to JavaScript Application testing

    An automated testing suite for your application is like a feature requirements document. When this suite is passing, it means that the features are delivered correctly as described in the requirements. Automated tests help reduce manual testing time and as long as they are passing, it means that the feature is working as described. Not only do they reduce costs and time of manual testing but they also can help while development.

  • #News #Podcasts #Development

    Podcast episode about Agile development

    Last week I’ve been invited as a guest in Sudolabs Products podcasts. I’ve been interviewed by the host and my colleague Ján Koscelanský on my experience with building and leading the team behind The Expert. We were also talking about implementing Continous Integration and End to End testing with Cypress framework. I have to admit, it was a wonderful experience and I’ve enjoyed it. I’d like to do it again in the future. The episode was recorded in Slovak language. You can listen to the podcast episode here:

2020 6

  • #Development #Guide

    Logging recommendations

    Do not use console directly. Programs should be able to define logging strategies dependant on the environment. We strongly recommend using a logging library such as Winston (commonly used in node.js programs). Libraries should provide an easy way to choose a transport which will be used as on output for logs. Examples of transports:

  • #Development #Guide

    Guide on error handling

    Having good error handling practice is very important when building complex applications. Applications which consist of multiple applications such as web applications, where you have multiple parts like client, server and database create a system where errors can happen in any individual parts or in communication between them.

  • #News #Development #Serverless

    I've moved my site to Netlify

    So I’ve been trying to set access to my CMS for a long time now. The problem was that in order to have CMS accessible through my domain, it requires an OAuth server. I’ve figured out that creating a custom serverless function which will handle the authentication with GitHub would be sufficient. So I’ve took some inspiration from the 2 repositories linked in Netlify CMS documentation: The reason because I link both of these was that I’ve used the almighty AWS Amplify CLI to create an API for me, which has bootstrapped an express application for me. This turned out to be way easier then to make 4 independent functions as Amplify is not providing a different way of creating simple shared repository of multiple functions like serverless-framework does.

  • #Development

    How to deal with technical debt

    Technical debt is a massive problem that costs a lot of time for everyone working on the team. It should be part of the development cycle to eliminate it. Manage a secured time in a development process to increase development experience. By planning regular tasks like:

  • WebAssembly briefing

    Last week I’d organized a small briefing at work about WebAssembly. The goal of the briefing was to give my colleagues an overview about what WebAssembly is and how it can be used to improve our products. I’ve used these notes for the discussion.

    WebAssembly is a new type of code that can be run in modern web browsers — it is a low-level assembly-like language with a compact binary format that runs with near-native performance and provides languages such as C/C++ and Rust with a compilation target so that they can run on the web. It is also designed to run alongside JavaScript, allowing both to work together. The list of the languages that compile to WebAssembly is getting bigger and bigger. But does it support _.sample(popularLanguages)? Most probably: yes, it does. Someone already made a language designed for WebAssembly called Assembly script.

  • How I've built my website

    Creating my own website with blog was something I had in my mind from start of my professional career after I left school. I had a lot of new experience with development which I wanted to elaborate on and save into a small library so I can take a look back on my thoughts how they evolve over time. This was like 6 years ago. I had a successful first attempt at doing so. I created a WordPress with the simplest theme I’ve found and wrote some articles. I’ve published it under a domain of one of the first startups I’ve been part of. I still have a backup of the Wordpress database somewhere so I can export those articles here when I will feel like doing so. The blog haven’t lived for long as the domain once expired and I was not satisfied with it enough to deploy it somewhere else.

↑ top