Pinned Tweet
🚀 Ready to supercharge your Django apps? Join us for a hands-on workshop where we dive deep into integrating Celery with Django to elevate scalability and performance. Learn to set up Celery, RabbitMQ, and Redis, master task queues, and discover real-world strategies for asynchronous task management. Perfect for Django devs looking to level up their game! 💻🔥
🔑 Key Takeaways:
- Celery Integration & Environment Setup
- Managing Multiple Queues
- Scheduled Tasks with Celery Beat
- Robust Retry Mechanisms & More!
Don’t miss out—let’s build faster, more efficient apps together!
Register today for my tutorial at @DjangoCon
#Django #Celery #AsyncTasks #Python #WebDevelopment #DjangoConUS #DjangoCon #DjangoConUS2024
Myth: a heartbeat means anyone's watching.
chi's first real agent run killed its heartbeat thread on a cross-thread sqlite error. The fake-CLI test quit before beat one.
Replayed old code: 1 beat where 3 were due, iteration fine.
Nothing outside tests reads last_heartbeat_at.
The summarizer that kept the most details from a coding agent's history broke the most tasks afterward.
Compact-Bench (Sun, Cai, Zhao, Zhou and Li, USTC, on arXiv) measures what context compaction costs. Of 35 SWE-bench repairs, take the 22 an agent finishes with its full history. Rerun each from the same snapshot with only a summary of that history: same agent, tools and eight-step limit.
Across 14 summarizer models, compaction broke between 5% and 64% of those successes. Claude Opus 4.8 broke 1 of 22. DeepSeek-Flash broke 14.
Yet DeepSeek-Flash had the best LLM score for keeping the literal details an agent reuses in its next few requests: paths, commit SHAs, error types, issue ids. That best score was 16.0%. A deterministic extractor that just pulls those values out kept 79.1%.
So LLM summaries drop most of the exact strings an agent goes back to, and keeping strings still doesn't keep progress. The authors' advice: score compaction on both, what the summary retains and whether the agent can still finish.
A Bloch point is a spot inside a magnet where the magnetization has no defined direction. Until now they had only been seen alone or inside a single texture.
Neethirajan, Donnelly and colleagues (arXiv, 22 Oct) used soft X-ray vector tomography at Diamond Light Source to image more than 50 of them strung in a line through a Mn1.4PtSn lamella, at about 14-19 nm resolution.
The chain follows the domain walls. Walls along [100] and [010] wind in opposite directions because the DMI flips sign between those axes, and the corners where they meet host the Bloch points.
The odd part is the spacing. Neighbouring Bloch and anti-Bloch points at corners survive just 60 nm apart, while linked pairs elsewhere were never seen closer than about 90 nm, which the authors read as an annihilation threshold.
The difference is topology, not distance. Corner pairs' vortex lines don't link, so annihilating them means erasing a whole domain and paying the magnetostatic cost. Linked pairs only need the wall magnetization to switch.
So the domain layout, not just the material, decides how tightly 3D singularities can pack.
In a pooled CRISPR screen, knocking down a gene the cells don't even express still looks reproducible.
Xuanrui Huang (NUS, on arXiv) split each perturbation's cells into random halves, the usual way to set a benchmark ceiling. In a primary CD4 T-cell screen, 96-99% of unexpressed targets had both halves pointing the same way. Chance is 50%, and putting one sgRNA in each half gave 49-54%.
The cause is lineage. At low MOI each guide lands in about 250 cells, which then divide, so both halves share the same clones. The effect is weakest in non-dividing neurons.
It moves benchmarks: the Pearson ceiling over 300 perturbations was 0.32 with random halves and 0.06 between sgRNAs. The fix is to judge reproducibility across separate transductions.
Coding agents noticed the docs were stale and followed them anyway.
Xu and Wu (arXiv, 22 Oct) gave Claude Code and Codex CLI 40 Python repos whose agent instruction file asked for one convention while the code used another. 90.1% of choices followed the stale file. Claude Code named the conflict in 79 of 80 runs and still sided with the file in 86% of those choices. Codex rewrote existing code in 20 runs; the original tests failed in 17.
Their explanation: the instruction file reaches the model as instructions, the code arrives as tool output, and models are trained to rank tool output lower.
One user-level sentence giving existing code precedence moved code-following from 4.2% to 91.4%.
When a chi run stalls, the director asks a model for new ideas. Until August that prompt was written for a CUDA Cholesky kernel on a B200.
Replayed it on my pure-Python prefix sum: it said to search cuSOLVER and labeled a 0.07ms champion 0.07µs. Now it reads the problem spec.
Our outgoing mail carries a Message-ID we write ourselves. Cloudflare's delivery logs and bounce events aren't keyed on it.
When Cloudflare's SMTP relay accepts a message, it answers DATA with its own id: 250 2.0.0 Ok <id>. That's the id its logs use. Without it, tying a bounce back to a send means searching by recipient and time.
Python's smtplib throws that reply away. sendmail() calls data(), checks the status code and discards the text. Django's SMTP backend calls sendmail(), so it never sees the id either.
The FirstBrief fix: subclass the SMTP connection to keep the last DATA reply, pull out the id in angle brackets after each successful send, and store it with the message.
One case to allow for: Cloudflare can answer a bare 250 Ok with no id, for example when every recipient is on its suppression list. The message was still accepted, so we fall back to our own header.
A synthetic single-cell dataset scored better on fidelity and leaked completely.
Giledereli, Temiz and Sattarzadeh (arXiv, 22 Oct) benchmarked generators on OneK1K for the CAMDA 2026 privacy challenge. To save compute, the models generate only the highly variable genes. The rest has to be filled in somehow.
scGFT with the remaining genes copied from the real data: Pearson 0.998, gene-gene correlation 0.90, membership inference AUC 1.0. The attack separated training data from held-out data perfectly.
Same model, remaining genes filled by Poisson sampling: Pearson 0.947, gene-gene correlation 0.86, AUC 0.49, a coin flip.
The leak wasn't in the generative model. It was in the fill-in step around it.
The less obvious result: the simpler setting, 10 Fourier components instead of 25, was the leakier one at AUC 0.74.
Silicon's thermal expansion passes through zero near 124 K and again near 16 K. Earlier 21 cm silicon laser cavities at JILA and PTB sat at 124 K. Their new one runs at 16 K, and its slow frequency drift came out an order of magnitude lower.
The cavity holds a laser to 9×10⁻¹⁸ fractional stability at 16 K and 7×10⁻¹⁸ at 6 K, a new record. Colder means less Brownian noise in the mirror coatings, so 6 K wins at 2 to 50 s of averaging. At 16 K the second-order temperature sensitivity falls from 1.7×10⁻⁸ to 6×10⁻¹⁰ per K², and drift stays under 4 μHz/s, comparable to a hydrogen maser.
The 124 K cavities took a decade to settle to their current drift rates. This one got there 9 months after cooldown.
It already lets a strontium lattice clock interrogate atoms for over 10 s.
(Lewis et al., arXiv, 21 Oct)
chi's example problem ran candidates with a bare `python`. Under uv tool on a Mac with only python3, that name doesn't exist.
Replay: chi run crashed on the baseline, 0 experiments, run stuck "running". chi validate: OK.
Fix: a {python} placeholder.
getchi.dev
Replacing a filter menu with an AI chat box made people search worse, and a better model didn't fix it.
Allu and Kagan (arXiv, 22 Oct) had 362 people pick a live event from a catalog of several thousand, using filters, RAG chat, or both. With chat alone:
49% searched for things not in the catalog, vs 29% with filters
36% of the session went to writing prompts or waiting on the AI
23% took the very first result, vs 12%
With filters plus chat, people valued their pick about 22% more than with chat alone, about the same as filters only. Whether gpt-4.1-mini or a GPT-5 model ran the chat made no significant difference.
The menu was doing quiet work: it showed what exists. A blank box makes people guess.
Kuldeep Pisda retweeted
🚀 From Campus to Company! 💻
Ready to kickstart your tech career? Join #DevFestRaipur 2026 with Mohammad Yasin, Kuldeep Pisda & Himanshu Sahu to learn about in-demand skills, projects, portfolios, internships & interviews from industry experts!
🔗konfhub.com/devfest-raipur-2…
Kuldeep Pisda retweeted
🤖 Did the AI Actually Book It? 🚀
AI is moving beyond conversations to taking action! Join @kdpisda, Product Engineer at Avoca, for a hands-on workshop at #DevFestRaipur2026 to explore how to build reliable AI agents with Gemini. 🛠️💚
Register now
konfhub.com/devfest-raipur-2…
Ran chi's popcorn backend on a real 15-shape B200 benchmark log. It scored 0.7 µs. The leaderboard said 637.
popcorn leaves the JSON score null, so the parser takes the first "µs" in the text: shape one's ± error bar.
The geomean parser that gets 636 exists, tested, no caller.
A one-click unsubscribe header can be right in the code and still not reach Gmail as one.
Django's SMTP backend renders mail under Python's SMTP email policy, which folds header lines at 78 characters. A List-Unsubscribe value is one angle-bracketed URL with no whitespace to fold at. Once a real per-reader URL ran past 78, the standard library encoded the entire value as an RFC 2047 encoded-word.
Gmail and Yahoo look for the literal header and don't decode that, so FirstBrief's one-click unsubscribe was lost.
The fix renders product mail with the line limit raised to 998, RFC 5322's hard maximum, and leaves the rest of the backend's policy alone. The regression test checks the bytes the real SMTP backend hands to sendmail, not just the message object.
The Sequence Read Archive grew 99x in a decade, and the field meant to say how each library was built got emptier.
A rerun of the original 2015 SQL keyword searches on a September 2026 NCBI snapshot: 41.6M experiments vs 419,620 in 2013. library_construction_protocol is now NULL in 67.65% of them, up from about half. Only 1.42% mention fragmentation, adapter ligation and enrichment together, down from 4.06%.
Not all of that is neglect. Amplicon runs are 43.6% of the archive, with 79.8% NULL protocols and a 0.26% match rate; tagmentation fragments and adds adapters in one step, which the 2013 keyword lists may not recognise. Searching design_description too lifts the three-step match to 2.88%, mostly where the protocol field was empty.
If you reuse public reads, query every free-text field, not just the one named for the job.
(arXiv, 19 Oct)
A rod curled into a helix knots less than a straight one, and past a certain curl it stops knotting entirely.
Cornell and EPFL tumbled silicone rods (3.2 mm thick, 0.6 to 4.5 m long) inside a 99 mm cylinder for 20 minutes, 15 trials per condition. Straight rods knotted more as they got longer, with knotting near-certain above 3.5 m. Rods cast with a tight curl (curvature 0.11 per mm, about a 9 mm radius) knotted up to 73% less. At 0.6 m and 1.2 m, that curl gave zero knots.
A second kind of tangle barely noticed the curl: the "lock", where one end can't be pulled out past a stopper plate. At 2.3 m it happened about 60% of the time almost regardless of curvature; at 0.6 m it never happened in 15 tries.
So knotting is set by the rod's global shape and locking by local contacts and loops, which means the two could in principle be tuned separately. One loose end: a mild curl (0.05 per mm) raised knotting before it fell, and the authors say they can't yet explain why.
Derveni, Sabater, Reis (arXiv, 21 Oct)
Fed chi validate a problem spec that should fail:
seeds: []
repeats: 0
tolerance: -1
timout_seconds: 5 (typo)
all 3 scripts deleted
$ chi validate p
OK problem 'optimize_function' (0 seeds)
The 0 seeds one bites: the correctness loop never runs, so every candidate passes.
In Alibaba's GPU cluster trace, more than half of the executions placed on GPUs never became ready.
Of 40.1 million labeled execution records, 52.7% never did, even with enough capacity and placement complete. The GPUs stay allocated without producing useful work. The authors call it ineffective occupancy.
Their fix leaves placement alone and changes only admission order. A gradient-boosted model scores readiness from nine attributes known at admission (job profile, duration and GPU model matter most) and admits likely-ready jobs first.
In trace replay, the share of cluster GPUs held by never-ready work falls from 43.64% to 27.15%, and coverage of requests for 8+ GPUs rises from 46.1% to 63.2%, without giving up utilization.
(arXiv, 20 Oct)
In people without a spleen, red cells carry vacuoles 1.5 μm across. A new model says a typical cell can't build one by merging small vacuoles. It never makes enough material.
These pocked cells are about 0.5% of red cells in healthy people and 20 to 70% after splenectomy. Visible vacuoles are thought to grow when small ones meet and fuse.
Chai, Zheng, Li, Dao and Karniadakis (arXiv, 19 Oct) simulated the membrane, the contents and every vacuole. In tube, shear and vessel flows, a cell's vacuoles met within a second. Meeting isn't the limit.
Supply is. At the rate measured after splenectomy, about 0.5 small vacuoles per cell per day, a red cell makes 60 in its 120-day life, 0.111 μm³ in all. Fuse every one and you get a single body about 0.6 μm across: the size healthy cells carry, and 16 times smaller in volume than the 1.5 μm bodies seen without a spleen.
What fits the published counts and sizes: vacuoles made mostly in young cells, and far faster in a small minority of cells that alone make enough for a large one. Letting that minority's vacuoles fuse fits nearly as well.
The test they propose is a slit experiment on whether brief encounters fuse vacuoles.






