6 ms·
I always found the Perl "community" to be really off-putting with all the monk and wizard nonsense. Then there was the whole one-liner thing that was all about
by jordanb 11mo ago
I always found the Perl "community" to be really off-putting with all the monk and wizard nonsense. Then there was the whole one-liner thing that was all about being clever and obscure. Everything about Python came off as being much more serious and normal for a young nerd who wasn't a theater kid.
- simonw 11mo agoThis made me smile given Python's love of Monty Python references - the cheese shop etc.
- tmp10423288442 11mo agoI appreciated them at the time I encountered them (mid-2000s), but they were definitely a bit cringe in their frequency and shamelessness. I wonder if younger people even know Monty Python anymore - by my time, I think people had mostly forgotten about Hitchhiker’s Guide to the Galaxy, even if 42 survived.
- edoceo 11mo agoThe kids these days have factored 42 to 6,7 (said with some inflection and hand waving)
- GPerson 11mo agoDid you come up with that? If so, bravo!
- edoceo 11mo ago6-7? No, my kid says it about a thousand time a day. Then, for some unknown reason they follow it with 41! WTF! I've shouted 42! many times and have tried to inform the child of the significant cultural and scientific importance of 42. Which, IIRC, factors to 2,3,7.
- rightbyte 11mo agoDude it is not cringe. It is silly. Pretending to be a all serius grown ups language is cringe.
- sph 11mo agoI agree but don’t forget that the average programmer nowadays is a strait-laced corporate entity, whose personality is Node.js stickers on a macbook, like everybody else in their team. They forget that Perl and co. were written by people that had one too many tabs of LSD in the 70s, sporting long hair and a ponytail.
- aaronbrethorst 11mo agoI’m going to go out on a limb and guess that Larry Wall, a devout evangelical Christian and the child of a pastor, was not turning on, tuning in, or dropping out in the 1970s.
- culebron21 11mo agoAs a foreigner I hadn't known Monty Python when I started learning the language and reading the docs, and I haven't noticed any of those. I guess they came across as just noise.
- lysace 11mo agoPerl is a sysadmin language. There's "always" been this tension between sysadmins and developers. In my mind (developer back then) I'd amateur-psychoanalyze all of that nonsense as some kind of inferiority complex meant to preserve the self image. Needless complexity can be a feature! And now we are all developers!
- MrDarcy 11mo agoIn the 2000’s Python was also a sysadmin language. Edit: But I see your point, Google SRE’s around the late 2000’s reached for Python more than Perl.
- lysace 11mo ago(90s) Yes, but it developed.
- calmbonsai 11mo agoAs someone who lived through that transition, we used Perl extensively to sysadmin ~30 Solaris and Irix workstations and it was superlative at that. At that time, Guido was still working at CNRI locally to us in Reston, VA and we had several discussions at the local Pyggies (Python User Group) on transitioning over to Python for that work. We were a (mostly) C++/Java shop, but Perl fit into all the other "crevices" beautifully. Python just didn't have enough library support for all of our "swiss-army chainsaw" demands. Still, it was very apparent at the time it would eventually get there and I was enamored with its "one right way" of doing things--even at the bytecode level.
- oncallthrow 11mo agoI think Perl is still more popular even today than Python as a sysadmin language. Late 2000s it certainly was. Maybe Google was different, but across the industry more widely Python was barely used, Perl was used everywhere.
- lysace 11mo ago
- pavel_lishin 11mo agoI'm having to pick up some perl now, and while I don't interact with the community, it surely _feels_ like it was written by wizards, for wizards. Obscure, non-intuitive oneliners, syntax that feels like it was intentionally written to be complicated, and a few other things that feel impossible to understand without reading the docs. (Before everyone jumps on me - yes, as a developer, I should be able to read documentation. And I did. But until I did so, what the code was doing was completely opaque to me. That feels like bad language design.) Some of it I recognize as being an artefact of the time, when conciseness really mattered. But it's still obnoxious in 2025. The whole thing reminds me of D&D, which is full of classes & spells that only exist in modern D&D because of One Guy who happened to be at the table with Gygax, who really wanted to be a wuxia guy he saw in a movie, or because he really wanted a spell to be applicable for that one night at the table, and now it's hard-coded into the game.
- phil21 11mo agoIt’s interesting to me how brains work. Perl has always “flowed” for me and made mostly intuitive sense. Every other language I’ve had to hack on to get something done is a struggle for me to fit into some rigid-feeling mental box. I understand I’m the weird one, but man I miss Perl being an acceptable language to pound out a quick program in between “bash script” and “real developer”.
- pavel_lishin 11mo agoWas Perl one of your first languages by any chance? I freely admit that I've only been poking at it for a few months; maybe by this time next year, I'll be boggled at the comment I left, like it was written by a different person. > in between “bash script” and “real developer”. One of my coworkers gave me some great perspective by saying, "at least it's not written in Bash!"
- phil21 11mo agoYep, first language I learned. And since I was somewhat early to the Internet thing, I found IRC when I was about 14 years old and actually learned from a lot of the folks who have authored books on Perl or are at least (were) well known in the community. It certainly was the major factor in how I connected the dots! Haven’t really thought about it until now, but I suppose having Larry Wall and Randal Schwartz telling you to RTFM guides your early development in a certain manner. I certainly have never considered myself a developer or programmer though. I can pick up enough syntax to get a quick hack done or start a MVP to demo my ideas, but I leave the “big boy” dev stuff to the professionals who can run circles around me.
- deleted 11mo ago[deleted]
- Insanity 11mo agoI don’t know about the wider Perl community, but I listened to some interviews from Larry Wall and he just came across as a nerdy guy having fun with what he’s doing. I quite liked listening to him.
- c0brac0bra 11mo agoMy anecdotal experience was with perl guys who were ex-military, irreverent, and fly-by-the-seat-of-your-pants. The Java and .NET guys were straight laced and nerdy.
- riffraff 11mo agoI was never a perl programmer, but this was my impression of basically every perl programmer I have interacted with. Also, I think Larry Wall's "Diligence, Patience, Humility"[0] is among my favourite articles about programming. [0] https://www.oreilly.com/openbook/opensources/book/larry.html https://www.oreilly.com/openbook/opensources/book/larry.html
- ascendantlogic 11mo agoIndividuals are rarely (not never, but rarely) the full problem. Groups of people are what cause feedback loops and cultural reinforcement like the author describes. Sometimes this is a virtuous reinforcement cycle but more often than not the well gets poisoned over time.
- ErikCorry 11mo agoLarry should be remembered for the development of "patch" more than perl. Without the concept of fuzzily applying patches to modified source files you can't have "git rebase" or "git merge".
- wlonkly 11mo agoLarry was (and presumably is, but I'm out of that loop) a gem. The Weird Al of programming languages. Hilarious and kind. But those who remember the regulars of, say, efnet #perl (THIS ISN'T A HELP CHANNEL), there was a dearth of kindness for sure. I was probably part of it too, because that was the culture! This is where the wizards live, why are you here asking us questions? Like cms, I'm also hesitant to name names, but the folks I'm thinking of were definitely perl-famous in their day. There were also a bunch of great people in the community, and they helped me launch my career in tech in the 90s, and I have close internet friends from that community to this day (and great memories of some who have passed on). But there were definitely also jerks.
- PunchyHamster 11mo agoPerl made a mistake, the language was invested in depth of expression and that, in a programming language, just leads to a 1000 ways to write same thing where like... 2 of them are actually nice to read. Pyton was ("was" was used here on purpose) the opposite, the whole "one way to do a thing" and insisting on more clean code even if more verbose. You could write nice looking Perl code but you had to choose to do it, while Python pushed you in that direction from the start. As much as I dislike using whitespace as flow control it also does make sure the code is always indented reasonably even if it is a newbie just starting in the language. It didn't help that Perl, just like other languages after (PHP, JS, Python too), had a "curse of the newbie language", with many people starting with it (as at the time it was kinda only sensible choice for webpages before mod_php did a revolution in how most webpages are hosted), with no training and just winging it, which in language that puts no limits on what user can do and no guidance on what they should do... leads to that ugly one liners and line noise as a code scripts.
- skywhopper 11mo agoThat is the story that Python tells about itself. Meanwhile, folks who don’t use it every day are constantly learning that it’s only true within a single version of Python, but that over the years there will be multiple, incompatible ways to do niche wild rare stuff like … iterating over a map.
- PunchyHamster 11mo ago...that's why I used "was". Current direction of the language mostly goes against the "Zen of Python".
- bigstrat2003 11mo agoPython has never actually followed the Zen of Python, which is one of my gripes with it. For example, "explicit is better than implicit" is a bad joke given how Python implicitly treats non-boolean types as booleans.
- dragonwriter 11mo ago
- OptionOfT 11mo agoI actually think it works when you are in the ecosystem fulltime for a good while. But having to interact with it once in a while is always a hurdle. The same with bash. Do I use [ or [[? Where does the semi-colon go? if then fi, but while do done (and not elihw). -eq or =? Functions have () but no parameters. I'm sure those things make sense when all you write is Bash / Perl, but it's daunting. Now, Python can get pretty far out there too with Meta-programming, and JavaScript can get confusing with prototyping. And Ruby (especially RoR) takes the crown, where they resolve variables at the moment the line executes. Makes debugging blocks really hard. The less magic in code the better.
- skywhopper 11mo agoYou realize you can learn all of this easily online, I hope? Sure it turns out that a scripting language maintaining compatibility with scripts from 40+ years ago has some confusing aspects. That’s the price of such incredible staying power.
- bigstrat2003 11mo agoThe point is not that such quirks are impossible to learn; the point is that they make the language extremely unpleasant to use.
- radiator 11mo agoYou can learn them now, but you will forget them soon. That was the point, I believe.
- forgotpwd16 11mo ago>I'm sure those things make sense when all you write is Bash Not really. Bash is known to be incoherent (due to legacy). You eventually getting accustomed to its quirks but they still remain absurd and may unexpectedly bite you someday. Perl code can, and perhaps will (it's humorously referred to as a write-only language afterall), get hard to read but at least is more robust.
- ErikCorry 11mo agoThe syntax problems are just surface. There are some real problems underneath: Poor performance of the single implementation. A single implementation. Leaky ref counted GC, but 'luckily' the syntax for references is so clunky that nobody does anything complicated enough that it really matters. Bolted on object oriented features that never got the love they needed at a time when oo languages were sweeping the world. Most of the wizards decamping to a new language (Perl6) that was 'developed' for years without an actual implementation to keep them grounded.
- mr_toad 11mo ago> 'luckily' the syntax for references is so clunky that nobody does anything complicated enough that it really matters. That made me laugh. Unlike actually working with Perl references, which made me want to cry.
- petit_robert 11mo agoStrange, for me it's the opposite. Just yesterday, I moved some 100 lines of code using a hash quite a few times from the main module to a function using a reference to the hash. if %args is the hash holding the data, '$args{key}' tells me the value of 'key' in the main module. a reference to the hash passed to the function is noted like so : '$args = \%args';$args->{key} tells me value of 'key' All I had to do to adapt the code was to replace '$args{' with '$args->{', done by the time I typed the replace command in my editor. Funny that it just makes sense to me, must be something with the brain's wiring.
- Asooka 11mo agoI never interacted with any of that, to me Perl was always "Bash with text processing built-in and no string interpolation pitfalls". I reach for it when I need to write one to two page long utility scripts. Python is too willing to deprecate features (plus the whole 2 to 3 fiasco burned me badly), so I only use it for things I know I will maintain. Perl is for writing a shell script that will run unchanged in perpetuity.
- baxtr 11mo agoI loved Perl and all the obscurity. It felt like black magic back then. It should have become what python is today.
- librasteve 11mo agoactually Perl was what Python is today - the go to scripting language
- ahartmetz 11mo agoI've always found Perl just plain ugly, too clever about some things (like iterating over regex matches on stdin or something) and really dumb about other things (variable syntax, the god-awful OOP system). Python is clean and pretty in comparison and usually well thought out. If the communities were reversed, I'd still prefer Python: I just read the documentation in 99% of cases, I very rarely need to interact with the community. Python, as the article says, is mostly not a language for fans - it's mostly for auxiliary tasks.
- librasteve 11mo ago> Perl has always “flowed” for me and made mostly intuitive sense. Every other language I’ve had to hack on to get something done is a struggle for me to fit into some rigid-feeling mental box That is just how I felt about Perl (4 years full time dev in the 2000s) and how I now feel about https://raku.org https://raku.org (aka Perl6). Anyway, I tried to gather some fellow feelings here about 18 months ago: https://rakujourney.wordpress.com/2024/05/22/perl-love-notes/ https://rakujourney.wordpress.com/2024/05/22/perl-love-notes... It is sad that Perl became so despised after the error of preannouncing a non-compatible upgrade. I understand that people couldn't wait. But Raku is here now and it is worth a second look imo.
- lamontcg 11mo ago> I always found the Perl "community" to be really off-putting with all the monk and wizard nonsense. Rubyists vs. Pythonistas isn't any better. Programming languages as counter-cultural lifestyle choices is pretty "cringe" as the kids say.
- zbentley 11mo ago> Rubyists vs. Pythonistas isn't any better. Eh, in different ways. Ruby people often felt a little smug/over-emotive about how much joy using their tool could bring programmers. TFA is spot on about Perl: Perl folks often felt cliquish, arrogant, defensive. Python people are at times patronizing or overly dismissive. And in all of those communities the biggest difference was how many people in the community had those dysfunctions, versus the rest—the vast majority of each language’s users who were using it, sharing techniques or code, answering questions about it without being jerks. Where Perl fell down for me was that its community and people I knew who used it had a much higher chance of evidencing those crappy behaviors. More bad apples—not many in the grander scheme, but enough more to be noticed.
- Ferret7446 11mo agoI don't think "Pythonista" was a thing in the 2000s. Python is very old and only became more of a "fad" relatively recently.
- AlexCoventry 11mo agoIt was definitely a thing.
- zweifuss 11mo agoI can remember perl vs python flame wars ca. 2002. Also, the early 2010s are not that recent: https://books.google.com/ngrams/graph?content=Pythonista%2Cpythonic&year_start=1990&year_end=2022&corpus=en-US&smoothing=2&case_insensitive=false https://books.google.com/ngrams/graph?content=Pythonista%2Cp...
- pjmlp 11mo agoThis will keep happening until we start programming computers with some kind of AI style driven interfaces, and even then maybe not. Humans are tribal, and HR only hires for specific bullet points, thus everyone wants to assert they are on the right tribe when they need to go job hunting.
- overfeed 11mo ago> I always found the Perl "community" to be really off-putting with all the monk and wizard nonsense The Perl community introduced the world to the first language module repositories via CPAN. No more manually hunting down tarballs off FTP servers As a language, Perl is extremely expressive, which is amazing for one-off scripts, and awful for code that's meant to be shared and/or reread. For pure text-munging, Perl is still unbeaten, when using Perl-Compatible regexes in other languages, I feel the language getting in my way. You can write easy-to-read Perl (TIMTOWTDI, and all that), but it doesn't force you like Go (small language size) or Python (by convention and culture, on what counts as 'Pythonic')
- cjs_ac 11mo agoCPAN was inspired by CTAN, the Comprehensive TeX Archive Network.
- jamal-kumar 11mo agooh yeah you're right and this is coming from someone who still likes/uses perl once in a while for text manipulation stuff that awk/sed won't cut it for. try going into your terminal and typing in man 3pm Errno And you get this code snippet: my $fh; unless (open($fh, "<", "/fangorn/spouse")) { if ($!{ENOENT}) { warn "Get a wife!\n"; } else { warn "This path is barred: $!"; } } man is that ever from a different time... but let me tell you if you can pull off some of those awk/sed or perl one liners you can do some pretty useful things with less resource allocation than you would be spending if you had written that in python, which becomes important if you're running it over and over on terabytes of data or on limited hardware
- chrisandchris 11mo agoI have never worked (in Prod) with Perl, but my introduction to programming was with PHP and all I know IMHO is that PHP was/is so easy to start with. One of the reasons I picked PHP over other languages.
- pjmlp 11mo agoStrange, maybe because of being a 70's kid and a D&D nerd, that kind of stuff is exactly why I liked Perl in first place. That and Perl giving me a reason to do safe programming in UNIX with a managed language that exposed all the UNIX API surface, and only switching back into C when I actually needed some additional perf, or low level stuff not fully exposed in Perl. Then again, I am also a fanboi of Haskell, C++, Scala, Idris and similar "wizard" languages.
- zaphirplane 11mo agoFirst time I read something like that about Perl. Is this personal experience during the Perl peak period or extrapolation from phrases
- tails4e 11mo agoI liked perl, it was the first language I used daily as a HW engineer. When I moved to python more recently what I missed the most was how easy it was to do a one liner if with regex capturing. That couldn't be done in python for a long time. I think the walrus operator helps, but it's still not quite as concise, but it's closer
- rs186 11mo agoGood for you, not for anyone else reading the code or yourself 6 months later. Seen too much of that.
- tails4e 11mo agoMy code wasn't written to be hard to decipher, and it wasn't a goal to get everything on one line by any stretch, I just didn't like an if with regext was 2 lines minimum in python, it felt inelegant for a language that is pretty elegant in general
- derbOac 11mo agoPython for awhile had its own cultural issues. I guess, coming from more of a C and lisp background, the stuff you're mentioning seemed playful and fun to me and I didn't get the sense anyone expected to write performance critical code in it anyway. Python forums in contrast to me included neverending justifications for why whitespace and indent formatting was critical and this kind of odd (to me) imperfect type system implementation, like the whole thing was some toy language pretending to be more than it was (in the sense that if you wanted something more complete in language or performance you'd go elsewhere). Perl just seemed to know its place and not take itself too seriously. Things changed though. I haven't touched Perl in years but use Python all the time. I never understood why Python got the traction it did given its performance limitations compared to some other languages (except as part of a broader trend for people to use whatever language they leaned in introductory comp sci) but I do think I understand why people stopped learning Perl.
- darepublic 11mo agoIn community college our perl professor was often late. One time he just didn't show up. I remember him once saying something like job security involved writing indecipherable code so none of your coworkers could understand it. There was a tinge of bitterness in his remark. Our exams were essentially obscure perl puzzles where we had to read the code and determine the output, some kind of coded phrase.