5 ms·
Massive perl scripts that still lurk in our memories of the 90s were not the result of testosterone fueled one-up-manship brogrammer culture. They are the resu
by thwarted 14y ago
Massive perl scripts that still lurk in our memories of the 90s were not the result of testosterone fueled one-up-manship brogrammer culture. They are the result of needing-to-get-the-report-generated-yesterday one-man-in-the-"computers"-department every-programmer-was-a-sysadmin and-every-sysadmin-knew-perl4-because-that's-all-that-shipped-with-HP-UX/Solaris/AIX (and you had to pay extra for the compiler to build something more modern) culture -- if a single person working in isolation can define a "culture", that is.
It's scripts like these that spawned the meme of replacing people with scripts; because that's what these massive scripts did: automated away entire departments, or negated the need to hire for a department all together. Which is important when you're a two man company and all of a sudden you've discovered you need to process $100k of credit card transactions from yesterday, and you better get started on it because there's already another $300k in transactions generated today. It's only one script, so there's no need for revision control. Damn, there's only one guy working on it, it can run out of his home directory. And of course, it was so successful, successfully a blackbox, he's asked to automate some other task, which is only related because there's some slight dependency, and, well, it's a dependency, so let's just put it in the same script we already run. Rinse, repeat.
Were these scripts terrible? Of course. But they were the work horses of the Internet and any company with two CPUs to rub together in the 90s. There's a reason that "perl is the duct tape of the Internet" was a saying in the mid- to late- 90s: because it was.
These scripts work perfectly fine if the person who wrote them and fully understand them runs them, yet inexplicably fall apart when someone who didn't write them run them (similar to [0]). These scripts can smell the fear of the new guy put in charge to maintain them. This is where heisenbugs roost and schroedinbugs become the stuff nightmares are made of, despite that they had most likely been running without issue for months or years since the guy who wrote them left.
[0] "Tom Knight and the Lisp Machine" http://catb.org/jargon/html/koans.html#id3141171 http://catb.org/jargon/html/koans.html#id3141171
- pasbesoin 14y agoLike a "real" language, Perl has dialects -- including the grunts of the lone boy raised in the wild by wolves. Don't blame the boy. (And remember, he was raised by wolves. Yeoowww!)
- thwarted 14y agoDon't blame the language either. It just is what it is. But there is value in the things you can learn about the code, the people, and the times by taking an anthropological view of it. In fifteen or twenty years we'll be reading rants from people who had to cut their teeth on some overly designed, needlessly abstracted, difficult-to-build-all the-dependencies-for rails app. It's cyclical.
- pasbesoin 14y agoAlong those lines, reading Programming Perl is a pleasure in good part because Larry et al. spend time explaining not just the language but also where some of it comes from and its rationale (or not so rational ;-). Note that I'm referring to the first or second edition (maybe the third); I understand that the fourth edition is just recently out. TIMTOWTDI