Laziness, Impatience, and Hubris were especially clear/obvious in Perl at the time.
Perl was a gazillion times more powerful than Bourne and C-shell (including all the Unix shell tools like `awk`), much more rapid than working in C, incredibly terse (perhaps too much so), and also portable (to all the oddball systems you might have).
And the purposes to which Perl was put were often to automate things you'd been doing manually, or that you couldn't do without Perl.
You'd be quietly doing big things with Perl. And there were sayings about how you'd automated your job, and presumably spent your time writing more Perl scripts and reading Usenet. And the occasional joke of replacing someone else with a one-line Perl script.
Also, note that not only was this before the dotcom boom (when programmers suddenly were no longer nerds but getting rich and fashionable), but also-- a lot of the programmers using Perl professionally weren't even professional programmers, but actually sysadmins or random university researchers, who happened to have the power of Perl. The majority of professional programmers on Unix actually didn't know Perl.
So, Perl people speaking of Perl people in terms of vices could be seen as a self-deprecating, joking spin conscious of the unusual power that they wielded.
And then, python.
I love Python, but basically 96% of Python code and developers absolutely suck at everything, I'm fixing a shit python codebase right now. It's like a language which people love to use to write shit code.
Python has become my goto for anything more complicated than a 3 line bash script, but not so complex it need multiple files to logically separate the code. Argparse isn't perfect, but it lets you get 90% of the way to a nice functional argument parsing system, with auto-generated help output that mostly doesn't suck. It's also built in so I can rely on it being anywhere python is already installed. And python is ubiquitous enough in default installs now I can pretty much rely on it being present as much as I can rely on bash being present.
As a result, every command line bit of glue code I've written for the last decade or so has been in python. At a certain point, it does start to get unwieldy and you can indeed write some awful code in it, but then again, I've seen some pretty awful bash scripts too.
My favorite trick is the fact that you can tell python to
It's evolution. I like Python, it gets love and support. And it's all about the data structures - really. With python all I have to do is figure out the data - the rich set of OO, functional or imperative approaches and APIs does the rest.
It's the same as in Visual Basic: those who request programming languages for dummies, they have a tendency not to be the brightest software developers in the toolbox.
Visual Basic as a language is just C# for people who want to type more to do the same thing.
Visual Basic as a tool for building Windows programs with GUIs was pretty hard to beat though.
Maybe there are tools that churn out fully-polished react just as easily nowadays, but I wrote a janky little data visualization app in 2 hours at my internship and they ended up using it for almost 15 years.
Python is great for prototyping...
Then you write it again in a better language...
Or you could just write it the first time in the real language.
Python isn't appreciably faster than something like Typescript to someone with actual experience making programs professionally.
At least people still love it :D
Because it's so easy the average quality of the user is lower. This isn't surprising to me.
shit code is proportional to number of people developing. on average, about 98.56% of developers don’t know what they are doing and with millions of them writing their shit in python you end up with…
I'd say rather - ruby.
Ruby has the syntactic power to write stuff very succintly, lot of good apis (and some crappy too), had since its inception a good repl which perl always ignored..
There was a time, just before the rails boom, when ruby had a lot of traction in admins and that-era-devops circles
Python isn't a serious language for programmers.
It's for non-programmers.
'all the unix tools like awk...'
Not ad-hominem but where were you 95-2006 because Gawk, Sed and Burne shell were the answer to read only perl scripts. That is one of the reasons Perl is basically no longer used: it was used without discipline.
There was actually a progressive mode amongst those systems programmers I knew who knew what they were doing at the time.
* bash + sed for the easy stuff * bash + gawk or just gawk for the ETL stuff * TCL for systems glue + swig * C when you are bespoke or need performance
Perl was great in theory but I cringed every time I saw a script.
Agreed, Perl scripts were often write-only, especially when people get cute with the shorthands.
At the same time, it is rare for me to see a Bourne/Bash script without obvious serious defects in it.
(Many people don't understand the shell script textual substitution evaluation model at all. And even those people who do, the model gets very hard to reason about as soon as you try to do some data value handling that's absolutely trivial in most high-level languages.)
> Perl […] incredibly terse (perhaps too much so)
I used to like Perl, but I found it hard work at times not to create something that, without ample commenting which arguably removes a lot of the benefit of terseness, even I wouldn't understand without some thought when looking at it a few months down the line.
Perl was (is? - I assume it is still used a fair bit) often referred to as a write-only programming language for this reason.
I'm curious about the usage. I've seen it mostly replaced with ruby, but wonder if this is a bubble phenomenon.