From: Jonathan Kirwan
Subject: Re: To C or not to C
References: <email@example.com> <01c2b41a$cafe2d80$a893eb41@stupidwin95>
X-Newsreader: Forte Agent 1.92/32.572
NNTP-Posting-Date: Mon, 06 Jan 2003 09:32:27 GMT
Organization: AT&T Broadband
Date: Mon, 06 Jan 2003 09:32:27 GMT
On Mon, 6 Jan 2003 09:07:20 -0000, "Kevin Aylward"
>Jonathan Kirwan wrote:
>> On Sun, 5 Jan 2003 16:41:49 -0000, "Kevin Aylward"
>>> One reason is that for every person
>>> who can do asm, there are probably 10-100 times as many who can do C.
>> There is a reason for some of that. Good skill at assembly
>> operates at a different level of knowledge. One which is a
>> little more technical and detailed. There is a reason why
>> undergrad computer science courses introduce assembly as the 2nd
>> year, and not the first year, while usually introducing C as a
>> freshman class. (I've taught these classes.)
>> It's better to have skills at various levels of knowledge, from
>> assembly, to C, to BASIC, and so on. The more breadth and the
>> more layers one can mentally operate on, the better.
>So long as you can switch off the lower level details.
>> But just as for every analog engineer who can design from DC to
>> daylight, from transistor level to LSI IC level, there are 100
>> times as many who can only paste some digital logic together.
>> But there are times when you'd rather have the higher level of
>> technical skills because competition and the project area make
>> this a decided advantage. You simply can't always afford to use
>> an expensive DC-DC coverter brick, for example, when some PWM
>> software, a transistor, a coil, and a diode is all that's really
>Actually, I think this is a poor example.
Agreed. But what do you expect for free?
>> Assembly does come in handy, here and there. As you said,
>> "horses for courses."
>>> I would agree that the distinction is not really between embedded
>>> verses say, Windows or Unix applications, as there are large numbers
>>> of embedded applications where 100k to 1Meg+ code sizes are the norm.
>> There are, as evidenced by cell phones as just one such example.
>> But in my universe, placing a complex hybrid in a TO-8 can for
>> example, I don't get to have those kinds of nearly unlimited
>> resources. If I'm lucky, I have 4k of ram. An external memory
>> bus is simply not in the cards.
>Luxury, sheer luxury. Of course, we had it tough. We used to work 25
>hours a day, pay pit owner tupence a week, and when we came home our dad
>used to slice us in two with a bread knife.
Hey, it's what I'm doing for pay. What can I say?
>>> Its the size of the project that matters.
>> No, that's not the determiner. You should be far more careful
>> of making such blanket statements, given your penchant to
>> warning others about making the same.
>> It's *all* the factors which matter. Not just the size.
>It was assumed that "size of the project" automatically included what
>inherently goes with a large project. Complexity is usually directly
>liked to size. The exceptions are not worth noting.
It's my world, Kevin. You can ignore it if you like. But it's
>>> I would say that most projects
>>> nowadays are the big, difficult ones,
>> See below, I'll suggest one to you.
>>> all the easy ones have been done,
>> A far too blanket statement leading you to an incorrect
>> conclusion. First, because all the easy ones haven't been done.
>Any that matter have.
An easy assertion, I suppose, Kevin.
>This statement is a probabilistic one, and I agree I did not phrase it
>well. I meant projects that will make large amounts of money. Sure,
>they may be a few here and there at odds with this but overall, the only
>guaranteed way to make a small fortune, is to start with a large one,
>and lose some of it.
Ah, I'd forgotten your mental focus.
>> Second, because even if they had, this doesn't say that assembly
>> is a bad choice for more complex ones (see above.)
>> And what the heck, let me give you an example of an easy one
>> which hadn't been done until I did it. I used a PIC12F629 as a
>> power-on reset, brown-out detector, product ID, plus EEPROM chip
>> with manual switch input for another CPU. Was easy and lots
>> cheaper than other options. Didn't take long to do and I can't
>> buy exactly what I needed off the shelf.
>But you miss the point. This is all chicken feed. This won't make much
>money. The idea is that if you want to hit the big time, is bloody
>difficult. If it were easy we would all be as rich as Bill Gates.
I'm not looking for power, Kevin. And the target you are
looking at is about that. One can make a few million or more
just in the cracks where I'm at. It's enough for me.
>The world is far to complicated nowadays to achieve much without
If you are looking to meet the big boys on their turf, I suppose
that's so. There are other paths, in life.
>>> well part from yet again another washing machine comtroller, but who
>>> wants to do them:-)
>> To each their own, eh?
>>> I find it much nicer to be working on systems where you don't have to
>>> worry about the lower level mundane details. There is a lot more
>>> interesting stuff going on, imo.
>> The reverse could also be said, Kevin. That the interesting
>> stuff is in dealing with those details in order to make a
>> product that does more with less than anyone else has managed
>> and thus producing a cheaper product with fewer elements needing
>> calibration effort and providing better repeatability and
>> accuracy, as well. A win-win.
>Ahmmm. Ok, this might sound a bit condescending, but its not meant to.
If it sounds that way, it's probably because it is.
>I see where you are coming from, but I got over this attitude at least 10
Yup, that's condescending, all right.
>Essentially, all this is doing is being a follower to the
I do *not* agree with that, at all. Nothing I've said should be
construed to mean that.
>x-ing t's and dotting i's.
Nope. My work includes developing new sensor systems and
combinations that haven't been done before. I wouldn't call it
as you do. And I enjoy it, too.
Yes, I'd say you are being condescending; in spades.
>Sure, we need such diligent people, but its not for me.
Definitely, in spades.
>Next time your working on some small itty bitty detail, sit back, and
>truly ask yourself. Why am I really doing this shit?
Kevin, reread what you are saying here, someday. You have no
idea what I was saying, if you can say this about it. I suspect
this is some internal record you have playing in your mind about
a lot of people. And it's just playing again, without good
>Summed up, "Life is what happens why your busy making other plans" -
Yes. And I was particularly sad when he was killed. Thanks for