frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Ask HN: How do you distinguish prompt issues from model failures in LLMs today

2•se4u•32s ago•0 comments

Lifeguard: A fast Rust-based static analysis tool, for Python lazy imports

https://github.com/facebook/Lifeguard
1•phpencil•1m ago•0 comments

AWS spurs Catch-22, ending PostgreSQL 13 support for RDS

https://www.theregister.com/2026/03/17/aws_ends_support_postgresql_13_rds/
1•arusahni•1m ago•0 comments

EU Inc.: incorporate in any EU country in 48 hours with no minimum capital

https://twitter.com/EU_Commission/status/2034231737161588800
2•bpierre•2m ago•1 comments

Population Around a Point

https://www.tomforth.co.uk/circlepopulations/
1•bookofjoe•2m ago•0 comments

Xiaomi MiMo-V2-Pro: Flagship Foundation Model Towards Agent Era

https://mimo.xiaomi.com/mimo-v2-pro
1•gainsurier•3m ago•0 comments

Construct's official 3D model object

https://www.construct.net/en/blogs/construct-official-blog-1/introducing-constructs-1900
1•AshleysBrain•3m ago•0 comments

Preventing and Debugging Memory Leaks in Node.js

https://betterstack.com/community/guides/scaling-nodejs/high-performance-nodejs/nodejs-memory-leaks/
1•eustoria•3m ago•0 comments

Optimization lessons from a Minecraft structure locator

https://purplesyringa.moe/blog/optimization-lessons-from-a-minecraft-structure-locator/
1•gavide•5m ago•0 comments

Coastline – detect resonance between ideas, fed by your OpenClaw agent

https://coastline-production.up.railway.app/
1•pb_lightmind•5m ago•1 comments

Your ChatGPT Conversations Aren't as Private as You Think

https://stellarraccoon.com/your-chatgpt-conversations-arent-as-private-as-you-think-heres-whats-b...
1•eustoria•5m ago•0 comments

Verifying Move Borrow Checker in Lean:An Experiment in AI-Assisted PL Metatheory

https://proofsandintuitions.net/2026/03/18/move-borrow-checker-lean/
1•matt_d•7m ago•0 comments

Show HN: Augre – A cross platform ePub reader for deep reading

https://getaugre.com
1•ishanr•7m ago•0 comments

Judge orders Krafton to re-hire Subnautica studio founders

https://www.rockpapershotgun.com/subnautica-2-bosses-handed-back-control-of-company-after-judge-f...
1•12_throw_away•7m ago•0 comments

Show HN: HypergraphZ – Hypergraph Implementation in Zig

https://github.com/yamafaktory/hypergraphz
1•yamafaktory•8m ago•0 comments

Show HN: My VPS got DDoS'd into a kernel panic, so I learned XDP

https://liuu.org/posts/ddos/
1•kennethhh•9m ago•0 comments

Understanding Detection of Belowground Natural Gas Leaks in Urban Environments

https://www.sciencedirect.com/science/article/pii/S2667143325001647
1•PaulHoule•11m ago•0 comments

Does "AI" cause delusion, or just attract those aleady suffering?

2•chrisjj•13m ago•0 comments

Digg Is Gone Again

https://digg.com
3•hnarayanan•14m ago•1 comments

Ask HN: How do you use AI agents in your day to day life?

1•sujayk_33•15m ago•0 comments

Show HN: Built a crosslister (in PHP!) that supports Vinted (which has no API)

1•gosixl•16m ago•0 comments

Show HN: CareerKit – ATS scorer and resume tailoring tool for job seekers

1•tanbirrrrr•16m ago•0 comments

Encyclopedia Britannica, Merriam-Webster Sue OpenAI for Copyright Infringement

https://techcrunch.com/2026/03/16/merriam-webster-openai-encyclopedia-brittanica-lawsuit/
2•Vaslo•16m ago•1 comments

The biggest surprise of the MacBook Neo

https://asymco.com/2026/03/18/the-biggest-surprise-of-the-macbook-neo/
2•ndr42•16m ago•1 comments

Former Uber self-driving chief crashes his Tesla, exposes supervision problem

https://electrek.co/2026/03/17/former-uber-self-driving-chief-tesla-fsd-crash-supervision-problem/
2•upofadown•17m ago•0 comments

A watchface where it's 11 AM, but the timezone changes every hour

https://mastodon.nl/@koenvh/116233325333833474
1•Koenvh•17m ago•0 comments

Government backtracks on AI and copyright after outcry from major artists

https://www.bbc.co.uk/news/articles/cvg1gr5v333o
4•chrisjj•18m ago•0 comments

Show HN: Procedural tree and boulder sprite generation – TypeScript library

https://markshtat.com/notebook/every-spruce-is-sacred/
1•markshtat•18m ago•0 comments

Gstack++ – Garry Tan's gstack adapted for C++ development

https://github.com/bulyaki/gstackplusplus
1•bulyaki•18m ago•1 comments

Banksy's Identity Has Been Revealed. Expect His Art to Sell for a Lot More

https://www.wsj.com/arts-culture/fine-art/banksy-reveal-art-cost-buyers-b54c109d
1•bookofjoe•20m ago•1 comments
Open in hackernews

Autoproto – minimal C++ MTProto client library stripped from TDLib

https://github.com/vnikme/autoproto
1•vnikme•1h ago

Comments

vnikme•1h ago
I built Telegram crawlers that need to monitor thousands of channels simultaneously. TDLib works great for interactive clients, but when you run it as a crawler it develops a memory problem: after a week or two of watching 2000+ channels, it quietly fills up RAM and needs a restart.

The root cause is that TDLib caches everything — messages, users, dialogs, stickers, animations — because it was designed for a UI client that needs instant access to recent history. MessagesManager, ContactsManager, DialogsManager and ~150 other managers accumulate state indefinitely. There's no eviction because a chat app doesn't want to evict.

My use case is different: I don't need any of that. I have my own Postgres database. I track pts per channel myself. I just need a reliable, typed C++ interface to the raw MTProto protocol — something like Telethon but native, with no business logic attached.

So I forked TDLib and stripped it down.

What I removed: - All ~150 manager classes (MessagesManager, ContactsManager, etc.) - tddb/ — SQLite, Binlog, all persistence - tde2e/ — end-to-end encryption for secret chats - td_api — TDLib's own high-level abstraction layer - JSON/C/JNI/CLI interfaces

What's left: - Full MTProto protocol layer (crypto, key exchange, sessions) - Auto-generated typed C++ API from Telegram's .tl schema - TDLib's actor framework and async infrastructure - Bot token + phone auth + 2FA - Stateless session: export as base64 string, restore on next run

Result: ~104k lines vs ~400k in original TDLib. Memory is fixed from startup — the internal state is a handful of auth keys and DC config, nothing that grows with usage.

The public API looks like this:

    auto client = mtproto::Client::create({.api_id = ID, .api_hash = "..."});
    client->auth_with_bot_token("TOKEN");
    client->on_update([](auto updates) { /* raw telegram_api:: types */ });
    client->send(
        td::telegram_api::make_object<td::telegram_api::updates_getChannelDifference>(
            std::move(input_channel),
            td::telegram_api::make_object<td::telegram_api::channelMessagesFilterEmpty>(),
            pts, 100, false
        ),
        [](td::Result<td::telegram_api::object_ptr
               td::telegram_api::updates_ChannelDifference>> result) {
            // fully typed response
        }
    );
Updating to a new Telegram protocol layer is one command — CMake auto-regenerates all C++ types from the .tl schema file.

Repo: https://github.com/vnikme/autoproto

Would be interested to hear from anyone who has hit the same TDLib memory issue, or who has needed raw MTProto access from C++ for other reasons.