The more I work with it, the more it reminds me of IE

Is Safari Browser the Second IE?
Is Safari Browser the Second IE?
Safari sometimes looks like IE

If you ask a developer what he feels when he hears IE (Internet Explorer), the most common answer is — pain. And I’m not an exception. I work as a web developer for more than ten years. During this time, I had many different projects where we had to support IE. I know this despondency when the browser doesn’t support some common for rest browsers functionality. Or when it displays elements in the wrong places. And the worst thing, when you need to debug unexpected behavior.

Fortunately, in regular life, I use MacBook Pro with M1. I like to use…

How to build your project with Webpack 5 in 2021

Image for post
Image for post
Webpack 5

Almost every year, I get into a situation when I need to set up a new javascript project. Projects with a modern framework like Angular already configured for us. But what about more simple apps or widgets, which should be framework agnostic? Usually, we need to have: a liver-reload, TypeScript, CSS-preprocessor, a framework for unit testing, and linter. This guide will be about building a production-ready starter kit, which will satisfy all our requirements.

I’m going to use: Webpack 5, Jest, SCSS, and ESLint. …

Analytics for your site without violating the GDPR

Image for post
Image for post
Photo by Jason Dent on Unsplash

WhatsApp changed its policy and now will share data with Facebook. Google Chrome’s support of third-party cookies will end by 2022. Everyone is talking about privacy. It seems, to be in trend, you have to forget about cookies and put user’s privacy respect on top of functionality. But what can I track and do not violate the GDPR or CCPA? This question I asked myself after removing Google Analytics from my project.

Browser cache

One of the first tries to track users without cookies observed in 2011. The analytical platform Kissmetrics found a way, how to identify the user by browser cache.

How M1 MacBook shows itself from a JavaScript developer’s point of view

New MacBook Pro with M1 processor
New MacBook Pro with M1 processor
Photo by Tianyi Ma on Unsplash

I’m a JavaScript developer, and a few weeks ago, I bought a new MacBook Pro with the Apple M1 chip. Seemingly that JavaScript can be written even on the fridge. But it turned out that we use quite a lot of different tools and apps. Do they work well with the new processor? Well, not them all. Let me share my experience.

Git. Python. Node.js.

I combined them because there are no issues with it. Git and Python can be installed with a single command xcode-select — install.
After that, we can install nvm and NodeJS. …

I created a profitable one-person SaaS app with 4k+ monthly active users based on Firebase and want to share the experience.

Image for post
Image for post

Like many developers, I always wanted to build my own small SaaS app, which can be an additional source of earnings. Two years ago I created MVP based on Firebase, GCP, and Angular. Each month I do some updates and add new features. Now more than 800 teams use my app on regular basis and I want to share my experience with used technologies.

First of all, I want to say, it’s not a comparison between different web platforms. There are lots of articles about them. …

Image for post
Image for post
Photo by Oliver Hale on Unsplash

One of the easiest ways how to install Node.js is to go to the official site, download the installer and install it. Later a developer can face a situation when he needs to switch to another version of Node.js or update it.

It’s still possible to install it from the official site, but how many nodes already exist in a system? And how quickly switch between installed versions?

Maybe it’s a good time to uninstall all of them and set up the system to be able to switch between nodes in seconds, always know the number of installed versions, and…

How to improve CI/CD pipeline speed with using caching and Docker images

Time is money
Time is money
Reducing the pipeline duration will save your money

Having CI on a project nowadays is a must-have thing. In most cases, we have to pay for the time needed for dependencies installation, project build, tests, deployment. If you feel it’s your case, I will share my experience of how to improve significantly the performance of Angular app (and not only) CI and reduce billing costs in times.

Pipeline improvements

Dependencies installation

Almost every pipeline starts from dependencies installation. To deal with it, usually, we use the simple command npm install or yarn. In our situation, when we run it as part of CI, we check package-lock. If it has the same versions…

When you do an Angular app, sooner or later you will think about SEO. Firstly I thought google anyway will parse my app because I heard it can. Days passed, but there was no result, so I started to think about what can I do. My goal was to be SEO-friendly with a high PageSpeed Insights score and do not spend all money in the world on servers. It looks like I found a way!

Image for post
Image for post
85 PageSpeed Insights score for the real Angular app with SSR

As a result, I have an approximately 80+ PageSpeed Insights score, it’s scalable, and it’s almost free to host it. …

Golosay Volodymyr

Lead software engineer at Epam. Writing about web-development. Doing one-person SaaS project Writing about it on

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