Re: [RFC] Adocacy Paradigm Shift: Perl - the Language for Smart People

2011-03-10 Thread Shlomi Fish
On Tuesday 08 Mar 2011 17:41:19 Louis-Philippe wrote:
 Some stand on the idea that learning a new language is worth it these days
 if it brings you to new programming paradigms and/or new possibilities.  In
 that light, I see Bash scripters could be seduced by Perl, but the gang in
 the Cool-Factor-Zone/Ruby/Python are mostly inclined to move toward Erlang,
 Scala, Clojure, Haskell, Objective-C, Javascript...  not Perl, because as
 flexible and great as Perl can be it doesn't offer much new advantages to
 these peoples.  

Well, one thing I like about Perl is the fact that lists are not references:

http://use.perl.org/~Shlomi+Fish/journal/36493

It allows for some nice tricks. I also like that in Perl operators are not 
ambiguous (i.e: we have ., + and , which are the same operator in Python 
and other languages). I also prefer Perl's Moose to Ruby's built-in OOP which 
seems much less powerful and less flexible (though Ruby still has a cleaner 
syntax). These may not be such earth-shuttering advantages.

Naturally, Perl people often say they stay in Perl due to CPAN, which is very 
comprehensive and which has very good infrastructure. It's hard to know how 
many people will want to write a program that incorporates many different use-
cases, that is more often than not, very possible using CPAN (so-called 
mashups - only not necessarily web-based ones). Some people told me that 
most programmers hate the There is more than one way to do it philosophy of 
Perl.

And naturally, we may need to just create usable CMSes similar to WordPress or 
Drupal which people can install on their servers, and it also seems I was 
unhappy with all the web-devel frameworks I've tried (with Catalyst, that is 
the king of the hill being the complex and idiosyncratic framework that it 
is.)

 I think Perl should learn to get back to enviable position
 by looking at the programming language ecosystem in general and ask itself
 where it is positionned in this jungle and what is it's unique offer.  IMHO
 one good cousin to compare to is Lua...  there is not much Cool-Factor in
 there, but it offer unique features:  is really small, embedable,
 extendable, fast (and by far the fastest), compilable to bytecode, and
 else. Lua is a growing star, not because it has a special personality,
 like Perl, but because it has features...  Not that personality is bad,
 look at Ruby and Python, both have strong personalities, but it's only a
 small fraction of makes these killer languages.  Perl need to know its
 goal and perfect it. Some of you might think the goal is known and done,
 but think again, Perl could shine brighter for what it is if it knew
 pragmatically what it's destiny is.

Right. Perl 6 has a lot to offer because as opposed to Ruby and Python which 
are an incremental step forward to Perl 5 (and sometimes a few small steps 
backward), Perl 6 is a huge step forward from all of them. Many of the Perl 6 
features have been back-ported to perl 5 , and naturally while Rakudo is
quite usable , it's still kinda slow, buggy, and very incomplete. I'm sure 
people are working on it, so it will be resolved at a point. Larry Wall said 
that the Perl 6 effort was The second system effect done right., and it's 
possible some second system effect projects in the past have proved to be 
popular.

Well, Perl 6 does not aim to completely replace Perl 5 and perl5 and these 
languages will continue to evolve and be enhanced, but I still think Perl 6 
should have been called differently (though it's too late to change now).

Maybe we should ask ourselves which killer feature or features we'd like to 
backport from Perl 6 and implement it in perl5.

Regards,

Shlomi Fish

P.S: a Python (and formerly Perl 4 and many other languages, down to an early 
version of Fortran) programmer I've talked with who had to study Objective-C 
to work on a Mac project said he thinks that Rubyists won't like ObjC because 
it's much less expressive and powerful than most dynamic languages. Some 
people have nicknamed Objective C Objectionable C or Subjective C or 
whatever. 

The main selling point of ObjC is the fact that it is the only usable language 
that can be used to write applications for the iPhone. However, while many 
companies would like to have an iPhone app just so they'll have an iPhone app 
that people would like (i.e: a bank or a site, or whatever), most of the 
developers who develop iPhone apps and wish to make money out of them have to 
pass through many hoops in the app store, buy a costly Macintosh computer to 
develop for it, and usually end up selling very few copies to be able to make 
a living from. In comparison to the Android, whose development environment is 
based on Eclipse, and which has a portable emulator, and which Google does not 
regular the App Store, the iPhone application developers are much unhappier, 
and I suspect it will eventually backfire at Apple. 

So I think many of the Ruby/Python or even Perl 5 crowd would 

[RFC] Adocacy Paradigm Shift: Perl - the Language for Smart People

2011-03-08 Thread Shlomi Fish
Hi all,

in case you have not read Su-Shee's 
http://blogs.perl.org/users/su-shee/2011/01/and-suddenly-youre-hip.html , you 
should because she gives many useful insights there. One thing she says there 
is that Vim became popular among the hipsters because using it was marketed 
as relatively elite and:


Selling the steep learning curve as something what earns you Rockstar- and 
Ninja-credit in your community (I'm assuming you're familiar with all this 
Rockstar/Ninja meme...)


Now, a lot of us have tried to market Perl 5 as a language that is easy to 
learn and not so hard and not exactly Rocket science, but maybe we should 
admit that while one can master a small subset of it pretty quickly, it is 
still positively huge and has many dark corners and lots of small gotchas. So 
in essence saying something like Perl - do you have the brains for it? 
(possibly phrased better).

We can think of many more slogans like that, but I mean that just like Vim 
takes some time to get used to, at least to people who are used to 
Windows/KDE/GNOME or even Mac OS X editors (though you can be productive with 
a very small subset) and because mastering eventually is very rewarding, 
because one feels much more productive, so is Perl in essence: has a lot of 
visual clutter at first, and has a steep learning curve, but you get to know 
it.

A Python (and other things) programmer I talked with once told me: I'm not 
smart enough to write Perl.. He is a Technion graduate with Computer Science 
with excellent written Hebrew and written English, and is certainly very 
intelligent and smart (and I've known some less smart Perl programmers), but 
he meant was that he didn't give the initial mental effort to understand the 
Perl mentality. That was many years ago, and I kinda dismissed it, even though 
I should have realised it was a good idea.

I can think of several downsides to this, too, like intimidating people who 
think they are stupid than they really are and really underestimate 
themselves. Like many post-Feminist (if that's the term) women who want to 
stay at home and be supported by their husbands, despite being very 
intelligent.

So I'm not sure if it's a good idea, but I think a defensive view that Perl 
is not rocket science or Perl is not that hard. may be even worse.

Maybe we should say something like Perl - there's more than one way to do it. 
Can you find them all? or Perl - TIMTOWTDY - how many you can find? or 
something.

So what are your thoughts about it?

Regards,

Shlomi Fish

P.S: after offering a bounty to create a scripting frontend (similar to awk or 
perl's -e with the various flags) for Clojure, I got many comments and it 
seems that the Clojure community has a very positive and healthy attitude 
(which is more than I can say for Common Lisp, Scheme or even Ruby and Python 
which seem to suffer from a lot of penis envy in various different ways.). 
You can see the thread here:

* 
http://groups.google.com/group/clojure/browse_thread/thread/e7cedcb1e8dbb6dd/a0488f9fa79e3989

One thing I was impressed from that instead of telling me How many one-liners 
you write per-day or there's no such thing as throwaway code or Paul 
Graham/Larry Wall/MJD/whoever suck, they said it would be a great idea but 
we think Clojure is the wrong tool for the job, due to the initial startup 
time of the JVM. 

Similarly, I think we should admit that threads can often be a great idea, but 
that they are not easy to utilise in Perl 5, due to its design, and that if 
you feel you must use threads, you should look into a different technology. 
I.e: lose the negative attitude. 

-- 
-
Shlomi Fish   http://www.shlomifish.org/
Best Introductory Programming Language - http://shlom.in/intro-lang

Mastering 'cat' is almost as difficult as herding cats.
-- http://www.shlomifish.org/humour/bits/Mastering-Cat/

Please reply to list if it's a mailing list post - http://shlom.in/reply .


Re: [RFC] Adocacy Paradigm Shift: Perl - the Language for Smart People

2011-03-08 Thread Xaero
I would agree that there could be many people who try to learn and do
difficult tasks. I guess when I started learning Perl that was one of
the things at the back of my mind. However it needs to be seen how
many people have an affinity to intellectual challenges that Perl has
to offer.

As you rightly said it could work the other way around too that people
who might have learnt Perl would pick something else because they
think they are not smart enought but the bigger problem, in my
opinion, is people who seek the coolness quotient and then end up
frustated not being able to learn it sufficiently to do something
productive.

I thinks Pythons USP is it's argument of being quick to learn with
many saying that you could learn it in a week. Someone who wants to
learn a language quickly is someone who doesn't want to spend time
learning and get to doing. I feel such a person will stick to the
programming language they already know and won't even think about
learning anything else.

I haven't seen any stats but have a feeling that there are more
newcomers to Python and Ruby that there are to Perl because of this
reason, again I would like to stress on this point that this is my
opinion and I could be wrong. Need to test this.

Regards,
Xaero.

On Tue, Mar 8, 2011 at 2:41 PM, Shlomi Fish shlo...@iglu.org.il wrote:
 Hi all,

 in case you have not read Su-Shee's
 http://blogs.perl.org/users/su-shee/2011/01/and-suddenly-youre-hip.html , you
 should because she gives many useful insights there. One thing she says there
 is that Vim became popular among the hipsters because using it was marketed
 as relatively elite and:

 
 Selling the steep learning curve as something what earns you Rockstar- and
 Ninja-credit in your community (I'm assuming you're familiar with all this
 Rockstar/Ninja meme...)


 Now, a lot of us have tried to market Perl 5 as a language that is easy to
 learn and not so hard and not exactly Rocket science, but maybe we should
 admit that while one can master a small subset of it pretty quickly, it is
 still positively huge and has many dark corners and lots of small gotchas. So
 in essence saying something like Perl - do you have the brains for it?
 (possibly phrased better).

 We can think of many more slogans like that, but I mean that just like Vim
 takes some time to get used to, at least to people who are used to
 Windows/KDE/GNOME or even Mac OS X editors (though you can be productive with
 a very small subset) and because mastering eventually is very rewarding,
 because one feels much more productive, so is Perl in essence: has a lot of
 visual clutter at first, and has a steep learning curve, but you get to know
 it.

 A Python (and other things) programmer I talked with once told me: I'm not
 smart enough to write Perl.. He is a Technion graduate with Computer Science
 with excellent written Hebrew and written English, and is certainly very
 intelligent and smart (and I've known some less smart Perl programmers), but
 he meant was that he didn't give the initial mental effort to understand the
 Perl mentality. That was many years ago, and I kinda dismissed it, even though
 I should have realised it was a good idea.

 I can think of several downsides to this, too, like intimidating people who
 think they are stupid than they really are and really underestimate
 themselves. Like many post-Feminist (if that's the term) women who want to
 stay at home and be supported by their husbands, despite being very
 intelligent.

 So I'm not sure if it's a good idea, but I think a defensive view that Perl
 is not rocket science or Perl is not that hard. may be even worse.

 Maybe we should say something like Perl - there's more than one way to do it.
 Can you find them all? or Perl - TIMTOWTDY - how many you can find? or
 something.

 So what are your thoughts about it?

 Regards,

        Shlomi Fish

 P.S: after offering a bounty to create a scripting frontend (similar to awk or
 perl's -e with the various flags) for Clojure, I got many comments and it
 seems that the Clojure community has a very positive and healthy attitude
 (which is more than I can say for Common Lisp, Scheme or even Ruby and Python
 which seem to suffer from a lot of penis envy in various different ways.).
 You can see the thread here:

 *
 http://groups.google.com/group/clojure/browse_thread/thread/e7cedcb1e8dbb6dd/a0488f9fa79e3989

 One thing I was impressed from that instead of telling me How many one-liners
 you write per-day or there's no such thing as throwaway code or Paul
 Graham/Larry Wall/MJD/whoever suck, they said it would be a great idea but
 we think Clojure is the wrong tool for the job, due to the initial startup
 time of the JVM.

 Similarly, I think we should admit that threads can often be a great idea, but
 that they are not easy to utilise in Perl 5, due to its design, and that if
 you feel you must use threads, you should look into a different technology.
 I.e: lose the negative attitude.

 --
 

Re: [RFC] Adocacy Paradigm Shift: Perl - the Language for Smart People

2011-03-08 Thread Louis-Philippe
Some stand on the idea that learning a new language is worth it these days
if it brings you to new programming paradigms and/or new possibilities.  In
that light, I see Bash scripters could be seduced by Perl, but the gang in
the Cool-Factor-Zone/Ruby/Python are mostly inclined to move toward Erlang,
Scala, Clojure, Haskell, Objective-C, Javascript...  not Perl, because as
flexible and great as Perl can be it doesn't offer much new advantages to
these peoples.  I think Perl should learn to get back to enviable position
by looking at the programming language ecosystem in general and ask itself
where it is positionned in this jungle and what is it's unique offer.  IMHO
one good cousin to compare to is Lua...  there is not much Cool-Factor in
there, but it offer unique features:  is really small, embedable,
extendable, fast (and by far the fastest), compilable to bytecode, and else.
 Lua is a growing star, not because it has a special personality, like Perl,
but because it has features...  Not that personality is bad, look at Ruby
and Python, both have strong personalities, but it's only a small fraction
of makes these killer languages.  Perl need to know its goal and perfect it.
 Some of you might think the goal is known and done, but think again, Perl
could shine brighter for what it is if it knew pragmatically what it's
destiny is.

no offenses,
only my 2 cents,

L-P

2011/3/8 Xaero groundxa...@gmail.com

 I would agree that there could be many people who try to learn and do
 difficult tasks. I guess when I started learning Perl that was one of
 the things at the back of my mind. However it needs to be seen how
 many people have an affinity to intellectual challenges that Perl has
 to offer.

 As you rightly said it could work the other way around too that people
 who might have learnt Perl would pick something else because they
 think they are not smart enought but the bigger problem, in my
 opinion, is people who seek the coolness quotient and then end up
 frustated not being able to learn it sufficiently to do something
 productive.

 I thinks Pythons USP is it's argument of being quick to learn with
 many saying that you could learn it in a week. Someone who wants to
 learn a language quickly is someone who doesn't want to spend time
 learning and get to doing. I feel such a person will stick to the
 programming language they already know and won't even think about
 learning anything else.

 I haven't seen any stats but have a feeling that there are more
 newcomers to Python and Ruby that there are to Perl because of this
 reason, again I would like to stress on this point that this is my
 opinion and I could be wrong. Need to test this.

 Regards,
 Xaero.

 On Tue, Mar 8, 2011 at 2:41 PM, Shlomi Fish shlo...@iglu.org.il wrote:
  Hi all,
 
  in case you have not read Su-Shee's
  http://blogs.perl.org/users/su-shee/2011/01/and-suddenly-youre-hip.html, you
  should because she gives many useful insights there. One thing she says
 there
  is that Vim became popular among the hipsters because using it was
 marketed
  as relatively elite and:
 
  
  Selling the steep learning curve as something what earns you Rockstar-
 and
  Ninja-credit in your community (I'm assuming you're familiar with all
 this
  Rockstar/Ninja meme...)
 
 
  Now, a lot of us have tried to market Perl 5 as a language that is easy
 to
  learn and not so hard and not exactly Rocket science, but maybe we
 should
  admit that while one can master a small subset of it pretty quickly, it
 is
  still positively huge and has many dark corners and lots of small
 gotchas. So
  in essence saying something like Perl - do you have the brains for it?
  (possibly phrased better).
 
  We can think of many more slogans like that, but I mean that just like
 Vim
  takes some time to get used to, at least to people who are used to
  Windows/KDE/GNOME or even Mac OS X editors (though you can be productive
 with
  a very small subset) and because mastering eventually is very rewarding,
  because one feels much more productive, so is Perl in essence: has a lot
 of
  visual clutter at first, and has a steep learning curve, but you get to
 know
  it.
 
  A Python (and other things) programmer I talked with once told me: I'm
 not
  smart enough to write Perl.. He is a Technion graduate with Computer
 Science
  with excellent written Hebrew and written English, and is certainly very
  intelligent and smart (and I've known some less smart Perl programmers),
 but
  he meant was that he didn't give the initial mental effort to understand
 the
  Perl mentality. That was many years ago, and I kinda dismissed it, even
 though
  I should have realised it was a good idea.
 
  I can think of several downsides to this, too, like intimidating people
 who
  think they are stupid than they really are and really underestimate
  themselves. Like many post-Feminist (if that's the term) women who want
 to
  stay at home and be supported by their husbands, despite being very
  

Re: [RFC] Adocacy Paradigm Shift: Perl - the Language for Smart People

2011-03-08 Thread Dave Cross

On 03/08/2011 09:11 AM, Shlomi Fish wrote:

Now, a lot of us have tried to market Perl 5 as a language that is easy to
learn and not so hard and not exactly Rocket science, but maybe we should
admit that while one can master a small subset of it pretty quickly, it is
still positively huge and has many dark corners and lots of small gotchas. So
in essence saying something like Perl - do you have the brains for it?
(possibly phrased better).


Reminds me of a lightning talk I was giving ten years ago :-)

Why Perl Advocacy is a Bad Idea

http://mag-sol.com/talks/advocacy.html

Not to be taken entirely seriously.

Dave...

--
Dave Cross :: d...@dave.org.uk
http://dave.org.uk/
@davorg