|
Book Review Hackers and Painters - Reviewed by: Roy Troxel
Book Review:
Hackers and Painters
By Paul Graham
O'Reilly Books
Sebastapol, CA.
259 pages
Review by Roy Troxel
This is essentially a collection of essays by a multi-talented
Web developer whose qualifications for writing a book like
this are considerable. Graham and his partner Robert Morris
built the ViaWeb storefront platform, which they sold to Yahoo
in 1998 for $49 million. The jacket blurb also adds that Graham
"has worked as a consultant to the US Department of Energy,
DuPont, and Interleaf. He has a BA from Cornell and a PhD
in Computer Science from Harvard, and studied painting at
RISD and the Accademia di Belle Arti in Florence."
In other words, the author's opinions are largely from experience,
with a good deal of academic research as well. What does this
have to do with the work-a-day Webmaster? Well, I think his
ideas about the future of computing are on target, plus his
experiences running Viaweb are helpful to anyone wanting to
start a startup. (In other words, this isn't just an ego-exercise.)
Graham suggests that you read this book not in any linear fashion,
but pick out a chapter at random, one at a time. Actually, you
should read each chapter two or three times, because there is
some great information and advice in each one, and it isn't
all obvious after one reading. This isn't a technical book as
such, but as the subtitle suggests, it's about "Big ideas from
the computer age." Some of the essays are already available
at Graham's Web site: www.paulgraham.com
So what's the connection between painting and hacking? Well,
the key element seems to be design:
Good design is simple.
In math it means that a shorter proof tends to be a better
one. In writing it means: say what you mean and say it briefly.
When you're forced to be simple, you're forced to face the
real problem. When you can't deliver ornament, you have to
deliver substance.
(Actually, Graham isn't the only person to combine hacking
and painting. Justin
Simoni of Dada
Mail has been doing this actively for several years.)
As I see it, a site's design doesn't have to be artistic
or even "look good". It has to provide a convenient interface
for users to follow and, in this respect, simpler is always
better. (Also cluttered Web pages make for slow downloads,
but you probably already knew that.)
Graham has other opinions as well:
Why Java is Over-Rated by Managers
Let's take a look inside the brain of the
pointy-haired boss. What he's thinking is something like this.
Java is a standard. I know it must be, because I read about
it in the press all the time. Since it is a standard, I won't
get in trouble for using it. And that also means there will
always be lots of Java programmers, so if the programmers
working for me now quit, as programmers working for me mysteriously
always do, I can easily replace them.
Graham uses a "let's see what we find"
approach when developing programs. He doesn't play by the
rules, but rather puts a prototype program together, tosses
it into the compiler, and then conscientiously finds the bugs
and works out the details of the program. (This is like the
way a painter first draws a rough sketch or design, and then
layer by layer fills in the details.)
Politics, Economics
and Nerds
Graham adds his opinions on economics, politics
and why nerds (myopic, unathletic chess buffs) get beat up
by high school bullies. Possibly he's casting too wide a net
here, and you won't agree with some of his opinions, but that's
what makes this book interesting:
Suppose you own a beat-up old car. Instead
of sitting on your butt next summer, you could spend the time
restoring your car to pristine condition. In doing so, you
create wealth. The world is - and you specifically are - one
pristine old car the richer. And not just in some metaphorical
way. If you sell your car, you'll get more for it.
In restoring your old car you have made yourself
richer. You haven't made anyone else poorer. So there is obviously
not a fixed pie [of wealth].
This is why so many of the best programmers
are libertarians. In our world, you sink or swim, and there
are no excuses. When those far removed from the creation of
wealth - undergraduates, reporters, politicians - hear that
the richest 5% of the people have half the total wealth, they
tend to think "injustice"! An experienced programmer would
be more likely to think "is that all?" The top 5%
of programmers probably write 99% of the good software.
And so Graham ties it all together: economics,
politics, programming and nerds. If you don't agree with him,
just remember that he has made millions partly on the belief
system outlined above.
Running a Business
"The Other Road Ahead" and "How
to Make Wealth" deal with Graham's business career as
one of the founders of ViaWeb.
For the first week or so we intended to make
this an ordinary desktop application. Then one day we had
the idea of making the software run on our Web server, using
the browser as an interface. We tried rewriting the software
to work over the Web, and it was clear that this was the way
to go. If we wrote our software to run on the server, it would
be a lot easier for the users and for us as well.
All from the Web
There is a name now for what we were: an
Application Service Provider, or ASP.
...To the extent software does move onto servers, what
I'm describing here is the future.
Not necessarily. This has been done before, in the early
days of business computing, when computers consisted of "dummy"
terminals used for entering data while all the computing was
done on rented mainframe time.
Graham compares the push toward ASPs with the development
of the automobile industry:
For the first twenty or thirty years, you
had to be a car expert to own car. But cars were such a big
win that lots of people who weren't car experts wanted to
have them as well.
Computers are in this phase now. When you
own a desktop computer, you end up learning a lot more than
you wanted to know about what's happening inside it. But more
than half the households in the US own one. Ordinary users
shouldn't even know the words "operating system,"
much less "device driver" or "patch."
With Web-based software, most users won't
have to think about anything except the applications they
use. All the messy, changing stuff will be sitting on a server
somewhere, maintained by the kind of people who are good at
that kind of thing. And so you won't ordinarily need a computer,
per se, to use software. All you'll need will be something
with a keyboard, a screen, and a Web browser. Maybe it will
have wireless Internet access. Maybe it will also be your
cell phone. Whatever it is, it will be consumer electronics:
something that costs about $200, and that people choose mostly
based on how the case looks. You'll pay more for Internet
services than you do for the hardware, just as you do now
with telephones.
Graham here is talking about the "always on" concept which
might come to pass as wireless technology becomes an increasingly
popular form of computing.
"If you can imagine
someone surpassing you, you should do it yourself."
Economically, you can think of a startup
as a way to compress your whole working life into a few years.
instead of working at a low intensity for forty years, you
work as hard as you possibly can for four.
Users and Benchmarks
Software should do what users think it will.
But you can't have any idea what users will be thinking, believe
me, until you watch them. And server-based software gives
you unprecedented information about their behavior. You're
not limited to small, artificial focus groups.
When you have the users on your server, you don't have
to rely on benchmarks, for example. Benchmarks are simulated
users. With server-based software you can watch actual users.
To decide what to optimize, just log into a server and see
what's consuming all the CPU.
A New Tactic for Evaluating
Business Competitors
During the years we worked on Viaweb I read
a lot of job descriptions. A new competitor seemed to emerge
out of the woodwork every month or so. The first thing I would
do, after checking to see if they had a live online demo,
was look at their job listings. After a couple years of this
I could tell which companies to worry about and which not
to. The more of an IT flavor the job descriptions had, the
less dangerous the company was. The safest kind were the ones
that wanted Oracle experience. You never had to worry about
those. You were also safe if they said they wanted C ++ or
Java developers. If they wanted Perl or Python programmers,
that would be a bit frightening...
If I had ever seen a job posting looking
for Lisp hackers, I would have been really worried.
There's a lot more in this book, and for such a low price,
it's well worth the purchase. (Or wait until it reaches your
local library.)
Too busy to visit all the tech forums? Subscribe to The Web Server Times
to get news about servers, security and new technologies. All from the
Webmaster's viewpoint. Check us out at www.webservertimes.com
Rick Contrata
www.devNIC.com - Domain Name Registration, Web Hosting, Articles, Tutorials and An Internet Business Resource Directory…Coming Soon!.......Blogware.
Copyright-2004 - This article is free for reproduction and inclusion on your website, provided that it's used in its entirety, includes the live links and this copyright statement. Please play by the rules.
|