Perl, people, society, & mobs


I’ve had in my mind a couple of ideas about Perl and its relationship to people, society, and mobs. Some parts of the Perl community like to talk about Perl marketing, and even spread the meme that “Perl sucks at marketing”. I don’t think that’s true at all.

Marketing is one of those odd words that nobody knows how to define but at the same time most people think they know what it is. This is not just for people outside of marketing job: I’ve asked many people in many different marketing departments “What is marketing?”

Most of the answers are unsatisfying, and most of them are different. This is true for almost any business department, though, because there are no formal rules that govern the area, say, like for accounting or legal departments. As an aside, this difference is what actually separates professions from all other jobs.

“Marketing” is also one of those weird words that have mostly forgotten its history. A market is the place where you go to buy and sell things, but I don’t think I’ve ever met a marketing person who wouldn’t say “that’s the job of the sales or fulfillment departments”. Somewhere in history, the word “marketing” took a different path.

The American Marketing Association’s definition is something that you’d expect out of The Office:

Marketing is the activity, set of institutions, and processes for creating, communicating, delivering, and exchanging offerings that have value for customers, clients, partners, and society at large.

That says almost nothing, but it uses quite a few words to get there. Under this definition, all of business, religion, medicine, and everything else in the world is marketing. There is nothing that sets it apart from anything, and everything you do is marketing. When something is everything, it doesn’t need a label or a name.

I might as well have no marketing experience, but I’ve worked with some people who I think very good at the job. The best and most satisfying definition I got about marketing came from a director of a marketing department who applied his definition of marketing to his own job. His definition was simply something like this, which I paraphrase because I wasn’t smart enough to write down exactly what he said:

Marketing is the process where we figure out the wants and needs of different groups of people and figure out how to deal with those different groups, even though we don’t carry out the actual transaction ourselves. We spend time on the groups we can help and don’t waste time on the groups we can’t help.

Along with that, he explained to me that once you know the people you can help, you break that group down into segments based on the sort of help that you can provide them.

Most of his wisdom came from the constraints of being a medium-sized business: he worked in an environment that was big enough to have job specialization and dedication of resources, but also small enough that he couldn’t tolerate much waste because his resources were limited. Here, limited means less than $10 million in the budget, so not scrounging like guerrilla marketing but not virtually unlimited like, say, Apple.

The trick is to put the people in the market into the right group. You don’t want to shun someone who you might have been able to help, but you don’t waste your resources on someone you can’t help.

  • There are people we can’t help, so don’t waste time on them.

  • There are people we can help, so we figure out what they need and want.

One of the really interesting exercises to start to think about this is to look at all of the advertising around you. Although some marketing people will draw a distinction between what they do and what advertisers do, the marketing people figure out the groups they want to target.

Take any bit of advertising that you see, whether that’s a billboard, TV commercial, pop-up ad, or even just a conspicuous product placement. You might make fun of quite a bit of what you see, and some of it is probably stupid, but I’d say that most of it is purposely executed to reach its target audience based on what the advertiser thinks that market wants. Advertising, then, delineates market segments.

If you get the opportunity to travel the world, you’ll get to see a perfect example of this. Much to my despair, American fast food chains seem to be everywhere. Literally across the street from the Sphinx (outside Cairo), is a Kentucky Fried Chicken (but chips, not biscuits!). I can find a McDonald’s in many places I go, and the Economist uses that fact to produce their Big Mac Index. And, since not everyone is an American, the same company can’t advertise in the same manner or with the same content everywhere. That is, McDonald’s doesn’t have a single or unified message. McDonald’s in Auckland has a lamb burger (don’t recommend), and one in Dubai has falafel.

Set aside the particular content for a moment, though. Consider these extra-content factors that select an audience based on where they will be, when they will be there, and how :

  • Where did you see it? Downtown? Highway billboard? Website? In a bar? At a bus stop? Was it advertising something nearby, like a restaurant or store, or for something that you can get anywhere, like a can of Coke?

  • When did you see it? Is it something you see in the morning or in the afternoon? Say, for instance, a billboard on the highway leading into town as opposed to the highway leading out of town? Did you hear it on drive time radio? Late night TV infomercials?

  • What else was going on around it at the same time? Was there a sporting event or a concert, for instance?

  • Is the advertisement passive or active? Did you have to do something to see the advertisement, such as buy something at a grocery store where they give you a receipt with an ad on the back, or was the ad forced on you by being conspicuously where you would be?

  • In what form was it? A flyer, a radio commercial, billboard, side of the bus?

  • Did you get to see it for free, or did you have to pay to see it? You might think that’s silly, but do you pay for newspapers or magazines? How about an in-flight magazine, or a movie preview on a DVD? Have you ever wondered why some magazines are free? Why is Gmail free?

All of these things, and more, are clues into what sort of person the advertiser thinks it will reach, and the message is tailored for that person. That person might not be you. It might be for a small portion of the people who see it. This doesn’t mean they executed it well or correctly, but that’s what’s going on.

And here’s something that might make you scratch your head, but I’ve seen it in a lot of places. There are high-end storefronts that are practically empty because no one really shops there. They exist, however, to remind you that the brand exists. There are plenty of those in New York City.

Now that you’ve figured out who the ad is trying to reach, what is the ad trying to get you to do? That is, in all of this, there is a particular sort of person, a particular message, and a desired behavior. The location, time, and manner of the message is specifically chosen to select the particular sort of person.

Beyond that, the ad might be targeted at you but designed to affect the behavior of someone else. Is the ad aspirational, creating a brand that only a few can afford but all can recognize? Your recognition, even when you aren’t a customer, might add to the value of the actual customer. The advertisement might be there just for you to know something instead of doing something.

On to Perl

So, what sort of person do you want to reach? What do you want them to do or not do? What’s your message to that sort of person? Do you want them to do something or know something? Who should be using Perl who isn’t?

Perl’s messages have been:

  • Common things are easy and the hard things are possible

  • Swiss army chainsaw

  • There’s more than one way to do it

Perl’s perceptions have been:

  • Line noise

  • Web/CGI language

  • There’s too many ways to do it

  • Shell scripting language

From my point of view, I’m perfectly happy with the sort of person that the Perl community has. That’s just me though. I’ve met a lot of programmers using a lot of different languages, but the smartest ones I’ve run into have been really good Perl programmers too. That’s not a good description of them though. Those smart people are just good programmers regardless of Perl. They have a high capacity for abstract thought and design. I want to be around whatever attracts people like Mark Jason Dominus, Damian Conway, Randal Schwartz, Kurt Starsinic, David Golden, Ovid, Ricardo SIGNES, Miyagawa, and many other people. That’s one of the sorts of programmer Perl attracts now. Perl has many nice features, but the Perl community is the über-nice feature.

Why should we change a message that has already been so successful in making Perl and the community turn into good things? Think about that very carefully. You might even want to walk away from this article for a few days to figure it out. Write it down. Be honest. Be brutal.

I think I can answer this question.

Everybody does something for some sort of gain, whether that is monetary or otherwise. The “Free Software” movement likes to say words like “scratch an itch” or “meritocracy”. That’s just trading in a different sort of capital, and it’s still self interest.

That’s not a bad thing, necessarily. Hiding or denying it, however, distorts the economics. What’s good for you locally might not be good Perl globally. Are the changes that you want in Perl good for you or good for everyone? What would change in Perl if you got what you wanted?

Most people want to keep getting paid to do Perl work. That is, the reason you probably care is that you have based your livelihood on it. Sure, you probably enjoy working in Perl, but you don’t have to have a job in Perl to work in Perl. Maybe you’re pretty far along in your career and quite the Perl expert. You have a significant investment in Perl. That’s understandable. However, that’s not different than any other field or endeavor. When was the last time most people went to the blacksmith, cooper, or baker? Life moves on.

How do you keep doing what you want to do, then? You have to convince, somehow, that the brand of Perl means something useful to other people. Those other people have to be the sort of person who can spend capital to allow you to fulfill your goal (staying employed, contributing hardware to TPF, sponsoring a conference, whatever). You want to create in people’s minds the perception that Perl has much more “utility” than some other tool for certain kinds of problems, and that Perl compares more favorably than some other tool. Typically, people promoting tools aren’t going to extol the virtues of other tools or the trade-offs in their preferred tool though.

So, assuming that you want to attract a different sort of person, a different market segment, what is that different person? What would happen to the Perl community if it were dominated that sort of person? That is, what happens when Heinz Beans instead turns into Heinz Ketchup, or Nokia stops being a paper company and turns into an electronics company, or General Motors stops being about cars and starts being about car financing? If your employer drastically changed its products, moved into a completely different industry, or went after a completely different sort of customer, would you still want to work there?

I don’t think many people think of it in those terms. They think in terms on numbers. You win by being big. Bill Gates thought that, and not only did he run the company that created the operating system that allows something like Stuxnet to exist, but nobody really cares that that company just came out with a bunch of Windows 7 phones except to turn it into another article about RIM versus Apple. Going after the numbers is ultimately a losing gambit because you’ll do anything to get more and more numbers. Not only that, you’re letting someone else control your goal.

What is there if you aren’t going after numbers? Forsaking profit in volume means you have to make up for many low-profit transactions for few high-profit transactions. The margins are different, and the people who make those transactions are different sorts of people.

This is the point where various people like to interject that something like PHP affects the perception of Perl. Maybe so, but do you really think that you’re going to change the minds of people who already don’t pay attention? You can get your message out to as many places as you like, but if people aren’t going to be there to see it, you might as well do nothing.

The problem with the numbers game is that there is no way to really win. You’re constantly fighting short term battles just to keep the numbers up, but you don’t care at all who makes up those numbers as long as you can count them. Does the Perl community really care about PHP for anything but watching a number of users? Did Perl really lose anything else? Did major developers leave Perl to work on PHP? Did PHP’s emergence really keep Perl from doing anything that it wanted? Or did it just siphon off a lot of Darknet? There’s a lot of room for argument there, but I challenge you to really think about why you care. Be honest with yourself. Get down to the crux of it. When you get there, ask yourself if it really matters for anything other than numbers. I bet it doesn’t.

Other interesting takes