5 ms·
ah, the javascript developer mindset applied to CLI development. Start from scratch just because you don't want to read the manual of the right technology, con
by gcb0 11y ago
ah, the javascript developer mindset applied to CLI development.
Start from scratch just because you don't want to read the manual of the right technology, convince lots of people to adopt with a cool site, spend the next 5 years updating your project to get to 10% of the 20yr old projects you ignored.
disclaimer: mostly javascript developer nowadays. but salty.
- yeukhon 11y agoMy problem is with npm and nodejs dependency, for writing CLI, which essentially means you have to install nodejs and is probably only really useful for nodejs developers.
- dc2 11y agoI can understand that. Fortunately, Node is becoming huge in terms of CLI - there's a ton of really useful CLI apps for all kinds of things. To the point where it becomes advantageous to have NPM installed, Node developer or not. At that point, installation of a CLI app is easier and more uniform than many other methods. My 0.02. My purpose in writing Vorpal is to make building CLIs accessible to a wider audience. While haters will hate JS, it nevertheless has a very broad use and accessibility.
- yeukhon 11y agoAs a Python developer I have not found a single library out there (I tried almost every single popular one out there) helps me write better CLI so I always fall back to argparse. Since every up-to-date Linux system is shipped with Python, and argparse is part of the stdlib, I don't need to worry about argparse not being available. NodeJs adoption is going up, but if someone is building a CLI for a Rust project using Vorpal, then I have to install another piece of software and bloat my local system. Imagine this goes into my docker container it means the overall size of my container will increase. Of course I typically also install a bunch of packages along with my Python project anyway, like requests library, but because these libraries are typically needed for my backend anyway, the CLI's dependency on requests library is debt free. But in the case of me writing a Rust / Go / Python project but shipping a NodeJS CLI version, that's pretty insane. But don't take this the wrong way, I will write NodeJs and I will look at your library. You have great work, but I want to offer you my opinion on why few people outside of NodeJs will use this to build CLI for their X-language project.
- dc2 11y agoI see that point of view - that makes sense.
- dozzie 11y ago> [...] there's a ton of really useful CLI apps for all kinds of things. I'm yet to encounter those.
- gcb0 11y agopeople use npm cli as a poor excuse for not learning make in most cases.
- emgee3 11y agoBut a benefit might be cross-platform compatibility seeing as some OSes don't come with, say, grep out of the box. While you could use the native tools, there could be some benefit to writing your own to do exactly what you want consistently. I don't really disagree with you, but just pointing out there is some benefit to writing one's own CLI.
- ufo 11y agoI think its easier to install cygwin than replace all the command line tools I am used to with Javascript equivalents.
- benaiah 11y agoHaving installed cygwin, I’m not so sure. :P
- emgee3 11y agoTruth
- deleted 11y ago[deleted]
- emgee3 11y agoSure if you want a full set of native tools I won't suggest otherwise. But a full cygwin install is way more invasive than node, and if you just want some specific tools, vorpal might be for you. Or maybe cygwin is. Whatever works for you.
- nibnib 11y agoOr install ports of enough to get work done. Ag works very well on Windows.
- scardine 11y agoI think GOW (GNU on Windows) is a better alternative to cygwin.
- 11y ago