Pull to refresh

Development

Show first
Rating limit
Level of difficulty

The myth of error-free programming

Level of difficultyEasy
Reading time3 min
Reach and readers718


There have been many discussions about which programming language is better in terms of security and correctness of source code (by "correctness and security" we mean the absence of various errors in the program that manifest themselves at the stage of its execution and lead to the issuance of an incorrect result or unexpected behavior). And some programming languages, such as SPARK or OCaml, were even specially developed to facilitate the proof of program correctness.


Is it possible to write programs without errors at all?

Read more →

What's New in Postgres Pro Enterprise 17: From Proxima to Intelligent Data Management

Level of difficultyEasy
Reading time5 min
Reach and readers387

Postgres Pro Enterprise 17 introduces major improvements in performance and scalability. The key feature of this new release is the proxima extension, which combines connection pooling, proxying, and load balancing within the database core. Developers also gain improved tools for managing message queues, optimizing queries, enhancing security, and utilizing smart data storage. Want to know how these and other features can impact your applications and simplify database administration?

This article provides a brief overview of the release, accompanied by the links to more detailed information.

Read more

PostgreSQL 18: Part 2 or CommitFest 2024-09

Level of difficultyMedium
Reading time14 min
Reach and readers485


Statistically, September CommitFests feature the fewest commits. Apparently, the version 18 CommitFest is an outlier. There are many accepted patches and many interesting new features to talk about.


If you missed the July CommitFest, get up to speed here: 2024-07.

Read more →

Beyond the Engine: The Six Levels of Software-Driven Car Evolution

Reading time7 min
Reach and readers630

Cars are among the most technologically advanced consumer-level devices on the market. They have been shaping lifestyles, laws, supply chains, and many other aspects of human society's evolution.

But today, we’re witnessing a silent revolution – one driven not by hardware, but by software. Modern cars are no longer just machines; they’re dynamic, evolving platforms powered by code. This transformation is reshaping every aspect of the automotive industry, from design and manufacturing to ownership and recycling.

In my latest article, I explore six levels of evolution brought about by software’s growing role in vehicles and related fields:

Capabilities - Over-the-air updates and digital twins unlock new features and extend hardware lifespans.
Design - Digital platforms replace manual processes, enabling faster innovation.
Architecture - Modular systems open doors to new partnerships and revenue streams.
Engineering - Agile, feature-centric paradigms align hardware and software development.
Manufacturing - Factories become dynamic, software-driven ecosystems for flexibility and sustainability.
Lifecycle - Software extends vehicle lifecycles, from supply chains to closed-loop recycling.

This transformation isn’t just about technology – it’s about reimagining the industry itself. Do we need a revolution to achieve a better, more sustainable future, or do we already have the tools to evolve?

The automotive industry is at a crossroads. For engineers, it demands fluency in code. For industries, it requires agility. For the planet, it offers a roadmap to reconcile mobility with sustainability.

The road ahead is coded, but the destination is open-ended – shaped by collaboration, innovation, and the choices we make today.

Read more

Eco-Methodological Sustainability

Reading time6 min
Reach and readers621

In recent years, discussions about the environmental impact of information and communication technologies (ICTs) have largely revolved around hardware — data centers, electronic waste, and energy consumption. However, an equally important factor has been overlooked: the software development methodologies themselves.

When I read the UNCTAD “Digital Economy Report 2024, I was struck by the complete absence of any mention of how programming methodologies impact sustainability. There was no discussion of whether developers use algorithm-centric or code-centric methodologies when creating software, nor how these choices affect the environment.

This realization led me to introduce the concept of Eco-Methodological Sustainability — a new approach that highlights the role of structured software development methodologies in shaping an environmentally sustainable future for the digital economy.

Read more

Image Recognition – Why AI is Still Not the Perfect Assistant in This Task, and How image captcha solver Helped

Level of difficultyEasy
Reading time7 min
Reach and readers724

Up to a certain point, I sincerely believed that in today’s world manual CAPTCHA recognition was gradually becoming an anachronism, especially when it came to such simple CAPTCHAs as image-based ones—where one merely needs to read text off a photograph and input it as plain text. But as it turns out, things aren’t quite so straightforward (no matter how it may sound).

Read more

An in-depth comparison of the three main kinds of runtime type checkers to my new tool

Level of difficultyMedium
Reading time14 min
Reach and readers599

tl;dr; in the modern TS/JS landscape and overall tooling trends, better stick with static code generators, they are more performant in many ways, easier to integrate into apps, other tools and the multitude of modern JS runtimes. My new tool is as good as other static code generators, but it also produces strictly type safe code and unit tests for you.

This post goes into a rather deep comparison of my new tool Type Predicate Generator (from here just Generator) to other runtime type checkers, also giving a rather broad overview of the related topics. To get a sense of what it does try checking the Playground first.

If you're about to create your first tool for the TypeScript ecosystem the insights in this article will help you hit the ground running.

Dive deep

The State of Caravel: the First Look [Мучения в проектировании чипов из-за Докера и Питона]

Reading time47 min
Reach and readers1.7K

Написал лонгрид на английском о текущем состоянии открытых средств проектирования ASIC-ов. Заодно познакомил англоязычных читателей с практиками шаманов Сибири и фигурой Ивана Сусанина. Упомянул планируемые семинары в Мексике и Армении.

A text on the current state of Open-source ASIC design tools. Includes side discussions of the upcoming hackathons in Mexico and Armenia, Docker and Python, Static Timing Analysis and RISC-V, Siberian shamans and treacherous swamps in Belarus.

Read more

UI/UX trends to keep an eye on in 2025

Level of difficultyEasy
Reading time3 min
Reach and readers1.5K

Trends change rapidly in UI/UX, and new year means quite a few new emerging innovations that designers should be aware of in order to create relevant and engaging designs. Some trends stay on from previous years, some are completely new, and some might end up being the fleeting ones, so it’s important to pearl off those that truly elevate user experience and make a better impact on your product. Let’s discuss some of the most anticipated UI/UX trends of the coming year.

Read more

How we test the backend

Level of difficultyEasy
Reading time13 min
Reach and readers1.6K

We are a brokerage platform operating in a dynamic and complex domain. This specificity comes with a set of challenges. On the one hand, it entails a high variability of scenarios and potentially significant risks associated with errors. On the other hand, it has short development iterations with frequent delivery cycles. 

In this article, we will share how we maintain the quality of our numerous backend services, which provide essential information to our trading terminals.

Read more

DAO: Creativity in the Liquid State

Reading time2 min
Reach and readers618

The photograph accompanying this article captures a moment I once witnessed on a beach in Silicon Valley, California. The endless waves of the Pacific Ocean stretch into the distance, fading and dissolving into the sand. All three states of matter are present here: the solid, unmoving sand; the liquid, flowing water; and the wind — invisible yet tangible chaos of air. This landscape seems to symbolize the transitions and boundaries between order and freedom, between stability and change.

This very scene inspired me to reflect on how DAOs, Decentralized Autonomous Organizations, transform into a "third state" for communities. They combine the chaotic freedom of scattered individuals and the structured order of centralized organizations, creating something new — fluid and adaptive.

Read more

Kill the Troll. Engineering Tale

Level of difficultyMedium
Reading time19 min
Reach and readers1.3K

Have you ever struggled to turn business ideas into a product? Or tried to understand the way another team works?

If you have, you know how exhausting it can be. Different ways of thinking –business, analysis, and engineering – don’t always fit together easily.

This article blends a simple story with engineering tools to show how creativity and structure can work together. Using characters like The King, The Troll, and The Prince, it explores how storytelling can help solve tough problems and make complex ideas clearer.

If you’ve ever faced a "troll" at work, this story might help you see things differently – and maybe even make the process a bit more fun.

Read more

10 Books Every Developer Should Read in 2025 to Level Up

Level of difficultyEasy
Reading time4 min
Reach and readers2.8K

Are you ready to level up your skills as a developer in 2025? In this article, I show 10 books that will help you become a better programmer, enhance your coding practices, and improve your overall software engineering skills. Whether you’re a beginner or an experienced developer, these books cover essential topics like clean coding, debugging, system design, productivity, and more.

Read more

The Collatz conjecture as a fail of world math

Reading time4 min
Reach and readers1.7K

/Sandbox 23.12.2024/

On 17.10.2024, the article “A new inherent approach to solving the Collatz 3n+1 problem and its analogues” was published on the Academia.edu website [1]. The second link is for those who find it easier to read in Russian “Новый внутренне присущий подход к решению проблемы Коллатца 3n+1 и ее аналогов” [2].

The English version was originally intended for the arXiv preprint platform, but they suggested first publishing in a peer-reviewed mathematical journal. Attempts to access other platforms HAL, Qeios, and ResearchGate were met with the requirement for affiliation, which an independent researcher does not have.

The process took almost two months — more than the research itself from idea to text. As a result, the article ended up on the Academia site, which is free from “face control”. I think it will be useful for anyone interested in the Collatz conjecture to read it. Exclusively for Habr, this short text summarizing the content and meaning of the publication.

Read more

Google Keyword Scraping: A Detailed Guide to Building a Free Google Scraper

Level of difficultyEasy
Reading time8 min
Reach and readers1.2K

Any SEO expert knows the pain of collecting Google keyword data. It’s one thing if you can count all the queries on one hand, but what if they number in the thousands? How do you check the search volume in Google for each keyword? Frankly, once you hit tens of thousands of keywords, it’s enough to make your head spin. You’ll be tempted to reach for outdated, familiar tools, only to find modern reality throwing a curveball: the old formula of Key Collector + Google Ads + a few proxies simply doesn’t cut it anymore. We’re entering a new era, and without direct access to the official API, things get grim and complicated fast.

Read more

Rabbit Testing: A Multifaceted Approach to Quality Assurance

Level of difficultyMedium
Reading time4 min
Reach and readers1.1K

In the fast-paced world of software development, ensuring the quality and reliability of applications is crucial. With the ever-increasing complexity of software systems, it becomes essential to adopt a comprehensive and structured approach to testing. One such approach can be encapsulated in the acronym "RABBIT," where each letter stands for a distinct branch of testing. This multifaceted strategy covers various testing methodologies that together create a robust framework for quality assurance. This article explores each branch of RABBIT testing in detail, providing insights into their significance, implementation, and appropriate use cases.

Read more

How to Choose the Optimal Authentication Solution for Your Application

Level of difficultyMedium
Reading time3 min
Reach and readers1.1K

In today's digital world, where applications process increasing amounts of sensitive data, ensuring reliable user authentication is critical. Authentication is the process of verifying the identity of a user who is trying to access a system. A properly chosen authentication method protects data from unauthorized access, prevents fraud, and increases user confidence.

However, with the development of technology, new authentication methods are emerging, and choosing the optimal solution can be difficult. This article will help developers and business owners understand the variety of authentication approaches and make informed choices.

Read more