frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Clojure Async Flow Guide

https://clojure.github.io/core.async/flow-guide.html
84•simonpure•4h ago•33 comments

Google admits anti-competitive conduct involving Google Search in Australia

https://www.accc.gov.au/media-release/google-admits-anti-competitive-conduct-involving-google-search-in-australia
99•Improvement•2h ago•53 comments

A gigantic jet caught on camera: A spritacular moment for NASA astronaut

https://science.nasa.gov/science-research/heliophysics/a-gigantic-jet-caught-on-camera-a-spritacular-moment-for-nasa-astronaut-nicole-ayers/
26•acossta•3d ago•4 comments

Claudia – Desktop companion for Claude code

https://claudiacode.com/
360•zerealshadowban•11h ago•178 comments

NUMA Is the New Network: Reshaping Per-Socket Microservice Placement

https://codemia.io/blog/path/NUMA-Is-the-New-Network-How-Per-Socket-Memory-Models-Are-Reshaping-Microservice-Placement
30•signa11•3h ago•13 comments

The Enterprise Experience

https://churchofturing.github.io/the-enterprise-experience.html
297•Improvement•12h ago•79 comments

Llama-Scan: Convert PDFs to Text W Local LLMs

https://github.com/ngafar/llama-scan
93•nawazgafar•7h ago•51 comments

Modifying other people's software

https://natkr.com/2025-08-14-modifying-other-peoples-software/
36•todsacerdoti•4d ago•18 comments

Show HN: Doxx – Terminal .docx viewer inspired by Glow

https://github.com/bgreenwell/doxx
124•w108bmg•9h ago•30 comments

Mangle – a language for deductive database programming

https://github.com/google/mangle
23•simonpure•4h ago•2 comments

Show HN: OverType – A Markdown WYSIWYG editor that's just a textarea

245•panphora•13h ago•68 comments

Derivatives, Gradients, Jacobians and Hessians

https://blog.demofox.org/2025/08/16/derivatives-gradients-jacobians-and-hessians-oh-my/
219•ibobev•15h ago•51 comments

Show HN: NextDNS Adds "Bypass Age Verification"

321•nextdns•14h ago•92 comments

Fun with Finite State Transducers

https://blog.yossarian.net/2025/08/14/Fun-with-finite-state-transducers
22•woodruffw•3d ago•0 comments

Node.js is able to execute TypeScript files without additional configuration

https://nodejs.org/en/blog/release/v22.18.0
380•steren•23h ago•218 comments

ArchiveTeam has finished archiving all goo.gl short links

https://tracker.archiveteam.org/goo-gl/
325•pentagrama•11h ago•74 comments

I Prefer RST to Markdown (2024)

https://buttondown.com/hillelwayne/archive/why-i-prefer-rst-to-markdown/
60•shlomo_z•9h ago•38 comments

AI vs. Professional Authors Results

http://mark---lawrence.blogspot.com/2025/08/the-ai-vs-authors-results-part-2.html
83•biffles•7h ago•53 comments

BBC Micro, ancestor to ARM

https://retrogamecoders.com/bbc-micro-the-ancestor-to-a-device-you-are-guaranteed-to-own/
107•ingve•16h ago•90 comments

MS-DOS development resources

https://github.com/SuperIlu/DOSDevelResources/blob/main/README.md
74•mariuz•13h ago•14 comments

Show HN: ASCII Tree Editor

https://asciitree.reorx.com/
5•novoreorx•2h ago•0 comments

A Visual Exploration of Gaussian Processes (2019)

https://distill.pub/2019/visual-exploration-gaussian-processes/
44•vinhnx•2d ago•0 comments

Why Nim?

https://undefined.pyfy.ch/why-nim
130•TheWiggles•15h ago•139 comments

Here be dragons: Preventing static damage, latchup, and metastability in the 386

http://www.righto.com/2025/08/static-latchup-metastability-386.html
70•todsacerdoti•13h ago•40 comments

Show HN: Fallinorg - Offline Mac app that organizes files by meaning

https://fallinorg.com/#
70•bobnarizes•13h ago•39 comments

LL3M: Large Language 3D Modelers

https://threedle.github.io/ll3m/
393•simonpure•17h ago•170 comments

Faster Index I/O with NVMe SSDs

https://www.marginalia.nu/log/a_123_index_io/
144•ingve•16h ago•22 comments

Primitive Streaming Gods

https://tedium.co/2018/01/30/legal-music-streaming-history/
14•_vaporwave_•2d ago•1 comments

IMDB Terminal Browser

https://github.com/isene/IMDB
9•thunderbong•1h ago•4 comments

Teaching GPT-5 to Use a Computer

https://prava.co/archon/
56•Areibman•2d ago•13 comments
Open in hackernews

Modifying other people's software

https://natkr.com/2025-08-14-modifying-other-peoples-software/
36•todsacerdoti•4d ago

Comments

cyberax•3h ago
This is supercool. One my constant problem with self-hosting is that I often need to modify just a couple of files here and there, but then I'm stuck with a forked repo or a dirty work copy.

I'm going to try to make a frontend UI for it.

datadrivenangel•3h ago
Modifying source code like this is one method. For web software, bookmarklets are another great way to do that.
bartread•3h ago
I’m a big fan of Greasemonkey scripts for this, although these days I prefer Violentmonkey because it has several capabilities that the OG doesn’t.
thwarted•3h ago
The process described reminded me of "pristine source" and RPM spec files that take the upstream pristine source and patch it during the build process. Maintaining that is always a little bit of a headache if you don't do it regularly, especially having to maintain (generate and apply) a separate set of patch files for the changes and express/apply the patches in the spec file. This looks to make light work of that.
userbinator•3h ago
Many times I've just patched the binary even if source is available, because trying to reproduce the binary you currently have, with only the changes you want and everything else the same, can be an even more difficult exercise than simply changing a string or constant.
taneq•57m ago
Especially if you make a habit of patching the binary instead of rebuilding from source! ;)
skydhash•2h ago
Maybe I can't understand what TFA is describing, but from what I know a patch is usually tied to a specific commit, so a very specific point of time in the upstream lifetime. It does not make sense to have it lingering longer than that. Even in the case when you want to maintain a set of patches (package building,...) you usually revise it every new version of the software. In this case, the intent is much more important than the how (which quickly become history).
what•1h ago
A patch just encapsulates what was added and removed in a particular change, it doesn’t care about any commits.
doix•1h ago
Yes, I don't quite get it. When I need to maintain a fork, I just add an extra remote to git. Then I fetch upstream (what I call my remote) and rebase my changes against whatever branch I'm following. At any point in time I can generate a patch file that works for whatever version I have rebased against.

Seems easy enough, I read the article multiple times and I don't get why what they are describing is needed.

Nullabillity•1h ago
(Author here.)

The difference is that git rebasing is a destructive operation, you lose track of the old version when you do it. (Yes, there's technically the reflog.. but it's much less friendly to browse, and there's no way to share it across a team.)

Maybe that's an okay tradeoff for something you use by yourself, but it gets completely untenable when you're multiple people maintaining it together, because constantly rebasing branches completely breaks Git's collaboration model.

cobbzilla•57m ago
I see — you’re doing more than “here’s a few patches to keep working across revisions”, you’re doing separate-path feature work on a different, actively-developed project.

To me that sounds like not a great idea, but if you must do it, I could see some usefulness to this.

Nullabillity•48m ago
Yeah. For reference, this is a typical patchset for the project that motivated it.[0] Some of the patches are "routine" dependency upgrades, some of them are bugfix backports, some of them are original work that we were planning to upstream but hadn't got around to yet. Some are worth keeping when upgrading to a new upstream version, some aren't.

I agree that it's not ideal, but... there are always tradeoffs to manage.

[0]: https://github.com/stackabletech/docker-images/tree/e30798ac...

doix•6m ago
I worked at a place that was allergic to contributing patches upstream. We maintained a lot of internal forks for things and had no problem collaborating.

You don't need to push the rebased branch to the same branch on your remote, if that's an issue (although I don't see how it is).

Maybe this is a case of "Dropbox is just rsync", but I feel like just learning git and using it is easier than learning a new tool.

cobbzilla•1h ago
Agreed. If you want your change and don’t want to bother the maintainers with a patch they are unlikely to accept, or can’t because it’s proprietary: fork the repo (at whatever tag makes sense), then periodically sync with the latest code for that version.

The likelihood of conflicts is minimal, and often if you see conflicts it’s a good indication your issue may have been resolved. Or if not, you can see if it’s still needed, or how to adjust it.

Nullabillity•54m ago
(Author here.)

> fork the repo (at whatever tag makes sense), then periodically sync with the latest code for that version.

Yeah, this is the workflow that Lappverk is trying to enable.

The problem is that neither of Git's collaboration models works well for this problem. Rebasing breaks collaboration (and history for the patchset itself), and merging quickly loses track of individual patches. Lappverk is an attempt to provide a safer way to collaborate over the rebase workflow.

shmerl•42m ago
For example wine-staging (ran by Wine developers themselves) hosts patches for Wine project and they revise / rebase them with each Wine version, which is often not a trivial task. I don't see how you can avoid that really. But Wine staging itself is a git repository that holds patches (and their history) if that helps, which indeed can stay there for years.

Same happens with patches that Debian applies on top of fixed versions of packages. They are stored in Debian's Salsa git.

lmm•4m ago
The point is to maintain your set (perhaps stack) of patches as a set of patches on top of upstream for the long term. Yes, you will probably have to revise them as upstream changes, but this will let you maintain their identity as you do so. Is that something you will find useful? Maybe, maybe not.
vlovich123•12m ago
Honestly I found a better strategy to name branches after the fork point and the date you started the fork. So you’d have main-2025-03-07 for a fork of main started 03-07 another main-2025-05-08 for a rebase. The patch set above that is just what you carry. I’m not sure maintaining them as literal patches is that helpful vs just keeping it as explicit patches to apply in git. But maybe this is the right strategy once your fork gets complicated but at that point you should be hard forking rather than soft forking IMO.