←back to thread

Tools: Code Is All You Need

(lucumr.pocoo.org)
313 points Bogdanp | 1 comments | | HN request time: 0s | source
Show context
forrestthewoods ◴[] No.44455498[source]
Unpopular Opinion: I hate Bash. Hate it. And hate the ecosystem of Unix CLIs that are from the 80s and have the most obtuse, inscrutable APIs ever designed. Also this ecosystem doesn’t work on Windows — which, as a game dev, is my primary environment. And no, WSL does not count.

I don’t think the world needs yet another shell scripting language. They’re all pretty mediocre at best. But maybe this is an opportunity to do something interesting.

Python environment is a clusterfuck. Which UV is rapidly bringing into something somewhat sane. Python isn’t the ultimate language. But I’d definitely be more interested in “replace yourself with a UV Python script” over “replace yourself with a shell script”. Would be nice to see use this as an opportunity to do better than Bash.

I realize this is unpopular. But unpopular doesn’t mean wrong.

replies(4): >>44455624 #>>44455730 #>>44455783 #>>44459352 #
osigurdson ◴[] No.44455730[source]
Nobody likes coding in bash but everyone does it (a little) because it is everywhere.
replies(1): >>44455992 #
forrestthewoods ◴[] No.44455992[source]
> because it is everywhere

Except for the fact that actually it is not everywhere.

replies(1): >>44456693 #
nativeit ◴[] No.44456693[source]
I see your point, but bear with me here--it kind of is.

I suppose if one wanted to be pedantically literal, then you are indeed correct. In every other meaningful consideration, the parent comment is. Maybe not Bash specifically, but #!/bin/sh is broadly available on nearly every connected device on the planet, in some capacity. From the perspective of how we could automate nearly anything, you'd be hard-pressed to find something more universal than a shell script.

replies(1): >>44456885 #
forrestthewoods ◴[] No.44456885[source]
> you'd be hard-pressed to find something more universal than a shell script.

99.9% of my 20-year career has been spent on Windows. So bash scripts are entirely worthless and dead to me.

replies(4): >>44457792 #>>44458774 #>>44458863 #>>44551836 #
osigurdson ◴[] No.44457792[source]
If you use git on Windows, bash is normally available. Agree, that this isn't widely used though.
replies(1): >>44458327 #
forrestthewoods ◴[] No.44458327[source]
Yeah I’ve never see anyone rely on users to use GitBash to run shell scripts.

Amusingly although I certainly use GitHub for hobby projects I’ve never actually used it for work. And have never come across a Windows project that mandated its use. Well, maybe one or two over the years.

replies(1): >>44460818 #
osigurdson ◴[] No.44460818[source]
Lot's of Microsoft shops (majority even) use ADO which is basically github + project management. I'd say most devs targeting Windows use git in some form. If not, what are you using? If git is installed, so is git bash. So bash is basically everywhere, even on Windows. The difference is, I'd say 1/50 devs using Windows actually know this.
replies(1): >>44460950 #
forrestthewoods ◴[] No.44460950[source]
The video games industry uses Perforce. I currently use what is publicly referred to as Sapling.

Even if GitBash is installed, and I’m happy to concede it is, there are a variety of hurdles. Both technical and practical. But I will concede it is technically possible.

I will however maintain that bash is not everywhere in practice. And that if you write libraries or projects that expect Windows users to run bash scripts then you’re a bad software engineer and a bad person. Don’t do that.

Integrating something that required running under GitBash would be a non-starter at my current company. That’s just not how literally anything works. So sure technically possible. But with enough effort anything is possible!

replies(1): >>44470009 #
1. osigurdson ◴[] No.44470009[source]
Well, at least you know that you can use bash on Windows now. Maybe they will integrate in directly as an alternative to cmd and powershell one day. That would be nice.