The thing about readability of Perl vs. Python ... I dunno. I don't think it's the syntax itself that causes Perl to have some readability issues. Stuff like `$foo =~ s/bar/baz/g` or `join '-', split( q{ }, $a_str)` is very readable.
Context and corner cases maybe makes readability suffer. For example, what does `m///g` do in scalar vs. list context? I don't recall.
In the US, very infrequently does anyone ask anyone else who they're voting for. In fact, talking about politics can very quickly turn into a nasty argument.
You're also correct about generally being able to tell someone's political leaning.
Another thing is that the 2 parties (republican and democrat) are very clearly opposed and distinct. And every republican I know very strongly identifies with being a republican (and my guess is that they vote republican unquestioningly straight across the ballot). Surmise from that what you will.
I'd suggest that well-chosen defaults means: Make a pretty good guess at the most common usage patterns you expect most of your users to follow, and have your defaults do that by default.
I can't comment on whether or not svn/hg/bzr/git/darcs have well-chosen defaults. I only know that I hear it's a common complaint about git.
With the job market the way it is, you might consider advertising in more populated areas (like MA and CT) targetting people who might relocate for the right position.
If you have more data than, say, GDBM, can swallow in one bite, how could you break this data apart and then find the right chunk amongst multiple servers when given a key?
Also, what does the interviewer mean by this:
> I generally ask these folks if they think the problem of looking up a key by value has been solved before, especially given the two weeks to be live in production requirement.
* Everyone I've encountered online who has used both Perl 5 and Perl 6 says that they like Perl 6 (the language) better.
* This first Rakudo Star release is not optimized at all, which is fine and not a surprise. Everyone by now should know that one of the golden rules is: "make it work, make right, then make it fast." Rakudo is (fwict) mostly still on the first step there.
* There are a large number of Perl 5 users who, years ago, got excited about Perl 6, and then eventually needed to get back to work with Perl 5 and subsequently went quiet on Perl 6. I think you're going to see more and more of these people getting re-interested in Perl 6.
* I keep hearing "Perl 5 isn't going anywhere". I think that's correct, however, that comment usually implies "it's not going to disappear tomorrow". I think it has a 2nd meaning, and that is: it's not going to continue to move forward very much now that Perl 6 is here.
* Perl 6 needs its own real forum. Perlmonks has a decidedly Perl 5 feel to it, and although #perl6 on irc is a friendly place, users need a regular online forum. Someone needs to just choose one, install it, pick a pretty theme, slap a Camelia logo on it, and get it running. Not a mailing list, not a google group, not irc, but an actual factual forum. It doesn't have to have karma or voting or a chatterbox right now, it just has to have a working forum.
* Go Offer Kaye! Keep those "Gentle Intro" blog posts coming. http://blogs.perl.org/users/offerkaye/2010/07/p6-gentle-intr... . Many new Perl 6 users will want to write in baby-Perl6, and little easy tutorials like these (and Szabgab's screencasts) are a great help.
One thing is that Perl 5 doesn't include by default a number of modern features that Python and Ruby have OOTB. Easy OOP, exceptions, and named function args, to name a few. If you want these things for Perl, you need to dash out to the corner store (the CPAN) for them.
Also, Perl 5 tends to be used for a lot of unglamorous admin work. So, although almost everyone's got a few utilities or cron tasks on their system written in Perl, they're not shouting about it from the rooftops.
Also, Python is an easy language to learn, and so people like to learn it and blog about how easy/nice/shiny it is: http://xkcd.com/353/ .
Python's alright, but it made me work too hard for what it does. I tried hard to like it but using Python for writing scripts I was constantly asking it, "why are you making me do extra work? Perl doesn't make me do half the crap that you ask of me" (ex. regexes, quoting, string interpolating). Also, Perl has the CPAN, so, I fired Python and use Perl.
Actually melling, thanks for calling me on that. Thinking more about it, I think Perl 6 actually has 2 sides: one is the "like Perl 5 but with a number of things improved/cleaned-up", and the other side (which I neglected to think about in my post above) is indeed some major and sophisticated changes (many of which I know little about since I most often use Perl in a simplistic way -- do this, open that file, process these log files, etc.).
If you have some specific questions, I suggest asking them at http://perl6.org/community/irc , which I've found to be very friendly and helpful.
It means that for basic stuff they are pretty much the same. Variables & data structures (scalars, arrays, mappings), creating and calling functions, creating and instantiating classes, looping, if/then/else, talking to the network, talking to the OS, talking to the db, etc. This basic stuff is in all these languages; the only real differences are in the syntax (and that's not even very different).
For many programming tasks, you're just doing these basics over and over again. Any language will work, so you may as well pick one that's got it where it counts -- modules, since that will make the most difference in how much extra code you have to write. And Perl wins that competition with the CPAN.
> Would they have gone off in search of the Holy Grail with Perl 6 ...
Thing is, it's not a Holy Grail. It's just the next revision of Perl. Take a look at some example Perl 6 code online; they've cleaned things up, fixed some boo-boos, and upon seeing it I expect you'll matter-of-factly say, "oh, yeah, still looks like Perl :)".
What OS do Nokia phones run (Symbian, Maemo, or something else?)? What language and toolkit do I use? Is it locked-down, or can I load apps on to my phone (or my friend's phone) that I write?
I basically have a good idea what the answers are to those questions for iPhone and Android. No idea for Nokia.
That's the same way the Perl 5 community is often described. I don't know CL, but it would be interesting to read a comparison of Perl 5 & CL.