frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

SectorC: A C Compiler in 512 bytes

https://xorvoid.com/sectorc.html
69•valyala•3h ago•13 comments

Brookhaven Lab's RHIC concludes 25-year run with final collisions

https://www.hpcwire.com/off-the-wire/brookhaven-labs-rhic-concludes-25-year-run-with-final-collis...
21•gnufx•2h ago•9 comments

I write games in C (yes, C)

https://jonathanwhiting.com/writing/blog/games_in_c/
116•valyala•3h ago•90 comments

Speed up responses with fast mode

https://code.claude.com/docs/en/fast-mode
39•surprisetalk•3h ago•46 comments

Software factories and the agentic moment

https://factory.strongdm.ai/
79•mellosouls•6h ago•150 comments

The F Word

http://muratbuffalo.blogspot.com/2026/02/friction.html
21•zdw•3d ago•0 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
141•AlexeyBrin•9h ago•26 comments

Stories from 25 Years of Software Development

https://susam.net/twenty-five-years-of-computing.html
89•vinhnx•6h ago•11 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
847•klaussilveira•23h ago•255 comments

First Proof

https://arxiv.org/abs/2602.05192
62•samasblack•5h ago•50 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
1084•xnx•1d ago•617 comments

Al Lowe on model trains, funny deaths and working with Disney

https://spillhistorie.no/2026/02/06/interview-with-sierra-veteran-al-lowe/
60•thelok•5h ago•9 comments

Reinforcement Learning from Human Feedback

https://rlhfbook.com/
90•onurkanbkrc•8h ago•5 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
227•jesperordrup•13h ago•80 comments

Start all of your commands with a comma (2009)

https://rhodesmill.org/brandon/2009/commands-with-comma/
510•theblazehen•3d ago•188 comments

Microsoft account bugs locked me out of Notepad – Are thin clients ruining PCs?

https://www.windowscentral.com/microsoft/windows-11/windows-locked-me-out-of-notepad-is-the-thin-...
39•josephcsible•1h ago•37 comments

We mourn our craft

https://nolanlawson.com/2026/02/07/we-mourn-our-craft/
314•ColinWright•2h ago•367 comments

Show HN: I saw this cool navigation reveal, so I made a simple HTML+CSS version

https://github.com/Momciloo/fun-with-clip-path
25•momciloo•3h ago•3 comments

Coding agents have replaced every framework I used

https://blog.alaindichiappari.dev/p/software-engineering-is-back
248•alainrk•8h ago•397 comments

72M Points of Interest

https://tech.marksblogg.com/overture-places-pois.html
34•marklit•5d ago•6 comments

France's homegrown open source online office suite

https://github.com/suitenumerique
604•nar001•7h ago•265 comments

The AI boom is causing shortages everywhere else

https://www.washingtonpost.com/technology/2026/02/07/ai-spending-economy-shortages/
175•1vuio0pswjnm7•10h ago•242 comments

Selection Rather Than Prediction

https://voratiq.com/blog/selection-rather-than-prediction/
11•languid-photic•3d ago•4 comments

A Fresh Look at IBM 3270 Information Display System

https://www.rs-online.com/designspark/a-fresh-look-at-ibm-3270-information-display-system
45•rbanffy•4d ago•9 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
123•videotopia•4d ago•37 comments

History and Timeline of the Proco Rat Pedal (2021)

https://web.archive.org/web/20211030011207/https://thejhsshow.com/articles/history-and-timeline-o...
20•brudgers•5d ago•4 comments

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
28•sandGorgon•2d ago•14 comments

Where did all the starships go?

https://www.datawrapper.de/blog/science-fiction-decline
90•speckx•4d ago•102 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
208•limoce•4d ago•115 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
282•isitcontent•23h ago•38 comments
Open in hackernews

Meta-analysis of three different notions of software complexity

https://typesanitizer.com/blog/complexity-definitions.html
109•ingve•7mo ago

Comments

perrygeo•7mo ago
I respect all three authors deeply but this is my first time reading Tellman's take. His idea that "simplicity is not intrinsic ... Simplicity is a fitness between software and our expectations" has a very nice ring to it.

Contrast that with Hickey's notion of simplicity as an objective count of interleaved concerns or "folds". The quibble with this is, how do you delineate the concerns? Depending on your style and knowledge of the system, you'll get a different number. So it's hard to call it objective.

Tellman's definition is nice because it acknowledges the subjectivity, and puts it front and center. IOW the "style and knowledge of the system" form a mental model of the software system. What's important is not the cardinality, OR the interleaving. It's the ability for that model to make good predictions about the software's behavior. Accurate model held in the minds of humans that operate it == simple software.

motorest•7mo ago
Quantifying software complexity is still largely an open problem. There are approaches that focus on quantifying but are arguably of limited use due to their disconnect with mental models, and there are approaches that focus on evaluating mental models but can't be objectively quantified. The best output from the latter group is that they can serve as guidelines on how to make simple software systems,and how to keep them simple.
chii•7mo ago
The hickey definition is from the POV of the engineer - the creation of software with simplicity. Code that is simple, doesn't necessarily result in a piece of software that is simple for the end-user.

The tellman's version is for the end user - simplicity of use, by the user, with their existing expectation, culture and pre-knowledge. It's basically describing skeuomorphism in software (but not limited to just UI). It might be enormously complicated to create for the engineer, while it remains simple for the end-user.

prospero•7mo ago
Show me a software developer who isn’t an end user for someone else’s code.
wtetzner•7mo ago
This feels like it missed the point.

Hickey's approach is relevant in how the software is constructed, and Tellman's is relevant to the user experience. Both approaches are useful for a single application.

prospero•7mo ago
My point is that the creator/user dichotomy exists at every level of software.
zem•7mo ago
if you think of the "end user" as the next person to work with the code, tellman's version is the ideal of encapsulation. some problem might be intrinsically hard to solve in terms of expressing it in code, but the end product could still be simple to work with given a properly encapsulated design
gsf_emergency•7mo ago
Simplicity is a fitness between software and beauty

Pros:

1) hints that software is also about objective truth

2)

Cons:

readthenotes1•7mo ago
I read a research article long ago that said that most of the complexity measures investigated at the time were highly correlated with loc.

For example, it's nice to measure McCabe cyclomatic complexity, and it generally rings true, but if you can't be bothered - just look at LOC and you'll get pretty close

n0n0n4t0r•7mo ago
For those who will stumble as me: Loc = lines of code. (He he, we were talking about complexity, weren't we?)
0xbadcafebee•7mo ago
Yes, in the same way that large forces are highly correlated with bigger things. You don't have to know anything about design or engineering to know that an 18-wheeler will deal with larger forces than a sub-compact car. Similarly, a whole lotta software is gonna be more complex.
_benton•7mo ago
I like Ousterhout's the best because I think it's the most concrete out of the three. The other two are more subjective imo, of course still very useful and important.

Although I think "dependency" is an overloaded term. There are dependencies as in libraries or shared code, and then there are "dependencies" which are like assumptions about other parts of the system. Hickey also mentions this when he talks about interfaces. If you break a class into two classes, but they both make assumptions about the other, in effect they are still the same class.

Perhaps another way to think about complexity is the number of assumptions baked into a system?

lioeters•7mo ago
When I think about a system that makes zero assumptions, I imagine it would have a large number of configuration points, where every single aspect of behavior and interaction must be specified explicitly instead of implicit and assumed. That sounds complex.

On the flip side, a counter-example comes to mind: automatic imports ("autoloading") in some languages, which makes things apparently simple but gets gnarly when things break unexpectedly. It makes a lot of assumptions about your intention, which is simpler when it works the way you expect. I'd prefer explicit imports every time, even if it's verbose (some might call "complex") because it makes no assumptions - every import is visible so it's actually simpler to understand.

layer8•7mo ago
It probably makes a difference whether it’s a tower of assumptions building on one another, or a disparate set of unrelated assumptions. Assumptions also aren’t equal: An assumption may be reasonable or unreasonable (likely to be violated), explicit or implicit.
0xbadcafebee•7mo ago
When you see the words "complex", "simple", and "easy", keep this in mind: these are words that exist to help humans communicate their difficulty in interacting with the world.

This whole post is a discussion of philosophy. There are three different ways you can think about software:

  - philosophy
  - science
  - function
The philosophy of software involves people trying to understand what software is. Humans have a desire for knowledge and understanding, and like to explain things they come into contact with and think about. A lot of the time there's no "objective" philosophical explanation, try as we might to find one. Despite that, many explanations in this realm end up being useful.

The science of software is computer science, which is more about math than anything else. This is the only place you're gonna find objectivity or consensus, because you can't really argue with a number. Discussions around CS are less poetic and more boring, and require a lot more knowledge, so you won't typically find these on HN.

The function of software is the day-to-day practice of writing and using software. This is the grunt work, the meat and potatoes. No need for philosophy or science. Just put the legos together and kick the tires. This is 99% of what 99% of software developers deal with. Most people don't think about the science or philosophy of the coffee they're ordering or the bike they're riding; they're just ordering it, riding it.

burakemir•7mo ago
Enjoyed this, but looking at these from manager decision scenario is of course going to bias towards the more subjective.

For a different scenario, imagine you operate a large distributed system and have been paged at 3 am because there is a problem. Besides taking steps to contain the fallout, you want to quickly locate the error and take steps to prevent this stuff from ever happening again.

Unlike a hiring decision, you want to propose measures such that a large number of people get to agree that the state of affairs will improve. It is a truism that we don't want software to fail, so considering expectations may not necessarily help here, and rationality would suggest to strive to achieve an "objective" improvement - and one that does not make the system harder to understand or invite new, different failures.

So all in all, I enjoyed this advocacy of Tellman's perspective, but it does not always seem appropriate to apply it and more meta than the others.

redhale•7mo ago
> I reached out to Tellman before writing this post for some clarifications.

Ironic!

adityaathalye•7mo ago
I like to think of software complexity in terms of the rocket equation [1].

More generally, I imagine complexity as a dynamic multi-dimensional phenomenon, operating across time and space. The more complex a phenomenon is, the more it resists explanation. Static systems made of many many parts (fractals, amorphous materials etc...) can be simpler than dynamic systems made of very few parts (three body problem).

Behaviour makes all the difference [2].

[1] https://www.evalapply.org/posts/software-debt/index.html#sof....

Quoting oneself...

> Complexity is to software what mass is to a rocket; the hard limiting factor of growth in any dimension you choose to measure (shipping velocity, headcount, revenue, cash flow, account expansion; anything). This is the sort of thing that demands tree-recursive, networked thinking we are not good at doing explicitly and deliberately. Something that our education actively disables by drilling us to think in simplistic linear terms in which correlation amounts to causation.

[2] In this sense, I'd argue that the biggest baddest LLM contains far less complexity than is contained in a living planarium.

Though an LLM is a black box demonstrating emergent-looking behaviour, it is a pure function, once calculated. The apparent emergence is a function of us not knowing what bit-twiddles of the input space will lead to what bit responses out the other end. The probability distribution being fixed, LLM input-output relationships are countable (a finite game), though the number is too big for us to count.

(P.S. I'm certain of all of this because of my quadruple Phds in Biology, AI, Physics, and Maths. Totally not an Internet Rando. I swear.)

amelius•7mo ago
Surprised it didn't mention orthogonality.