frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Dev with 5 of experience switched to Rails, what should I be careful about?

1•vampiregrey•1m ago•0 comments

AlphaFace: High Fidelity and Real-Time Face Swapper Robust to Facial Pose

https://arxiv.org/abs/2601.16429
1•PaulHoule•2m ago•0 comments

Scientists discover “levitating” time crystals that you can hold in your hand

https://www.nyu.edu/about/news-publications/news/2026/february/scientists-discover--levitating--t...
1•hhs•4m ago•0 comments

Rammstein – Deutschland (C64 Cover, Real SID, 8-bit – 2019) [video]

https://www.youtube.com/watch?v=3VReIuv1GFo
1•erickhill•5m ago•0 comments

Tell HN: Yet Another Round of Zendesk Spam

1•Philpax•5m ago•0 comments

Postgres Message Queue (PGMQ)

https://github.com/pgmq/pgmq
1•Lwrless•9m ago•0 comments

Show HN: Django-rclone: Database and media backups for Django, powered by rclone

https://github.com/kjnez/django-rclone
1•cui•11m ago•1 comments

NY lawmakers proposed statewide data center moratorium

https://www.niagara-gazette.com/news/local_news/ny-lawmakers-proposed-statewide-data-center-morat...
1•geox•13m ago•0 comments

OpenClaw AI chatbots are running amok – these scientists are listening in

https://www.nature.com/articles/d41586-026-00370-w
2•EA-3167•13m ago•0 comments

Show HN: AI agent forgets user preferences every session. This fixes it

https://www.pref0.com/
5•fliellerjulian•15m ago•0 comments

Introduce the Vouch/Denouncement Contribution Model

https://github.com/ghostty-org/ghostty/pull/10559
2•DustinEchoes•17m ago•0 comments

Show HN: SSHcode – Always-On Claude Code/OpenCode over Tailscale and Hetzner

https://github.com/sultanvaliyev/sshcode
1•sultanvaliyev•18m ago•0 comments

Microsoft appointed a quality czar. He has no direct reports and no budget

https://jpcaparas.medium.com/microsoft-appointed-a-quality-czar-he-has-no-direct-reports-and-no-b...
2•RickJWagner•19m ago•0 comments

Multi-agent coordination on Claude Code: 8 production pain points and patterns

https://gist.github.com/sigalovskinick/6cc1cef061f76b7edd198e0ebc863397
1•nikolasi•20m ago•0 comments

Washington Post CEO Will Lewis Steps Down After Stormy Tenure

https://www.nytimes.com/2026/02/07/technology/washington-post-will-lewis.html
7•jbegley•20m ago•1 comments

DevXT – Building the Future with AI That Acts

https://devxt.com
2•superpecmuscles•21m ago•4 comments

A Minimal OpenClaw Built with the OpenCode SDK

https://github.com/CefBoud/MonClaw
1•cefboud•22m ago•0 comments

The silent death of Good Code

https://amit.prasad.me/blog/rip-good-code
3•amitprasad•22m ago•0 comments

The Internal Negotiation You Have When Your Heart Rate Gets Uncomfortable

https://www.vo2maxpro.com/blog/internal-negotiation-heart-rate
1•GoodluckH•23m ago•0 comments

Show HN: Glance – Fast CSV inspection for the terminal (SIMD-accelerated)

https://github.com/AveryClapp/glance
2•AveryClapp•24m ago•0 comments

Busy for the Next Fifty to Sixty Bud

https://pestlemortar.substack.com/p/busy-for-the-next-fifty-to-sixty-had-all-my-money-in-bitcoin-...
1•mithradiumn•25m ago•0 comments

Imperative

https://pestlemortar.substack.com/p/imperative
1•mithradiumn•26m ago•0 comments

Show HN: I decomposed 87 tasks to find where AI agents structurally collapse

https://github.com/XxCotHGxX/Instruction_Entropy
2•XxCotHGxX•30m ago•1 comments

I went back to Linux and it was a mistake

https://www.theverge.com/report/875077/linux-was-a-mistake
3•timpera•31m ago•1 comments

Octrafic – open-source AI-assisted API testing from the CLI

https://github.com/Octrafic/octrafic-cli
1•mbadyl•32m ago•1 comments

US Accuses China of Secret Nuclear Testing

https://www.reuters.com/world/china/trump-has-been-clear-wanting-new-nuclear-arms-control-treaty-...
3•jandrewrogers•33m ago•2 comments

Peacock. A New Programming Language

2•hashhooshy•38m ago•1 comments

A postcard arrived: 'If you're reading this I'm dead, and I really liked you'

https://www.washingtonpost.com/lifestyle/2026/02/07/postcard-death-teacher-glickman/
4•bookofjoe•39m ago•1 comments

What to know about the software selloff

https://www.morningstar.com/markets/what-know-about-software-stock-selloff
2•RickJWagner•43m ago•0 comments

Show HN: Syntux – generative UI for websites, not agents

https://www.getsyntux.com/
3•Goose78•44m ago•0 comments
Open in hackernews

Show HN: Atomic symlink deployments that work on macOS URL

https://github.com/mojoatomic/atomic-deployments
2•mojoatomic•3w ago
Most "atomic" deployment scripts aren't atomic. If you're using the standard symlink swap pattern for zero-downtime deploys, you've probably seen this:

bash ln -sfn releases/20260112 current Looks atomic. It's not. Run it through strace:

symlink("releases/20260112", "current") = -1 EEXIST unlink("current") = 0 symlink("releases/20260112", "current") = 0 There's a window where current doesn't exist. Under load, some requests get ENOENT. The fix is well-documented for Linux:

bash ln -s releases/20260112 .tmp/current.$$ mv -T .tmp/current.$$ current The mv -T calls rename(2) which atomically replaces the symlink. Problem solved. Except on macOS. BSD mv doesn't have -T, and it follows symlinks differently. The Capistrano/Deployer communities have known about this for over a decade. Most just accept the race condition on Mac, or tell you to develop on Linux. I needed something that works on both (MSP managing mixed fleets - Linux servers, Mac dev machines, CI runners on both). The solution turned out to be Python's os.replace(), which calls rename(2) directly:

bash if [[ "$platform" == "linux" ]]; then ln -s "releases/$rel_id" "$tmp_link" mv -T "$tmp_link" "current" else ln -s "releases/$rel_id" "$tmp_link" python3 -c "import os; os.replace('$tmp_link', 'current')" fi I wrapped this in a deployment script with: * Platform detection (GNU vs BSD coreutils) * Directory-based locking with stale PID detection * Automatic rollback on SIGINT/SIGTERM * State machine cleanup (knows whether to rollback vs just clean up temp files) Single bash script, no runtime dependencies beyond python3 (which is everywhere now). GitHub: [https://github.com/mojoatomic/atomic-deployments.git]

Q: Why not just use Capistrano/Deployer/Shipit? A: Those are great if you're already in that ecosystem. I needed a single script I could drop into any CI pipeline without pulling in Ruby/PHP/Node. Also, Deployer's own code shows it falls back to non-atomic on systems without mv -T. Q: Why not use containers/Kubernetes? A: Not everyone is on k8s. Lots of us still deploy to VMs, bare metal, edge devices. Symlink swaps are still the simplest zero-downtime pattern for those environments. Q: Python dependency defeats the "no dependencies" claim A: Fair. But python3 ships with macOS and virtually every Linux distro. It's as close to "always there" as you get. The alternative is writing a small C binary, which creates a different dependency problem. Q: What about NFS/network filesystems? A: Don't. rename(2) atomicity guarantees don't hold across network filesystems. This is for local filesystems only. Q: What about the renameat2() RENAME_EXCHANGE flag? A: That's Linux 3.15+ only and requires glibc 2.28+. It does a true atomic swap of two paths, which is even better. But it's not portable, so I stuck with the symlink + rename pattern that works everywhere. Q: Does this handle shared directories (logs, uploads, etc.)? A: Not in scope for this script. It just does the atomic swap. Capistrano-style shared directory symlinking is a separate concern.

Key technical points 1. ln -sfn is unlink + symlink, not atomic 2. mv -T on Linux calls rename(2) which IS atomic 3. BSD mv follows symlinks, breaking the pattern 4. Python's os.replace() calls rename(2) directly on all POSIX systems 5. Capistrano's workaround (create symlink in subdirectory, mv with relative path) works but requires their Ruby runtime 6. The script detects platform by checking if mv --version returns GNU, not by uname (more reliable for edge cases like GNU coreutils on Mac via Homebrew)