Hacker News new | ask | show | jobs
by fdim 3483 days ago
Not to nitpick, but I fail to understand the problem you are trying to solve. Even if something like this would be bundled with some IDE, the reason is unclear to me. It's nice as a side project to get used to electron though.
4 comments

In their README, they have a section describing why one should use this project[0] which essentially says something like this:

Not everyone knows how to use the npm CLI, and they oftentimes cannot use it for "intern/office/job" reasons, or they are simply unwilling to use the cli at all.

However, the learning curve for the npm CLI, at least for the tasks that this project accomplishes, is not steep at all. For example, installing a dependency is as simple as `npm install dep` where `dep` is the name of the dependency you want to install. Furthermore, I have never heard someone say "I couldn't use npm because it's a CLI and my job does not allow me to use those", nor have I ever heard someone who wants to use npm say "I am not willing to use a CLI"

I'm curious, in what job setting is one not allowed to use the npm CLI? And, since this project itself uses the CLI[1], wouldn't using Ndm be just as bad as using the npm CLI?

[0] https://github.com/720kb/ndm#i-love-the-shell-why-use-an-app

[1] https://github.com/720kb/ndm/blob/master/lib/js/npm/npm-api....

To say nothing of the fact that a programmer can't use the CLI? What programmer is that?

I mean, I'm all in favor of tools that integrate into the IDE, that reduce the overhead of running commands, but not being able to use the CLI would be a huge red flag.

In fact, you now have me considering writing a new interview test to make sure people are literate with the CLI.

> To say nothing of the fact that a programmer can't use the CLI? What programmer is that?

I've seen this a fair bit before. The most common case (in my experience) is "enterprise" developers who use an IDE, only develop in a single language, and use a GUI Git tool for version control.

I would say that, in most cases, the assumption that they don't have a strong understanding of the concepts abstracted away from them (compilers/git/etc) tend to be more correct than not.

> To say nothing of the fact that a programmer can't use the CLI? What programmer is that?

People who use Excel, maybe. There are a lot of people who do "programming" in their job without their job title containing "programmer". I can absolutely believe that these days there are people out there brewing up little JS scripts to help them with their day-to-day tasks.

>I can absolutely believe that these days there are people out there brewing up little JS scripts to help them with their day-to-day tasks.

I can't. At least if we're talking about people who can't use a CLI or read JSON.

I personally got my start in programming through Access -> VBA -> VB.NET -> C# -> JS/Ruby/Python/whatever. The first four involved little to no CLI work.
This is seriously the only use case for this app? This is one of the least compelling reasons I've heard for using a project. If I'm using an alternative to npm on the command line, it's yarn. It adds way more value and saves way more time than a tool like this ever could.

If I had a job where I couldn't use the command line, I would quit or not take the job to begin with.

Using command line tools is one thing while managing and keeping them up to date is another and extracting the latter into a GUI is pretty convenient. I think when people see this, they immediately think of using it to help create node applications -- likely a ridiculous scenario -- but when using it to manage command like tools available through npm, it makes sense. Brew has a similar app, CakeBrew (https://www.cakebrew.com/).
Agree, thanks, Cakebrew is exactly the app that inspired this and you can see it from the similar layout disposition more or less ;)
Hi, you can use it when you are tired and your eyes can't concentrate ;P (joking)

One cool thing about GUIs is that (usually) you can run multiple processes and commands while other processes are running without having to open multiple tabs or shells or to go through the shell outputs to see errors and/or warnings.

But this is not to say "a GUI is better", they are just complementary in my vision.

Personally i use and abuse the CLI for most of the time, because i love to feel the machine is in my hands, then sometimes i feel more comfortable on a GUI or a Wizard process, it' human i guess.

Totally agree, in fact this would be exactly the kind of thing I'd implement only to learn the GUI framework, but I would have chosen to use Qt or similar instead.