| |
|
|
|
|
|
|
Tuesday, August 12, 2008 A Case Study in Bad Marketing
|
|
OK. Before I explain why Asus deserves to be mentioned in
marketing textbooks for its horrible management of the Eee brand, let me first
say that I love my Eee PC
901. I've had this little device for a couple weeks now, and it's just a
really great product.
- The battery life is outstanding.
- It takes a few days of use to get accustomed to the
keyboard, but after that, it's quite usable.
- I wish the Mac were available in this form factor. (Yes,
I know about the MacBook Air. That's not even close to what the Eee is.)
- I'd prefer Linux, but I've got the XP version. At some
point, when Ubuntu Netbook Remix is ready to work smoothly on this thing,
I'll probably repave. But for now, everything Just Works, and I don't
want to lose that.
- I got this device to replace my day timer, not my laptop.
I don't really do any serious work on my Eee. It's a portable web browser
and email client. Visual Studio is not installed.
- OTOH, I'm thinking that for my next trip, the MacBook Pro
will stay home and the Eee will go.
- I know the 10-inch netbooks are gaining in popularity, but
for me the 8.9-inch form factor is much better. The MSI Wind is a lot
bigger. The Eee is so small I can (and do) take it everywhere. The
10-inch models remind me of a laptop.
- For me, the Eee is the second coming of my HP 200LX.
- I think of my Eee as a large and extremely capable
BlackBerry, not as a small and a lame laptop.
So, like I said, it's a great product. But Asus is doing
everything they can to destroy this brand.
The brand name "Eee" is great. It's short and memorable.
Its sound matches its sense. It just fits.
But Asus is now introducing so many products under the Eee name
that soon the brand will be meaningless.
I believe the first popular Eee was the 701. People raved
about it. I never owned one, but apparently the two most popular attributes
were the low price and the small size. Either of these attributes could have
become the positioning for the Eee brand. Maybe both.
But now Asus has all kinds of Eee products. Some are
small. Some are large. Some are cheap. Some are expensive. They're even
working on a desktop machine with the Eee brand. After that I can only assume
that we'll see Eee cola, Eee furniture and Eee shaving products.
Maybe Asus doesn't care. After all, they're basically a
manufacturing company, not a marketing company, right? The fact that they
created a great brand was probably an accident anyway.
But as a marketer, that's what makes this even more
infuriating. Creating a great brand usually requires hard work, lots of
creativity, and tremendous discipline. When someone pursues the goal in that
manner and succeeds, I admire them. But when someone accidentally succeeds, and
then destroys their own work, I just want to bang my head against the desk.
Yes, I know that luck is a factor. I just hate the situations where luck is
the only factor. We're making products here, not Top 40 pop
radio songs. Talent and hard work should count for something.
Oh well. The Eee brand will die and Asus will return to its
former life of making products that normal people have never heard about.
But I think this product category will survive. These
things might even become popular enough to go mainstream. I can only assume
that Dell will end up being the leader in this market segment.
But whatever brand they use for these products, it will never
be as cool as "Eee".
|
| |
Friday, July 25, 2008 Randy Pausch
|
|
I was saddened this morning to hear that Randy Pausch has lost his
battle with pancreatic cancer.
Pausch was a CS professor at Carnegie Mellon who became
famous for his Last Lecture,
delivered in September 2007 and later published as a bestselling book. He was
also the creator of the Alice software
project.
When a famous person dies, I often find myself appreciating
their work, but I usually cannot say that I feel a personal sense of loss. Richard Harris was fantastic in
every role I have seen him play, but I doubt he and I would have found much to
talk about. For me, Randy Pausch is a special case. All of us are lucky to
have access to his work, but I think the people who really knew him are even
more fortunate. I wish I was one of them.
Every man dies. Not every man truly lives. Rest in peace,
Dr. Pausch. You truly lived.
|
| |
Monday, July 21, 2008 Summer Movies
|
|
This weekend I saw Wall-E and The Dark Knight, both of which
are just amazingly good. Lately I'm thinking this may be the best summer of
movies ever.
Compared to cinematic masterpieces such as these, Paul
Roub's recent
videos are kind of lame. His plot and characters are really anemic. I
need to talk to him about somehow working in a car chase scene and more
explosions.
:-)
Seriously, Paul has been making some short videos to offer a
different way of talking about our products. His latest one is
my favorite: In order to show how quick and easy it is to setup SourceGear
Fortress, this video shows every step of the install from start to finish. The
video is 3 minutes and 12 seconds long.
These movies aren't exactly Iron Man, but they're still
pretty cool.
|
| |
Friday, May 23, 2008 C and Morse Code
|
|
Darren Stokes sides
with Joel over Jeff on whether programmers should know C.
This whole debate reminds me of amateur radio operators
bickering over whether newbies should be allowed to get a license without
learning Morse code.
Morse Code
So Eric, tell us about your experience as an amateur "ham"
radio operator?
My call sign is KA9KEF. To get my General class license, I
had to pass a written exam as well as a Morse code test at 13 words per minute.
Really, you know Morse code? Nowadays, it's possible to
get a ham radio license with no code at all.
Yes, and I think that's outrageous! It's just wrong.
Why do you think that?
If I had to learn Morse code, then everybody else should
too.
So does anybody really need Morse code these days?
Well, I suppose not. But don't pester me with facts that distract
from my point. Learning Morse code should be a rite of passage for all hams.
Anybody who got a license without code is not a "real ham".
But you -- you are a "real ham".
Yep. I passed the Morse code test. 13 wpm.
So you're still actively involved in amateur radio?
Well, no.
Oh. When was the last time you used your ham rig?
I suppose it's been a few years.
How many years are in "a few"? Maybe five?
More like twenty.
Twenty years?
Twenty-three, actually.
And you still have your amateur radio equipment?
Well, no. I sold my station a long time ago.
OK, let's review. You're a "real ham", even though
everything you know about ham radio is two decades out of date. But the guys
who got a "no code" license and are actively practicing the hobby today,
they're somehow not "real"?
That's right. I know Morse code. They don't.
So you think all ham radio operators should be required
to learn a basically useless skill simply because you did?
Exactly! And don't ask me to get down from my high horse.
I like it up here.
C
The argument about whether programmers need to know C is
just so similar.
All of the people arguing that C is important are the people
who have already learned it. I'm pretty sure that a lot of their argument is
resting on the same foundation as those crotchety old hams: "If I had to learn
C, then everybody else should too."
I am one of those people. Yep, not only am I a Morse code
bigot, I'm a C bigot as well.
I learned C, and I learned it good. I've worked on multiple
significant C projects. I even wrote a C compiler. In C. I think all "real programmers"
know C.
Yep, we C programmers are elitist and proud of it. The view
from up here on our high horse is pretty good. We see lots of so-called
programmers down there:
- They don't really know what a pointer is.
- They're not even using a real compiler! That thing
they're using doesn't even generate native code you know. It's "byte
code", so it's not real.
- Those people have never had to manage their own memory.
- In fact, they've never really had to do anything at all.
I mean really. They're building on a class library that's got more
features in it than Photoshop.
We are different. We learned C. We are "real programmers".
One big difference
What's the main difference between hams who know Morse code
and programmers know C?
The C programmers actually have a point.
Seriously, strip away all the elitism and see what's left. Morse
code is nearly useless, but C is still darn important whether you're using it
or not.
And a lot of people are still using it, by the way. Don't
think of C as merely "important historical and foundational background". In
fact, my current project is being written in C. Software development today is
a big field. There are still many problems for which C is the best solution.
But even if you're coding in something higher level, the
experience of using low-level programming techniques is invaluable.
I'm not going to take a black-and-white stance on this. I
won't go so far as to say that every developer must learn C. I've met lots of
developers without C experience who are successful and making positive
contributions to important software projects.
Furthermore, I'll admit that knowing C is not a magic
solution to poor skills. A lousy developer who happens to know C is simply
better equipped to hurt himself or somebody nearby.
However, I can say these two things:
- All of the truly extraordinary developer s I know are
people who really understand the kind of low-level details that C forces
you to know.
- Every programmer without C experience has a clear path of
personal development: Learn C. Get some real experience using C to write
a serious piece of software. Even if you never use it again, you'll be a
better programmer when you're done.
|
| |
Thursday, May 22, 2008 My Favorite Books
|
|
People often ask me for a list of my favorite books. So
here it is.
I reserve the right to update this list from time to time.
I tend to read a lot of stuff. The fact that I
recommend a book here does not mean that I agree with everything in it.
Coding
I think it's out of print, but I really liked Writing
Solid Code. It's very oriented toward C/C++, so if you're mostly in
C#/Java/Ruby/Python/Perl/VB, it may not be worth your time. Still, it's an
outstanding book.
And of course Code
Complete is a classic.
Software Management
Dynamics
of Software Development is one of my favorites.
Business
I'm a big fan of Built to
Last and its sequel, Good to
Great. The sequel is easier to read and a bit more relevant to smaller
companies.
The
Silicon Valley Way is a great book, and it's a very visual book with nice
short chapters. Easy to just pick up and browse..
If you get the opportunity, go hear Guy Kawasaki speak. He's
much better in person than he is on paper. But if that doesn't work out, Rules for
Revolutionaries is a good read.
Marketing
If you read only one book on marketing, it should be Crossing
the Chasm.
But actually you should read at least a dozen books on
marketing.
Here's your second one: Differentiate
or Die
Now go find ten more.
Sales
I think Selling
the Wheel is an outstanding book. At first you'll be tempted to stop
because it's kind of cheesy. Don't. Finish it all the way to the end.
Useless but Enjoyable Fluff
I really like the "Prey" series of novels by John Sandford.
Start at the beginning with Rules of
Prey
WPF
I have all of the following WPF books:
These are all good, each in a different way. If you're
going to do anything serious with WPF, it seems to me that you should own them
all.
Other Stuff
The Seven
Habits of Highly Effective People is still worth reading. None of Covey's
other books are nearly as good.
Any serious pool player has a copy of Byrne's
New Standard Book of Pool and Billiards.
My favorite literary novel is The Count
of Monte Cristo. The unabridged version is worth the extra trouble.
For dog lovers, Marley
& Me is terrific.
|
| |
Wednesday, May 21, 2008 Yesterday's entry: A comment and a correction
|
The Comment
I've received a lot of feedback on yesterday's blog entry.
The two most common questions are:
- Eric, why did you think that working on your Scrabble
project was wrong? It doesn't seem all that bad.
- And since you thought it was so awful, can we assume that
you would go ballistic if someone in your company was working on a pet
project at the office?
I sort of figured that if I wrote an article about a
software manager that I really admire, I didn't need to address the question of
how I would react in a similar situation. It should be fairly simple to
connect the dots.
But folks are having trouble with the fact that I held such a
strict attitude about my own transgression. They assume that I would be
similarly draconian with others. A fair assumption I suppose, but an incorrect
one.
When it comes to ethics, most people treat themselves
loosely and other strictly. Instead, try being strict with yourself and
gracious toward others. You'll get along a lot better with the world.
Do I really believe that working on a fun personal project
at work is such a heinous crime? Certainly not. But surely you can agree that
goofing off and trying to cover it up isn't exactly the way to win the employee
of the month award?
The truth is that I just don't believe in making excuses. I'm
not going to defend myself unless I have solid possession of the moral high
ground.
My kids read this blog. I'm trying to teach them to take
responsibility for all their choices, good and bad, big and small. How
can I do that if I'm not willing to set the example?
If I found somebody in my company working on a pet project
at work, I imagine I would handle it pretty much like Tim did: I would be more
disappointed in the company than in the individual. If people are working on
hobby code, then they're bored. In my opinion, the blame for a bored employee
splits about 80/20 toward management.
The Correction
Tim's current car is a Lamborghini, not a Ferrari.
|
| |
Tuesday, May 20, 2008 Choose Your Manager
|
The Context: Being a slacker
In the early months of 1994 I wrote a program to play
Scrabble.
It was a magnificent piece of code, easily the fastest
Scrabble program I had ever seen. The implementation (in C) was based on the
GADDAG data structure and algorithm explained in a paper by Steven
Gordon. The resulting program was so fast that computer moves were
instantaneous.
Unfortunately I had to keep my software a secret. The
lawyers at Hasbro love to send nastygrams
to anyone who implements a Scrabble program. These guys are a lot like the
lawyers at the RIAA who have become famous for their lawsuits against toddlers
and family pets. The Hasbro legal team is merely less prolific.
Actually there was one other reason why I kept my Scrabble
program a secret:
I wrote the entire thing on company time using my employer's
hardware.
At the time I was working for Spyglass. We had recently
finished shipping version 2.0 of our flagship product, Spyglass Transform.
Things were a bit slow, so I was discreetly hacking on my pet project. I setup
my office such that nobody could see my screen from the door.
Unfortunately, I gave myself away. At times when I was working
on my Scrabble code when my boss (Tim Krauskopf) walked in the door, I would
flinch and quickly try to minimize the window. About the third time it
happened, Tim said, "All right, what game are you playing?" Suddenly I wished
I actually was playing something like Doom. In that moment, working on
non-company software seemed more shameful than wasting time in a first-person
shooter.
I offered a full confession and an apology.
I don't remember what he said.
I do remember that he never mentioned it again.
The Inflection Point: Day 1 of the browser wars
A few weeks later, on April 4th, 1994, Tim once
again stepped into my office. He said he needed to talk with me somewhere offsite.
We left.
In that conversation, Tim told me that the Spyglass management
team was making the decision to abandon our then current business (scientific
data visualization tools) and get into the web browser business. He asked me
to immediately begin working and commit to giving a demo to an important
potential customer a few weeks later.
I shifted into high gear. I came in at 5:30 am every day
for weeks. I was writing code at a fantastic pace. The demo was successful.
We showed them our browser. It didn't have as many features as NCSA Mosaic,
but it was a lot faster. We didn't tell them that it was written from scratch
in less than a month by a kid who had never written any networking code
before. We got the sale.
And that was just the beginning. The project started out
with me alone, but two years later it was a team of 50 with me in a leadership
role. We were the first Internet IPO. We licensed our browser to Microsoft
and it became Internet Explorer.
That conversation on April 4th ended up being a
defining moment for my career. And it happened just a few weeks after Tim
caught me skiving off on the job.
What the %#$@ was Tim thinking?
The Premise: Tim made a wise choice
I'm going to surface a lesson from this story, but you
should probably read no further if you disagree with Tim's decision.
And if you do, I can't really argue with you. I'm not going
to defend my actions. I was being irresponsible, even dishonest. There are no
excuses for behavior like that.
Maybe Tim should have fired me. At the very least, maybe
Tim should not have entrusted the development of his company's next big product
to someone who lacked the discipline to stay on task.
Still, the overall results deserve some kind of voice in
this argument. Tim and his company were very successful. Tim drives a Ferrari
now. Tim's choice worked out very well for me, but it turned out pretty well
for Spyglass too.
The Lesson Learned: Choose your manager carefully
This story may seem like it's about me, but really it's
about Tim Krauskopf.
I've never asked Tim why, so I guess I don't really know. Maybe
he just believes that being obsessive to a fault about code isn't the worst
character defect for a developer to have.
I spent five years at Spyglass. The incident described
above is just one of many that left me in awe of Tim's leadership skills and discernment.
I don't think I ever really figured out what makes that guy tick, but I still
think of him every time I measure myself as a manager and leader.
The part that seems most astonishing to me is that he kept
his emotions in check. Didn't he feel any sort of disappointment or even
betrayal? Why didn't he overreact? That's what most people would have done.
I probably would have.
All I really know here is this:
Your manager plays an enormous role in determining the
success of your career. Choose your manager very, very carefully.
- Choose somebody smart.
- Find somebody who is not merely smart, but "emotionally
smart".
- Find somebody who is not merely smart, but wise.
- Choose a person from whom you can learn.
Just to be clear, I am not saying you are powerless. Your
success is mostly determined by your own abilities and choices.
But one of those choices is the decision of who you are
going to work with.
Don't take that choice lightly.
Update: See my follow-up.
|
| |
Monday, May 12, 2008 Upcoming Gigs
|
|
In July I will be giving a keynote address at GUADEC, the
annual GNOME conference, being held this year in Istanbul.
In September I will be speaking again at the Business of Software conference,
being held this year in Boston.
And finally, for something completely different, don't miss
the Jam Session at Tech-Ed on June 3rd. Several of us minions from
SourceGear are planning to take the stage and give our rendition of Pinball Wizard. It'll
be me on acoustic guitar, our development manager Jeremy Sheeley on bass, and our product
manager Paul Roub playing the Evil
Mastermind Schecter PT that will be given away later that week.
And BTW, none of us will be dressed as The Evil Mastermind. This
should be obvious, as The Evil Mastermind would never do something actually
cool like a song by The Who. Rather, he would do something like a Kelly
Clarkson song and mistakenly believe it was cool. :-)
|
| |
Friday, May 09, 2008 Three Personal Highlights
|
|
It's Friday afternoon, so I hope my readers will indulge me
a bit of gloating over three recent moments of personal triumph:
- Playing the 12th hole at my regular
course, I made a shot from about 80 yards out. Unfortunately, it was
for par. :-(
- This past Saturday I walked the Indianapolis
half marathon in a personal record time of 14:57 per mile.
- After setting up my new subwoofer, I put in the Return of the King DVD and
zoomed ahead to the Minas Tirith battle scenes. Seconds later, my younger
daughter ran upstairs and cried, "Daddy, your movie is shaking the whole
house!"
All three of these were moments of great personal
satisfaction. The third one was the only one to result in maniacal laughter.
|
| |
Monday, April 28, 2008 Windows XP and the importance of listening to customers
|
|
On June 30, Microsoft will discontinue Windows XP in an
effort to force all PC users onto Windows Vista. As this date gets closer and
closer, they have stubbornly insisted that they will not change their plans.
Last week, Microsoft CEO Steve Ballmer blinked,
but in a rather confusing way:
- The sensible part: Ballmer claimed that they might
reconsider their decision if that's what customers wanted.
- The confusing part: Ballmer appeared to be completely
ignorant of the multitudes of people publicly begging for XP to get a stay
of execution.
Just want kind of customer feedback would Ballmer be able to
hear?
It's really not that hard to find overwhelming evidence of
large numbers of people who want to continue using XP. A simple Google search
for the string "save
windows XP" results in over 200 thousand hits.
Oh yeah, I forgot -- Steve probably doesn't use Google. Maybe
the problem is that he just can't find any XP fans on the Internets? :-)
Or maybe Ballmer is following the now fashionable trend of
counting an Internet person as only 3/5 of a real person?
- Sure, Ron Paul has lots of fanatical supporters, but they're
mostly just people on the Internet, and they don't really count.
- Sure, Barack Obama has raised truckloads of money, but he
mostly gets it from people on the Internet, and they don't really count.
- Sure, over 170 thousand people have signed the Save Windows XP petition,
but those people are on the Internet, so they don't really count.
Or maybe this is simply the most arrogant corporate decision
in history? Maybe Steve can hear all of these desperate cries but he simply
doesn't care.
Power corrupts. Every monstrously large organization
eventually turns into, well, a monster. The next step is for all these
organizations to start borrowing each other's tactics. Hey Steve, why not
start waterboarding everybody who won't switch to Windows Vista? Apparently
it's legal. :-)
The whole situation is most annoying to those of us who are
running small software companies. Unlike Microsoft, we actually have to listen
to our customers. When they tell us to jump, we ask how high.
Microsoft is telling millions of its customers to jump. Out
of principle, I am doing my best not to comply:
- I'm typing this blog entry on Windows XP.
- That instance of Windows XP is actually a VMware image
running on my Mac. I started using a MacBook Pro with Leopard a couple
months ago. And I love it.
- I just donated fifty bucks to the ReactOS project. I'm figuring that in
the long run, I've got a better chance of getting Windows XP from ReactOS
than from Redmond.
Some of my readers are horrified at this blog entry. "But
Eric, aren't you a .NET developer?"
Yes, I am. My overall posture toward Microsoft is still
friendly. I still use Windows every day. I still love Visual Studio. C# is
still my favorite language ever. Heck, I'm even a big WPF fan, so I'd actually
prefer to see the world switch to Vista. I've used Vista, and while I didn't
find it to be a compelling "must-have" upgrade, I rather liked it.
But none of this means that I'm going to give my blanket
agreement to every decision Microsoft makes. In this case, I object to
Microsoft's plan, not because Vista is so awful, but rather, because ignoring
customers is so wrong.
|
| |
|
|
|
|