News for hackers. Stuff that matters.
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by 1ris on Monday April 05, 2021 @07:20AM (#26697605)
"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense."

"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."

- Edsger W. Dijkstra

Maybe php and node are the cobol and basic of our generation?

Re:Engineer – must not have experience in Node, Ruby, PHP, A... by Hamuko on Monday April 05, 2021 @07:27AM (#26697653)
I definitely assume the worst of a person if I hear that they primarily develop in Node since the first thing I think of is this:

    var isEven = require('is-even');
786,000 monthly downloads btw and only one direct dependency.
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by exabrial on Monday April 05, 2021 @07:36AM (#26697721)
You need to use a callback. That's not asynchronous or non blocking.
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by williamstein on Monday April 05, 2021 @11:55AM (#26700599)
> only one direct dependency.

On is-odd! The actual implementation of is-even starts with

    var isOdd = require('is-odd');
(That said, the implementation of is-odd looks like it covers some subtle cases that people might mess up rolling their own...)
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by avinassh on Monday April 05, 2021 @08:09AM (#26697949)
I created a joke package called gg-flip [0] which just flips the signs and even it gets downloads on npm sometimes :|

[0] - https://github.com/avinassh/gg-flip

Re:Engineer – must not have experience in Node, Ruby, PHP, A... by jack_riminton on Monday April 05, 2021 @11:48AM (#26700534)
This is why I love Ruby, because there’s an inbuilt method for that e.g number.even?

Sure it’d take 15 seconds to write a method but why if you don’t have to

Re:Engineer – must not have experience in Node, Ruby, PHP, A... by traveler01 on Monday April 05, 2021 @11:12AM (#26700071)
What happened to imports lol...
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by chrisco255 on Monday April 05, 2021 @07:50AM (#26697815)
So you see a thriving ecosystem of millions of developers and you choose to nit about some quirky library? I definitely assume the worst of elitist statements like that.
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by throwanem on Monday April 05, 2021 @08:03AM (#26697902)
The question I'd ask is whether they're up front about it. It's one thing to ask and see whether someone knows how to check if a number is odd or even - for that matter, it's one thing to use it as a programming quiz! Probably better than Fizzbuzz, everybody knows that one anyway. That's fine.

What would not be fine is to just quietly have that attitude and assume without checking that no one who uses Node a lot has any idea how to do basic things without relying on a library. It's not terribly uncommon for people to think that at least here on HN, I suppose, although I have yet to run into it in an interview or an engineering culture. But if your engineering culture is host to such attitudes, it's best for all involved to be open about that. You'll avoid wasting both candidates' time and your own.

Re:Engineer – must not have experience in Node, Ruby, PHP, A... by chrisco255 on Monday April 05, 2021 @09:03AM (#26698384)
It's particularly absurd. I work on a product that has tens of millions of users built on Node with a team of dozens of talented developers. The aforementioned library checks both the number version and the string version of a number, to indicate it's "even" or "odd". That Node.js makes it easy and cheap to package up small utility libraries like this is a feature, not a bug, and quite in line with Unix-philosophy. Very easy to troll through a list of millions of packages on a marketplace that's as big and broadly used as NPM, which covers not only backend dev, but also front-end dev since the front-end ecosystem is largely powered by NPM these days. So it's a particularly ignorant hot take.
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by raverbashing on Monday April 05, 2021 @10:03AM (#26699091)
> both the number version and the string version of a number, to indicate it's "even" or "odd"

You're saying that like it's some kind of defense of the library. In the real world it isn't.

Re:Engineer – must not have experience in Node, Ruby, PHP, A... by throwanem on Wednesday April 07, 2021 @08:46AM (#26724026)
Eh. Evenness is a property only of integers, so if someone's going to pull in a library to check it, I could argue it makes sense for that library to enforce that the comparison only be attempted over values where it's defined.

Granted that this seems a lot of effort to put into analyzing the contents of a Github repo tagged "troll-bait", from the user "i-voted-for-trump". But hey, this is HN, so it's whatever I guess.

Re:Engineer – must not have experience in Node, Ruby, PHP, A... by thrower123 on Monday April 05, 2021 @09:45AM (#26698859)
Have we forgotten the left-pad fiasco already? These kind of things just keep happening in npm-land.
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by chrisco255 on Monday April 05, 2021 @09:49AM (#26698922)
Yeah we forgot it years ago because it was only an issue for a few hours and then lock files were introduced into NPM along with a CLI warning system for vulnerabilities.
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by Grieving on Monday April 05, 2021 @12:09PM (#26700772)
Lockfiles don't fix a fundamentally broken dev ecosystem. Users of left-pad fell into one of two categories: people who don't understand the most basic programming tasks, and people who do understand these tasks but are so apprehensive about their own ability that they pull in random libs without even glancing at the source (a single glance would have informed them that they didn't need it). These are both signs of inexperienced programmers.

Amateurishness is normal to some extent, but JS has the ecosystem where beginner mistakes are often seen as the right way to do things.

Re:Engineer – must not have experience in Node, Ruby, PHP, A... by dogma1138 on Monday April 05, 2021 @09:13AM (#26698466)
Or maybe even people who have made ungodly contributions to the science of computing (Dikstra, not the Twitter Twat) aren’t immune to being full of shit from time to time also?
Re:Engineer – must not have experience in Node, Ruby, PHP, A... by PedroBatista on Monday April 05, 2021 @07:27AM (#26697651)
Cripples the mind but greases the wheels.

COBOL is from a different time and family of what we ( mainstream ) understand today as "programing languages". How many "crimes" are committed today writing business rules in Java or C#, etc?

Dijkstra's statement, like anything else has a time and context and I hope something solid from the COBOL family existed today.