Kirill

367 posts

Kirill

Kirill

@kirit0s

Katılım Mart 2011
83 Takip Edilen10 Takipçiler
OpenCode
OpenCode@opencode·
OpenCode Go experienced network issues earlier today due to an upstream provider incident. During this time, some requests were delayed or timed out. The issue has now been resolved. More details: new.cloudflarestatus.com/incidents/wfpx…
English
36
12
725
44.3K
Kirill retweetledi
Ivan Velichko
Ivan Velichko@iximiuz·
How Container Images actually work: Layers, Configs, Manifests, Indexes, and more 🧐 Images started as simple tar archives with a single-platform container rootfs inside and evolved into complex, layered, general-purpose artifacts that can be used beyond the containerization context. Explore the key moving parts and how they work together in this hands-on and highly illustrated iximiuz Labs article: labs.iximiuz.com/tutorials/cont…
Ivan Velichko tweet media
English
2
27
185
13.2K
Kirill retweetledi
Ivan Velichko
Ivan Velichko@iximiuz·
Linux 101: Socket-activated daemons 🧐 Many system daemons, including dockerd, can be removed from the hot path at boot and instead be activated only on first access to their API (via TCP or a Unix socket). Learn how systemd does it (it's actually easy): labs.iximiuz.com/challenges/sys…
Ivan Velichko tweet media
English
5
51
427
18.1K
Kirill retweetledi
1red2black | AI / ML / BigData | RU
EPIC VIBECODING SHIT Помните, Майкрософт решил заменить всех людей на ИИ? Ну так вот. Челики утверждают, что научились через push в GitHub выполнять на серверах GitHub произвольный код. Произвольный код. Запушив статические файлы на файлопомойку. Суть в том, что гитовые опции для пуша (git push -o) позволяют пользователям вписывать туда произвольные строки. GitHub дальше вклеивает эту строку в какой-то свой внутренний заголовок - без того чтобы проверять разделительную строку. Ставим точку с запятой в push options - и можем переписать внутренние заголовки безопасности. Ну и дальше всё. What a time to be alive.
1red2black | AI / ML / BigData | RU tweet media
Русский
5
9
110
13.7K
Kirill retweetledi
Ivan Velichko
Ivan Velichko@iximiuz·
Port forwarding is one of those tricks I end up relying on every other day. For example, in my last feature - accessing remote Kubernetes clusters from a local machine - it was port forwarding all the way down. I highly recommend getting this skill under your belt. You'll thank me later. The best way to learn port forwarding is, of course, by doing: - Forward a port using socat labs.iximiuz.com/challenges/por… - Forward a port using netcat labs.iximiuz.com/challenges/por… - Forward a port without starting a proxy process labs.iximiuz.com/challenges/por…
Ivan Velichko tweet media
English
2
50
363
13.2K
Kirill retweetledi
Chris Laub
Chris Laub@ChrisLaubAI·
A Rust dev just killed Headless Chrome. It's called Obscura. The open-source headless browser purpose-built for AI agents and scrapers at scale. Chrome vs Obscura: - Memory: 200MB+ → 30MB - Binary: 300MB+ → 70MB - Page load: 500ms → 85ms - Startup: 2s → Instant - Anti-detect: None → Built-in Single binary. No Node, no Chrome, no dependencies. Stealth mode is brutal: → Per-session fingerprint randomization (GPU, canvas, audio, battery) → 3,520 tracker domains blocked by default → navigator.webdriver masked to match real Chrome → Native function masking so detectors can't sniff it out Drop-in replacement for Puppeteer and Playwright over CDP. Zero code changes. If you run agents or serious scraping at scale, this repo prints money. 100% Opensource.
Chris Laub tweet media
English
163
780
7.7K
638.5K
Kirill retweetledi
LaurieWired
LaurieWired@lauriewired·
Modern DRAM is based on a brilliant design from IBM. But, we're still paying for a latency penalty that's existed since the 60s! In this video, I'm introducing my research project (Tailslayer) that immensely reduces p99.99 latency on traditional RAM! By implementing a hedged read strategy taking advantage of (undocumented!) channel scrambling offsets, I've gotten as much as 15x reductions in tail latency. The technique works across Intel, AMD, Graviton, DDR4, DDR5, x86, ARM, you name it. Check out the C++ lib I wrote, watch the video, and try it yourself!
English
207
849
10.7K
863.4K
Kirill retweetledi
Samat Galimov
Samat Galimov@samat·
Удивительно наблюдать, как гиганты (не)справляются с вайб-кодингом: Github потерял последнюю девятку в своем SLA. Отдельно замечу, что status page вендоров уже давно нельзя верить и вот люди собрали собственный, народный. mrshu.github.io/github-statuse… Амазон был вынужден сильно замедлить выкатку фич после падений и теперь требует сениор-ревью перед релизами. arstechnica.com/ai/2026/03/aft… Хотя казалось бы, уж у них-то должны быть и автоматизированные тесты и легион ручных QA-инженеров! Вот целый список подобных падений, с оценкой, сколько пользователей они задели. crackr.dev/vibe-coding-fa… С одной стороны, нужны нормальные процессы, чтобы слоп не лез в продакшен и были хотя бы пара живых людей, которые понимают, что там происходит под капотом в сложной системе. С другой стороны, мы сейчас во временном переходном периоде, когда ещё есть программисты, которые не умеют ставить задачи (хотя и умеют писать код самостоятельно) и с этим нужно что-то делать. В общем, быть техдиром опять становится интересно. Планирую обсудить это сегодня вечером на онлайн-конференции. Начало в 18:00, моё выступление в 20:00 по Москве. Бесплатно и без смс, регистрация тут. До встречи! stratoplan-school.com/management/?ut…
Samat Galimov tweet media
Русский
6
5
113
31.9K
Kirill retweetledi
trish
trish@TrisH0x2A·
wise words from the best systems engineer I've worked with: "two things that make code actually maintainable: 1. reduce the layers a reader has to trace 2. reduce the state a reader has to hold in their head" applies to every codebase. always.
English
48
265
4K
116.2K
Kirill retweetledi
Timur Shemsedinov
Timur Shemsedinov@tshemsedinov·
Вот собрал тут что важно по хардскилам, вместо ваших алгоритмов, литкода, высоконагруженных кабанчиков и карго-культа микрооптимизации: - Data structures (just how to use) - Type systems: nominal, structural, variance... - Modularity system (in your language) - Polymorphism (Ad-hoc, Subtype, Parametric, etc...) - Structural composition, aggregation, delegation - Functional composition, pure functions - Abstraction layers separation - Dispatch and Dynamic dispatch - Referential transparency - Law of Demeter - Referential transparency - Abstract data types (ADT) - Hidden and explicit state - Lazy evaluation - Declarative vs imperative style - Recursion versus loops - Generics (generic programming) - Separation of concerns - Isolation, interfaces, architectural boundaries - Dependency injection and Inversion of control - Coupling and cohesion - Mutable vs immutable data - Idempotent operations - Naming conventions - Error handling - Refactoring, code review process - Tests (unittesting, coverage, end-to-end...) - Multiparadigm programming - Metaprogramming (codegeneration and dynamic) - Platform-agnostic, framework-agnostic approach - Domain-Specific Language (DSL), Interpreter, AST - Contract programming - Concurrency and Asynchronous programming - Separation of system and applied code - Language and semantics - AI-assisted engineering Но все это тоже должно занимать в голове не более 30% от развития инженера, as of 2026. Про 70% напишу еще чуть позже
9
10
173
15.9K
Kirill retweetledi
Raul Junco
Raul Junco@RaulJuncoV·
Hard lessons you only learn from scars: 1. “Event-driven architecture automatically decouples services.” It can still create hidden coupling through shared schemas, implicit ordering, and consumer assumptions. 2. “CDNs solve all latency problems.” They help with static assets, but dynamic content, personalized responses, and database queries need different strategies. 3. “Design for infinite scale from day one.” Premature scalability adds complexity and wastes resources. Design for likely scale first. 4. “Strong consistency is always better than eventual consistency.” Many systems trade consistency for availability or latency, and sometimes that is the right call. 5. “Microservices make teams move faster.” Bad boundaries and operational overhead can slow teams down more than a good monolith. 6. “Caching is an easy performance win.” It helps until invalidation, staleness, and consistency issues become business problems. 7. “More retries make systems more reliable.” Blind retries can amplify failures and make an outage worse. What’s one lesson you only learned after getting burned?
Raul Junco tweet media
English
10
7
35
1.7K
Kirill retweetledi
Matteo Collina
Matteo Collina@matteocollina·
.@nodejs has always been about I/O. Streams, buffers, sockets, files. But there's a gap that has bugged me for years: you can't virtualize the filesystem. You can't import a module that only exists in memory. You can't bundle assets into a Single Executable without patching half the standard library. That changes now 👇
Matteo Collina tweet media
English
51
263
2.6K
361.6K
Kirill retweetledi
Alex Xu
Alex Xu@alexxubyte·
CPU vs GPU vs TPU
Alex Xu tweet media
Indonesia
20
449
2.3K
112.4K
Kirill retweetledi
Ivan Velichko
Ivan Velichko@iximiuz·
How Container Networking Works 🧐 Docker, Podman, and Kubernetes (via CRI) rely on a very similar setup under the hood - a virtual bridge network. Building a bridge network from scratch using only basic Linux commands (ip, nsenter, iptables) is a perfect way to learn by doing labs.iximiuz.com/tutorials/cont…
Ivan Velichko tweet media
English
5
60
479
16.6K
Kirill retweetledi
Abhishek Singh
Abhishek Singh@0xlelouch_·
Do not use REST + polling + “is it done?” endpoints, use async jobs + webhook/callbacks + idempotency keys. Do not use cron + bash scripts + hope, use a workflow engine (Temporal / Argo Workflows) with retries, timeouts, and history. Do not use “logs in prod” debugging, use distributed tracing + correlation IDs + structured logs. Do not use manual SSH fixes on servers, use immutable deployments (containers/images) + GitOps. Do not use one giant DB for everything, use Postgres for OLTP + a real OLAP store for analytics (ClickHouse/Druid) and keep them separate. Do not use offset pagination at scale, use cursor/keyset pagination with stable ordering. Do not use global mutexes for rate limits, use token bucket with Redis/Lua or a dedicated rate-limit service. Do not use “exactly once” promises to sleep at night, use at-least-once + dedupe keys + idempotent handlers. Do not use Kafka as a queue for retries, use DLQ + retry topics + backoff (or a real queue like SQS) depending on semantics. Do not use “cache everything” reflexively, use caching only with correctness guarantees (TTL + stampede protection + versioned keys). Do not use “one config per env” copied around, use a single config schema + typed validation + runtime reload. Do not use ad-hoc feature flags in code, use a flag service + kill switches + gradual rollouts. Do not use dashboards as your alerting system, use SLOs + error budgets + actionable alerts (not spam). Do not use “k8s will autoscale it” as capacity planning, use load tests + p95/p99 budgets + real headroom math. Do not use “JWT everywhere” blindly, use short-lived access tokens + refresh + revocation strategy (or sessions when you need instant logout). Do not use “one big microservice mesh” to fix architecture, use clear boundaries + contracts + fewer services with better ownership. Do not use “just add more replicas” for DB pressure, use query shaping + indexes + caching + read replicas (in that order).
Phuong Le@func25

Do not use BigQuery + Snowflake + Redshift, use ClickHouse for low latency interactive analytical queries. Do not use MongoDB + Elasticsearch, use PostgreSQL for documents plus relational queries together. Do not use SQLite + pandas, use DuckDB for fast local analytical SQL workloads. Do not use Loki + Elasticsearch, use VictoriaLogs for high volume centralized log storage. Do not use Prometheus + Thanos + Mimir, use VictoriaMetrics for long retention metrics at scale. Do not use InfluxDB + custom rollups, use TimescaleDB for SQL based time series analytics. Do not use Cassandra clusters, use ScyllaDB for higher throughput with fewer nodes. Do not use Redis + Memcached, use Dragonfly for memory efficient caching under load. Do not use ZooKeeper + Consul, use etcd for simple strongly consistent service coordination. Do not use MySQL sharding + proxies, use TiDB for distributed SQL with horizontal scaling. Do not use Elasticsearch + Solr, use Meilisearch for lightweight application search with ranking. Do not use Pinecone + Milvus, use Qdrant for efficient vector similarity search services. Do not use Neo4j clusters, use Memgraph for faster in memory graph processing. Do not use HBase + Hadoop, use Bigtable for managed wide column storage simplicity. Do not use RocksDB custom wrappers, use BadgerDB for pure Go embedded key value. Do not use Kafka + Zookeeper, use Redpanda for simpler Kafka compatible streaming clusters. Do not use Spark + Hive + Presto, use Trino for fast distributed SQL over lakes. Do not use Airflow metadata in MySQL, use PostgreSQL for reliable workflow state storage. Do not use S3 + Athena + Glue, use MotherDuck for managed DuckDB analytics in cloud.

English
21
60
1.1K
265.2K
Kirill retweetledi
LaurieWired
LaurieWired@lauriewired·
if you’re a CS/EE student write your thesis on JIT compilation of eBPF for NVMe controllers there’s huge career alpha in computational storage; the standards are *just* starting to exist (TP4091)
LaurieWired tweet media
English
37
253
5K
238K
Kirill retweetledi
Abhishek Singh
Abhishek Singh@0xlelouch_·
Junior to senior isn’t just years of XP. It’s what you can be trusted with. 1. Junior: ship tickets with help. Learn the codebase. Ask good questions. 2. Mid: own a feature end to end. Debug prod issues. Write tests that catch real bugs. 3. Senior: reduce risk. Make others faster. Design for failure. Leave systems simpler than you found them. Imho if you want the promo: stop optimizing for output and optimize for ownership instead.
English
4
22
320
42.8K
Kirill retweetledi
Graham Helton (too much for zblock)
Excited to disclose my research allowing RCE in Kubernetes It allows running arbitrary commands in EVERY pod in a cluster using a commonly granted "read only" RBAC permission. This is not logged and and allows for trivial Pod breakout. Unfortunately, this will NOT be patched.
Graham Helton (too much for zblock) tweet media
English
47
372
2.6K
414.8K
Kirill retweetledi
Abhishek Singh
Abhishek Singh@0xlelouch_·
Dear software engineer, Whenever you feel; 1. Stuck on a bug → Rubber duck + print the stack trace + reduce to smallest repro 2. Overwhelmed by a big feature → Write the spec first: inputs, outputs, invariants, edge cases 3. Imposter syndrome → Read your old PRs, you were worse before and still shipped 4. PR anxiety → Open a draft PR early, ask for feedback before you polish 5. Burned out → Fix sleep, cut meetings, take 1 day of no-code recovery 6. Angry at a teammate → Assume missing context, ask “what constraint are we under?” 7. Production outage → Stop the bleeding, rollback, add guards, then do the postmortem 8. Fear of breaking things → Feature flags, canary deploys, good metrics, quick rollback path 9. Confused by system behavior → Add observability: logs, metrics, traces, then follow the evidence 10. Drowning in tech debt → Pick 1 painful edge, do a small refactor that reduces future work 11. Getting slow in career → Ship in public: blog, small tools, open source, talk about what you learn 12. Feeling behind in life → Compare less, compound more: 1 hour daily beats 10 hours once a month Keep building. Keep shipping. Your future self will thank you.
English
5
36
310
18.5K