Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Herd Thither, Me Hither (revised) (braythwayt.com)
35 points by raganwald on Nov 28, 2013 | hide | past | favorite | 12 comments


For those unfamiliar, a good framework for thinking about these choices is the Crossing the Chasm model. A brief summary: you can divide people up into innovators (will try new tech because it's shiny), early adopters (will try new tech because they are willing to work to gain a major advantage), early majority (will use the new thing if it's better, safe, and easy), late majority (will use the new thing if everybody else is), and laggards (death before novelty). The "chasm" bit of the title is that a lot of tech dies between early adopters and early majority because both the product and the marketing have to change to suit the new audience.

I think a "why the shiny thing is unsafe" essay is reasonable from two groups: 1) early majority types telling other early majority types that no, tech X isn't ready for them yet; and 2) people who have been early adopters for other tech, and are investigating whether their particular needs match the benefits of this tech.

I like this essay, and I think it's analysis of people self-justifying is really good. But I think it's a little over-contemptuous of people going with the herd. Animals herd for a reason: there's safety in numbers.

By nature, I'm not herd-oriented. E.g., I'm typing this on a Linux laptop. And when Raganwald was selling Macs, I was doing NeXT development, because it was clearly better tech than PCs, and also way better than Macs. I felt pretty smug, and we wrote some great software. But in a practical sense it was a stupid choice: NeXT only got uptake in a few niche markets, and Jobs promptly fucked all of those people over when he reclaimed his throne at Apple. Commercially, all of the people who chose Windows-based systems over the NeXT platform made the right choice.

If you want to reach the herd, I think you have to, as Crossing the Chasm says, use the innovators and the early adopters to build a beachhead. So yes, don't sell your novel tech to the early majority; they won't buy it. But that's temporary. Dominance among the innovators gives you access to the early adopters. Dominance among the early adopters gives you access to the early majority.


> innovators (will try new tech because it's shiny)

That doesn't sound like innovation to me. It sounds more like fashion. Am I reading too strictly into definitions? (I assume that I am, since I'm not familiar with Crossing the Chasm)


Great question. Any fault in my post is surely with my quick summary. The model is complex, and goes beyond tech: http://en.wikipedia.org/wiki/Diffusions_of_innovations

I describe the innovator group that way because high-tech early adopters will often try a new tech just because it's an exciting new tech.

I don't think that's fashion, exactly, because those people are only 2-3% of the market, but you could look at it as fashion within that group. A good recent example is Google Glass. Some people surely bought it to be seen as cool by other tech adopters, but I know a bunch of people who bought it just to see what the hell it did, to experiment with it. Ditto for low-cost 3D printers.

I think the name "innovators" pre-dates applying the model to high-tech types, and outside of tech I think the term is more clearly appropriate, because tech folks have an especially strong fondness for novelty.


Very esoteric title, but the message got me thinking about my personal marketing crusades.

For example the D programming language. While it actually targets C++, selling it to C++ programmer is tough, because they are unlikely to switch. It is probably easier to sell to people researching Scala vs Clojure vs Go.


This is my exact experience. Another way to put it is that changing involves two decisions: Whether to change and what change to make. Therefore, there are two sales to make to someone who hasn't decided to change, and only one sale to make to someone who has already decided to change.

Given a limited amount of time and energy to invest, you will get the maximum return when you are only trying to make one sale at a time.

We can make up numbers all day, but let's pretend I'm a D Evangelist with a 20% close rate. Given 100 prospects who haven't decided to switch languages, I get 20% of them to agree to switch, and then 20% of those to agree to use switch to D.

That's only 4%. Whereas if I find 100 people who are looking for a new language, I can get 20% of them to switch to "D." On the whole, it makes sense for me to let other mechanisms convince people to make a change, and put my energy into explaining why D is the right change to make.


That is a perfect example, I think focusing so heavily on trying to target C++ users has limited D's success. That also gets me thinking about how the other big problem with D is actually a similar issue. Keeping the compiler closed source means D basically does not exist outside of the popular platforms (the herd). People outside of the herd are the ones most likely to try a new language, but they don't have the option. The notion of "we'll just support the major platforms since that's where most potential users are" isn't necessarily true, most of those people are not in fact potential users at all.


There are two open-source D compilers that track the reference front-end, which is also open source. (Thanksgiving wish: this misinformation will cease to exist one day.)


I am aware (although only gdc was around back when I cared, and it didn't compile), but it still poses the problem. People expect to be able to download and use the "main" or "primary" implementation or whatever you want to call it. The reason I don't use D is because when I wanted to try it, I couldn't.


The official download page lists all three compilers for all major operating systems.

http://dlang.org/download.html


Getting somewhat off topic, but from the article he's referencing:

>Top-notch functional programming

What exactly is it that makes people who have never done functional programming think javascript offers "top-notch" functional programming? It offers the bare minimum to be able to do functional programming, but that is a far cry from "top-notch".


What exactly is it that makes people who have never done functional programming think javascript offers "top-notch" functional programming?

They've heard that JavaScript has first-class functions, which they've heard of. They've also heard that JavaScript is like Scheme, which they've also heard of.


Many functional programmers would say that "Functional Programming" is far more than just functions as first-class entities, and some would go so far as to say that you can't do proper FP in JavaScript at all.

There is plenty of room for debate over what the requirements are for doing "Functional Programming," but it is difficult to look at JavaScript and feel that it provides an excellent platform for top-notch functional programming.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: