RSSAmplifier

Blog

RoyalSloth Blog

blog.royalsloth.euRSS feed ↗36 posts

Latest posts

On traveling and monotony of life

Some time ago I was looking through job boards in order to check what kind of knowledge was in demand in the industry. If you stay at one place for a long time, it’s easy to have outdated ideas about the world since you are used to approaching things in one specific way; the way your company does things. If you have ever tried to propose improvements to a widely used operating procedure and…

The benefits of owning your own library

With the advent of the internet many would consider owning books as a thing of the past. After all, you can get the answer on almost any topic in a matter of a few seconds via your favorite search engine. While there is a lot of content on the internet, a lot of these answers are often only scratching the surface of the subject you are interested in. Sure you can get the answer on what is the…

Nobel Prize in numbers

Nobel Prize in Numbers | RoyalSloth Nobel Prize In Numbers About the Nobel Prize Alfred Nobel was a Swedish chemist, engineer, inventor, businessman and philantrophist of the 19th century. He is most notably known for inventing the dynamite and as a founder of the Nobel Prize. The Nobel Prize was established in 1895 when Alfred Nobel signed his last will in which he left most of his wealth to be…

Should I write an article or have a presentation?

It all started one day when my boss called me to ask me a few questions about one of the ongoing projects. When I questioned his decision on having a meeting when a few sentences long email would do just fine, I was told that a meeting takes less time. I’ve met plenty of coworkers who likewise claimed how meetings resolved problems faster, but is that really so?

Negativity in engineering

Ding! The sound that puts fear into the bones of every engineer; the sound of a new email sitting in your inbox and that could only mean one thing: trouble. You are invited to a meeting where we will discuss problems that are pestering our department. Blah blah, be there at 10:00. Yours truly, Someone Uh oh, I love the smell of corporate drama early in the morning.

How to become the best programmer?

Asking this question on your favorite forum about software development will most likely return a ton of advice. Most of this advice, however, will try to persuade you into wasting your youth by learning whatever dark corners of computer science somebody on the internet thinks are important. But what about all those people who aren’t the kind of overachievers that spend their evenings reading…

We will try harder

A few years ago I happened to attend a training on public speaking. In the first few lectures we were presented with the theory of what makes a good presentation, and in the later stages we had to prepare our own. These presentations were then evaluated by other training participants as well as the head lecturer who provided their expert feedback. The idea behind the training was great, but the…

Citation needed

In Downsides of the internet, I’ve briefly mentioned how pre-internet writers cited the works of other authors less often in comparison to the modern wordsmiths. This observation in turn reminded me of an interesting philosophical question that someone asked while we were working on a “research” project back then when I was still in school. At some point during the project, a…

Moonlander XIII

This story was written for a sci-fi contest, on the topic of “Life on the Moon in the near future” in less than 1000 words. The contest website is unfortunately no longer available. “3, 2, 1, landing,” was coming from the speakers while the crew of Moonlander XIII made last equipment checks before moving out for the first walk on the Moon’s surface. Commander Herman…

Downsides of the internet

One of the most important inventions of the 20th century is definitely the World Wide Web, or as we call it nowadays - the internet. Suddenly people all over the world were able to share their knowledge and opinions on any topic. Best of all, everyone was able to participate in this mess of interconnected links, since the technology by itself does not discriminate. Even that slightly crazy…

Ending the color theme debate

One of the never ending discussions in the programming circles is the debate on the best text editor color theme. Should I use a dark theme like the elders intended or is a light theme a better choice for my eyes? There are plenty of theories and pseudo-scientific answers for what your preferred color theme should be, but somehow these discussions never reach any conclusion. There will always be…

Scholars of trivia

One of the main things that bothers me about the C++ programming language is the vast amount of trivia you have to know just to be able to read the code written by other programmers. Since I only occasionally dabble in it, I usually curse the show-offs that are making my life “interesting” for no good reason. Here’s a chunk of code that I have recently encountered in the wild:

What is a class and why would I need it?

Introduction Occasionally I get asked this question by the people who are not a professional programmers and who are using a programming language as a tool to solve a certain problem without caring too much about what is going on behind the scenes. The programs they are writing are relatively small and therefore they are often wondering why would anyone need to use a class when they could program…

I am giving away the pancakes and I am still broke

Every morning a long line of people forms in front of a small kiosk on the corner of the Fifth Avenue. As you get closer, the weary sign that is hanging above the entrance reveals the real reason behind the formed line. In handwritten letters the sign states: “Free Pancakes.” The kiosk is owned by Josh, a short middle-aged man who used to bake pancakes professionally for a well known…

They don't even know the fundamentals

Hey, Joe! How did that interview go? Any promising candidate in the pipeline? Joe: Not that great. They didn’t even know the fundamentals. The fundamentals? Joe: Yeah, I asked them to explain ACID and all I got was a blank stare. Ah yes, the fundamentals or endless list of things that everybody working in the field ought to know. Atomicity, something, something, Durability? To avoid any…

The age of technological progress

It takes a PhD to develop that

In light of recent events regarding the performance of the Windows terminal 1, I thought it would be worth spending some time on this topic, since it uncovers a few problems that are pestering the software industry. What happened was a typical internet soap opera televised on Github. An experienced programmer posted a bug report about the slow text rendering in the terminal and after some back and…

Coffee addiction in the working world

I never liked coffee as a kid. I was first introduced to coffee via my father who used to make an instant coffee mixed with cold water. Either he was to lazy to warm up the water or he just didn’t care what he was drinking as long as it had caffeine in it. His coffee was dark, bitter and cold. Yuck. Eventually, I was old enough to go to high school.

Best tool for the job

I used the same keyboard for a number of years. It was one of the thinnest keyboards on the market with a fancy scissor like key mechanism, but this fancy pants key design contained a deep flaw. The plastic on the keycap that connected the keycap with the scissor mechanism was very brittle and eventually the material got strained and the key fell off. Usually the keys that are going to fall apart…

I wish I could write this well

“I really connected with your writing. You are such a talented writer. I wish I could write this well.” Ah, the praises of the internet comments can really make your day. “I laughed out loud while reading this,” said another. Yeah me too, except I was the one writing those sentences. I am sure my high school English teacher would have something entirely different to say…

How much traffic comes from the front page of Hacker News?

This is one of those posts that I didn’t really want to write at first, since it’s about meta blogging which reminds me on those sad blogs that started 5 years ago with “How I write my blog” post and then the stream of ideas fizzled and the blog never got anywhere. A lot of people are wondering how much traffic comes from the post that sits on the front page of Hacker News…

The compiler will optimize that away

A lot of programmers believe that compilers are magic black boxes in which you put your messy code in and get a nice optimized binary out. The hallway philosophers will often start a debate on which language features or compiler flags to use in order to capture the full power of the compiler’s magic. If you have ever seen the GCC codebase, you would really believe it must be doing some…

DSL might be the answer

A while ago I wrote a piece about the overuse of domain specific languages (DSL) in the software industry 1, but soon after writing that post I found myself working on a DSL that simplifies the creation of a complicated build pipelines on Jenkins - DepBuilder. Does that make me a hypocrite or are the DSLs actually useful in certain cases? Part I: the DSL is born The DSL often starts its life in a…

Eyes on the stars

The internet is a great place for online discussions and other rants about work related problems. I often see posts of people complaining about the field in which they are working, claiming: “Oh, if only I could work on the important problems for humanity and not whatever I am doing right now, then I would really be happy. Besides, the code is probably better designed and well tested in…

Why do we write design documents?

Starting a greenfield project is loads of fun, but you can’t avoid the dentist’s appointment indefinitely and at some point you will have to write that design document your boss expects to see on their table. Despite the fact that most people learned how to write in childhood, more often than not they are struggling when it comes to writing lengthy documents. The big blank page is…

The complexity that lives in the GUI

The user interfaces are a weird thing. There are all sorts of libraries and frameworks that are supposed to help you on your journey of writing a GUI, but despite all the best practices and frameworks forcing you to eat your vegetables, the GUI always ends up being a ridiculous mess. After pondering some more about this topic, I’ve finally realized what is the cause of this problem. Suppose…

On navigating a large codebase

A while ago, I’ve been working on a very large codebase that consisted of a few million lines of code. Large systems are usually a big mess and this one was no exception. Since this is a rather common problem in software engineering, I thought the internet would be littered with stories about this topic. There is a lot of talk about software carpentry, while software maintenance is rarely…

OKRs for the masses are bullshit

As the small company is growing towards the mid sized company, at some point the pointy haired bosses will realize that their company has become a wild west and will try to impose some order. They will look around to see what other companies are doing and eventually they will come up with salary policies and all sorts of rules that people low in the pecking order should fulfill in order to be…

The power of text files

I didn’t really notice how much of my daily workflow is wrapped around text based files, until I had to work with some people who insisted on sending Word documents around. I couldn’t help but wonder what makes them so determined in their ways, and they couldn’t help but wonder why I am still bothering with the plain text files? Didn’t we like move on years ago, once the…

Keep your sink clean

Working in a corporate environment is loads of fun and oftentimes it feels more like an adult kindergarten than a serious work environment. The clowns will always make sure to keep the rest of the employees entertained. First thing that happens in the morning is the arrival of some overly dramatic email that is complaining about yesterday’s mayhem and it usually goes something like this: We…

The true cost of knowledge

A while ago I was pulled into a discussion about the speed and magic optimizations of a particular container within the standard library of a coworker’s programming language of choice. They were claiming how there is a special container that somehow magically performs better than a normal array when it’s used for adding a number to every element within that container. For some reason…

DSL is not the answer

Large software projects are often renowned for being late and vastly over budget while not doing half of the things that were imagined in their conception. The stakeholders will claim the unwashed programmer masses failed to deliver an usable software, while the grunts will complain about the suits having no clue about the domain related problems that the software was supposed to solve. In order…

It's just a button

In the beginning there was a date field. Changing the date would display the tasks that were recorded on that specific day. The code worked and life was good. The project manager comes in one day and says: “Sloth, our customers would like to display recorded tasks for a certain time frame and not for one day only. Our competition is breathing down our neck, we need this feature badly. Make…

White walled garden

While I was developing the SlothTracker - a time tracking software for Windows, Mac and Linux, at some point during the development I had to test it on all platforms. To make testing easier, I’ve decided to install all of them on the same computer via a virtual machine. Things went smoothly until I came to MacOs. According to the Apple’s policy you are not allowed to install a MacOs on…

Sad state of cross platform GUI frameworks

Before you read: Due to rather random set of events, this article started an internet food fight as it reached the first spot on common programming link aggregators. Some agreed, some complained, some ranted how it doesn’t go into details and I have no idea what I am writing about. Well, you are not wrong on the last part and it wasn’t really meant to be a deep dive into everything…

Why was SlothTracker developed

If you are working for a company that deals with multiple projects with multiple clients at the same time, they probably require you to track your time in some way. For tracking time they are usually using some kind of old school tool that seems to be part of the company since the very early day. It usually comes with all the baggage: it is slow, with a search that does not work and very user…