Mailing List Archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [tlug] C vs. other languages (was: tlug-digest Digest V2004#194)



On Sat, 31 Jul 2004 11:46:22 -0400, Josh Glover <tlug@example.com> wrote:

> Most professional developers [...] learn about many different languages in
> order to make the best decision about how to implement each chunk of code.

True.

> Choosing C for every project without even thinking of alternatives is
> [bad]

Agreed also. However, it takes more for me than for you for an alternative
to be chosen. Probably because I know fewer alternatives, and those that I
do know, I know not particularly well.

> I disagree rather strongly with you about MS not being able to program
> worth shit. It is frankly very hard to write an OS that runs on
> machines cobbled together from various shitty pieces of hardware that
> were made in some Taiwanese basement by a ten year old.

Device drivers aren't the problem with Microsoft's offerings. In fact, I
believe that most of the stability issues with NT4 stem from dodgy device
drivers *not* written by Microsoft.

The whole design of Windows is cock-eyed, and the biggest problem is that
blasted Internet Explorer. Who else produces a browser capable of changing
O/S core files? Imagine the outcry if Mozilla started replacing the Linux
kernel (assuming it could)! Who else produces a browser which divides the
world into various "zones" (which can be defeated with IE's leaky cross-zone
vulnerabilities) that the average user doesn't understand in the first
place? Who else writes a word processor that can send (infected) e-mail? I
could go on like that for ages.

> Programmers, especially Open Source types, seem to think that MS is bad
> at programming because of the bugs that they will not fix. This is
> business skill, not lack of technical skill.

Nobody can produce absolutely bug-free code. However, some of the bugs are
so huge that there *had* to have been a lack of programming skill somewhere
for them to have appeared in the first place. And what about the patches
which fix one thing and b0rk another 10? That doesn't look like business
skill. Why are Nimda and CodeRed still rampant? Because admins hesitate to
patch their machines in case something else gets broken. Why did Microsoft
itself fall victim to whatever worm it was that buggers up MS-SQL server?
Why hadn't they applied their own patch?

> Sadly, the consumer soft-ware market will tolerate disturbingly low
> quality, but they will not tolerate having to wait six more months, or not
> having a word count feature in their word processor. So in a way,
> producing zero-defect software is bad business for Microsoft.

That may have been so a few years ago. The tide is turning now. More and
more people are looking at alternatives to Microsoft. Membership of the LUG
I co-founded has doubled in the past few months, and 71 year-old bloke I
know who has just discovered Knoppix (thanks to a not very subtle hint from
yours truly after he kept on complaining about being screwed by M$'s XP
activation code fraud) was converted in 5 minutes flat and is on the war
path converting other victims of the same fraud in his neck of the woods.

European governments are gradually switching from Windows to Linux, too.

> > > Press, and they all go out of their way to point out that in a
> > > tradeoff between programmer time and machine time, programmer time
> > > almost always wins.
> > 
> > Heh - no kidding! Coming from Microsoft that's hardly a surprise.
> 
> Perhaps it would be a surprise to you to know that there is no diff-
> erence between MS and non-MS books on this issue.

Not really, no. I should have added a smiley after my comment because it was
intended tongue in cheek.

> > libpcre maybe? Perl-compatible regular expressions in C code. Great
> > stuff, you should try it.
> 
> I know it, and have used it in the unfortunate case when I am stuck need-
> ing to do regexps from a C program. It is not as convenient as in Perl,
> for certain. You can't just go "$str =~ /^foo/, now can you?

No, but for simple matches like that you can always use strcmp & co.

if ( !strncmp(str,"foo",3) ) { ... }

More complicated matches and replacements will always be made easier in C
with libpcre than with straightforward C programming, but nowhere near as
easy as with Perl, that's true. Then again, your application won't engender
a giant memory footprint because of the interpreter needed to make it run.

"So what?", You may ask. On the whole, tell a USian client that they'll need
a box with a 2.4GHz CPU and 512MB of RAM to run your application and they'll
say "OK, let's bring in a machine like that" if they really want to work
with you. Over here the client is far more likely to say "I only have my
son's old P66 with 32MB of RAM spare. Make it run on that if you want to
work with me."

Different markets, different attitudes.

-- 
G. Stewart   --   gstewart@example.com -- gstewart@example.com
Registered Linux user #284683 (Slackware 9.0, Linux 2.6.7-em8300)
--------------------------------------------------------------
A revolving concretion of earthy or mineral matter accumulates no
congeries of small, green bryophytic plant.

Attachment: pgp00001.pgp
Description: PGP signature


Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links