Habr
1.26K subscribers
2.05K photos
3 files
1.63K links
Habr.com ⬝ English edition
Download Telegram
cgroups: how to eliminate the “noisy neighbor” effect in PostgreSQL

If you've ever run multiple instances of PostgreSQL or other software on a single machine (whether virtual or physical), you've probably encountered the "noisy neighbor" effect — when instances disrupted each other. So, how do you make them get along? We’ve got the answer!
Want to rank higher on Google? Use these 6 backlink techniques

Want Higher Google Rankings? Try These 6 Backlink Strategies That Actually Work. In the end, you’ll get tips to help you build a strong backlink strategy.
Designing profitable software: architecture principles for business success

This article presents a business-driven approach to software architecture, focusing on maximizing profitability through technical decisions. It advocates for 1) distributed, stateless services with immutable models for scalability, 2) isolated third-party integrations without disrupting core logic, 3) simple, modular design.
Postgres Pro OpenTelemetry сollector

pgpro-otel-collector is an OpenTelemetry collector (aka monitoring agent) tailored for gathering Postgres metrics and logs — brought to you by PostgresPro.
How an AI CAPTCHA Solver Works: From OCR to Deep Learning

Can a program be taught to solve CAPTCHAs the way a human does—quickly and reliably? In this article, we will try to figure out how AI CAPTCHA solvers are built, from classical OCR methods to modern neural networks.
"In this tutorial, I’ll walk you through everything I’ve learned about using Google Jules — an asynchronous coding agent. I’ve kept the explanations clear and simple, so whether you're an experienced developer or a beginner, you’ll be able to follow along"

Google Jules: An Asynchronous Coding Agent Explained
Neat defer macro for C++17

Manual resource management in low level C-style C++ code might be annoying. It's not practical to create good enough RAII wrappers for every single C API you use, but approaches with goto cleanup or loads of nested if (success) hurt readability.

A defer macro to the rescue! The deferred lambda will be executed on scope exit, no matter how it happens: you can return from any point, throw an exception (if allowed), or even use a goto to an outer scope. It is truly zero-cost and doesn't rely on C runtime or standard library, so it can be used even in kernel development.
We append the following metrics to the T-SQL procedure statements:

— Execution count (x)
— CPU time in milliseconds (c)
— Duration in microseconds (d)
— Number of reads (r)
— Number of writes (w)
@@rowcount value (n)

You can display these as absolute values or percentages
👎1
"A few weeks ago, OpenAI announced that Codex is available for Plus users, and I didn’t miss a chance to try it. And today, I’m excited to share a guide to OpenAI’s Codex. As a developer, I’ve found it to be a powerful and practical tool"

OpenAI Codex. A Software Engineering Agent
The Billiard Fractals

Complex systems often appear chaotic or incomprehensible, yet closer examination reveals that such complexity can frequently be reduced to a simple underlying mechanism. By systematically removing layers of emergent behavior, one can uncover a fundamental rule or equation from which the entire system originates.
Whose feature is better, or how to compare the efficiency of SQL query plans

How to compare the efficiency of SQL query plans? “Measure the execution time, of course!” — an experienced reader would say. And they would be absolutely right: from a practical perspective, the more efficient DBMS is the one that delivers higher TPS. However, sometimes we need to design a system that doesn't exist yet or predict behavior under loads that haven't occurred yet. In such cases, we need a characteristic that allows us to perform a qualitative analysis of a plan or compare two plans. This post is dedicated to one such characteristic — the number of data pages read.
The Journey from Developer to Lead: Lessons Learned About Responsibility

Becoming a lead isn’t just another line in your resume, it’s a mental shift. It’s the moment you go from being a developer to someone responsible for your code and the entire team. Next, you’re also listening, mentoring, negotiating, motivating, and knowing how to find common ground even in challenging situations.
"These days, it seems like everyone is talking about AI. AI here, AI there — AI will replace us all, and so on. I started to wonder: how exactly is AI going to replace us? I decided to dig into this question and examine the technical foundations, mainly to understand it for myself — how exactly is AI supposed to replace us all? Spoiler: it isn’t planning to just yet, but what’s already available today is impressive"

AI Agents in Modern IT Solutions
How to provide effective training for a UX design team

Training is one of the most essential factors for growth, evolution and effective collaboration for any UX design team. Design is an ever-changing industry, and there is always something new to learn even for the most experienced professionals. The reality is, not all companies take training seriously, whether the reason is a low budget, lack of time or just not realising its necessity. Meanwhile, investing in training not only boosts the quality of work, but also helps find ways to find easier solutions, work faster and optimize the whole process.

Let’s discuss some tips that might help you provide effective and fruitful training for your design team without spending extra budget or wasting time on some questionable training methods.
Get Free Backlinks from These 35+ Authority Websites

Getting backlinks is hard. And getting traffic? Even harder. But some websites still give you both for free.
What May Surprise You About UUIDv7

UUIDv7, inspired by ULID, is a 128-bit ID with a timestamp and random data. Per RFC 9562, it’s the top choice for databases & distributed systems, outshining natural keys, autoincrement, UUIDv4, TypeID, ULID, KSUID, CUID, NanoID & Snowflake ID.
From Unprogrammable to Detectable: A Framework for Recognizing Emergent Consciousness in AI Systems

When developers of modern language models interact with GPT-4 or Claude, they often report: "Something strange is happening with these systems. It's not just autocompletion. But it's not human either. What is it?"

Many have an intuitive sense that we stand on the threshold of something greater than "stochastic parrots." But simultaneously, something suggests that simply adding more parameters isn't enough.

This intuition may prove correct, but for reasons deeper than they appear.
On reordering expressions in Postgres

Today, we'll talk about one of those sneaky tricks that can help speed up query execution. Specifically, this is about reordering conditions in WHERE clauses, JOINs, HAVING clauses, and so on.

The idea is simple: if a condition in an AND chain turns out to be false, or if one in an OR chain turns out to be true, there's no need to evaluate the rest. That means saved CPU cycles — and sometimes, a lot of them. Let’s break this down!
How to implement vector search in Postgres Pro

In this article, we’ll explore what vector search is, what problems it solves, and how the pgpro_vector extension for Postgres Pro brings powerful vector capabilities directly into a relational database — no need for separate specialized systems.
What Exactly is n8n? Build Powerful Workflows Without Coding

Do you want to automate tasks without writing a single line of code? If the answer is yes, then you’ve come to the right place. Let's find out how to create your first automated workflow using a tool called n8n.