Image Search with OCR: How to find local screenshots by text

I have a rather bad habit of taking screenshots of random things I want to remember. Something like a product I want to buy and compare price later. On my Mac I have Desktop folder full of these screenshots. And of course it is almost impossible to find anything there weeks or months later among hundreds of files. ...

May 21, 2024 · 2 min · Egor Lynko

Analyze CloudFront logs with Pandas

I’m going to show how to download CloudFront logs, parse them with Pandas and extract some useful insights. I’m writing the whole code in a Jupyter notebook, so it’s easy to follow along and reproduce the results. ...

August 20, 2023 · 4 min · Egor Lynko

Writing Slack bot with ChatGPT as a coding assistant

As an engineer always on the lookout for new tools and technologies, I recently set myself an interesting challenge: to build something useful with GPT-4 as a coding assistant, writing as little code as possible manually. There was a need for a specific kind of bot within our team. With numerous Git repositories spread across various GitLab groups, having a bot to to remind us about merge requests waiting for review was becoming essential....

April 10, 2023 · 15 min · Egor Lynko

Access private Git repository while building Docker image

In this short article, I wanted to share two approaches to accessing private Git repositories from within Dockerfile, while building Docker images. It can be useful to install dependencies which are hosted in a private Git repo, like Ruby gems, NPM modules, you name it. Spoiler: there is a “two-in-one” method described in the end, which is actually two methods wrapped in a convenience script. I found it very handy for both building images locally during development and running the build pipeline in a CI environment using the same Dockerfile. ...

October 2, 2022 · 5 min · Egor Lynko