HNHacker News
TopNewBestAskShowJobs

publicdebates

706 karma · joined December 4, 2025

Pointlessness overbearing.
submissionscomments
publicdebates··on I program without syntax highlighting
I used to love rainbow brackets when they became popular about 10 years ago. Now I find that I almost never care about bracket color, and often it's distracting and I'd prefer them to be the same color.
publicdebates··on I program without syntax highlighting
As usual, I read the code sample before reading the article:

    for (i=0;i<3;++i) {
      /* Do initialisation here!
      niftyConfig = 1;
      funkyValue = 2;
    }
There's no way it's mentally just as easy for me to find that error without syntax highlighting.

It may be just slightly more difficult, but then it's death by a thousand paper cuts if I'm reading code for 6-12 hours a day.

publicdebates··on Many hells of WebDAV
I once implemented JavaScript's new async-for in plain Objective-C for a WebDAV app that I wrote for a client, about 15 years ago. I was so much smarter back then than I am now. Does this happen to everyone? You just go downhill? Anyway I'm sure there were complex edge cases of WebDAV that I missed, but it worked really well in all my tests, and my client never complained about it.
publicdebates··on C Is Best (2025)
Sure, Rust can compile old code. But you can't upgrade that old Rust code to new Rust code very easily.

The fact that C was effectively "born old" means you can take a C89 program and compile it as C23 and it should simply work, with extremely minimal changes, if any.

That's a killer feature when you're thinking in decades. Which SQLite is.

publicdebates··on C Is Best (2025)
> Rust needs to mature a little more, stop changing so fast, and move further toward being old and boring.

One of the very strange things about C is that it is designed by a committee that is inherently conservative and prefers to not add new features, especially if they have any chance of breaking any compatibility. This seems necessary before Rust ever becomes an old, boring language.

But I don't see Rust ever going in such a direction. It seems fundamentally opposed to Rust's philosophy, which is to find the best solution to the problems it's trying to solve, at any cost, including breaking compatibility, at least to some degree.

publicdebates··on It's hard to justify Tahoe icons
I don't disagree with much of what you said. Form and function have to be married harmoniously, which inherently increases beauty. When form decreases function, so does beauty dissipate. And I think GUIs have gone in that direction. They have not maintained the principles that would help bring proper balance.
publicdebates··on It's hard to justify Tahoe icons
I wonder how much of it is the seeds of principles of beauty being planted, then watered over time, and finally sprouting at a ripe age.

For example, I also am old enough to have used DOS before Windows 3.1 came out, which was my first GUI. When Windows 95 came out, it was a clear improvement, but retained the same principles as Windows 3.1 began. Windows 98 iterated on it, and Windows 2k perfected it in my eyes.

So that when Windows XP came out, it abandoned the principles, going for a look that felt cartoonish and childish to me, but for others was perhaps casual and inviting. It was during this time that I discovered Compiz and other Linux eye candy, and although it abandoned the fundamental principles that Win 3.1 planted, it almost admitted this with pride, submitting a new set of principles altogether.

So when Windows Vista came out, clearly trying to compete in the arena of that new set of principles of beauty, I was ambivalent but mostly impressed. That's when I found out about Mac OS X, which Compiz et al. were clumsily imitating, and I fell in love with them, which I realized had perfected those principles before Microsoft and Linux even began to imitate them.

It almost seems like the same concept as the original purpose of MMA (mixed martial arts). There is a perfection particularly to a set of principles. You can be the best at boxing, or the best at Brazilian Jui-Jitsu, and it's almost comparing apples to oranges because they're so fundamentally different that they don't actually mix well (the current UFC being proof that the experiment has failed and created a monster).

It's the same reason movies exist like Home Front: it's that age old question, "who would win if ...", in this case London gangsters vs Southern American gangsters. Or Freddy vs Jason, or Alien vs Predator. I wish I could remember more, because those are some of the most interesting types of movies, with different real human cultures being pit against each other. Like David and Goliath, the top champions of two cultures facing off for the world to see.

I think MacPaint is one of the most beautifully designed GUIs ever created.

publicdebates··on It's hard to justify Tahoe icons
I don't trust such books and research. The fundamental thing in question here is what makes Beauty beautiful, which I think is indefinitely mysterious and perpetually elusive. If anyone claims to have grasped at a few concrete conclusions or tangible expertise, I think they're just trying to sell it. The concepts of beauty apply equally to all forms of art, which includes GUIs.

I do agree that Steve was somewhat revolutionary in this, bringing his personal quest for beauty into early GUIs through his (overly) perfectionistic command. I remember a decade or more ago being struck by just how genius it was for him to bring professional typography into personal computers, complete with kerning and everything.

publicdebates··on I switched from VSCode to Zed
Not GP, but he's absolutely right, it's been pissing me off for years now. Only thing I can remember off the top of my head is nested selectors still not highlighting properly. They partially fixed this a few months ago but that's it. I guess we're all waiting on GHCP to prioritize and fix it now?
publicdebates··on The unbearable joy of sitting alone in a café
I wonder how many of them have read xkcd's Ten Thousand.
publicdebates··on A spider web unlike any seen before
Or maybe Charlotte's Web by E. B. White.
publicdebates··on It's hard to justify Tahoe icons
I used to be a die hard UI perfectionist. I thought there were perfect UIs, and that you could go more or less away from or toward perfection with choices.

But lately, over the past 5 or 10 years, it seems to me that perfection in UI is just as arbitrary and mutable as people's tastes and preferences.

It's hard to admit it to myself, but I think my love for the early Mac OS and Windows 9x UIs was mere puppy love at first sight, and now is simply nostalgia.

To me, it seems very related to the idea of how to fall in love with a person. There seems to be nothing you can measure it against. You simply either do or do not feel a connection with the person, an inexplicable infatuation. And if you do, then that love cools and settles into something more subtle but just as real over decades, until you're holding hands on your deathbeds. Yet I can't for the life of me figure out how it begins, or what its metrics are, or where its catylists come from. I suppose this is what Randall Monroe wondered all those years ago when he came up with his blog's subtitle. If only I could ask him, perhaps I would have the answers to everything.

publicdebates··on 2026 will be my year of the Linux desktop
They tried fixing that by creating widgets, but effectively had the same problem. Then they tried fixing that by making them always present, but then you just lose desktop space. I guess it makes sense if you have two monitors, but at that point, why not just have the full apps open in those same spots? Widgets are a great idea that I wish we could make useful somehow.
publicdebates··on 2026 will be my year of the Linux desktop
Am I missing something, or hasn't Microsoft done this since Windows 9x with apps like Explorer and Control Panel heavily using web views internally rather than "native" WinAPI GUIs?
publicdebates··on Uxn32: Uxn Emulator for Windows and Wine
I never thought I'd get nostalgia for the UI of Windows XP of all things, that grotesque bastardization of the pure simplicity and utilitarian design perfected by Windows 98. But here we are.
publicdebates··on Unix v4 (1973) – Live Terminal
What do you think about GOG?
publicdebates··on Unix v4 (1973) – Live Terminal

    Session Error
    Rate limit exceeded: 10 per 1 minute
publicdebates··on Ask HN: Who wants to be hired? (January 2026)
Location: remote only

Remote: yes, only

Willing to relocate: n/a

Technologies: 20 years professionally in C, C#, C++, ObjC, Swift, Java, JavaScript, TypeScript, Ruby, Python, Lua, Clojure, Julia, Chicken Scheme, Go, PHP, Rust, Assembly and more!

Resume: c̶l̶a̶s̶s̶i̶f̶i̶e̶d̶

Email: contact@lowkpro.com

Recompense: No salary or benefits; contractor only; $950/hour

LLMs: Will not use AI or help build AI, on ethical and philosophical grounds

publicdebates··on Happy Public Domain Day 2026
Most ironic find:

Catalog of Copyright Entries, New Series. Part 1, Group 2: Pamphlets, Leaflets, Contributions to Newspapers or Periodicals, Etc. Maps 1929: Vol 26 No 1-12

https://archive.org/details/catalogofcopyri261libr

publicdebates··on Happy Public Domain Day 2026
For 67k more:

https://archive.org/details/texts?sort=-downloads&and%5B%5D=...

publicdebates··on A production bug that made me care about undefined behavior
It's the same as this:

    int random() {
        return 4; // chosen by dice roll
    }
Technically correct. But not really.
publicdebates··on A production bug that made me care about undefined behavior
In this example, the human author clearly intended mutual exclusivity in the condition branches, and this optimization would in fact destroy that assumption. That said, (a) human intentions are not evidence of foolproof programming logic, and often miscalculate state, and (b) the author could possibly catch most or all errors here when compiling without optimizations during debugging phase.
publicdebates··on A production bug that made me care about undefined behavior
To those who are just as confused as me:

Compilers can do whatever they want when they see UB, and accessing an unassigned and unassiganble (file-local) variable is UB, therefore the compiler can just decide that *foo is in fact always 42, or never 42, or sometimes 42, and all would be just as valid options for the compiler.

(I know I'm just restating the parent comment, but I had to think it through several times before understanding it myself, even after reading that.)

publicdebates··on High-performance C++ hash table using grouped SIMD metadata scanning
Nice to see people focusing on efficiency instead of web/electron bloat.
publicdebates··on You can make up HTML tags
Right, and that proposal was withdrawn, and a new one, the one we have now, was proposed based on lessons learned from (or inspired by?) React/Vue. Maybe there was a common ancestor or general consensus about the techniques floating around in the community before proposal #1, but it was clearly inferior and flawed, and #2 was the one I'm talking about.
publicdebates··on Static Allocation with Zig
> a technique known for 30+ years in the industry have been

Knowledge sharing with next generations is one of those very tricky things.

For one thing, how would I know where to find this? What book? What teacher? There are so many books, must I read all of them? What if my coworkers awaren't aware of it, how can they share it with me?

Also, an old saying goes, if you're good at something, never do it for free. This isn't exactly a trade secret, but how many people blog about every advanced technique and trick they know? I blogged about how to create real C function pointers from Lua closures, as a way to advertise for my product, but that could very well have been kept a trade secret (and probably should have, as I got 0 sales from that blog post still). Why would anyone want to share this "tiger style" knowledge with newer generations with no personal benefit? Aren't they incentivized to use it secretly, or maybe write it in a book, or blog about it for advertising?

publicdebates··on You can make up HTML tags
As far as I can tell, the whole web components umbrella came into being because React/Vue got really popular, and the spec/browser people said hey let's bring the core common denominator of those into native HTML/JS, as if it would bring us closer to having native Vue/React. Which of course never happened, partly because HTML is fundamentally incapable of having anything but string attribute values, and partly because reactive DOM is basically a hard problem that can't or maybe shouldn't be solved natively.
publicdebates··on Mruby: Ruby for Embedded Systems
I've used Ruby and Lua for about 15 years now, and looked at mruby (and possibly used it, I don't remember) about 10 years ago. Having little else to contribute to society anymore, perhaps my insight on these two languages might be of some use to some.

IIrc, Matz designed Ruby as a pet passion project, and its design was reactionary against excessiveness found in other languages, hence its minimalism in arguably excessive syntax and notation. Otoh, Tegcraf designed Lua out of pure necessity, adding only the features needed to satisfy its clients' needs.

In my opinion, necessity always leads to the better product than desire, hence C is still unbeat, having been formed under similar circumstances. Lua's C API is copied by nearly every other embeddable scripting language, including (I think) mruby. Yet they were the first to come up with it, a testament to their creativity under pressure.

Ruby (and mruby) takes the Smalltalk approach, and asks, what if everything was an object and every function call is a method call? Lua takes a less extreme approach, and merely asks, what if every data structure was built on a hashmap?

Other than that, Lua takes a very minimal approach, having break/goto but not continue, if/elseif but not switch, metamethods but not inheritance. It gets to 90% of the functionality of JavaScript with 10% of the spec and 1% of the code. You can read the entire Lua manual in one Saturday. You can read its grammar in under five minutes.

For all its cleverness, and as a price for its concise implementation and design, Lua is inconvenient to use. Hence the plethora of languages that compile to Lua and try to make it more convenient to use. One comes to mind but I can't remember or google the name successfully.

publicdebates··on Python 3.15’s interpreter for Windows x86-64 should hopefully be 15% faster
Important enough, or benefits them directly? I have no good guesses how improving Python's performance would benefit them, but I would guess that's the real reason.
publicdebates··on Hacker News front page now, but the titles are honest
"Show HN: I implemented generics in my programming language"

does not deserve the roast

"I built a language nobody will use just to learn generics"

It's not fair to assume the author didn't know how to implement generics before this project. It's also not fair to assume the project won't gain traction. Zig and Rust started out small too! This just goes a little too far for my tastes.

← PreviousPage 6 of 7Next →