frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Shatner is making an album with 35 metal icons

https://www.guitarworld.com/artists/guitarists/william-shatner-announces-all-star-metal-album
45•mhb•1h ago•22 comments

FreeBSD doesn't have Wi-Fi driver for my old MacBook. AI build one for me

https://vladimir.varank.in/notes/2026/02/freebsd-brcmfmac/
237•varankinv•3h ago•188 comments

I Ported Coreboot to the ThinkPad X270

https://dork.dev/posts/2026-02-20-ported-coreboot/
28•todsacerdoti•1h ago•0 comments

UNIX99, a UNIX-like OS for the TI-99/4A

https://forums.atariage.com/topic/380883-unix99-a-unix-like-os-for-the-ti-994a/
137•marcodiego•5h ago•48 comments

The Age Verification Trap: Verifying age undermines everyone's data protection

https://spectrum.ieee.org/age-verification
1197•oldnetguy•11h ago•962 comments

Ladybird adopts Rust

https://ladybird.org/posts/adopting-rust/
1070•adius•14h ago•582 comments

Making Wolfram Tech Available as a Foundation Tool for LLM Systems

https://writings.stephenwolfram.com/2026/02/making-wolfram-tech-available-as-a-foundation-tool-fo...
40•surprisetalk•3h ago•24 comments

What is f(x) ≤ g(x) + O(1)? Inequalities With Asymptotics

https://jamesoswald.dev/posts/bigoinequality/
27•ibobev•3d ago•15 comments

Show HN: PgDog – Scale Postgres without changing the app

https://github.com/pgdogdev/pgdog
187•levkk•10h ago•44 comments

The challenges of porting Shufflepuck Cafe to the 8 bits Apple II

https://www.colino.net/wordpress/archives/2026/02/23/the-challenges-of-porting-shufflepuck-cafe-t...
42•homarp•4h ago•7 comments

The Rise of Eyes Began with Just One

https://www.nytimes.com/2026/02/23/science/evolution-vertebrate-eye.html
9•marojejian•8h ago•5 comments

Show HN: Babyshark – Wireshark made easy (terminal UI for PCAPs)

https://github.com/vignesh07/babyshark
55•eigen-vector•4h ago•30 comments

Magical Mushroom – Europe's first industrial-scale mycelium packaging producer

https://magicalmushroom.com/index
355•microflash•17h ago•120 comments

Show HN: Sowbot – open-hardware agricultural robot (ROS2, RTK GPS)

https://sowbot.co.uk/
116•Sabrees•9h ago•38 comments

SIM (YC X25) Is Hiring the Best Engineers in San Francisco

https://www.ycombinator.com/companies/sim/jobs/Rj8TVRM-software-engineer-platform
1•waleedlatif1•4h ago

You are not supposed to install OpenClaw on your personal computer

https://twitter.com/i/status/2025987544853188836
85•bundie•3h ago•39 comments

AI Added 'Basically Zero' to US Economic Growth Last Year, Goldman Sachs Says

https://gizmodo.com/ai-added-basically-zero-to-us-economic-growth-last-year-goldman-sachs-says-20...
150•cdrnsf•2h ago•135 comments

Lords of the Ring

https://harpers.org/archive/2026/03/lords-of-the-ring-joshua-hunt-cultural-politics-sumo-wrestling/
9•lermontov•3d ago•1 comments

A simple web we own

https://rsdoiel.github.io/blog/2026/02/21/a_simple_web_we_own.html
180•speckx•9h ago•126 comments

ASML unveils EUV light source advance that could yield 50% more chips by 2030

https://www.reuters.com/world/china/asml-unveils-euv-light-source-advance-that-could-yield-50-mor...
259•pieterr•8h ago•69 comments

'Viking' was a job description, not a matter of heredity: Ancient DNA study

https://www.science.org/content/article/viking-was-job-description-not-matter-heredity-massive-an...
149•bookofjoe•2d ago•127 comments

Why Your Load Balancer Still Sends Traffic to Dead Backends

https://singh-sanjay.com/2026/01/12/health-checks-client-vs-server-side-lb.html
8•singhsanjay12•2h ago•2 comments

Binance fired employees who found $1.7B in crypto was sent to Iran

https://www.nytimes.com/2026/02/23/technology/binance-employees-iran-firings.html
408•boplicity•6h ago•176 comments

Scent, in Silico

https://www.asimov.press/p/scent
18•surprisetalk•4d ago•1 comments

Benchmarks for concurrent hash map implementations in Go

https://github.com/puzpuzpuz/go-concurrent-map-bench
84•platzhirsch•1d ago•10 comments

femtolisp: A lightweight, robust, scheme-like Lisp implementation

https://github.com/JeffBezanson/femtolisp
120•tosh•13h ago•14 comments

Elsevier shuts down its finance journal citation cartel

https://www.chrisbrunet.com/p/elsevier-shuts-down-its-finance-journal
525•qsi•17h ago•96 comments

Generalized Sequential Probability Ratio Test for Families of Hypotheses [pdf]

https://sites.stat.columbia.edu/jcliu/paper/GSPRT_SQA3.pdf
25•luu•3d ago•5 comments

Psychology suggests making a shopping list is a sign of sharper thinking

https://economictimes.indiatimes.com/news/international/us/still-making-a-shopping-list-psycholog...
8•ColinWright•1h ago•15 comments

Show HN: AI Timeline – 171 LLMs from Transformer (2017) to GPT-5.3 (2026)

https://llm-timeline.com/
136•ai_bot•16h ago•49 comments
Open in hackernews

Fixrleak: Fixing Java Resource Leaks with GenAI

https://www.uber.com/en-IL/blog/fixrleak-fixing-java-resource-leaks-with-genai/
22•benocodes•9mo ago

Comments

leosanchez•9mo ago
C# has Roslyn analyzers for this. Doesn't java have something similar ? Is AI appropriate technology for static analysis ?
jillesvangurp•9mo ago
There were static code analyzers like findbugs able to do stuff like this 20 years ago. These days, your IDE should tell you off as well. And hopefully teams configure their builds to catch stuff like this using any of the available plugins for this.

LLMs seems overkill for this. But of course letting it do general code reviews is not a bad idea. And static code analyzers aren't perfect. Doing this at scale might be a bit tricky though; you'd have to go file by file. I assume Uber might have many millions of lines of code to screen. And maybe their developers aren't that concerned with addressing warnings.

But going file by file might be simple enough. And you can probably screen for important stuff with some decent system prompt and instruct it to check for potential resource leaks and similar issues and produce detailed bug reports with some priority if it finds them and a diff that addresses the issue. Could be a nice use case for agentic AIs to screen code like this.

TYMorningCoffee•9mo ago
These existing tools (spotbugs, findings, sonarqube, null away, checker framework, pmd, etc) provide detection but not resolution. Resolution thru LLM is what Uber proposes.
nradov•9mo ago
Resolution of the kind of resource leaks that SonarQube finds is usually the work of a few seconds. And it should be integrated into the developer workflow in such a way that those bugs are found and fixed before the code even gets checked in. In other words, if that code is even making it into a repo where GenAI can find and fix it then you have deeper engineering process problems. Fix the root cause rather than patching around them with more tools.

And once SonarQube flags a resource leak to a developer, a competent developer would learn from that and never make the same mistake again.

TYMorningCoffee•9mo ago
It's not identifying the leaks. In their architecture they use Sonar qube for the detecting. The LLM provides the fix.
kmarc•9mo ago
I'm working in the developer productivity space.

I think you'd be surprised, how many people do production code WITHOUT automated formatting / linting / static analysis.

Now these people and their managers are staring at the shiny new thing, the LLMs. They missing googling skills are fixed by LLMs ont heir everyday life, so they think a magic "code quality tool" (AI) would help them in they work.

To answer your question, obviously there are many linters/analyzers for Java (and for other languages too), both for static and dynamic code analysis, formatters, everything.

nitinreddy88•9mo ago
Is this open sourced? It would be super useful if we can run against open source community projects to see the accuracy
TYMorningCoffee•9mo ago
This architecture is promising. Large legacy code bases can have static analysis violations in the 1000s which devs never have the time to address. I've seen sonar tube reports that require man years to resolve everything.
time4tea•9mo ago
This could be interesting, but all the example code is so poor, and the extent of the fix so limited that it feels like this is 'AI' for the sake of it.

Stringly-typed, catch-log-ignore, generates warnings in IDE anyway...

Fixed 90 of 125 errors that were found by a different technology... probably.could have been fixed by one developer in 1-2 days anyway - how long did this take?

daxfohl•9mo ago
Mostly agree with these points, but it does say that it automates some of the fixes in complex cases that the non-AI tool couldn't handle.

Besides, gotta start somewhere. It's probably a PoC, for a platform that will eventually handle all sorts of things.

johnbender•9mo ago
> Besides, gotta start somewhere. It's probably a PoC, for a platform that will eventually handle all sorts of things.

I agree and I think we should give folks leeway to make progress but this seems to be the qualifier for nearly every GenAI demo I’ve seen

tuyguntn•9mo ago
> all the example code is so poor, and the extent of the fix so limited

I agree about the limitations, but look from another perspective, is it good use of time asking experienced engineers who get paid 300-500k/year to go and fix these issues? Probably no.

Would it bring them a joy finding simple leaks and fixing them? Probably no again.

Then this tool is a nice addition to the engineers

fjwufjfa•9mo ago
> try (BufferedReader reader = new BufferedReader (new FileReader (filePath) )){

won't FileReader leak if the BufferedReader constructor throws?

nick__m•9mo ago
That BufferedReader constructors is not supposed to throw, unless the reader is null or you're out of memory. If your out of memory you should probably abort the program execution because the difficulty of correctly recovering from an OOM exception is between hard and impossible.

Edit: Disregard the above, it was too naive.

It cannot leak because of a stronger warranty. In the JLS, it is specified that the try-with-resources track successfull initialisation of AutoClosable resources, not successful assignation. So one try with resources can desugar into the logical equivalent of multiple nested try-catch-finally !

delusional•9mo ago
> difficulty of correctly recovering from an OOM exception is between hard and impossible.

In Java out of memory is signaled with an OutOfMemoryError which is a throwable (and can be caught) but is not technically an exception. Errors should generally never be caught and cannot be recovered from, which is how they differ from exceptions.

nick__m•9mo ago
It's possible to recover enough to cleanly save the user work and shutdown. You have to mesure of much memory you need for a clean shutdown and allocate a byte[sizeForShutdown] at the start of the application in the top level exception handler (the only one that should catch that error) and free that byte array before doing anything else.

Now you can argue that this is not truly recovering from exception but it is a lot better than what you can do with most of the other Error subclasses. I said most because there are easy to recover from Error like the StackOverflowError where you just have to fail the operation or request that caused the error.

nradov•9mo ago
Does the JLS actually guarantee that if you free that byte array then the extra memory will be immediately available? I thought there could potentially be some lag. The safer approach would be to create all of the objects you need for a clean shutdown during program launch and keep them around. Then you won't need to allocate any memory in the exception handler.
nick__m•9mo ago
Your approach is safer for sure and doesn't require me the read the JLS before going to see my mother for mother's day, so it's doubly better !
adra•9mo ago
It's not great, but you can always catch and retry if your belief is that the GC will free enough memory to allow the attempt to continue after the memory pressure subsides.

Let's say you get 1/100 requests that are randomly sent to your process. That 1 takes 100x the average memory usage of the others. You could spin it out to different services to better handle the weird one-off, but that doesn't always make sense. Sometimes you just need to be ok with working the 100x job and let the other 99 get progressive falloff retry. Different solutions are always possible.

Quekid5•9mo ago
> It's not great, but you can always catch and retry if your belief is that the GC will free enough memory to allow the attempt to continue after the memory pressure subsides.

No, you cannot. Catching, for example, StackOverflowError (which inherits from Error) can lead to very strange deadlocks and such (if locking is relying on try-finally discipline, as it should), even if you do "almost nothing" before re-throwing.

It's a huge hornet's nest of weirdness to even attempt to catch anything which derives directly from Error. (Rather than RuntimeException/Exception.)

EDIT: There are some really strange subclasses of Error now that I think about it. E.g. VirtualMachineError ... I don't think I've ever seen that in any logs, thankfully, but what exactly is the program (running on the failing VM) supposed to do if that is thrown? It'd be like trying to carry on or log an error if suddenly 1==2 turned out to be true.

delusional•9mo ago
> There are some really strange subclasses of Error now that I think about it. E.g. VirtualMachineError

An OutOfMemoryError is a VirtualMachineError. The Java runtime doesn't technically contain the idea of "finite memory". The language sort of assumes there's an infinite amount of memory. When there isn't and the VM is forced to throw an OutOfMemoryError it's technically a breach of the abstraction of the language and the VM is unable to continue working.

kburman•9mo ago
I'm not sure I fully understand the purpose of this tool. Modern IDEs are quite good at detecting these types of issues. And if they don't catch something, I often just copy and paste the method with some context-into an LLM and ask it to find the problem. It usually handles all the necessary changes for me.
microflash•9mo ago
Can we not solve this by an OpenRewrite recipe?

https://docs.openrewrite.org