RSSAmplifier

Blog

Dmitry Kudryavtsev

All Articles

kudmitry.comRSS feed ↗104 posts

Latest posts

Feature unrequest

Recently, Ghostty updated itself. I switched to Ghostty some time ago, as I like to try new stuff and find better tools for my workflow. With this new update, I noticed something changed in Ghostty. There are now 3 dots at the top of the window, in the center. New Ghostty "feature" I bet most people would not event notice it, but I have been blessed with being a pedantic person, and these 3 dots…

"SaaS is Dead" - they say

SaaS is Dead . Everywhere you look — be it HackerNews, Reddit, or LinkedIn — they claim that SaaS is dead. Armed with a laptop and $100 Claude Code subscription, even your tech illiterate uncle can build the next Jira. Producing a working product now costs pennies compared to what it costed before the AI boom. But regardless of what they say, I’m here to tell you that they — are full of shit . You…

Farewell, Rust

Prelude When I was in 9th grade — last year before high-school — my best friend persuaded me to join, together with him, the schools programming club. At first, I hesitated, but later agreed. I am immensely thankful to him for this. There, step by step, we learned Pascal using Turbo Pascal. Little by little, we grasped the basics of the language: variables, operators, string manipulations, data…

Don't apologize for replying late to my email

Before the smart-phone arrived — together with widely-available GSM networks — online communication was different. I would deliberately have to sit in-front of my computer, connect to the internet (in the era of dial-up), and launch my favorite instant-messaging app: ICQ, MSN, Miranda, Trillian, Pidgin, or an IRC client. I’d spend some time, limited in the era of dial-up, to chat with my friends…

Introducing mjmx: a custom JSX runtime for mjml

In my opinion, one of the best things that happened because of React, is JSX. I know many people seem to hate on JSX, but I like it. With JSX, or more specifically TSX, one can write typesafe html, instead of relaying on libraries like handlebars , which is a great library, but it keeps your code and your variables separated. So every change in variables needs to be synced to the view-model, or…

We can no longer trust software

If you told someone back in early 2000s that they would be able to update the software on their TV or fridge, they would look at you very confusingly. And yet, here we are. As I was powering my LG “smart” TV a few months ago, I was greeted with a message telling me that there is a new update available. The thing with TV updates is that they always have bad timing. I turned the TV on to watch a…

Isolating Claude Code

Recently, I have joined the vibe-coding club. I used to laugh and vibe-coders who use Claude Code while accepting everything it asks for, until eventually CC decides to delete their entire home directory , turning their computer into a brick. But, life has a funny way of turning around and coming back at you. Before this happens to me, I decided to take action. Not today CC Moreover, according to…

Dead Internet Theory

The other day I was browsing my one-and-only social network — which is not a social network, but I’m tired of arguing with people online about it — HackerNews . It’s like this dark corner of the internet, where anonymous tech-enthusiasts, scientists, entrepreneurs, and internet-trolls, like to lurk. I like HackerNews. It helps me stay up-to-date about recent tech news (like Cloudflare acquiring…

Not knowing is part of the path

I’ve noticed an interesting trend recently: everyone wants answers. No matter where you look, people just want to know the answer: to life, to business, to love, to friendship. But the more I live, the more I tend to gravitate towards the idea that not having the answer is part of the path: and it’s the most important part. I will frame the rest of the post from a view-point of a successful 1…

I'm Netlify-Free!

Every time someone asked on HackerNews/Reddit “what’s your blog setup”, I would reply “Well, I use Astro hosted on Netlify, but I plan to move to a VPS”. It has been going for more than a year. More important things would be tackled first, and I kept promising the internet that I will move to my own VPS, eventually . Well, I’m glad to say that I finally did! This website is now hosed on a VPS that…

Climbing La Om Peak in Romania

During my recent trip to Romania , I have decided to climb the La Om Peak. There is very little information available in English for this climb, so I wanted to share my experience, and the mistakes I made, so you can prepare better. Why La Om, and why me? La Om is not the highest peak in Romania. At 2,238m, it is 307m shy of Moldoveanu peak, which is the highest peak in Romania and sits at 2,545m.…

5 days in Romania

Recently, I went on an extended weekend in Romania. I’d like to share some of the activities I did there. It’s important to note that I no longer travel for the cities, and look more towards beautiful nature. Being located in the Netherlands, you get tired of the flatness, and so the purpose of the trip was to get to a country farther away — I’m kind of tired of Germany and France — with stunning…

Thoughts on AI, Intelligence, and Knowledge

I have written extensively about AI in the past: Vibe management , The commoditization of AI , Living side by side with an AI , ChatGPT, AI, and the future of tech , and recently In the name of progress . And most of these articles are somewhat negative towards AI. Now, I’m not gonna lie and tell you that I never use AI, and all of it is bad. I do use it. Instead of Google search; in order to do…

Change and Adversity

One of the biggest questions that I’d like to know the answer to, is: “Is it possible to change yourself, and how much control you have over this decision?” Sure, there are people who claim to have made a 180 degrees personality changes, but — aside from the fact that I can’t verify random online claims — assuming it’s true, I wonder, did they have/had a predisposition to make this change? Some…

In the name of progress

Few months ago, the internet has been flooded with AI generated images in the style of Pixar and Ghibli. I didn’t even know that a new AI model was released, because I kind of quit social media, but they were everywhere, and it was impossible to miss it. This made me think, what drives people to use these tools? This is the price of progress When we are talking about technological progress, there…

Why I ditched my Apple Watch

Almost two years ago, I landed in Costa Rica. After arriving at my Airbnb in the evening, I took off my Apple Watch and put it on a charger while I was preparing to take a shower and go to sleep. The next day, after I woke up, instead of putting the watch first thing in the morning, like I used to do for the past 2+ years, I left it on the charger. For more than a week. And then I powered it off.…

Vibe Management

Vibe coding is taking the internet by storm. Popularized by Andrej Karpathy , it changes the entire industry. But why only engineers should have all the fun? Andrej Karpathy Tweet I’m in favor of making as many professions in tech redundant, as possible. I mean, if I can enjoy singularity while vibing my way through my code, why upper and middle management shouldn’t? And the reality is they…

Working with systemd timers

The other day I thought to myself that it would be a good idea to have some backups of my data. So I was wondering, how would I execute a periodic backup task? Most of you are probably familiar with cron . cron is a Unix utility to run scheduled tasks. There is a file called crontab which you edit by issuing crontab -e command, and inside schedule tasks such as: 0 1 * * * /home/skwee357/backup.sh…

The commoditization of AI

Earlier this week, a Chinese company released a new AI model called DeepSeek, that shattered the big tech giants that tried to own AI. Seeing this, brings some memories from the past. In the 1990s, there was a tech revolution called “The Internet”. According to Our world in data , in 1990 there were about 2.6 million of global internet users. By the end of the decade, this number increased by more…

Ghost Engineers

There is a new viral tweet circulating, which states that 9.5% of all engineers—are ghost engineers. Their performance is <0.1x of a median engineer, they do virtually no work, and they might work multiple jobs, thus collecting 2x-5x of an average engineering salary. Usually, I’d ignore such statements, in the end, there is a lot of BS circulating in the World Wide Web. But this research…

How to be a great manager

Before joining Autodesk back in 2017, I didn’t really have a proper manager. I either worked in family-like companies, where hierarchy was somewhat flat, or early stage companies where hierarchy was just developing. It’s only at Autodesk where I’ve been exposed to career ladders, and proper company hierarchy. And while I do have managerial and leadership experience, I believe that a good manager…

Why DX doesn't matter

Jump on any online discussion, and you will hear “DX that framework”, “DX this tool”, etc. DX, together with “fast prototyping”, “rapid development”, “developer ergonomics”, seems to be the only thing everyone cares about nowadays. I’m here to argue that neither DX nor any fast/rapid development/ergonomics enhancement tools/frameworks—truly matter. The entire premise of DX enhancement…

Software Development Fragmentation

About 15 years ago, I got my first software engineering job, and the way things were done back then—was different. I was working in tourism/hospitality, and we were building a B2B product targeted at hotel owners and travel agencies. The product was big and had vast feature set. But in addition to the main functionality of the product, we were also building an accounting and BI (business…

One year of Rust in production

For the past months, I spent (almost) all of my free time working on my side business — JustFax Online . It all started with migrations from LemonSqueezy to Stripe. But like every refactor, or rewrite, it grew way bigger than I anticipated. A simple payment provider change required me to implement a job processing queue on top of SQL as well as doing a tiny accounting system. All in Rust of…

Software development is hard

In my latest blog post , I compared software engineers to construction engineers. I said, that if we, software engineers, want to have the same level of responsibility as other engineers, we need to have the same level of respect other engineers get. But something was haunting me. I was thinking a lot about software engineering for the past month, and I couldn’t understand why software engineers…

On build in public and indie hacking communities

After failing my first business idea (some context in available in this blog post ), I stumbled upon two communities: the #buildinpublic and the indie hackers community. In this post, I want to share my experience about these two communities. NOTE I have no intention to discredit or offend any particular individual or groups of people. My desire is only to share my findings about the various…

Let's blame the dev who pressed "Deploy"

Yesterday I was browsing /r/programming and came across a blog post titled “After CrowdStrike, Programmers Deserve Consequences.” The author opens up with a comparison of Software Engineers to an Anesthesiologist or a Structural Engineer, and tells a personal story about his friend who got stuck in a hospital due to the CrowdStrike outage . And it’s true—software bugs can kill people. Mistakes in…

The day of the blue screens of death

Earlier today, a broken update from CrowdStrike caused massive global outages in machines that are running Windows. A component named “Falcon”, that is responsible for endpoint protection, and runs in kernel-mode, causes machines to fail into blue screen of death (BSOD) and enter a boot loop. Among the industries that were affected are: airlines and airports, railways, healthcare, postal services,…

What they do (not) teach you about Entrepreneurship in school

2008 was my final high school year. Closer to the end of the year, almost after all the final exams, the school didn’t really know what to do with us. So they decided to instill entrepreneurship ideas in the minds of the pupils. Being a school with a strong accent on mathematics and computers, they decided to invite some tech entrepreneurs. In a somewhat voluntarily, 1-hour session, inside the…

One year of solopreneurship

A little bit more than a year ago, I quit my job due to burnout . I, then, embarked on a voyage in Central America with a simple goal in mind: Focus on my mental health Focus on my physical health Build an online business Little I knew that starting an online business is not as easy as it seems. A quick recap I did a 6-month overview here , so you can go read it as well, but here is a quick recap.…

Tips for improving your CV

Recently, I’ve seen a lot of people online asking for CV improvement tips. Most of them make the same mistakes, and while I tried to help some of them, eventually I realized that I repeat myself too often. So I decided to share some tips for CV improvement from someone who’s been on both sides of the interviewing process, and is married to a tech recruiter. So let’s begin. Who reads your CV?…

Why your team might be holding you back

About a week ago, my wife and I went to our first escape room in the Netherlands. We’ve been in about 12-15 escape rooms before, and were always able to escape as a team of two. Not this time, however. This escape room was the first where we failed to escape. Poisoned by the corporate world I decided to do a postmortem of what went wrong, and what we could have done better in order to increase our…

xz backdoor

A malicious backdoor was discovered in xz library that implements LZMA compression. xz , among many other places, is used, indirectly, in sshd . My attempt to explain what happened. WARNING I’m not a security researcher. I did not analyze the backdoor, and this post is my attempt to make sense of what happened in simple words. I’ll link to as much content as possible from people who are more…

The Curse of the Senior Software Engineer

I started my software engineering career more than 14 years ago. Back then I was doing some SEO script automation using PHP. Slowly, I integrated better into the company and started to work on more core features of the product, and eventually even leading my own product. I worked 6 years in that company. While working there, the company grew by approximately 3 people. This is far from your average…

Serving Astro with Rust

As some of you might know, for the past few months, my free time is spent on JustFax Online . I also published few blog posts about this project: here , here , and here . Let’s try to milk this project some more, this time with Rust and Astro. The entire website for JustFax is was fully server rendered. Like in the old times. You would hit a URL, and the server would respond with an HTML.…

Rendering emails with Svelte

Emails play an important role in my project JustFax Online . Before I implemented emails, I would spend time answering customers’ requests for fax status updates. This means that I had to monitor each fax transmission (and some can take up to 30 minutes) and send an email when it succeeded or failed. And so the obvious solution was to implement email notifications. I hacked something together…

How to stay junior forever

In my last blog post , I mentioned briefly the fact that today there are more engineers than meaningful jobs for them. This means that there is an immense pressure on junior engineers. Getting a job becomes a challenge. The other day I stumbled upon a post in /r/Programming . The post was talking about how GitHub Copilot affects code quality. You can read the post here . The only important quote…

The Bloat in Software Engineering

I’ve been thinking recently about two things: The Roman Empire and the unnecessary bloat in Software Engineering. You see, about 7 months ago I quit my job due to burnout . Since then, I spent a lot of time thinking and analyzing what is so wrong with our industry. I wrote once about how our industry is broken , but that article was referring more to the technical side and code bloat. Today, I…

I spent €200 on Google Ads so you won't have to

If you remember, in one of my past blog posts, I was talking about the fact that I want to try running ads for JustFax Online . In general, I don’t like ads. Something in the advertisement industry repels me. However, as I mentioned in that blog post, for some products running an ad campaign can actually benefit. And so I spent €200 on Google Ads, so you won’t have to. Let’s see what happened.…

Using AsciiDoc to write my two books

In the past period of six months when I roamed around Central America, among the six projects that I launched—two where books that I wrote. The first book is about technical writing: Technical Writing for Software Engineer - A Handbook . The second one, which I wrote together with my wife, is about getting into tech: From Applicant to Employee - Your Blueprint for Landing a Job In Tech . When you…

6 lessons from building 6 projects, while nomading for 6 months

Six months ago, I boarded a one way flight to Costa Rica. A month prior to that, I quit my job after being burnt out . My apartment lease ended, I sold almost everything I own, and packed the rest into a backpack and a suitcase. I had a simple plan: slow travel, work on my mental and physical health, and build a sustainable online business . I didn’t have a job, and was relying solely on my…

Web app localization. In Rust.

Localization, often times stylized as l10n , is a process of adapting your website or web application to meet the requirements of specific target market (known as “locale”). It’s one of the 3 processes of going global, which include: Translation ( t9n )—the process of translating the content to a target language Localization ( i10n )—the process that I described above Internationalization ( i18n…

Building a Web App in Rust

I remember when I first tried Rust, I fell in love. It was like a breath of fresh air after JavaScript and NodeJS. TypeScript made the experience way better, and I believe that if you still write pure JavaScript, you are dooming yourself. I wrote about the importance of types here and here . But back to Rust. My first experience with Rust—aside from trying to build my own game using ggez , bevy ,…

Typescript Monorepo with NPM workspaces

During the development of my recent project (more info on my website ), I wanted to make it more modular. It consists of 3 main components: api which is the API server; a process that is responsible for RSS feed discovery called observer ; and a process responsible for sending out emails called distributor . They all depend on a database. I wanted all of them be independent executables. Using a…

On APIs and their responses

Since the dawn of times the web, humans created CRUD APIs. And we were instructed that modification verbs should return the modified resource in response. But, should they? A basic CRUD API consists of 5 verbs. Let’s go over them quickly. The 5 verbs GET The GET verb is used to retrieve the resource, or a collection of resources. It should not make any modification on the server, and therefor it’s…

On types and JavaScript drama

Earlier this week, the entire JavaScript community was in shambles over a controversial decision in a popular open-source project. What happened? David Heinemeier Hansson (known as DHH)—who is the creator of Ruby on Rails (among many other things)—approved a PR that removes Typescript from turbo framework. This decision upset a lot of people, and created a big controversy. It even reached trolling…

The Maya Civilization

Me, looking at Temple I in Tikal National Park Coincidentally, but Guatemala turns out to be the cradle of the Mayan civilization. From there, Maya expanded north to Mexican regions of Chiapas and Yucatán, and south down to the border of Costa Rica. Armed with that knowledge, I visited two national parks: Yaxha (pronounced as Yash-ah), and Tikal (the biggest and most powerful Mayan city). Mayan’s…

Three months of nomading

It’s been 3 months of #nomading the world and #solopreneuring. Here is what I learned. 1. Communities are hard to build Communities rely on a mass of people in order to operate well. Websites like Reddit, are useless if you have 2 users. Focus on building a product you can sell to one person. 2. Build it, and they will come — is a lie There are endless amounts of tools out there. Chances are you…

Own your content

For the past years, we’ve witnessed a rise of new type of social media platforms. Platforms that compete for the ownership of your content. And the attention of your consumers. From owning to renting Before I’ll talk about why, and how you should own your content—let me briefly cover the transition we’ve made from owning stuff, to renting stuff. Feel free to skip to #Why you should own your…

Hiking volcano Acatenango

While nomading in Antigua , I couldn’t help myself and find the most crazy adventure you can do there. Hiking volcano Acatenango — was that adventure for me. Acatenango Acatenango is a stratovolcano that is joined with Fuego volcano, and together they form a complex known as La Horqueta. Acatenango last erupted in December 1972, and is now considered dormant. Fuego, on the other hand, is active…