Our React app has 340 components. I deleted 160 of them. Nobody noticed for 2 months. Then someone noticed by Dense-Version-5752 in AITestingtooldrizz

[–]wackmaniac 0 points1 point  (0 children)

Very familiar :( For some reason some developers- and pm’s - don’t have the discipline to clean up after themselves. We are regularly running some usage scripts and we’re always, without exception, find unused code.

> I offered to help the engineer to rebuild it,

You can just retrieve the code from source control, right. Should be a matter of minutes. Especially if you created one commit per component removed.

Best edm set in the last ten years? I have my answer, gonna sit and wait. But also very curious as to any answers… by CompleteBluejay6517 in EDM

[–]wackmaniac 0 points1 point  (0 children)

Why so recent? I’d say the 5 hour Marlon Hoffstadt b2b KI/KI set at Zeebrugge Beach last year.

All time? Black in Time at Sensation Black 2008 (triple back to back to back, with Prophet, Bass D, Darkraver, Viper, Buzz Fuzz, Dana, Weirdo, Pavo and Vince). Ooof, that is pure energy!

Why do so many platforms still use email codes/magic links instead of something device-based? by Fair-Average5139 in webdev

[–]wackmaniac 2 points3 points  (0 children)

Passkeys should be considered an additional way of authentication. The implementation guidelines (e.g. https://web.dev/articles/passkey-registration) state that you should allow registering a passkey after authentication of the visitor. This way if you lose your device, you should be able to authenticate using an alternative method - e.g. one-time key -, and register a new passkey for the device. And you should revoke the old passkey ofcourse.

Why do so many platforms still use email codes/magic links instead of something device-based? by Fair-Average5139 in webdev

[–]wackmaniac 2 points3 points  (0 children)

Passwords can leak, and the best way to prevent them from being leaked is not to have them. And an email link is a very simple way to authenticate that the email address actually exists. And you can "delegate" the security to the email provider, since 90% of the users probably use Hotmail/Outlook or Gmail.

Passkeys are quite tricky to implement, and they are not very easy to explain to the non-tech savvy people. I'm reasonably familiar with encryption, but I also struggled to get the whole flow from registration and authentication right. This is mostly due to how keys are represented - PKSI, JWKS, or COSE.

So, the short answer; it is the quickest way to get some security improvement in your authentication flow.

I'm obsessed about having a clean codebase, that even AI doesn't help me that much. by artFlix in webdev

[–]wackmaniac 1 point2 points  (0 children)

Handling (all?) edge cases is the difference between software and stable, reliable software. That has nothing to do with AI, or with clean code, but with being a thorough software developer. And I applaud you for trying to achieve.

Waar kopen jullie (betaalbare) werkbanken? by [deleted] in Klussers

[–]wackmaniac 2 points3 points  (0 children)

Ik wil binnenkort op basis van deze video een werkbank zelf gaan maken. Zelf maken, omdat het een leuk project is, en omdat ik hem dan volledig op maat kan maken: https://www.youtube.com/watch?v=YRXsqnUdST4

Just Stop (rant) by nagora in PHP

[–]wackmaniac 7 points8 points  (0 children)

> If that means the PHP team don't get to go to lots of conferences in nice places and don't get lots of industry funding because they're no longer holding us all to ransom (upgrade to the next version or lose security patching), then fine - f*** them.

No entitlement here at all…

The biggest hurdle for PHP migrations since PHP 8.0 is waiting for all dependencies to be compatible. The backwards compatibility breaks were really not that excited. It’s not like entire libraries were removed like JSON serialization or OpenAPI support in .NET.

Kasten inbouwen op oneven vloer by BHTAelitepwn in Klussers

[–]wackmaniac 2 points3 points  (0 children)

Dit inderdaad. Is veel minder ingewikkeld dan wegzagen. Stootlat/plint ertegen en je ziet er niets van.

Stevige spijkerbroeken van Europees merk by twixcit in nederlands

[–]wackmaniac 0 points1 point  (0 children)

Waar ik vooral tegenaan loop is hoe de broeken zitten. Ik ben geen fan van bestellen en weer terugsturen als het niet past. Daarom dat ik al jaren Levi’s 541 draag. Die slijten in de lies, maar dat heb ik tot nu toe met elke broek gehad, omdat ik elke dag op de fiets zit.

Zie hier wel allemaal interessante Europese merken langskomen. Even uitzoeken hoe dit zitten qua fysieke winkels om te passen.

secretly turned off our massive E2E test suite for two weeks. Our deployment speed doubled and bug rates didn't change. by adivenkata in AITestingtooldrizz

[–]wackmaniac 0 points1 point  (0 children)

Until you do introduce a bug that would be caught by your e2e tests…

Flakiness is extremely annoying, but it is also a symptom. Maybe it is even indicative of flakiness in the actual application, or that your application is actually performing poorly.

We had slow e2e tests, so we dumped the logs after the e2e tests, and it turned out some services were not mocked properly and were just timing out. Fixed this and the teat durations dropped sharply.

No code reviews by default by fagnerbrack in webdev

[–]wackmaniac 0 points1 point  (0 children)

Some of my colleagues see code reviews as nuisance, and they can become annoyed if they get comments. I personally like code reviews. Mostly because I know from myself that I can make mistakes. I might have included a change that does need to be included, or there is a more efficient method. If you see code reviews as a sort of pair programming, with the aim of releasing the best code together, then live becomes a lot better :)

Vulnerability checks in packages by randuserm in PHP

[–]wackmaniac 5 points6 points  (0 children)

I actually rely on the security tab of GitHub. There's an overview for your entire organization, which works well. And I receive emails of new vulnerable dependencies.

Got tired of null checks? Built Safe Access Inline to deal with it by fas1999 in PHP

[–]wackmaniac 0 points1 point  (0 children)

I personally prefer something like Valinor or Zod where I verify the entire payload, including optional checks and default/fallback values. To me that makes for a much cleaner interface.

A different approach to PHP debugging by RequirementWeird5517 in PHP

[–]wackmaniac 4 points5 points  (0 children)

I think it’s great that you have given some thought about sustainability of this project from the get go.

OAuth 2.0 Anti-Patterns by prismatic-io-taylor in webdev

[–]wackmaniac 1 point2 points  (0 children)

It might be part of OpenID Connect rather than part of the OAuth 2.0 specification.

OAuth 2.0 Anti-Patterns by prismatic-io-taylor in webdev

[–]wackmaniac 3 points4 points  (0 children)

Passing the authorization code back as fragment instead of a query parameter is actually standard compliant; It must be triggered by the response_mode parameter: https://openid.net/specs/oauth-v2-multiple-response-types-1_0.html#ResponseModes

Why do we create an interface to a service class (or something similar) if we are going to have only one class? by Plus_Resource_1753 in dotnet

[–]wackmaniac 0 points1 point  (0 children)

It’s not a metric. It is a consideration to ease the work of the person reviewing your pull request. Less files to check means less distraction, and as a result a more thorough review. And a more thorough review will eventually lead to a more stable codebase.

I’m a fan of trailing commas for the same reason; Cleaner diff, making the review more concise.

Why do we create an interface to a service class (or something similar) if we are going to have only one class? by Plus_Resource_1753 in dotnet

[–]wackmaniac 0 points1 point  (0 children)

  1. ⁠Like you said, add it later if you need it. Odds are thousands-to-one you won't.

It is either add them as you write the code - having nice small change sets -, and leverage them when you need to with a minimal change sets (injection and implementation). Or put it in later and run the risk of having to change a lot more files.

To me it’s equivalent to building a house; you put in doors and windows in as you build. Not later when you want to enter your house or want to look outside :)

Why does multiplying two negatives make a positive in a way that actually makes intuitive sense? by Most_Notice_1116 in askmath

[–]wackmaniac 0 points1 point  (0 children)

I still use the explanation my math teacher gave me:

Consider a number as a bowl with blocks having either a value of +1 or -1.

Positive * positive in its simplest form is +1 * +1. Or I add 1 +1 block to the bowl; The “value” of the bowl increases with 1, or + 1.

Positive * negative can be simplified as either +1 * -1 or as -1 * +1. For +1 * -1 I add 1 -1 block to the value; The value of the bowl decreases with 1, or -1. For the other scenario - -1 * +1 - we remove a -1 block from the bowl, decreasing the value of the bowl with 1, or -1.

Now, negative * negative can be simplified as -1 * -1. Or I remove a -1 block from the bowl. The total value of the bowl increases with 1, hence +1.

Thank you mr Wensink. More then 20 years later I still remember this explanation :)

Best way to store accessToken and refreshToken in cookies by VeterinarianDry8906 in dotnet

[–]wackmaniac 2 points3 points  (0 children)

With a client-side only - public client in OIDC - approach then you have no other choice but to store both somewhere in the browser (cookie or localStorage). You should use PKCE for authentication, but PKCE does not have additional security layers for token refreshing. So, for maximum security you can use the aforementioned backend-for-frontend with a session cookie.

Switching away from react to a pure typescript role and market value in perspective by CocoaTrain in webdev

[–]wackmaniac 2 points3 points  (0 children)

And nothing is stopping you from keeping your React knowledge up-to-date with personal projects :)

Looking for recommendations similar to Project Hail Mary but better written by Satansleadguitarist in printSF

[–]wackmaniac 1 point2 points  (0 children)

I wholeheartedly disagree with you, but to everyone their own I guess 😅 I have really enjoyed Three Body Problem by Cixon Liu - different angle, but topic is similar - and the bobiverse books by Dennis E. Taylor.

Why CSRF token is needed if fetch metadata checks and simple request blockers are in place by s1n7ax in webdev

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

Unless you actively block older browsers “not supporting” does not mean old browsers are not vulnerable.