"She found one, and only one, that she would consider."
That was kind of the point I was trying to share with folks in a recent rant called "Perl in your city." It's really hard to find good hand-on Perl learning opportunities to recommend. Hats off to the folks at Perl Training Australia for the work they are doing, which is excellent. Phillip.
I must admit, I also like the "Creative power" messaging also. For me it's reminiscent of "Making Easy Things Easy and Hard Things Possible" -- which has always resonated for me when thinking about Perl's strengths.
But that "creative power" message is probably aimed squarely at developers, and not business executives. And that's where I was going in the post referenced above: There could be -- and probably should be -- different messaging to each potential audience. For developers, Perl is "creative power." For executives, Perl is "ubiquitous and cost-effective." For learners, "Perl makes easy things easy, and hard things possible." And so on...
I get a sense though that many Perl folks feel that the most important audience is the one you reference: big IT buyers. People at companies that manage large IT budgets and want to buy something secure and reliable. For them, commercial software may appear to have more value at first. However, once they get past that thinking and start to look at the free software options, that's where Perl is experiencing its biggest challenge. Specifically, the relative lack of shiny example projects (or the lack of profile that existing projects get in the Perl community).
I'm not certain that the myth of TIMTOWTDI is even that relevant anymore. When I look at "Modern Perl," or idle in certain modern Perl Web Framework IRC channels, it becomes pretty clear that there are some consistently and strongly advised approaches to most challenges. Add to that PBP, Perl::Critic, and Perltidy, and you've got a fairly well-defined set of design patterns to apply to almost any problem.
Perhaps it's time to shift the focus from the Perl we've had in the past (the TIMTOWTDI Perl), to the Perl we have now: creative power that is readable, scalable, maintainable, test-driven, etc.
Sad to hear that the branding exercise turned out so poorly (though not entirely surprising). I suspect that any attempt to work with a marketing agency that is not focused on marketing technology is going to result in something similar.
There's also lots to be said about the "pinko marketing" approach, for brands that have such a huge user community: i.e., marketing from the bottom-up vs. top-down.
I jotted down some thinking on the "branding Perl" question in a recent blog post: "Getting to the root of Perl's perception problems." As a consultant, and a technologist, I still believe that the approach outlined there is part of the answer for moving forward on these question.
Specifically, not just thinking about the One True Message(tm) for Perl, but -- more importantly -- thinking about the myriad truths that apply in different situations, and for different audiences. Also, with some reflection on the topic, I also believe that the Perl community could achieve some successful pro-active (not defensive) promotion by seeding some "open-source marketing kernels" and letting the community do the rest. Think of how the TIMTOWTDI spread effortlessly, and pro-actively.
Ideally, rather than over-branding, the kernel would be simple, flexible, and adaptable and would have ways for the community to continue to evolve it by contributing back. What if we could pro-actively develop Perl's brand in a way that is similar to how the actual language is developed -- therein lies the key.
The Padre team has been using this graph to look for places we might be able to remove wasteful dependencies. The results have been excellent. We've managed to remove around 10-15 dependencies, resulting in Padre moving OFF the Heavy 100 list.
Very cool and useful. Nicely done.
"See what happened? Sebastian was trying to communicate the benefits of his software to a potential consumer and it piqued my curiosity. You know what that's called? Marketing. It may have a different end goals and customers, but it's still marketing."
"Marketing isn't just ads. It's not just articles in newspapers. It's not just viral videos. It's not just guys walking around in crazy costumes handing out leaflets. It's also people touting their latest Web framework in their blogs. It's people teaching classes about Perl 5. It's people giving talks at users groups about software testing. It's word of mouth. It's anything you want it to be, so long as you connect producers and consumers and get your message out there. I find it hilarious that many of the people decrying marketing are, in fact, marketing themselves (even though they don't know it)."
Pinko Marketing. It works.
"And the scary thing is, we do run those sites."
Very underplayed by the Perl community, unfortunately. From Perl.org, which then links to the O'Reilly site, the "success stories" are five years old. There are other lists I've seen, but none are very comprehensive or compelling.
"The question is, given a consistent lack of competence, and a desire to improve, what are the kinds of processes we need to go through to address it?"
I think the process has begun. Let's see where it goes.
"Desktop applications? I haven't seen any yet (I don't count web apps), so can you point me in the right direction?"
"AFAIK, Twitter is just a shiny web app that throws a lot of servers at a problem. Other than the web interface, it seems like the whole thing could be done with text files and a UDP server. Rails actually seems like a terrible fit for what Twitter is doing; it seems better suited for the simple, low-traffic web interfaces that most small businesses want than for a high-traffic buffered message queue."
Agreed, and I bet they regret the decision. But, assuming that should have been obvious to the folks at Twitter, what was the initial thing that lead them in the direction of Ruby on Rails? (And, either way -- good or bad -- Twitter has done a lot to promote awareness of RoR.)
"Fads count for a lot in programming. Perl, Python, and Ruby are all roughly similar at a technical level (though Perl gets variable scoping right), so if I don't know any of them, then all else being equal, I'll choose the one most likely to make me look cool and/or get me a job."
Great conversation here. Glad that people are willing to engage in it thoughtfully. (Many thanks to Alias for the conversation starter.)
@educated_foo: The reality is that people are using Ruby, and Rails, for more than just scripting up "shiny-looking web page with minimal effort." (I'll concede the point about DHH's hair.) They're using it for all kinds of crazy stuff, like writing desktop applications and large-scale messaging services like Twitter. (All things that Perl can do equally well.)
Regardless, I think a major point is being missed in these arguments: the people making these "shiny-looking web pages" are doing the grassroots marketing for Ruby, and Rails, and so on, e.g.: "Hey, did you know that Yadda-yadda was built with programming-language-of-the-day?" "No kidding? I gotta try that..."
So that's point #1: "solve your own problems" isn't quite right. Grassroots marketing is helping other people solve their problems with your solution. Admittedly, I think that's what you're saying with "package up your code in a way that others can use it."
Point #2 is that most of the people using frameworks like RoR and Django have made the choice to learn them recently. FIve years ago, nobody I know was programming primarily in Python or Ruby. And it's not like there was a glut of Ruby and Python University graduates looking for frameworks; they all had to make a choice to learn something new.
So why did they choose these other languages and frameworks? Perhaps it was marketing "claptrap," perhaps it was hype and shiny Web sites. Those surely played a part. However, the other aspect is -- as we've all been talking about -- perception. Perceptions, and first impressions, of the language, its community, its resources and so on, all impact people's likelihood to take that first step into learning something new (or coming back).
I've heard it argued that the Perl community doesn't really want an avalanche of new people -- signal-to-noise and all that garbage. However, if we want to see those showcase sites, and applications, running Perl -- if we want the grassroots marketing that brings -- Perl must do a better job of communicating clearly about itself.
Communicating clearly is everything discussed above. It's the marketing "claptrap," it's the shiny-looking Web sites, and its a community that appears to openly want people to adopt this language, because it's the best damn language we've got.