Sign in

Lead Front End@Lingoda, passionate about the web 🚀 I write weekly about web-development related topics 📰 Support me at

5 scenarios where you may want to use CSS grids

CSS Grid representation
Capture created by Author

Browser segmentation is always a problem when using CSS features. Under the assumption that a browser might not support some layout features, we tend to fall back to the most widely supported ones.

There is the wrong assumption that the support for grid is very low. Developers tend to use Flexbox sometimes because they are unsure and uneasy to leave their comfort zone. The Flex layout is so awesome and flexible that lets you build anything with it. However, it might not be the right tool for the right job. …

Improve your TypeScript knowledge with these must-know features

Code on a laptop
Photo by Arnold Francisca on Unsplash.

TypeScript’s influence is growing by the day. It is now the go-to companion tool for any new web/Node project. The benefits of using TypeScript cannot be overstated. However, it is important to know and understand all the tools that this superset of JavaScript has at our disposal.

Are you investing time in improving your Typescript skills? Are you trying to make the most out of it? Sometimes by not using the right TypeScript’s features and not following its best practices, there can be a lot of code duplication and boilerplate.

In this article, we will be looking at the five…

Improve your TypeScript codebase by avoiding these common mistakes

Person yelling at laptop
Photo by Andrea Piacquadio from Pexels

TypeScript has gained traction since it first appeared in October 2012, and it has become a real game-changer in the web development world. Although, some have always remained skeptical about using it.

When adding TypeScript to a project it is important that the developers embrace it rather than fight against it. That can lead to frustration and the impression that TypeScript has become a bottleneck. However, when used right, it becomes crucial to have a readable and easy-to-maintain codebase. …

“KISS,” “DRY”, “YAGNI,” and more

Image of man drawing architecture
Photo by Daniel McCullough on Unsplash

Being a good programmer is a mix of skills and some common sense. It is all about being pragmatic and knowing what is the solution that fits better your problem. When facing a challenge, there are some software principles that will guide you in choosing the most correct approach.

Those are a set of guidelines every developer should know and revisit from time to time. Think about them as your secret sauce when programming.

Consistently applying those principles will make your transition from mid to senior software engineer easier. …

Tips to avoid memory leaks in your web apps

Computer chip
Photo by Possessed Photography on Unsplash.

JavaScript doesn’t provide any memory management primitives. Instead, memory is managed by the JavaScript VM through a memory reclaim process. That process is known as Garbage Collection.

Since we can’t force it to run, how do we know it will work properly? What do we know about it?

  • Script execution is paused during the process.
  • It frees memory for unreachable resources.
  • It is non-deterministic.
  • It will not inspect the whole memory in one go but will run in multiple cycles.
  • It is unpredictable. It will execute when necessary.

Does that mean we don’t have to worry about resources and memory…

how to prevent inflation from eating your savings

Photo by Karolina Grabowska from Pexels

Money is always a problem. The most obvious is not having any. I’ve been there like most people. As a student, I was spending my salary’s paychecks in no time. It was with fear that I checked my bank’s account balance.

When I graduated and I landed my first job, this problem started to fade away. I was relieved that I didn’t have to cut spendings. I was even able to allow myself some fancy dinners from time to time. After a while, I could even put some money on the side each month!

Little did I know that saving…

RegExp, replaceAll, replace, exec, search, test, and more

Regular expressions are strings of text containing patterns to help you match, locate, and manage text. There are so useful that almost every language ships with some kind of regex support.

Although Perl and Python are the fully-featured languages when it comes to regex, JavaScript has plenty of tools.

Do you know the full capabilities of JavaScript? Do you want to know the differences between each of the tools?

In this article, we won’t be digging into the syntax of regex but which tools can you use in JavaScript to make the most out of them. Regular expressions can be…

Improved control flow analysis, index signatures, and much more

TypeScript 4.4 was released on the 26th of August. Should we be early adopters?

Definitely, This release will primarily be focused on its core and improving some existing features.

In this article, I will highlight the most relevant changes:

  • Control flow analysis of aliased conditional expressions
  • Index signatures for symbols and template literal strings
  • Defaulting to the unknown Type in Catch Variables
  • Exact Optional Property Types
  • Performance Improvements

To better follow along you may use the Typescript Playground here.

Control Flow Analysis of Aliased Conditional Expressions

Before digging into this new feature, let’s understand what the control flow analysis is:

“In computer science, control-flow analysis (CFA) is…

Update cookie values, detect hover effect, and more

JavaScript cover created by Author
Cover created by Author

As JavaScript is one of the most popular languages, there are a ton of libraries out there. That doesn’t mean that we should become obsessed with constantly adding more to our codebase. We might just need this one utility that we can build ourselves.

Roughly five years ago, the deletion of the popular npm module left-pad brought momentary chaos to the internet. That was a utility that could be easily be built in one line. In fact, it is available in the ES7 specs.

How can we prevent that from happening? Should we constantly reinvent the wheel?

No, we need…

PRS, comments, approvals, and other daily issues

Photo by BARBARA RIBEIRO from Pexels

Code review has been a game-changer process in the computer programming world. It aims to guarantee that certain code quality is maintained in the project. The process might vary from team to team but it is always there.

It is one of the most common friction points between peers. Some might take comments and suggestions more gracefully than others. Soft skills are key to ensure that no miscommunication happens.

In this article, we will review the most common scenarios that we might face daily through MEMES. …

Jose Granja

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store