HackerTrans
TopNewTrendsCommentsPastAskShowJobs

doctorM

no profile record

comments

doctorM
·2 ปีที่แล้ว·discuss
Reading this I realised I've kind of drifted away from the idea of refactoring for the point of it.

The example with the for-loop vs. map/filter in particular - it's such a micro-function that whichever the original author chose is probably fine. (And I would be suspicious of a developer who claimed that one is 'objectively' better than the other in a codebase that doesn't have an established style one way or the other).

Refactor when you need to when adding new features if you can reuse other work, and when doing so try to make minimal changes! Otherwise it kind of seems more like a matter of your taste at the time.

There's a limit of course, but it's usually when it's extremely obvious - e.g. looong functions and functions with too many parameters are obvious candidates. Even then I'd say only touch it when you're adding new features - it should have been caught in code review in the first place, and proactively refactoring seems like a potential waste of time if the code isn't touched again.

The (over) consolidation of duplicated code example was probably the most appealing refactor for me.
doctorM
·2 ปีที่แล้ว·discuss
I'm a bit sceptical of the exponentially harder debugging claim.

First it looks polynomially harder for the given example :p.

Second other engineering domains arguably have additional dimensions which correspond to the machine learning ones mentioned in the article. The choice of which high level algorithm to implement is another dimension to traditional software engineering that seemingly exists and corresponds to the model dimension. This is often codified as 'design'.

The data dimension often exists as well in standard learning software engineering. [Think of a system that is 'downstream' of other].

It's probably a lot simpler to deal with these dimensions in standard software engineering - but then this is what makes machine learning harder, not that there are simply 'more dimensions'.

The delayed debugging cycles point seems a lot more valid.
doctorM
·3 ปีที่แล้ว·discuss
For reference I think this probably partly explains my reluctance to use A.I. to help me code.

If I ask e.g. ChatGPT to just code something for me then the code it outputs is a black box, and there is no 'theory usage' in the parlance of the article. [Or I guess I'd have to recover the theory from the code it writes].

I've accepted by now that I'm putting myself at a disadvantage by not using A.I. at work however. Maybe another way to think about it would be that A.I. allows us to use our higher level theoretical understanding when we interact with codebase.
doctorM
·3 ปีที่แล้ว·discuss
Headline reminds me of the recent crypto booms...
doctorM
·3 ปีที่แล้ว·discuss
i think this is actively dangerous. well not yet. but getting there.

i know - ai isn't meant to be sentient. but if it looks like a duck and quacks like a duck...

how do i know that the comments here aren't done by dedicated hacker news ai bots?

the potential danger could come from lack of supervision down the road.

i didn't get much sleep last night so this is less coherent than it could be.
doctorM
·3 ปีที่แล้ว·discuss
This seems particularly relevant: https://www.fastcompany.com/90965361/why-did-the-metaverse-d...

(Discussion: https://news.ycombinator.com/item?id=38110059)