Logitech G915 TKL with Ubuntu

Logitech G915 TKL with Ubuntu

I bought a Logitech G915 TKL keyboard at a beginning of the 2021 year. This keyboard works pretty well on Windows and Logitech G Hub software. There is a ton of ways to customize it. It can be fun. The problem comes when you cannot normally install G Hub software on your system, like on Ubuntu. Since I use the Logitech G915 TKL keyboard for a while with my Ubuntu, I would like to share what I already know about customizing it on Linux.

Test doubles - the difference between stubs and mocks

Test doubles - the difference between stubs and mocks

In the testing world, we have stubs, mocks, dummy objects, and so on. It can be confusing what to use and when to use it. I would like to organize all of those terms in a more accessible way. There is one problem. In many different sources, we have discrepancies regards to those terms. I will show you my understanding of this topic. Of course, based on chosen sources.

Dynamic configuration using YAML in Ruby

Dynamic configuration using YAML in Ruby

From time to time using Ruby or even more often using Ruby on Rails, I need additional configuration with some secret API keys. I don’t want to save those data in the git repository, but it is too early to put them in the database. In this case, environment variables can do the trick. You put sensitive data to the .env file, and you don’t track this file in the git repository. We’re done! Not exactly, in my case. I wanted to have the structured data in one file. So I used the environment variable together with YAML (recursive acronym...

How to focus as a programmer?

How to focus as a programmer?

In times of full connections and online life, we have a problem staying focused. We need to focus, to feel the flow. One of the most important feelings in our work time. Flow is the mental state in which we do some activity fully immersed and engaged in the process of the activity. It’s a very positive and energized feeling, which brings us a lot of satisfaction. But how can we have flow in a world full of distractions? Now, since a lot of us work from home, the situation can be even more challenging. This time, I would like...

Second look at pattern matching in Ruby

Second look at pattern matching in Ruby

Sometimes I like new changes, new features, or improvements in Ruby and sometimes not. Today I would like to tell you more about the changes that I’m very excited about. I mean the Pattern Matching. I wrote a separate article about Pattern Matching in Ruby some time ago. Now it’s the time to go deeper into the Pattern Matching news. So let’s get started!

Screenshot directly in the browser

Screenshot directly in the browser

When you are web developer, sometimes you need to do a screenshot of your work. In most cases, you just use the Print Screen key for that. Then, of course when you use Linux operating system, you open a graphic editor like GIMP to cut an important part. Or maybe you need to do a screenshot of the entire website? Then you use a couple of times Print Screen, or you use some extension in the browser. But there is an easier way to do that. You can use a screenshot built in your browser. Let’s check out how to...

Pattern name in class name. Good or bad practice?

Pattern name in class name. Good or bad practice?

In one of my last articles, I was writing about improving names in the project. One of the tips was tell what pattern you use. Then I read a newsletter from Sandi Metz “Don’t Name Classes After Patterns. Mostly.” which have a different opinion about patterns in names. I think it is a good topic to write about it. There is no one silver bullet rule on how to do programming or create names. We have some tips, but those are the signpost. There are always some pros and cons, so it is good to have a wider perspective. Let’s...

TDD in a nutshell

TDD in a nutshell

Some time ago, I was participating in an Instagram challenge called #30devstories. During that challenge, I create a lot of nice and short materials related to programming. I would like to share them with you using a more permanent way then InstaStory. I will start with TDD - Test Driven Development. In more details, I described this topic in the article TDD - Basics. Today I will focus only on a very short introduction to TDD.