frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Storing Apache Iceberg Metadata in PostgreSQL

https://medium.com/@udaysagar.2177/storing-apache-iceberg-metadata-in-postgresql-a-custom-fileio-...
1•udaysagar•28s ago•0 comments

Ask HN: How are you hiring for remote roles in the era of AI?

1•keyraycheck•5m ago•0 comments

Microsoft Quantum Development Kit (QDK)

https://azure.microsoft.com/en-us/blog/quantum/2026/01/22/powerful-new-developer-tools-increase-t...
1•austinallegro•7m ago•0 comments

Show HN: ManagerList Is Now Live

https://managerlist.com
1•itsmiketu•8m ago•0 comments

Learning Low-Level Computing and C++ by Making a Game Boy Emulator – The Making

https://byteofmelon.com/blog/2026/making-of-gamebyte
2•todsacerdoti•8m ago•0 comments

Maintaining shadow branches for GitHub PRs

https://maskray.me/blog/2026-01-22-maintaining-shadow-branches-for-github-prs
1•todsacerdoti•8m ago•0 comments

See my friend Annie edit videos with her eyes

https://petewarden.com/2026/01/22/see-my-friend-annie-edit-videos-with-her-eyes/
1•gsky•13m ago•0 comments

Predict your distributed LLM training time before you burn GPU hours

https://github.com/DebarghaG/estimate-train-time
1•barthelomew•16m ago•1 comments

(claimed) Global regularity for the Navier-Stokes equations

https://arxiv.org/abs/2601.15685
1•zaikunzhang•16m ago•0 comments

Interfaces and Traits in C

https://antonz.org/interfaces-in-c/
1•ingve•22m ago•0 comments

Go Support for Playdate Handheld Compiler, SDK Bindings, Tools and Examples

https://github.com/playdate-go/pdgo
1•pjmlp•22m ago•0 comments

Show HN: AI Product Video Ads – Upload image and prompt → video ad

https://freyavideo.com/create/ad-generator
1•howardV•23m ago•0 comments

Epic and Google have a secret $800M Unreal Engine and services deal

https://www.theverge.com/policy/866140/epic-google-fortnite-android-unreal-deal-antitrust-settlement
2•gloxkiqcza•24m ago•0 comments

'Trump Has Rigged the 2028 Presidential Election'

https://bylinetimes.com/2026/01/22/trump-has-already-rigged-the-2028-presidential-election-us-def...
5•BerislavLopac•26m ago•1 comments

How to Win the First 60 Minutes of the Day

https://medium.com/@loganholdsworth/why-winning-the-first-60-minutes-of-the-day-is-the-best-thing...
3•worstmarketer•32m ago•0 comments

Command Line Interface Guidelines

https://clig.dev
2•aragonite•33m ago•0 comments

Korea's AI law requires watermarks on generated content

https://koreajoongangdaily.joins.com/news/2026-01-22/business/tech/Koreas-groundbreaking-AI-law-r...
3•BaudouinVH•37m ago•3 comments

Why External AI Reasoning Breaks Articles 12 and 61 of the EU AI Act by Default

https://zenodo.org/records/18346151
1•businessmate•41m ago•1 comments

Claude Skills for Marketing

https://maestrix.ai/skills
1•guidum80•45m ago•1 comments

A comparison of free credential and breach monitoring services for companies

https://github.com/infostealers-stats/Credential-and-breach-monitoring
6•jonpalanis•48m ago•0 comments

Proton Spam and the AI Consent Problem

https://dbushell.com/2026/01/22/proton-spam/
45•dbushell•50m ago•14 comments

Backseat Software

https://blog.mikeswanson.com/backseat-software/
1•kruuuder•51m ago•0 comments

Most countries on Trump's 'Board of Peace' banned from immigrant visas

https://thehill.com/policy/international/5702418-trump-board-peace-gaza-us-visa-ban-countries/
5•salkahfi•51m ago•1 comments

Open Source meeting companion I use every day

https://github.com/svenmalvik/vissper-oss
1•svenmalvik•54m ago•0 comments

The open-source release of Microsoft Fabric Extension for VS Code

https://blog.fabric.microsoft.com/en-us/blog/announcing-the-open-source-release-of-microsoft-fabr...
2•cchristensendev•58m ago•0 comments

New SpacemiT K3 RISC-V Chip Beats Raspberry Pi 5 in Early Benchmarks

https://www.cnx-software.com/2026/01/23/spacemit-k3-16-core-risc-v-soc-system-information-and-ear...
2•pojntfx•58m ago•0 comments

The abhorrent power of the photograph of a 5-year-old held by ICE

https://www.washingtonpost.com/style/2026/01/22/photo-minnesota-ice/
6•KnuthIsGod•1h ago•1 comments

ClickHouse PostgreSQL Powered by Ubicloud

https://www.ubicloud.com/blog/clickhouse-postgresql-powered-by-ubicloud
2•gouthamve•1h ago•0 comments

Show HN: TDAD - Open source TDD workflow that makes AI fix code until tests pass

https://github.com/zd8899/TDAD
3•zd8899•1h ago•1 comments

Selectively Disabling HTTP/1.0 and HTTP/1.1

https://markmcb.com/web/selectively_disabling_http_1/
2•todsacerdoti•1h ago•0 comments
Open in hackernews

Computer Architects Can't Find the Average

https://dgsq.net/2025-04-27-averages/
88•dgsq•9mo ago

Comments

rented_mule•9mo ago
Metrics can be useful when they are thoughtfully chosen for the context in which they are used. The more abstract or synthetic a benchmark is, the less context there is to inform such a choice. Said another way, metrics characterizing synthetic benchmarks inherit/expose one of the key problems of synthetic benchmarks - a lack of context.

In practical settings, the way to characterize performance will be more clear from context, often giving one (-ish) clear metric for each dimension you care about. For example, if an endpoint has a hard timeout of 100 ms, then it's pretty interesting to look at the percentage of real world requests that are faster than 100 ms. If the same solution is also used in a setting where throughput is more important than latency, then an additional metric is probably needed for that use case. Multiple metrics are needed for multiple use cases to capture trade-offs being made between those use cases.

hansvm•9mo ago
Figuring out which of two things is bigger is hard. The article lightly touches on the two main reasons:

- Sometimes the definition is complicated. E.g., I'd accept a computer 10x slower at most tasks if a particular small subset were sped up even 2x. No symmetric mean (geometric, arithmetic, harmonic, or otherwise) will appropriately capture that.

- Nobody agrees on the definition. Even for very regular workloads, parsing protobufs is very different from old-school ML is very different from reversing the endianness of an unaligned data fragment. Venturing into even more diverse workloads muddies the waters further.

The article basically gives up and says that the geometric mean is the least bad option because it has some nice properties (ones I don't think anyone cares about for this purpose...) and because it's what everyone expects.

That latter argument is at least based in something sound, but I think the real point here is that attempting to come up with a single definitive "speed" is foolhardy in the first place. The only point is to compare two architectures, but without a particular context in mind no such linear ordering exists, and that's before we get to the difficulties in defining it appropriately even when given a context.

atoav•9mo ago
Isn't this why benchmarking is used? You select some common payload and then use that as a realworld simulation of how your architecture performs with it.

Of course this comes with its own can of worms, like overfitting and such, but I could imagine a benchmarking solution that gives you a more granular look at which specific tasks an architecture performs well.

wffurr•8mo ago
Or even better just measure your actual workload.
raverbashing•8mo ago
Yeah

For the specific purpose of what the article presents, I feel something simpler like 10%/50%/90% times can be better (two systems that have times as 0.1/1/10 or 0.9/1/1.1 will have "the same average" but where one might be adequate the other one might not)

xpe•9mo ago
This kind of debate isn't that unusual, is it? To figure out what calculation to use, one has to made tradeoffs about desirable properties such as resilience to outliers, being bias-free, and/or having the best predictive performance in least-squared error. Bringing some grizzled statisticians into the conversation will probably clear a lot up. They are familiar with the pros and cons of various measures of central tendency.

In the era of multivariate models, machine learning, and AI, some of the classic wisdom from good-old linear modeling gets overlooked.

empiko•8mo ago
Ironically, AI research canonically uses arithmetic mean for averaging basically everything. Whatever suite of experiments you are running, somebody will sooner or later ask you to average them.
csdvrx•9mo ago
Sometimes, you can't find the average because it's undefined: it can happen with a Cauchy and a few other statistical distributions: the wikipedia page has a nice plot of how the first 2 moments don't converge https://en.wikipedia.org/wiki/Cauchy_distribution#History

When in doubt, don't use the mean: prefer more robust estimates, as even with degenerate statistical distributions, there are still some "good numbers to report" like the mode or the median.

And if you don't know statistics, just use a plot!

FilosofumRex•9mo ago
Indeed, the best averaging method depends on the underlying probability distribution from which data is drawn. Arithmetic is best for normal whereas geometric is better suited for lognormal distribution, and as the above comment suggests average is meaningless for most power law distributions where exponent is less than 2.

However, When all else fails, define your own Von Neumann entropy. Figure out how often you compile GCC, FFT, or video compression, then compute probabilities (ratios) and multiply by logarithm of speedups for each use case. Sum them up and report it as machine/architecture entropy and you'll win every argument about it.

code_biologist•9mo ago
I agree with your point, but it is funny to think about true consumer workloads: I... mostly JIT and run Javascript, layout algorithms, and whatever compositing cannot be offloaded to the GPU.
gitroom•9mo ago
Yep, I always end up using a bunch of graphs because picking one number feels off every time. Honestly, stats can get slippery real fast if you don't watch it.
SyzygyRhythm•9mo ago
I disagree with the article's claim that the geometric mean lacks physical meaning.

Say you have two benchmarks with different units, frames/second and instructions/second. You can't take the arithmetic mean of these unless you divide by some baseline first (or a conversion factor).

But the geometric mean has well-defined units of (frames * instructions)^.5/second. And the reason you can divide by another geometric mean is because these units are always the same.

Having coherent units isn't exactly the same as "physical meaning", but it's a prerequisite at the least.

jampekka•9mo ago
Geometric average is just estimating the mean of logarithmic units. Units of measurement are arbitrary, and justification for using logarithmic units for statistical purposes can be easily made with distributional considerations. E.g. durations are bounded to be positive, so there will be at least some skew in the distribution (although this can be negligible in practice).
klodolph•9mo ago
Physical interpretation of geometric mean… you have a collection of multiplicative speedups, and some of them apply to any given workload. I think the geometric mean falls out of the resulting statistical distribution in a natural way but I’m sleep-deprived at the moment and can’t write out the math. Like, in this distribution geomean is the median speedup.

Think of the case with two values, 2.00 and 2.42. Decompose it into three speedups… 2x, 1.1x, and 1.1x. The speedup 2x happens with probability 1. Each of the 1.1x speedups happen with probability 0.5. The geomean is 1 2x speedup and 1 1.1x speedup, giving 2.2x.

There are many such decompositions, that one is not unique. Exercise for the reader to show which conditions give you the geometric mean and explain why that is reasonable… I’m terribly sleep-deprived at the moment and this is where I stop.

There is of course no correct choice of mean here, just a bunch of different choices with different interpretations justifying them.

baq•9mo ago
Your favorite stock doubled in 6 months. What was it growing on average in a day?
fedeb95•8mo ago
it seems pretty similar to voting problems in political elections. No matter the algorithm you choose, someone will complain.
HelloNurse•8mo ago
Given only speedups any formula to combine them is meaningless, because the real question involves a concrete workload: would the performance of what I'm going to do with my computer improve enough to justify the cost of improving it?

At the very least, weights for each benchmark task are needed; complications of the cost model (beyond a binary old system/new system comparison) are also likely.

Measuring performance improvement by speedup of throughput is also often naive, since there are other dimensions (like power and latency) and complex requirements.

LeonB•8mo ago
An “average” (whether a mean/ median etc) is a very lossy compression algorithm.

You’re attempting to describe a whole series of numbers with just one (or two) numbers.

Trying to come up with a good general purpose way to reduce/compress/aggregate data via a lossy algorithm is intractable.

While that all might sound obvious, it can be very hard to internalise this.

(And that’s before getting into the motivated reasoning that biased actors [aka normal people] will use to preference one lossy algorithm over another)

amelius•8mo ago
You can use an increasing number of statistical moments.

https://en.wikipedia.org/wiki/Moment_(mathematics)

The arithmetic mean is one of them, which would be an argument in favor of it.

john-h-k•8mo ago
I don't think it is an argument in favour of it.

arith-mean = E[x] , the first moment of x geo-mean = exp(E[log x]) , so log geo-mean = first moment of log x

They are both equivalent in amount of information preserved, but arithmetic preserves additive structure whereas geo preserves multiplicative structure

amelius•8mo ago
I didn't want to imply that there is a loss of information. Yes, it's one level up in the hyperoperation chain, I suppose, but what I meant is that it's not a typical way of doing statistics, especially the higher moments.
amelius•8mo ago
I'm using median because it is more robust against outliers.
aabhay•8mo ago
But you often want a number that’s more correlated with the average. Imagine a distribution that has 80% very low values and 20% insanely high values. The median won’t capture changes in that 20% region at all. So you could see numbers not changing when in fact they may have very dramatic changes
kibwen•8mo ago
Averages are the mind-killer. Don't show me the average, show me the distribution. Any time that you present an average over a data set that isn't approximately a normal distribution, you're committing statistical malpractice.
jihadjihad•8mo ago
> Don't show me the average, show me the distribution.

Put another way, don't give me a measure of center (mean) without a corresponding measure of spread (variance/standard deviation).

Providing a measure of center for something that is approximately normal doesn't obviate the need for a measure of spread--you could have two distributions with the same mean but wildly different spread of results due to variance.

cake-rusk•8mo ago
I think the GP wants to see the actual distribution graph.
10000truths•8mo ago
Yes, single scalar values tell you nothing useful if you have no a priori knowledge of the shape of your distribution. Mean and variance are meaningless figures if your distribution is multimodal, for example. If you truly have to compress the distribution into a few numbers, then the best thing to do is to represent it as a series of quantile values. In cases where the distribution is unknown, evenly spaced quantile values are a good start.
cantrecallmypwd•8mo ago
This is the underlying flaw of Ground News and both-sides-ism shifting the Overton Window right.
gku•8mo ago
arithmetic mean of percentages = terrorism
tveita•8mo ago
This is very relevant for compiler optimization and video codecs as well - both involve testing changes on lots of small benchmarks. Almost any change will hurt some benchmarks and help others. Maybe one benchmark improves a lot while causing a small slowdown on many others. The overall improvement for any one change can be minuscule, less than one percent. And yet if you keep doing these small improvements it adds up, hopefully to the point of improving every benchmark over time.
mleonhard•8mo ago
The linked paper has some tables that explain why this matters: How not to Lie with Statistics: The Correct Way to Summarize Benchmark Results https://dl.acm.org/doi/pdf/10.1145/5666.5673