HNHacker News
TopNewBestAskShowJobs

caspper69

729 karma · joined July 29, 2018

submissionscomments
caspper69··on The inevitability of the borrow checker
It seems to me that exceptions have a bad rep.

Complaints range from too slow to hidden control flow to just not liking them.

I absolutely see the benefit in application code, otherwise you're error checking every function call.

On the other hand, I completely understand not using such a mechanism in kernel and driver code.

But Rust has decided against exceptions (which I actually believe were part of the original vision way back when, but please don't quote me), so now there's panics.

Everything is a tradeoff at some level.

caspper69··on Asahi Linux lead developer Hector Martin resigns from Linux kernel
The issue is it creates a downstream dependency on his code, even if it is 100% separate and separately maintained.

Once the wrapper is written, any breaking changes he makes in the DMA subsystem will, by their very nature, percolate downstream to the Rust wrapper and then to any Rust code that relies on it.

So basically from that point forth, he will always have to consider the ramifications of his changes on another group of developers, and deal with any backlash those may cause.

Is he being unreasonable? I tend to lean on the side of "yes," but I can certainly empathize with his point of view (not necessarily his approach, however).

caspper69··on Asahi Linux lead developer Hector Martin resigns from Linux kernel
I didn't downvote you, but I think you have a misunderstanding of a couple of things that are clouding your judgement: (1) the sheer size & inertia of the Linux kernel; there are tens of millions of lines of code, and even thinking about integrating another language will take time- lots of it; and (2) the distributed nature of its development and the diversity of its engineers; the community is not one that can be brought into an auditorium and made to change direction on a dime. Rust may have been around for 10 years, but no one was going to go all in on day one.

Further, this attitude of "Rust is clearly superior, so what's the holdup" is itself a holdup. You can't expect people to just spend their time learning a new language just because it's there, especially professionals with personal lives. These people do serious work, on a codebase that millions of people around the world, including virtually every tech company, relies on in some fashion. That's not a game. It's "serious business."

Serious business doesn't just chase something because it's new and hot and solves a certain class of problems (while simultaneously introducing its own set of problems).

Nothing is a panacea (yet, I suppose). This ship has been sailing for 30+ years. So many millions of man-hours have been put into it that people are justifiably cautious.

Now, all of that being said, I read the DMA maintainer's comments a few days ago and I thought he was being unreasonable, however, he is correct about the external dependency on his code. Even if the Rust DMA wrapper is kept completely separate, under a separate tree, he would still have to contend with the fact that any changes he makes might influence that wrapper and all the code that depends on it. So now, even if they claim to maintain the wrapper 100%, he is still beholden to all those downstream developers that rely on the Rust DMA wrapper's functionality, because if he breaks their code, he knows it'll cause a shitstorm. It's easy to say you'll maintain something 100% and the upstream guy doesn't have to worry, but time passes, things change, and all of a sudden, his hands get tied because it'll impact too many people. That's just reality.

Truth be told, I would eventually suspect some (or maybe many) Rust developers will migrate to a new project, because the rate of change is not going to be fast enough to ever satisfy them. And that's understandable. People want to make an impact, especially when contributing to an open source project (and doubly so on an unpaid basis).

Unfortunately I don't think Redox is the answer. UNIX and its clones/derivatives have had a long run, but anyone who wants to create the next big thing is not going to want just another clone of UNIX, even if it is in Rust.

We have seen the enemy. We understand the threat models and know far more about virtualization, containerization, sandboxing, etc., just by virtue of having had to dogfood these technologies for the last 25 years.

The next big thing (if there is one), will likely be something more like a cross between the Windows world (where ACLs rule the roost, and centralized management is built-in), UNIX with its CLI focus, process composition & command familiarity, and something like L4 which has unforgeable capabilities built in and a formally verified kernel.

Or we'll just go back to a modern day version of the UNIX wars, lol. Something, something about history rhyming.

caspper69··on The FAA’s Hiring Scandal
It’s not?

How non-racist of you (and non-presumptuous) to “eliminate someone’s privilege” based solely on the color of their skin. You do know there are poor and disadvantaged white people too, right? You might even be surprised that they outnumber black people.

And shame on you for even thinking you have the right to make such a call, or even entertain such a notion.

Talk about privilege.

caspper69··on What's happening inside the NIH and NSF
It might not be about race, per se, but when on the flip side the effect is to exclude people based on race or gender, it does kind of become about race, doesn’t it?

I don’t see DEI helping poor white males, for example, and there’s a lot of those in America. Even those whose families don’t own property and have never been to college.

caspper69··on What's happening inside the NIH and NSF
It is #4.

Social Security, Medicare/Medicaid, and defense are larger.

https://fiscaldata.treasury.gov/americas-finance-guide/feder...

caspper69··on What's happening inside the NIH and NSF
Seriously.

University of Michigan DEI is 1100+ employees strong (!!) at a cost of over $30M/year (the equivalent of 1,800 students’ worth of tuition), and they are launching an even bigger DEI 2.0.

https://www.detroitnews.com/story/opinion/2025/02/02/kabbany...

I am not a DJT fan at all, but stories like these are exactly what has people stark raving mad. I can’t really blame them.

While the stated goals are noble, the truth in many cases is that it is an excuse to exclude white males. And I expect downvotes, but you don’t have to look too far to see the truth.

caspper69··on Zig; what I think after months of using it
Having just gone down this road in C#, the way Unicode is now handled is via "runes".

Each rune may be comprised of various Unicode characters, which may themselves be 1-4 bytes (in the case of utf-8 encoding).

The one problem I have with this approach is that all of the categorization features operate a level below the runes, so you still have to break them up. The biggest drawback is that, at least in my (admittedly limited) research, there is no such thing as a "base" character in certain runes (such as family emojis- parents with kids). You can mostly dance around it with the vast majority of runes, because one character will clearly be the base character and one (or more) will clearly be overalys, but it's not universal.

caspper69··on Suspension of inbound parcels from China and Hong Kong
The parade of stupid continues unabated.
caspper69··on Roc rewrites the compiler in Zig
Depending on the semantics of the implementation, something like that would go a long way toward eliminating one of my biggest issues with Rust. For a low-level systems language, it is imperative to offer 2 things, which are currently a pain in Rust: (1) you must be able to "materialize" a struct at an arbitrary location; why? Because hardware tables exist at a specified location and are provided by hardware- they are not created or instantiated in the host language; and (2) be able to reference structs from other structs, which immediately triggers lifetime annotations, which begin to color everything they touch, must like async does to functions.

And I admit, I loathe the borrow checker. Ironically, I never really have problems with it, because I do understand it, it's just that I find it too limiting. Not everything I want to do is unsafe, and I hate the way it has made people think that if you really do know better than the borrow checker, you must clearly be doing something wrong and you should re-architect your code. It's insulting.

caspper69··on Roc rewrites the compiler in Zig
I went down a path researching the viability of region based memory management (a form of arenas).

A language based on such a paradigm can be provably memory safe, and regions can have their own allocators and optionally provide locking when the regions are shared.

This approach obviates the need for reference counting individual allocations (since regions are tracked as a whole), but it suffers from excess memory usage in the event of many short-lived allocations (i.e. they leak until the entire region's allocations go out of scope). But those types of memory accesses can be problematic in every systems language as they can eventually cause memory fragmentation.

That problem can be minimized using per-allocation reference counting, but that can incur a heavy performance hit. Although not having to use it everywhere could minimize the impact.

The plus side is you don't have to worry about borrow checking, so such a language can be more flexible than Rust, while still maintaining the memory safety aspect.

The question, as always, is: is the juice worth the squeeze?

Truthfully, I suspect no. The Rust train has left the station and has a decade head start. Even if it is a pain in the ass, lol.

caspper69··on Microsoft Is Dead (2007)
> Plenty of people either don't care, or gasp prefer Windows.
caspper69··on Microsoft Is Dead (2007)
As a bit of trivia (because web apps have clearly outpaced native/desktop for a long while now), who was it that invented the XMLHttpRequest that formed the basis for AJAX?

The Outlook Web team @ Microsoft; it shipped with IE5.

I have a very complicated history with Microsoft products, but they have introduced a lot of technologies over the years that we all use, even die-hard MS haters.

caspper69··on Microsoft Is Dead (2007)
> People who can choose what kind of computer they have will choose Apple over PC.

I have worked for an awful lot of people over the years, and given they could afford my services, I would guess they fall into the "people who can choose what kind of computer they will choose" category. Some could choose what kind of Ferrari they wanted, lol.

Your intuition is anecdotal. Plenty of people either don't care, or gasp prefer Windows. They are not stupid (I'm one of them, which I'd be happy to discuss with anyone, up to and including Mr. Torvalds).

An operating system is a tool to allow you to use your computer hardware and to run software. What fits your needs may not fit everyone's. There's nothing wrong with that.

caspper69··on Microsoft cracking down people upgrading to Windows 11 on unsupported hardware
Yes, it is slower (but it has gotten better), but now that I have a tabbed explorer, it's really hard to go back to the single-window per dir version.

I'm sure there's a performant 3rd party extension that would fit the bill, but I'm too lazy atm.

caspper69··on Microsoft cracking down people upgrading to Windows 11 on unsupported hardware
In the same boat with one of my user's 6950x. Ridiculously fast machine over its lifetime, and still doesn't trip on much.

Unreal that a 64GB machine with plenty of love to go around is getting the shaft.

I could muck about with a TPM module because the mobo has a header, and there are supported chips on the market, but the 8th gen requirement is a dealbreaker.

I'm trying to get this user to just go Mac, but it's like pulling teeth.

If they insist on a new machine, then maybe I'll make it my BSD box.

caspper69··on Popular Linux orgs Freedesktop and Alpine Linux are scrambling for new webhost
I'm sure this isn't relevant everywhere, but all my old colo hotspots within driving distance have started charging exorbitant $$ for egress, just like the cloud.

Still more economical than cloud, but it seems like this has become far too common.

caspper69··on The young, inexperienced engineers aiding DOGE
Truth be told, it's institutional money.

Turns out that having a 100% guaranteed return is attractive to a lot of large-scale investors, even if the yields don't make the money machine go brrr.

This is one thing that worries me about the current administration. A lot of trust is built on the fact that the US gov't has never defaulted on a debt in its history. I feel like some people don't place enough weight into what that really means for both ourselves and the world.

caspper69··on The young, inexperienced engineers aiding DOGE
Who holds the vast majority of the debt of the government of the United States?

Hint: it's not China, the UK or any other foreign government.

It's us silly. We owe ourselves. :)

caspper69··on The Economic and Fiscal Effects of the Trump Administration's Proposed Tariffs
My experience was markedly different.

With computing equipment from China, there wasn't enough margin for them to lower prices (or they just refused).

So we paid for all of it.

Read their wording carefully: some studies found...many cases to offset part of the cost...

This is weasel language that purports to convey a lot of meaning, but is (I feel intentionally) light on actual facts.

You can't just strong arm people into giving you a better deal. Logic would dictate that any company who is competetive in the market is already giving you their best price.

These tariffs are punitive and not even protectionist (which I could at least respect), because we don't, can't and/or won't manufacture the vast majority of the items we import from these countries.

P.S. citing easily observable facts are not a political attack. You have no idea what my political persuasion is, and frankly, just because I have a strong distaste for DJT doesn't mean I'm a Democrat. Some people know what a spade looks like, no matter who they pretend to be.

P.P.S. additionally, had this administration annonuced a comprehensive plan to make capital available to American industry to step up and onshore the manufacture of these goods, I would be singing a very different tone.

caspper69··on Global variables are not the problem
I'm sorry I just think we're going in circles.

A few posts up I clearly said use encapsulation and then mutate state via known methods. These would be just as traceable in your IDE/debugger.

Further, I have also repeatedly mentioned both module-level and thread-level "globals".

And I understand how concurrency works.

Take care.

caspper69··on Global variables are not the problem
I’m having a difficult time understanding the practical difference between watching an internal state object vs an external one. Surely if you can observe one you can just as easily observe the other, no?

Surely if you can mutate a state object and pass it, its state can get mutated equally deep within the codebase no different than a global, no?

What am I missing here? To me this just sounds like a discipline issue rather than a semantic one.

caspper69··on Global variables are not the problem
You know what helps manage all this complexity and keep the state internally and externally consistent?

Encapsulation. Provide methods for state manipulation that keep the application state in a known good configuration. App level, module level or thread level.

Use your test harness to control this state.

If you take a step back I think you’ll realize it’s six of one, half dozen of the other. Except this way doesn’t require manually passing an object into every function in your codebase.

caspper69··on Global variables are not the problem
This sounds like a design deficiency.

If you have something that should only run in testing, perhaps your test harness should set the global variable appropriately, no?

caspper69··on The Economic and Fiscal Effects of the Trump Administration's Proposed Tariffs
Not directly.

The only type of business relationship his feeble little mind understands is quid pro quo.

He is incapable of nuance and is unfit to lead.

This is a man who went broke more than once in the casino industry. He’s either stupid or corrupt, take your pick.

caspper69··on The Economic and Fiscal Effects of the Trump Administration's Proposed Tariffs
Not sure if serious.

It’s not like fentanyl goes through customs (legally) now. Not sure how tariffs will help.

Also not sure why we’re being punished because our government can’t or won’t stop fentanyl smuggling across the southern border. I don’t see how that’s my fault. Or yours for that matter.

Are we going to slap tariffs on Colombia too for all the coke that also doesn’t clear customs?

caspper69··on The Economic and Fiscal Effects of the Trump Administration's Proposed Tariffs
I don't want to insult you, but I do want to insult the NYT quotes you posted. Frankly, they are about the dumbest effing comments I've read in a while.

I will just pose a simple question- how many industries that trade in real goods have margins in excess of 25%?

How many industries do you know of that would keep going in the face of a 50% haircut to their profit?

Those quotes say nothing and are pure conjecture.

I will tell you exactly who will pay the increase (and then some, because there's always juice on top of juice): we will; you and I, and every person and family we know. That's who.

caspper69··on The Economic and Fiscal Effects of the Trump Administration's Proposed Tariffs
Why would I ask an llm anything?

The asian economic miracle as you put it took place in countries with cheap land, essentially free labor (by Western standards), zero environmental protections, and cheap global shipping.

News flash Einstein, they weren’t buying our expensive shit to begin with. So they didn’t really need tariffs. Why? Because they lived in huts with no electricity or running water and ate rice and vegetables for every meal.

Neoliberal takes. I’ve been reading the Wall Street Journal daily since before you were born, back when it wasn’t just another mouthpiece for some rich asshole with an axe to grind.

caspper69··on The Economic and Fiscal Effects of the Trump Administration's Proposed Tariffs
Amen
caspper69··on The Economic and Fiscal Effects of the Trump Administration's Proposed Tariffs
Of course it will cost you in terms of loss of demand. But there’s no guarantee that your factories will be able to reduce prices though.

Everyone is worried about it. The global supply chain is a well oiled machine after the last 40 years. Problem is, Trump’s enablers and the media are too scared of retribution to tell people just how bad this will be.

It’s a solution looking for a problem.

You should have seen my frustration during Trump I explaining to my die hard Trumper why he kept getting customs bills from DHL, FedEx and UPS for his equipment and supply orders. I was literally exacerbated trying to tell him he was paying the tariffs that Trump enacted. It’s like he was incapable of understanding plain English because it conflicted with his Fox induced worldview.

← PreviousPage 5 of 12Next →