On Tue, Aug 01, 2006 at 12:18:10AM -0400, Toby Pennington wrote:
(I fixed the spelling errors in the original text.)
> Someone mentioned to me that, " Ten Tec has badly mismanaged the
> software design task, and they have failed to maintain internal revision
> control and documentation, and the firmware is now a twisted road of
> undocumented patches and fixes by many hands, some of which are no
> longer around. "
Software design, programing and project management are all very
difficult tasks. Most people who write programs have no real idea of how
to design something so that it works and can be maintained.
Young programmers think that code must "look pretty", use all sorts of
obscure techniques, etc or drastically over complicate things. A long
time ago I described someone as "there are 1,920 characters on the
screen and he feels that he must put something in each one".
Their whole concept is that something they do must show how much better
they are at programing than you, and if you try to read their code, you
can't.
I once turned down a job because they wanted someone who wrote "quick
and dirty code" that ran fast and looked good. I write "slow and stupid"
code that never crashes and anyone can look at and figure out what it
does, how it does it and fix it.
Except for the DSP code (which was purchased), the Orion code was
written by one person. I have not seen it, so I won't comment on it (not
damning praise, simply I have no information). From what I hear, it was
well planned and well done.
Like every program longer than one instruction, it has its bugs. That's
nothing new and is to be expected.
One of the problems with the Orion is that the genius behind the code in
it left the company. With him gone, the task of maintaining the code and
fixing bugs was left to lesser programmers, under a great deal of
pressure.
IMHO it's a management problem. You can build a radio with almost any
engineer. If they leave, you can get another engineer and they can take
over. Software is very different. You need to balance both the need for
control and management of change, keeping records, developing
documentation, quality assurance, etc with the desire to have one person
"do it all".
Instead of looking at the Orion as if it were a large software
development project and hiring a system integrator to determine what
needed to be done, and hire an expensive team, they hired a programmer
and bought a library.
They fell for the illusion that one person, or a small group of
programmers can do it all. They can't. In the real world, a programmer
can not document his own code and most likely not test it.
I'm a rare person in the business in that I can write code that does not
"break", test programs and figure out how they work and fix bugs, and
document them so that a new programmer can take over or a nontechnical
user can use them. HOWEVER, I also know that I can't document my own
code, can't find all of the bugs, etc.
I recently wrote a posting to this list on this subject (and if I
remember correctly, blogged it), look it up if you would like.
IMHO in order to make the Orion shine,TT has make some tough choices and
spend some serious money. Personally, if I was given the project, I'd
redesign the OII to use different processors that require more commonly
available programing skills. I would also have to assemble a team, which
would cost serious money.
That's the main difference between the Japanese companies and TT. Not
only do they have a pool of well trained, disciplined, experienced
talent to draw from, they have the money. For every $10,000 TT has to
spend they can spend a million. If a person does not perform to their
satisfaction, or does not "fit in", they can move him to the department
programing VCRs or talking toasters and move in a star from somewhere
else.
That's also the difference between TT and the open source software
defined radio projects. The most popular one, is a very simple radio
with all of the work being done in software on a personal computer.
Since the programing and management is done by volunteers who look at it
as a labor of love, not something they have to make money on, they have
a much larger pool of people working on it and many of them are better
talented than one can hire where TT is, for the wages they can pay.
My estimate is that the cost of a properly sized software development
team would be $3m to $5m a year. That would come out to sales of around
3,000-5,000 units a year for a $5,000 radio. The first year they would
have to stop selling Orions at all, or people would be faced with buy an
OII now, in a year it will replaced with an OIII that is so different,
that there will be no software changes on the O and OII.
They might be able to upgrade and O and OII to an OIII, but it would
cost around $2,000. How many people would pay that?
> Perhaps someone could decipher this for me in plain words, but it seems
> to indicate that TT could use some expert outside programming help.
I hope I just did, but I may have confused it more. :-(
They need more than outside programing help, they need a new mindset, a
new approach and a lot of money. Faced with a choice of spending all
that money and time to "start over" and "do it right", or just muddle
along with what they have, I don't think the can justify the time and
the money.
After all, we are talking about a $5,000 radio that is used in a hobby.
We are also not talking about something that is broken or unusable, we
are talking about something "with problems" that most users find
perfectly fine.
> The same person I quoted above also said, "The Orion DSP code and
> control interface is really a pretty routine and light weight project
> for those that are familiar with this type of thing. There are hundreds
> of professional programmers that work every day with sound card and
> other audio DSP apps at the core level, and thousands of programmers
> that are very familiar with embedded user control hardware boxes that
> could knock out the necessary code in a few weeks from the ground up."
Sorry, but that is so naive that I have to laugh. While there is nothing
in the Orion that I would say is "rocket science", it's more like a PVR
(how big is the software staff at TiVo?*), putting it all together is
what costs money. Not only does each piece have to work, they have to
work together. ALL of the time.
* I have no idea of what goes into a TiVo, but NDS, the company that
makes a competing unit is located here and employes hundreds of people.
I think their unit is sold by the "Dish" network in the U.S. and Sky's
SATELLITE service in the U.K.
> Another rewrite of the code by some really good professionals?
Sure, send in your money to the "OIII re-development fund", We're only
$5,000,000 away from making little Timmy's dream a reality.....
(Flash a picture of a sad little boy in a wheel chair with a microphone
in one hand, a bug in the other, and a pair of much too large headphones
falling off his head.)
:-)
Geoff.
--
Geoffrey S. Mendelson, Jerusalem, Israel gsm@mendelson.com N3OWJ/4X1GM
IL Voice: (07)-7424-1667 Fax ONLY: 972-2-648-1443 U.S. Voice: 1-215-821-1838
Visit my 'blog at http://geoffstechno.livejournal.com/
_______________________________________________
TenTec mailing list
TenTec@contesting.com
http://lists.contesting.com/mailman/listinfo/tentec
|