Some time ago I wrote an article about issues with JavaScript and stated that nobody should write in JavaScript. But in this article, I shared my experience of using JavaScript several years ago. And by a strange twist of fate, I had to write a lot of JavaScript code last 3 weeks and I would like to share my experience with the latest and greatest.

Firstly, I was absolutely sure that the situation would be way better than I described. Those were real problems and developers would put pressure on JavaScript developers to make the language better and easier to use

But I didn’t find the situation any better. There are still no types in the language and as

Accidentally I found this video named: “"Clean" Code, Horrible Performance”. In this video the author explains that almost all postulates of the so-called “Clean Code” are wrong because they negatively affect performance (up to 25 times in his video), and he finishes the video with words: “You should never actually do them”.

Well, the author is right that all techniques explained in “Clean Code” will negatively affect performance. The same as writing code in C++ will make your code slower compared to assembler.

But there are a lot of reasons why most developers switched to languages like C even though their apps became slower and bigger. One of those reasons is portability. For example, there were several examples of

A long time ago around 90’s Intel was king. Sure you can buy Intel-compatible CPUs like AMD, Cyrix, and others but that was mostly a choice for poor people. If you want real quality you will have to pay for it. At least it was the message from Intel.

They and their fans consistently push this message that true quality is only available from Intel and any other choice is a compromise that will lead to strange problems and most importantly to instability. If you want a trouble-free system then you must buy Intel.

To a certain degree, this was the case because Intel systems were more popular and they cost much more. As a result, other systems must cut

Recently I watched this video that has the title “Hyundai Is Putting Tesla To Shame...What Happened?” and decided to watch it. I saw a few other videos from this channel and I got a very good impression. Right now I want to buy a new EV but I’m somewhat reluctant to give my money to Musk. Also, I know a few people who were happy owners of Hyundai cars. So everything was telling me to watch this video.

But that video turned out to be quite strange. In the beginning author stated that Korean cars have a quite bad reputation and have a lot of issues with reliability. Especially with engines and transmissions. And these are the most expensive

I’ve been messing with PC hardware for tens of years. I always built my computers from parts and sometimes I do this for other people. Maybe I’m not a real pro, but I know a lot about this area and I follow all computer news and I think I know quite a lot.

I often read about a situation when somebody is trying to take the cooler off the CPU but thermal paste is practically glued to the CPU and eventually, that person applies so much force that it just rips off the cooler with the CPU from the socket. I’m sure many people saw this.

I was always laughing when I see such stories and I always thought that

But before I provide these tips, please note that these tips are for regular people who probably don’t have many spare computer parts to test different parts to quickly find faulty components.

Tip #1

Always buy a motherboard with some kind of debug indicators. They will not increase the cost of the motherboard by any meaningful amount but they will save a lot of time if you will have any issues.

Tip #2

If you buy a motherboard for AMD CPU then always with BIOS flashback unless you know that this platform will not receive any new CPUs. For example, there is not much point in buying a motherboard with a BIOS flashback for the 5000 series. Any new AMD

Sometimes I have time to watch YouTube. And for the last few days, I saw videos where people took kind of the challenge to switch to Linux. At least for some time. It is fine. Somebody would like to try something new. Maybe they are missing something. Maybe there are better ways to do what they do, etc.

But what surprises me is that all these challenges start when there are some issues with their computer or Windows. For example, one person stated that he cannot press any buttons on the Calculator app. Another person stated that his computer would crash almost every day.

And due to these issues, they both decided to try Linux. And similar things happened to

Pretty much from the moment, personal computers go into our lives we see a specific type of programs that claim that they will improve performance. Modern versions of these programs promise to have more free memory, registry cleaner, and performance optimizations.

So far I haven’t seen any such program that does anything good. Moreover, most of them do bad things that look like good things. Let’s start with programs that make more free memory.

If you open Task Manager and then go to the “Performance” tab you will see “Free” or “Available” memory. And after you run a program that promises to free more memory, you will see that this number increases. Sometimes it increases by a lot. As a

The previous part is here. In this part, we will investigate more exotic cases of intercepting function calls.

VMT for Case 1

VMT stands for virtual method table. VMT is created by the compiler when the class introduces a virtual method or overrides one from any parent class.

Finding VMT depends on the language and the compiler, so I will not explain it here. For most languages, the first 4 bytes in x86 or 8 bytes in x64 points to VMT. Then you need to know where is pointer to the function is in this table.

Then you need to save this address somewhere. Then write a different address into VMT using the WriteProcessMemory function. After that,