MurphyA/hacker-news huggingface dataset:
by QuercusMax | 2025-12-07 21:08:11+00:00
The biggest estimation effort I ever took part in was a whole-system rewrite[1] where we had a very detailed functional test plan describing everything the system should do. The other lead and I went down the list, estimated how long everything would take to re-implement, and came up with an estimate of 2 people, 9 months.

We knew that couldn't possibly be right, so we doubled the estimate and tripled the team, and ended up with 6 people for 18 months - which ended up being almost exactly right.

[1]: We were moving from a dead/dying framework and language onto a modern language and well-supported platform; I think we started out with about 1MLOC on the old system and ended up with about 700K on the rewrite.
by naet | 2025-12-07 21:08:25+00:00
I do both crosswords and frequently look at the daily leetcode problem. I don't always do it if the problem doesn't interest me. But sometimes I learn something new, other times I just hammer out a solution in 2-5 min for a little brain stimulation.

Making a habit of doing small puzzles like that can compound a lot over time. I am self taught and did not study algorithms in school, but I would consider myself stronger on the topic than most of my coworkers just from my learning to solve puzzles (and enjoying it). I am currently the senior / lead dev of my team.

I also love Advent of Code and look forwards to it all year.

I do both in languages that aren't what I primarily use at work.
by twerka-stonk | 2025-12-07 21:08:46+00:00
I will often estimate 3x as a rule of thumb. Estimating is indeed difficult especially when dealing with unforeseen task switching.

I was surprised to not see “story points” mentioned in the context of scrum. This is an estimation concept I have found baffling because it is a measure of “complexity”, not time, yet is used directly to estimate how much can be done. At least this is how it is done at my work.

Scrum lingo is silly.
by jijijijij | 2025-12-07 21:09:08+00:00
> Source for this?

https://de.wikipedia.org/wiki/Alternative_f%C3%BCr_Deutschla...

https://de.wikipedia.org/wiki/Petr_Bystron

There is plenty of news coverage.

> Is Merkle part of AfD since she shat on Poland and Baltics 2 months ago?

You mean Merkel? No, she is not part of the AfD. She also isn't part of the government anymore and her political influence since 2021, in particular 2 months ago, is basically zero. Did you get the memo? We had two elections since Merkel. I don't care where she shits. That's a private matter.
by tialaramex | 2025-12-07 21:09:24+00:00
Yes, being poor is expensive and people just don't seem to grok that

Take energy. I'm not rich but I'm comfortable, my energy is paid for in an efficient way, I can shop around easily for the best rates for my lifestyle and so on. But if I had no money they'll fit a pay-per-use meter, they charge more money to fill that meter, if I can't fill it or forget to then the power goes out - and it's inconvenient to use it.

Years ago now I had a dispute with the water utility. I refused to pay, so, they eventually concluded that fixing their error was too difficult so they just created a new account starting from zero and wrote off all the costs for the disputed period entirely. If I'd been poor, they'd have threatened to cut off the supply (they're only threatening, fortunately it's not actually legal here to cease supplying clean water to poor people like they're not even animals) and sent scary people to demand payment.
by robbiet480 | 2025-12-07 21:09:47+00:00
I love using Syncthing for syncing all my ROMs and saves across my handhelds (RG35XXSP running muOS, AYN Thor running Android), my NAS and MacBook. I'm trying to figure out what my concern level should be with a change in ownership of syncthing-fork for Android though. I guess let's see what happens?
by WarOnPrivacy | 2025-12-07 21:10:44+00:00
I wasn't sure Puppy was still actively developed.

It looks like after 3 years there is a (early?) release available: 2510-25111 trixiepup. 11/19/25

https://distrowatch.com/table.php?distribution=puppy

But back in June there was some event that used the language Dev Leaves and Turn Off The Lights

TrixiePup64 11.1.1 (Development discontinued) 6/7/25 https://forum.puppylinux.com/viewtopic.php?t=14554

Maybe positive things happened between June and Nov.
by AnimalMuppet | 2025-12-07 21:10:52+00:00
I see it. I think that a couple of large things happened in the larger society, and tech is inside of that.

The American Dream kind of died. It died in two ways, and it's important to keep them separate.

First, the American Dream died (or at least got very sick) in that the path from high school graduate to high-paying job got very narrow. This was because other countries rebuilt after WWII, and outsourcing happened, and the US culture changed from more "we're all in this together" to more "I got mine, you can starve".

Second, the American Dream died even for those who got the well-paid jobs. They found out that it wasn't enough - that they needed something more than more money. Material prosperity is not enough, and more material prosperity won't fix it. Humans need something more, and we aren't getting it.

We're not getting it from technology, either. We don't need better graphics and instant movies. We don't even need social media - or at least, we don't need what social media has turned into, making us a slave to dopamine hits.

With that going on, how do people view tech? As a way to get rich? Well, that's probably not going to work out, at least not for most of us, and even if it does, all it gets me is money. As a means of making the world better? Yeah, how's that working out?

We're feeling the lack of something, and money isn't going to fix it, and tech isn't either.

I think that's what changed. People thought that tech could make the world better, and make them rich along the way, and now they see that tech can't fix what we need fixed, and being rich isn't enough.
by GauntletWizard | 2025-12-07 21:11:15+00:00
AI driven research tells you everything you need to know about your conclusions; there's a hint of truth that's hiding an incredible web of misconceptions.

Mesh VPNs as a security mechanism replacing having secure server to server communication is just replacing one soft-center security mechanism with another. Mesh VPNs as the gateway to services that are themselves well secured is well over doubly secure over just having publicly accessible services; now you need the security holes to line up.
by Scarblac | 2025-12-07 21:11:45+00:00
> I honestly don’t know what the PO and TL gains with this absurd obscenity

There are marketing campaigns that need to be set up, users informed, manuals written. Sales people want to sell the new feature. People thinking about road maps need to know how many new features to can fit in a quarter.

Development isn't the only thing that exists.
by strcat | 2025-12-07 21:12:06+00:00
GrapheneOS has made substantial upstream contributions to the Linux kernel and Pixel drivers including vulnerability reports. Many of our kernel changes are for the out-of-tree drivers needed for Pixels which are in a separate repository from the Generic Kernel Image code from the upstream Linux kernel. We make important downstream changes including enabling many more of the upstream security features and adding important protections not yet available there. We worked with multiple upstream Linux kernel developers to get many of the changes we used to have upstream and therefore no longer need them. We have major kernel security improvements in development including more security-focused integration of hardware memory tagging, but indefinitely maintaining those downstream is not the way we try to do things.

We use much newer Generic Kernel Images than the stock Pixel OS as the base. Android 16 QPR2 was released this month and they finally shipped 6.1.145 from July 2025 for the Pixel 6 through Pixel 9 compared to us being on 6.1.158 which was the latest until yesterday (6.1.159) which will be incorporated soon. It's similar for our 6.6 and 6.12 branches compared to theirs. 6.6 is the current Pixel 10 and near future Pixel 6 through Pixel 9 branch. They only update the kernel revision every 3 months in quarterly/yearly releases so this is the smallest the delay gets right after a quarterly release. They'll still be on 6.1.145 until the next major release in March 2026 so the current delay of having the July 2025 kernel in December 2025 is not representative but rather is the small side of the delay. Shipping the newer LTS revisions is not easy due to frequent regressions both in the upstream code and to a much lesser extent in the out-of-tree drivers needed for Pixels which often need small changes to adapt them to the new LTS revisions.

GrapheneOS does a lot of deep security analysis and has proposed firmware, kernel and userspace exploit protections adopted by Google. We helped them get a bunch of vulnerabilities being exploited in the wild blocked off as whole classes of vulnerabilities including perf events, reset attacks on fastboot mode and much more. GrapheneOS is focused on addressing classes of vulnerabilities rather than individual bugs. Google puts a decent amount of resources into finding and fixing individual bugs and that isn't our focus. We get the bug fixes from the upstream project many months earlier and the Pixel driver fixes from them other than cases we fix them early due to finding them with hardware memory tagging which they don't use for the kernel even in Advanced Protection mode (or most of the base OS processes either, while we always use it for both with a much better implementation in userspace).

Most of our changes are in userspace where we don't try to collaborate with upstream developers as much as we do with the Linux kernel. Most of userspace is not developed as openly in a way we can properly collaborate.
by asa400 | 2025-12-07 21:12:24+00:00
> Hiring is not an entirely rational process

Agreed! I'd go so far as to say hiring is irrational in the aggregate.

The usual "rational" artifacts, if we can call them that (coding challenges, resumés, etc.) serve almost exclusively to eliminate candidates rather than boost good candidates. Firms are generally ok with false negatives from these artifacts as simply the cost of doing business.

> From there, it follows that meeting someone and letting them know you exist increases the chances (however small) that they can and will assist you on your career path.

I've seen this described as "people hire who they vibe with", and I've yet to see it play otherwise in my career. I'm not saying this is good, or fair, or desirable. It just is.

The folks who get offers are the ones who can meet people, tell stories (even true ones!), listen, and demonstrate that they can empathize with and contribute to messy, flawed organizations.

Humans have yet to invent a technology more powerful than social relationships, and I think technologists downplay this at their own peril.
by collinboler2 | 2025-12-07 21:13:04+00:00
That's interesting, didn't know that. Bummer you can't replay it once "the event has ended."

> The OPs seems to be more cumulative lifetime stats rather than just this past year, for a lot of the slides.

I disclose that the last 5 slides are lifetime stats in my readme:

"Note: The last 5 slides are not necessarily specific to 2025 because of leetcode's graphql api only allows querying up to 20 of the latest submissions from an unauthenticated user.

However, if you pass a LEETCODE_SESSION cookie (obtained from leetcode.com, open dev tools -> application -> cookies) with your request you can query all of your accounts submissions. You could also use the calendar endpoint query all of your submissions in the past year, and thus create a much more nuanced leetcode wrapped. (ex: You struggled with this problem the most in 2025.)"

I may try to tackle this via an extension with no server side logic if I have some free time later this week, would certainly be a cooler final product. Only caveat is users would have to manually install the extension from a github repo (too scary for most people) or the chrome web store, which may add too much friction for most people.
by xolve | 2025-12-07 21:13:33+00:00
The bug reports linked on softwaremill and scala GitHub's are precise and surprisingly small fixes! It does show Scala's power in expressiveness.

Scala is a great language and I really prefer its typesafe and easy way to write powerful programs: https://www.lihaoyi.com/post/comlihaoyiScalaExecutablePseudo... Its a great Python replacement, especially if your project is not tied to ML libraries where Python is defacto, like JS on web.
by AnimalMuppet | 2025-12-07 21:14:25+00:00
Hmm...

One net to rule them all, One net to find them, One net to bring them all And in the darkness bind them, In the land of NorCal where the shadows are.

That's the vibe I'm getting from what you're saying - creating the lure of progress through technology, but when we make the tech, it becomes a way of enslaving us.

And it may even have been true... for some people. I don't think that the bulk of the Silicon Valley hope/dream was just a thin veil for most of the people there.
by mindslight | 2025-12-07 21:15:31+00:00
If another customer changed the price tag, that would be in the same category as if a person unaffiliated with the store said "I'll give you a deal on this item for $10", then pocketed the money while you walked out with the (still not yours) item. This doesn't really have any bearing on whether the owner of a store putting up a sign with a specific price for a specific item that a customer can directly take possession of constitutes a binding offer.
by 960design | 2025-12-07 21:15:41+00:00
Claude argued with me about the quadratic equation the other day. It vehemently felt a -c was required whereas a c was the correct answer. I pointed this out showing step by step and it finally agreed. I tried Grok to see if it could get it right. Nope, the exact same response as Claude, but Grok never backed down; even after the step by step explanation of the maths.
by twerka-stonk | 2025-12-07 21:17:55+00:00
I do like the blind estimation aspect, but I don’t like:

* the arbitrary usage of the Fibonnaci sequence

* a non-clear conversion from complexity to time. Complexity and time aren’t always correlated. Some things can be easy but take a long time. Should that be a 1 or a 5?

Let’s just cut the layer of terminology, in this difficult task, and estimate in units of time directly.
by zelphirkalt | 2025-12-07 21:18:19+00:00
If those employees were working in a vacuum, then sure, but in reality they are not.

Employees have bosses and those bosses have bosses, and those bosses have bosses in the US. If not direct bosses, then at least people higher up in the context of all of Microsoft, who can pull strings, criticize them, categorize them as unreliable, and make their life hard, or even bring into motion that they are made to give up their position or are let go. Most people don't want a hard life at the job and be bullied. It is likely, that people joining Microsoft don't have the strongest moral compass anyway, so them sticking their neck out for European data protection, and losing what comfy life they have, including probably exceptional ...

Company politics are not to be underestimated. The question becomes who selects and vetoes higher ups in those sovereign clouds.

European governments cannot trust US companies, even when they have inner-EU parts, because influence from the US cannot be rules out.
by metalman | 2025-12-07 21:18:38+00:00
the numbers put the idea of total extinction of life on earth way out there in the relm of the improbable, and suggest that perhaps some living things will survive the expansion of our sun, when it inevitably turns into a red giant, or at least till some later phase in that process it also means that irrate alliens looking to rid the universe of earth life, have got there work cut out for them
by strcat | 2025-12-07 21:18:43+00:00
We'll have the same update pace for security updates and major releases with the devices we're working on with our OEM partner. That's not specific to Pixels. It will in fact be easier to support the devices with the OEM partner due to them planning on doing most of the device support work including getting MTE working properly. For Pixels, we have to do a lot of work on device support, while for non-Pixels that work is going to be done for us. Our OEM partner is actively getting what's needed from Qualcomm including getting them to fix things. We're in direct contact with Qualcomm ourselves and plan to deploy new security features they've developed which are not yet available elsewhere.

Samsung and Google ship a small subset of the security preview patches early while we're shipping all of them. We're doing a lot of work to integrate and test those. We also have to port them from Android 16 to Android 16 QPR1 and now Android 16 QPR2. It seems they might start providing them for Android 16 QPR2 themselves but for now we had to port them for our QPR2 releases.

We also have to test and fix all the issues caused by us having much more advanced exploit protections including full system hardware memory tagging with a more advanced implementation. We uncover MANY upstream memory corruption bugs we need to fix. Features like Contact Scopes, Storage Scopes, 2-factor fingerprint authentication, etc. are not always easy to port to new versions. We still don't have early access to upcoming quarterly and yearly releases but we'll get it and then we can have day 1 updates for those instead of it taking days for an experimental release and around 1-2 weeks before it reaches the Stable channel. We intend to do much better than we are now, we just need the same early access OEMs have but don't actually use to make day 1 releases for major OS updates.
by samdoesnothing | 2025-12-07 21:19:16+00:00
I'm sure a lot of people and companies got pwned and they aren't going to disclose it. There are chrome extensions that passively polls sites for the vulnerability, and since the vulnerability is so simple to exploit and leaves virtually no trace...

My gut feeling is that we are going to be feeling the consequences of simultaneous enshittification of software, the mounting complexity of our systems, and AI enslopification combine to create far more vulnerabilities in the future. The only defence is to adopt simple systems and software.
Show HN: OpenFret – Guitar inventory, AI practice, and a note-detection RPG
by openfret | 2025-12-07 21:19:33+00:00
I'm a solo dev and guitarist who got frustrated juggling separate apps for tracking gear, practicing, and collaborating.

What it does:

1) Smart inventory – Add your guitars, get auto-filled specs from ~1,000 models in the database. Track woods, pickups, tunings, string changes, photos.

2) AI practice sessions – Generate personalized tabs and lessons based on your practice history. Rendered with VexFlow notation.

3) Session Mode – Version-controlled music collaboration (think Git for audio). Fork tracks, add layers, see history, merge contributions.

4) Musical tools – Tuner, metronome, scale visualizer, chord progressions, fretboard maps. Last.fm integration for tracking what songs you're learning.

5) Guitar RPG – Fight monsters by playing real guitar notes. Web Audio API detects your playing. 300+ hand-crafted lessons from beginner to advanced.

What you can try without signing up: 1) The RPG demo is completely free, no account needed: https://openfret.com/game — just click "Start Battle" and play. It's capped at level 10 but gives you a real feel for the note detection.

The full platform (inventory, AI practice, sessions) requires Discord or magic link auth.

Current state: Beta. Core features work, actively adding content. The RPG has 300+ lessons done with more coming. Full game is $10 one-time, everything else is free.

Why I built it: I have a basement music setup and wanted one place to track when I last changed strings, get practice material that adapts to what I'm working on, and collaborate without DM'ing WAV/MP3 files.

Tech: Next.js (T3), Web Audio API for pitch detection, VexFlow for notation, Strudel integration for algorithmic backing tracks, Last.fm API.

Happy to answer questions about the AI tab generation, note detection, or the Git-style collaboration model.
by jonas21 | 2025-12-07 21:19:36+00:00
> their huge customers will be able to produce ASICs hat will be faster and cheaper to operate than their GPUs

Why? NVIDIA is better positioned to produce faster and more efficient ML ASICs any of their huge customers (except possibly Google). And on top of that, the fact that there is a huge library of CUDA code that will run out of the box on NVIDIA hardware is a big advantage.

Arguably, this shift has already happened. Modern NVIDIA datacenter GPUs, like the H100, only bear a passing resemblance to a GPU -- most of the silicon is dedicated to accelerating ML workloads.
by skeeter2020 | 2025-12-07 21:19:44+00:00
This is essentially t-shirt sizing without all the baggage that comes from time. Your boss is trying to use the relative magnitude but it's inevitable that people will (at least internally) do math like "7 day tasks is the same as one week task", or worse over-rotate on the precision you get from day/week/month, or even worse immediately map to the calendar. Suggestion: don't use time.
by sky2224 | 2025-12-07 21:19:54+00:00
The biggest thing to be aware of honestly is the difference between .NET Framework and .NET Core.

Essentially, .NET Core has dropped the "Core" moniker. It's just .NET (I tend to refer to it as .NET proper when differentiating between Framework). This change began with .NET 5.0.

If you're starting from scratch, you will want to build everything using .NET now. Do not use .NET Framework unless absolutely necessary. Probably the most common reason you'd be stuck using .NET Framework is because your project is reliant on some driver or library that isn't making the transition to .NET proper. If you're in this situation, you should try to move as much stuff as you can to be on .NET proper and then use .NET Standard, a middle man library Microsoft developed for this exact situation, to allow for cohesion between .NET Framework and .NET proper.

Otherwise, in terms of specific "modern" coding practices? I'd say to pay attention to modern OOP approaches in general. Dependency Injection seems to be used everywhere now. Also, be careful using Reflection. People get a lot done with it really fast, but if it starts being used for more than just attribute inspection and you're doing some crazy shit with it, that's usually a sign of a bigger architectural issue.

Lastly, review LINQ if it's been a while for you. Specifically, understand deferred execution as a lot of people shoot themselves in the foot by tacking on a `.ToList()` and enumerating over a massive collection they shouldn't be enumerating over.

C# has changed a lot, but it's more subtle than the way a lot of other languages have progressed. Mostly just new features that you can survive very easily without. C# 14 is bringing some interesting changes though, but that's still pretty new, so I'd see the release notes on that if you're interested.
by shantara | 2025-12-07 21:21:14+00:00
I’m using Syncthing, though not the Android version. After reading the forum thread, the whole situation seems to be mishandled pretty badly. I wouldn’t feel comfortable entrusting my sensitive data to them after such a sketchy handover process. As mentioned by the others there, it’s suspiciously similar to browser extensions being sold to the data mining / adtech companies.