Things that are so last {decade,century} and annoying that I encountered recently (1)

1) When you download a torrent and inside you see 50 files named *.rar, *.r00, *.r01 and so on.

2) When you open a website and it has a self-glorifying video (like Flash) intro that autoplays and a link you have to click to go to the “main page”. Ironically, PayPal is now showing exactly this. Of course, in the 00’s era you also had to wait up to a minute until that percentage of loading video reaches 100%.

3) When you run CPAN client for the first time and get asked about which mirror host would you like use.

Okay, okay, I know. This is just a cheap shot at how old Perl is 🙂 While we’re at it, let’s enumerate other things that are old and annoying in Perl:

Old and annoying

1) Context. Does anybody agree that this is more trouble than it’s worth? The fact that no other languages steal this feature seem to reinforce the feeling that context probably sucks. But this is such a core feature of Perl that we’ll just have to live with it until eternity.

2) No builtin OO. Okay, not my personal rant as I think Perl’s OO is fine as it is. But everybody is whining that “OO support in Perl 5 is {not builtin, bolted on, half-assed, abysmal}, wwweeh!” so I’ll just list it here and be done with it.

3) no builtin clone() function. Data::Clone is not core, Clone::PP is not core, Clone is not core, Storable is core but … JSON is too simplistic and not core. YAML is not core. Data::Dumper is, well… Everything is slowish to superslow to hyperslow. Sereal is not core. Perhaps at least make Sereal core?

4) JSON is not core? Does this send a message to the world that we don’t care about “the Web”? Funnily, JSON::PP is core. So perhaps JSON support is core. -ish. Frankly, I don’t understand this situation.

5) As already mentioned, the default CPAN client. Many Perl-related websites are old but still perfectly functional; they just don’t utilize some niceties like for example AJAX for voting or such that you have to press Submit and load a new page just to vote. And they ooze the old look. The default CPAN client is similar in vein: It retains default settings that are no longer relevant or annoying so that they always remind you of the old era. Things like prompting you with too many questions at the beginning of use or being too verbose with messages by default, which remind you of an era when platforms vary wildly (compare the plethora of incompatible Unices/weird architectures to the today’s world of mostly Windows+Linux+OSX) or when download speed is so slow that you have to prompt/update for every file being downloaded.

6) Too many special rules exceptions. Consistency and simplicity are good and more valued nowadays when we don’t have time for anything. This is the age of distraction and short attention span. Who has time to learn all the quirks and exceptions when new languages, frameworks, and shiny new things come out every week? (XXX Examples.)

This list is far from complete and I’m sure to update it. But let’s also list things in Perl that are old and also rock!

Old but rock

1) everything is a manpage. Man rocks, man! I think alternatives like Ruby’s ri or bropages are just inferior bastard children.

2) sigils. Sigil rocks, man. They aid readability. Unfortunately we have too many of them (and even more in Perl 6). I think “one sigil $ for variables” is enough. Long live the shell!

Like Perl even today, this is a post in progress

Also, like Perl (or some of its features, to be more exact), I’m too so last {century, decade}. Whether I’m annoying or not is left as an exercise to people around me.

I long for the days when things like tweeting or smartphone is considered so last century and I look to them with great nostalgic feeling. Probably when I’m playing with my grandchild.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s