News for hackers. Stuff that matters.
Re:Thread-per-core by Waterluvian on Friday October 06, 2023 @10:21AM (#37791139)
This kind of attitude exists everywhere, but good gravy does it exist strongly in Software Development. I feel like every software developer could benefit from a summer tarring rooftops to mature their idea of what "killing the joy" of doing work feels like.
Re:Thread-per-core by insanitybit on Friday October 06, 2023 @10:24AM (#37791179)
A big problem with software dev is the lack of rigor, imo.

> It’s always off-putting to me that claims written this way can be taken seriously as a technical criticism, but our industry is rather unserious.

From the article, this resonates so strongly with me. Instead of people reading papers, talking seriously, it's so hand wavy and weak.

Re:Thread-per-core by Waterluvian on Friday October 06, 2023 @10:33AM (#37791329)
My general feeling is that I think people lean on how they feel about these problems because building an experiment and quantifying the problem to make a solid case for it actually being a problem worthy of resources and remediation is... tedious and unfun?

Not to say these people don't exist. But I think they exist in lesser numbers. Even I'm guilty of this. I know it... so I do it... but it's very unfun and tedious and... well I'm paid to do it so I can't complain.

Re:Thread-per-core by insanitybit on Friday October 06, 2023 @10:37AM (#37791374)
I'm going to avoid derailing into a "tech has these problems", respectfully, as I think the core of the post is really worthwhile and I could talk about tangentially related things for too long and be too distracting. I think we are likely, overall, in agreement.
Re:Thread-per-core by aeonik on Friday October 06, 2023 @11:02AM (#37791712)
I think it's more then tedium and fun that blocks the rigor. Though, those two properties definitely hold a fair number of people back.

I'll use myself as a research subject: I really like the scientific method, and don't mind a long grind. But the main barriers I run into with software fall into at least two major categories: 1. Compatible datasets or software: it takes a LOT of manual effort to collate good data sets, and because I am a software engineer, I want to automate these things, then I end up in tarpits and rabbit holes, building bridges rather than testing hypotheses.

2. Abstraction fatigue, There is so much vocabulary that we use, and we switch layers so quickly and in different contexts that I find it very time consuming and opaque to harmonize all the concepts. Real life pressures don't always afford the ability to really understand an entire stack, which I posit is necessary for a certain level of Rigor.

For example, right now I'm trying to Grok Clojure Transducers, and some folks are saying they are the same things as Monads. Are transducers a better pattern? Are they the same? Different? How much do they overlap?

I have feelings relating to dynamic types vs static types. I have feelings about wrapping implementations. I have feelings about the JVM vs the Haskell compiler vs the V8 JavaScript engine. Also, I get feelings related to polymorphism, metaprogramming, dependent types, homoiconicty.

But nothing fully baked. To call my feelings even 10% baked would be charitable. I can't currently describe all the relationships, or why my brain is currently zeroing in here in full fidelity. Only parts of it, and I remain in a state perplexity for now.

The formality of Category Theory and Abstract algebra sounds like it would be really nice here, but it's going to take me years to get to to speed in those domains, and I'm not even sure they have the theorums to compare these two patterns!

Re:Thread-per-core by mulberrybush on Friday October 06, 2023 @01:30PM (#37793570)
This video [1] explaining Clojure transducers is excellent. No terminology, no analogies with category theory - just code getting built up in a repl.

[1] https://www.youtube.com/watch?v=TaazvSJvBaw

Re:Thread-per-core by withoutboats3 on Friday October 06, 2023 @11:24AM (#37792038)
> A big problem with software dev is the lack of rigor, imo.

It's amazing to me how much more informed you can seem than everyone else if you just read the thing everyone is quoting.

Re:Thread-per-core by insanitybit on Friday October 06, 2023 @03:03PM (#37794825)
Indeed. I have brought this up when people reference "premature optimization is the root of all evil" and mistakenly attribute a false meaning to it. What an approachable paper, what is the excuse for not simply reading it? To boil it down to one quote and then to use that quote to dogmatically advocate for practically the opposite of the point is... sigh.

I've also been banging the "you are using 'IO Bound wrong'" drum for years and still this persists.

HN is a daily example of this. Reading the blog post immediately highlights all of the comments where users seemingly did not.

Re:Thread-per-core by pjmlp on Friday October 06, 2023 @02:03PM (#37793983)
A side effect from those calling themselves enginners without having a proper Software Engineer degree where this kind of stuff is actually taught.
Re:Thread-per-core by insanitybit on Friday October 06, 2023 @03:07PM (#37794861)
And here I am with no degree at all :) I suspect I've read quite a few more papers than your average graduate, however.
Re:Thread-per-core by taeric on Friday October 06, 2023 @11:17AM (#37791931)
I was going to say the same thing. My gut is it exists as strongly in other places, but that we don't have direct exposure to their social zones to see it.

And it isn't like rust is particularly hit by it, either. You'd think people writing PHP or Java hate life, if you only went by what you are likely to see in our social sites.

Re:Thread-per-core by safety1st on Friday October 06, 2023 @11:32AM (#37792138)
The PHP developers I speak to these days seem pretty happy to be using PHP. The ones who fly into a rage over it seem to be people who don't actually use it!
Re:Thread-per-core by cesarb on Friday October 06, 2023 @11:50AM (#37792378)
> The ones who fly into a rage over it seem to be people who don't actually use it!

Well, that does make some sense: if something bothers you so much that you'd "fly into a rage over it", you would avoid using it as much as possible (and PHP is not like JavaScript which has no real alternative).

Re:Thread-per-core by taeric on Friday October 06, 2023 @11:53AM (#37792415)
The annoying thing is more that a ton of the ones that fly into a rage are also ones that have never used it. There is a ton of dog-piling in what people complain about.
Re:Thread-per-core by cesarb on Friday October 06, 2023 @12:25PM (#37792839)
> The annoying thing is more that a ton of the ones that fly into a rage are also ones that have never used it.

Even that does make some sense: if, on a first look, you see something you deeply dislike, you probably will also avoid using it in the first place.

As a personal example, I never learned Go because, when I first looked at it (IIRC, it was when I had to use it to run a Heartbleed detector), I deeply disliked the way it required developers to organize their source code (a single per-language directory mixing all projects together, instead of the per-project directories I have always used); I understand this might have changed later, but in the meantime I invested my time in learning another programming language, and so far haven't found a need to look at Go again.

Re:Thread-per-core by taeric on Friday October 06, 2023 @03:01PM (#37794791)
Ish? You are, of course, more than welcome to not like things. Dislike them, even. Really, you are more than welcome to dog pile on things, freedom and all of that. It is still annoying and generally not a healthy activity, from my point of view.
Re:Thread-per-core by mcronce on Friday October 06, 2023 @01:25PM (#37793519)
Your analogy really hits. I don't mind doing construction in general (I quite like doing it once in a while), but roofing absolutely sucks no matter how you cut it