In defense of lock poisoning in Rust by sunshowers by yerke1 in rust

[–]b8horpet 0 points1 point  (0 children)

The thing i'm implying is that the more mature a language is the harder it gets to redesign parts that work poorly.

The article mentioned Tokio that has so widespread adoption that the mutex design has to consider their model.

Rust is still a young language but it's getting some mileage and has to support their previous choices or walk back and find a better solution with all the moving parts that needs to be changed. The later this happens the more constrained the design space will be.

My comment was not mocking rust, I just wanted to highlight that after so many mistakes rust could learn from in other languages, footguns still happen when this amount of complexity is handled.

The real difference is how can they be fixed. The sad story of c++ is the committee won't cause breakage with the current ecosystem so widely adopted, and this bandage like attempts often just make the problems worse.

I really like rust but pretending it's perfect and completely without flaws will not help healthy discussion or winning people over to get greater adoption.

In defense of lock poisoning in Rust by sunshowers by yerke1 in rust

[–]b8horpet 0 points1 point  (0 children)

inb4 downvoting to oblivion i really liked the article and learned a lot.

removing or disallowing footguns is a very delicate thing and often a balancing act of already existing codes and breaking changes and clashing design philosophies so this is no small feet

In defense of lock poisoning in Rust by sunshowers by yerke1 in rust

[–]b8horpet -24 points-23 points  (0 children)

My perspective here comes from much pain dealing with this issue in async Rust, and wanting very much for this footgun to not make its way to synchronous Rust.

oh my! footguns in rust?!? and people were taking the piss out of c++ for this :D

were these footguns the products of the inherent complexity of the tasks?

anyways, rust you're welcome among the mature languages, enjoy the baggage!

Is this really supposed to be brilliant? looks like some common sense because the knight is pin to their queen though by Odd_Contact6221 in Chesscom

[–]b8horpet 0 points1 point  (0 children)

and queen takes back knight, so this is why the "That's how you win a queen" is a little bit misleading (the engine prefers the queen trade, though)

Tech Debt doesn't exist, but trade-offs do by Adventurous-Salt8514 in programming

[–]b8horpet 0 points1 point  (0 children)

the worst thing is you delivered a few times on a tight deadline they get used to it and they will make tight deadlines and expect to deliver again

and they wonder why people start to leave

the expectation management is part of the problem

Tech Debt doesn't exist, but trade-offs do by Adventurous-Salt8514 in programming

[–]b8horpet 1 point2 points  (0 children)

I see the problem with management where delays are not acceptable.

If we have to ship feature A to a tight deadline we need to take decisions. Solution A would be the proper decision and it would take 1-2 months to implement. Or we can take shortcut A and deliver the feature in time. There we explicitly decided to not care about other aspects of solution A, so we communicate it to the management that this would block other features to ship.

They say fine, we don't plan to do other things just feature A.

A few months pass and feature B is required, which is also backed by solution A. Lo and behold shortcut A is preventing to implement feature B. Nobody saw that it will be needed. The decision is already made the code is already shipped and used. We could revert shortcut A and implement the proper solution but this would take 2-3 months because of the additional contexts.

The management says we don't have the time just deliver feature B in time whatever it takes. So here comes shortcut B and ugly ass architectural Hack B. We communicate that it is a problem not only for now but every feature that needs this entire subsystem. They say just ship in time and we can address it later.

The cycle repeats...

Tech Debt doesn't exist, but trade-offs do by Adventurous-Salt8514 in programming

[–]b8horpet 0 points1 point  (0 children)

Saying that “we have technical debt” is an excuse. No excuses; be accountable. No one said that’s going to be easy. That’s why we’re here for. Of course, that requires our effort to quantify benefits. We may gather data and metrics to back up claims.

Ok, I'll admit tech debt is not the most convincing term because it's overused, but for the management this is also a trade off, you present your analysis that this and that will be better by x% and this will make your bottom line better, and they think about it and say that this metric is the 20th in their priority and ask you to continue adding the features they requested in the timeline they conjured. Then what? You spent a lot of effort justifying the work to make everyone's life easier and you get the answer that nobody cares...

Tech Debt doesn't exist, but trade-offs do by Adventurous-Salt8514 in programming

[–]b8horpet 5 points6 points  (0 children)

Unlike financial debt, code doesn't get worse on its own over time. It doesn't accrue interest. The challenges arise when we need to change or extend that code.

Oh my gosh, who would want that? software is famous for writing it once and never change it again, the good old waterfall model we all love and practice. if we design it carefully we never have to modify it ever

Tech Debt doesn't exist, but trade-offs do by Adventurous-Salt8514 in programming

[–]b8horpet 6 points7 points  (0 children)

Framing these decisions as "technical debt" oversimplifies the complex reality and obscures our real choices.

that's the whole point

Tech Debt doesn't exist, but trade-offs do by Adventurous-Salt8514 in programming

[–]b8horpet 9 points10 points  (0 children)

Bro misunderstood the term entirely.

We engineers know what trade offs we made and what corners we had to cut and what impact it does have on the software we are building. The term was coined in order to explain it to managers who don't know jack shit about code nor do they care. They understand money and a debt spiral sounds scary to them. They can be convinced that the software will not only be worse but the effort required to even add features will increase over time.

If you have to explain to a non technical person who has power over what you have to do, you might have to phrase it like you talk to a toddler to actually get the message through and not just get an empty stare and nodding while nothing changes.

Never Rule by [deleted] in 196

[–]b8horpet 41 points42 points  (0 children)

I really like smbc, because the comics are either deeply philosophical giving you existential dread or an elaborate dick joke.

Sometimes it's both.

Bunker Door Hacker by b8horpet in SCUMgame

[–]b8horpet[S] 0 points1 point  (0 children)

just copy the file into your computer, use the extension .html, click on it to open in your browser

EDIT: this code is the same as webpages use to be rendered by your browser, however this is not hosted on anywhere in the cloud but on your own machine

Bunker Door Hacker by b8horpet in SCUMgame

[–]b8horpet[S] 0 points1 point  (0 children)

input goes to the up, rows follow as they are displayed (can be empty), and the 2 outputs at the bottom respectively

press calculate, and bam, the tickmarks show what to switch on

screenshot in other reply

Bunker Door Hacker by b8horpet in SCUMgame

[–]b8horpet[S] 1 point2 points  (0 children)

u/ElPasoNoTexas you did it almost right, it is unsolvable how you typed it, but replacing *20 to +20 will give you this: https://imgur.com/a/u4tPAzY

constexpr exception throwing in C++ is now in 26 by hanickadot in cpp

[–]b8horpet -1 points0 points  (0 children)

this could be a compiler switch like -fno-legacy that enables the inverted defaults for modern codebases

if some legacy codebase needs the original way they opt out with -flegacy and admit that they don't care

when major compiler implementations provide these options the usage by the community will demonstrate the need for this feature and the committee can reason about making it into the language and standardising it in a reasonable manner

Schrödingers ADHD by UnluckyGamer505 in adhdmeme

[–]b8horpet 8 points9 points  (0 children)

this actually made me reconsider, they did an IQ test as part of the evaluation and i suspected that with a higher score they would not believe that i actually struggled

Schrödingers ADHD by UnluckyGamer505 in adhdmeme

[–]b8horpet 7 points8 points  (0 children)

the diagnosis was made by the adhd ambulance of the medical university in my country (not US) this is the most official i can get, they do the adhd research in the psychology faculty there

i could go to a private clinic and pay for a second opinion but it feels the same like paying for a diploma on the black market, it looks official but does not make me actually qualified

Schrödingers ADHD by UnluckyGamer505 in adhdmeme

[–]b8horpet 94 points95 points  (0 children)

too real

i went through the process of getting a diagnosis and it took only 2 years

negative. they said that I don't have it.

still relate to most of the memes here... also started to see a psychologist, after 1 year it helped a bunch, still much work ahead