I never cease to be amazed at how little the average developer
knows about economics. I mean, I don't claim to be an expert, but I
have taken a college class or two and read
up on the basics. Even just understanding the basics, though,
gives one surprising insight into why things happen the way they do
in the marketplace.
For instance, we are in the process of hiring a new developer at
my company. We figured out what qualifications we were looking for
and determined about how much salary we wanted to pay. It quickly
become apparent, however, that we weren't offering a high enough
salary to attract the caliber of candidates we wanted. So what I did
was to go on the newsgroups and start whining about not being able to
find any good Delphi programmers. Okay, no, I didn't really do that.
What we did, of course, was to increase the salary that we were
offering. Simple supply and demand issue: There wasn't enough of a
supply of good Delphi programmers at the price we wanted to pay, so
the solution is to be willing to pay more – a no-brainer decision,
really. Once we did that, we found that we have been able to find
plenty of valuable candidates. Simple economics.
One common area that I see developers totally misunderstand is
that of Delphi pricing. One thing you learn in Economics 101 is that
the vast majority of companies are “price searchers”. That is,
they are constantly searching for a price that will maximize their
profits. (Some companies, mainly producers of commodities, are “price
takers”. That is, they take whatever price is offered. Farmers are
a good example. A corn farmer can only sell his corn at market price.
If he asks for more, the market will simply buy corn from another
farmer that will take the offered price). Borland is definitely a
price searcher. They can set their prices as they please, and will do
so to maximize profit. Of course, the market will respond to any
particular price by demanding a certain number of units at that
price. Price searchers are constantly adjusting prices to maximize
the amount of money they make.
Note that they don't set price to maximize revenue, but rather
profit. The cost of goods sold is a factor here as is the cost of
simply having customers. Sometimes a company will actually price a
product in order to limit the number of customers they have in order
to maximize profits as sometimes having additional customers causes
decreased profits. (That may be a bit counter-intuitive, but think of
a product that has high production and support costs.) So for
example, sometimes doubling your price can increase profits even
though it drastically reduces sales. If doubling the price cuts the
number of customers you have in half, but also cuts your production
and support costs in half as well, your profit increases. (This is a
very simple example, and it is actually hopelessly more complicated
than that, but you hopefully get the basic idea).
So Borland, having learned from years of experience and copious
sales data, is quite aware of what effect various prices have on
sales. No doubt by now they have a pretty good idea what price will
maximize their profits and how price changes will effect sales.
Where it gets really interesting is pricing outside of the United
States. Europe, of example, is a completely different market than the
US. Taxes, the demand curve, and the number of potential customers
are all different. Borland clearly believes that they need to – and
can – charge more in Europe than in the US. The price difference is
not related to the exchange rate between the Euro and the Dollar; it
has everything to do with maximizing profits. Clearly Borland
believes that a higher price in Europe – again, a completely
different market – will mean higher profits. That's why Delphi
costs more in Europe. I suppose Europeans could view this as “price
gouging”, but in reality, it's just the market signaling to Borland
that it will bear a higher price than will the American market.
Another economic blunder that developers frequently make is
ignoring economies of scale. Borland is a big company that is
publicly traded. Many Delphi developers work in small, private
companies. Borland has legal obligations, overhead costs, and market
demands that most little-shop developers don't even know about, much
less take into consideration. Borland's main competition is one of
the largest corporations in the world. Borland faces investors who
expect a return. Borland has to deal with major entities in the media
that can write things that can have profound effects on Borland's
business. All of this combines to make running Borland a complex and
difficult task that most of us simply don't comprehend.
So I love it when a developer posts in the newsgroups something
like this: “Borland should just hire two college students to go
through and fix all the Delphi bugs in Quality
Central.” Well, that sounds great, but is clearly isn't that
simple. First, fixing bugs in a big product like Delphi is no small,
trivial task. Finding people with the talent and skill to do Delphi
bug-fixing isn't easy. And they certainly aren't going to be cheap.
The notion that some college interns can do it is quite naïve.
The economic blunder comes, though, in thinking that the cost of
fixing all those bugs is merely the salary of a couple of developers.
First, employees aren't cheap, no matter who you hire. Human capital
is by far the most costly – and valuable – part of doing
business. Secondly, I don't know what your development process is
like, but bug fixing at Borland is more than a guy hacking out some
code. Every fix has to be extensively tested for efficacy and
correctness, and then the whole product has to be regression tested
to ensure that any given fix doesn't actually break something else.
Fixes need to be incorporated into shipping product and distributed
to existing customers. The documentation needs to be updated. And who
know what else needs to be done? The point is this: the costs of
things that many people think are small are in fact much larger than
the average developer appears to realize.
The economics of running a business like Borland isn't something
about which I claim to be an expert. But I do know that I don't
know enough to be able to claim to know better than Borland.
Something to consider before you fire off a post in the newsgroups
that starts out “Borland ought to just....”