May 31, 2026
A delivered project write-up: work on the software layer of an urban air monitoring system in Saint Petersburg, covering monitoring stations, gas analyzers, Tiny Core Linux, documentation, and controlled code delivery.
Read post
May 30, 2026
A delivered project write-up: moving an old Perl application from a single-server setup to UpCloud, migrating MySQL, preparing object storage for images, and managing the cutover point carefully.
Read post
May 29, 2026
A case study on preparing an English LaTeX version of R. A. Fisher's classic iris paper: document structure, formulas, tables, TikZ graphics, rendered pages, and raw TeX source.
Read post
May 29, 2026
A case study about two Etofest websites: how a static format helps package a festival program, visual identity, audience links, and an event archive without complex infrastructure.
Read post
May 28, 2026
A case study about the PURGA club ship landing page: one-page layout from a mockup, an event request form, hour selection, and careful handling of Russian word forms in the interface.
Read post
May 27, 2026
A case study about a landing page for the Elion testing laboratory: packaging an industrial service into a fast static website with a clear structure, a client-ready link, and minimal maintenance cost.
Read post
May 26, 2026
A case study about a municipal traffic accident map for Untolovo: turning traffic police data for 2016-2020 into a clear map, statistics on pedestrians, cyclists, and children, and a tool for public oversight of road safety.
Read post
May 25, 2026
A case study about a city map of smoke-free cafes and restaurants in Novi Sad: turning scattered local knowledge into a structured directory with filters, a map, a Viber bot for feedback, and a practical user flow.
Read post
May 20, 2026
A case study of the Viber bot for Smoke Free Cafes Novi Sad: language and category selection, geolocation request, 7 nearest smoke-free venues, and a direct channel to project administrators.
Read post
April 4, 2026
How order picking verification was automated: an employee sends invoice and product photos, OpenAI compares them and returns a structured JSON conclusion, and the Telegram bot returns the result per item.
Read post
April 3, 2026
A practical PoC of fully automated EN->RU translation with Qwen 2.5 32B on Mac: CPU mode was too slow, GPU mode was production-viable, with quality control for problematic chunks.
Read post
April 2, 2026
A practical DeepSeek OCR 2 test on a maritime charter book: many headings, links, and footnotes, with final assembly into a single LaTeX file.
Read post
February 23, 2026
I rebuilt an email sync process from an external API in n8n: removed conflicting parallel runs, added export-readiness waiting and API rate-limit handling, and merged load + cleanup into one stable flow.
Read post
February 19, 2026
We converted raw real estate deals into a practical Supabase schema, linked projects and developers, added time analytics fields, sped up queries with indexes, and prepared a flat mart for Excel and external API use.
Read post
January 6, 2026
I automated translation of 3,000 route names and descriptions from Excel into Russian using n8n and OpenAI, with intermediate quality checks, preserved file structure, and staged execution (test, 500 rows, full run).
Read post
January 2, 2026
A case study about building a list of city districts across Russia: I first expected a single SQL query against "КЛАДР", then tried "ГАР" (a ~50 GB archive with download and unpacking constraints), and ultimately delivered a complete res...
Read post
March 23, 2024
Sequence diagrams as code make it easier to track changes and control versioning; they also let you quickly create new diagrams from existing code.
Read post
January 27, 2021
Practical notes on Unicode and UTF-8 in Perl: core concepts, encodings, Encode APIs, and common pitfalls when processing text.
Read post
June 10, 2016
GPA Calculator: a small web tool for converting course grades and credits into one weighted average indicator.
Read post
May 29, 2016
Story of building a weather archive for Patagonia summits: parsing mountain-forecast, storing daily data in CSV, and publishing chart views for temperature, wind, and snow.
Read post
April 20, 2015
Fibus: an aggregator idea between private carriers and passengers who preferred minibuses over regular buses for trips between Saint Petersburg and Finland.
Read post
October 4, 2014
A practical example from 2014: moving a complex ceiling-sales pricing workflow from manual calculations/Excel to a browser calculator with instant recalculation, hints, and fewer errors.
Read post
September 15, 2014
A postal delivery calculator from Saint Petersburg: a calculation API for an online store, with a web form built on top of the same service.
Read post
August 20, 2014
Donorium: a blood donor database that grew from a Leprosorium.ru post into an open service for finding donors and sending blood donation requests.
Read post
June 10, 2014
A web tool for filling a complex Russian Post 112-EP PDF form: users entered data in a simple interface, received a completed document, and could print it immediately.
Read post
May 25, 2014
A practical case study about processing several hundred thousand e-commerce images: watermark generation, resizing, AWS S3 storage, and a custom Perl + ImageMagick pipeline from the pre-Cloudflare Images era.
Read post