Anthony Sidashin

Anthony Sidashin

As a web developer and CTO with over 15 years of experience, I am passionate about building profitable small SaaS products and pursuing Go-to-Market strategy for them. My areas of expertise include high performance, networking technology and APIs, SRE, automation using Puppeteer.js, web scraping, and SQL databases.

VS Code Remote for Node.js caveat: dealing with detached nodemon process

I develop all my new projects on a remote Hetzner Cloud machine, using wonderful and almost too-good-to-be-true VS Code Remote. I recommend this setup for everyone who does not like spinning fans of their Macbooks - and I really prefer Ubuntu and real Linux environment to brew when I setup my web servers, databases, node.js and other infrastructure. Using VS Code Remote terminal for Node.js development has one caveat though: if I use nodemon which reloads the script on every file save, from ti

2 min read

Clickhouse as an alternative to ElasticSearch and MySQL, for log storage and analysis, in 2021

In 2018, I've written an article about Clickhouse, this piece of content is still pretty popular across the internet, and even was translated a few times. More than two years have passed since, and the pace of Clickhouse development is not slowing down: 800 merged PRs just during last month! This didn't blow your mind? Check out the full changelog, for example for 2020: https://clickhouse.tech/docs/en/whats-new/changelog/2020/ The description of just new features for each year may take an hour t

10 min read

inWidget proxified: Free Instagram widget for your website, in 2021

For one of my projects, I needed a widget which would render posts from an Instagram hashtag. It turned out to be very cumbersome to implement nowadays, because Instagram shut down its legacy API in 2020 and now the developer needs to go through a real nightmare to get approved for Instagram Official API, which still may not allow hashtag parsing.   Another way would be to go for paid solutions, like elfsight widget ( https://elfsight.com/instagram-feed-instashow/ ) but their artificial restric

1 min read

Best way to daemonize node.js process in 2021: forever, pm2, nodemon, docker, supervisor, systemd and what to choose

During my development career I used a lot of different solutions to daemonize processes (mostly, node.js scripts), and I decided to do a quick writeup with very short description of each approach to help fellow developers to choose. 1. Forever URL: https://github.com/foreversd/forever Github stars: 13.2k Pros: super simple and minimal.   Cons: not active in development. Heavily tied to node.js eco system. README of the project recommends to use pm2 or nodemon. Conclusion: This is probabl

4 min read
[DISCONTINUED] Scraping Instagram in 2021: avoiding 302 and 429 errors

[DISCONTINUED] Scraping Instagram in 2021: avoiding 302 and 429 errors

Disclaimer: I don't do Instagram scraping anymore, and none of the approaches mentioned below are working reliably now, I think. Instagram is a tough target for scraping. For one of my side projects, I needed to get information from several public accounts, on a daily basis – for example, their followers counts, and their recent posts. I tried to use most popular Github scrapers like https://github.com/realsirjoe/instagram-scraper and https://github.com/postaddictme/instagram-php-scraper on

3 min read
Frontend development in Docker is pain in 2020. But it gets better

Frontend development in Docker is pain in 2020. But it gets better

I've just started building a  dashboard for my new project, which is an opionated Node.js API gateway (still in its infancy), with Clickhouse for logging: https://github.com/restyler/api-gateway. Here is what I'm telling you: in case you forgot, frontend world is full of bloat. Transpilers, bundlers, and compilers, paired with watchers, which recompile your project on save, and try to make hot reload work in browser, make the life of an average JS developer full of  pain and misery. Especially

4 min read