Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C Programming > Maybe C is the perfect language for really good systems programmers, but unfortunately not-so-good systems and applications programmers are using it and they shouldn’t be.

Reply
Thread Tools

Maybe C is the perfect language for really good systems programmers, but unfortunately not-so-good systems and applications programmers are using it and they shouldn’t be.

 
 
Casey Hawthorne
Guest
Posts: n/a
 
      11-04-2009
I found the quote from "Coders at Work" where Bernie Cossel is
interviewed, page 560.

I don?t want to say that C has outlived its usefulness, but I think it
was used by too many good programmers so that now not-good-enough
programmers are using it to build applications and the bottom line is
they?re not good enough and they can?t. Maybe C is the perfect
language for really good systems programmers, but unfortunately
not-so-good systems and applications programmers are using it and they
shouldn?t be.

--
Regards,
Casey
 
Reply With Quote
 
 
 
 
Tom St Denis
Guest
Posts: n/a
 
      11-04-2009
On Nov 3, 9:09*pm, Casey Hawthorne <(E-Mail Removed)> wrote:
> I found the quote from "Coders at Work" where Bernie Cossel is
> interviewed, page 560.
>
> I don?t want to say that C has outlived its usefulness, but I think it
> was used by too many good programmers so that now not-good-enough
> programmers are using it to build applications and the bottom line is
> they?re not good enough and they can?t. *Maybe C is the perfect
> language for really good systems programmers, but unfortunately
> not-so-good systems and applications programmers are using it and they
> shouldn?t be.


Maybe the real problem is not-so-good developers are developing
software.

I'm certain I could walk into an operating theatre, pick up the most
expensive tool and still kill someone. Does that mean the expensive
tool should be thrown out?

Where the idea that anyone with a text editor can be a developer, and
if they're not competent just blame the tools came from I can only
imagine.

Tom
 
Reply With Quote
 
 
 
 
Dann Corbit
Guest
Posts: n/a
 
      11-04-2009
In article <(E-Mail Removed)>,
http://www.velocityreviews.com/forums/(E-Mail Removed) says...
>
> I found the quote from "Coders at Work" where Bernie Cossel is
> interviewed, page 560.
>
> I don?t want to say that C has outlived its usefulness, but I think it
> was used by too many good programmers so that now not-good-enough
> programmers are using it to build applications and the bottom line is
> they?re not good enough and they can?t. Maybe C is the perfect
> language for really good systems programmers, but unfortunately
> not-so-good systems and applications programmers are using it and they
> shouldn?t be.


He's absolutely right. Stupid people should not program in C.

I'm not being facetious either. If you tend to do things like drive the
wrong way down one way streets or leave the house with the stove on
high, then you should seriously consider VB instead.

Or better yet, there are still spots available for asparagus pickers in
Moses Lake, WA. Besides the short picking season (leaving *plenty* of
time during the rest of the year) there is also snacks any time you
like. But you will get foul smelling urine. I guess no job is perfect.
 
Reply With Quote
 
Rich Webb
Guest
Posts: n/a
 
      11-04-2009
On Tue, 3 Nov 2009 18:11:48 -0800 (PST), Tom St Denis <(E-Mail Removed)>
wrote:

>On Nov 3, 9:09*pm, Casey Hawthorne <(E-Mail Removed)> wrote:
>> I found the quote from "Coders at Work" where Bernie Cossel is
>> interviewed, page 560.
>>
>> I don?t want to say that C has outlived its usefulness, but I think it
>> was used by too many good programmers so that now not-good-enough
>> programmers are using it to build applications and the bottom line is
>> they?re not good enough and they can?t. *Maybe C is the perfect
>> language for really good systems programmers, but unfortunately
>> not-so-good systems and applications programmers are using it and they
>> shouldn?t be.

>
>Maybe the real problem is not-so-good developers are developing
>software.
>
>I'm certain I could walk into an operating theatre, pick up the most
>expensive tool and still kill someone. Does that mean the expensive
>tool should be thrown out?


This paraphrase (anyone have a pointer to the first use?) seems apropos:

Some languages are like scissors for children. They can be used to cut
out pretty much any shape you might want out of paper. They are also
safe, with blunt tips and not very sharp, so you're unlikely to
accidentally injure yourself while using then.

C is like a surgeon's scalpel: just a handle and an edge. It can cut
practically anything and in the right hands it can perform miracles.
However, use it carelessly and you'll cut your own hands off.

--
Rich Webb Norfolk, VA
 
Reply With Quote
 
BGB / cr88192
Guest
Posts: n/a
 
      11-04-2009

"Casey Hawthorne" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
>I found the quote from "Coders at Work" where Bernie Cossel is
> interviewed, page 560.
>
> I don?t want to say that C has outlived its usefulness, but I think it
> was used by too many good programmers so that now not-good-enough
> programmers are using it to build applications and the bottom line is
> they?re not good enough and they can?t. Maybe C is the perfect
> language for really good systems programmers, but unfortunately
> not-so-good systems and applications programmers are using it and they
> shouldn?t be.
>


what do you propose instead?...

not all programming languages are created equal, and so there are a great
many factors to consider beyond a simple: competence/incompetence and
safe/dangerous graph...

C is not 'safe', but most of its main (safer) alternatives have botched
things up in ways that make them unsuitible for use in even the same domain
as C...

it is like "C is unsafe, everyone should use Java", the great pro and con
being, then, the existence of the JVM.

simple Sun answer:
split the world in half, the "Java" world, and the "everything not Java"
world...
use A or use B...

..NET is not as bad here, but still has many symptoms of the same
condition...


granted, there are JNI and JNA, but both are awkward...
..NET also has P/Invoke, which is IMO only marginally better than JNA.


and so, there is a harsh split (in practical terms):
C and/or C++;
use something different, off in its own little world where "it" is the ruler
of "everything"...


it may well be the case that the libraries need access to powerful
facilities, which may not be ideal for the application developers.

however, because of this split, the app devs still end up using C (or maybe
C++), as there is not really much of any really "better" option in this
space.


Java might be good, if it were "reinterpreted" to be a close friend of C and
C++ as far as the implementation goes, rather than a distant enemy. GCJ has
done this to some extent, but one may not necessaily bind themselves to
using GCJ (it has its own share of issues as well).

I had started attempting this, but my efforts tend to keep stalling on this
front, FWIW.

....


the race is not won until a facility is easily and generally accessible and
in the places and circumstances it is needed.

for example, one can use, for example, OpenGL and GLSL without "selling
ones' soul" to some "OpenGL Framework Developer's Kit", partitioning the
world into "code which does 3D rendering via GL" and "code which does not".

instead, it is opt-in for the cases and situations where it is needed, and
does not otherwise make too many demands.


most VM's are, however, not much the same at all...
they wish to enslave much of anything which comes in contact with them.
"all hail the VM, the rightful ruller of the programming world...".


this is one partial reason why many of my VM's parts are based on more
"standard" components, and I try to keep things modular. one "should" be
able to use the bits and pieces they choose, and not be obligated by the
rest.

hence:
native or interpreted;
my interpreter using plain PE/COFF DLL's and x86 as the "bytecode";
C is one of the main "scripting" languages, and I am (and continue to) keep
a close watch on FFI concerns (if one can easily "see" the border, it is not
good enough);
I am also using POSIX as a reference point for many aspects of
"architecture";
....


or such...


> --
> Regards,
> Casey



 
Reply With Quote
 
Tom St Denis
Guest
Posts: n/a
 
      11-04-2009
On Nov 4, 8:17*am, Rich Webb <(E-Mail Removed)> wrote:
> On Tue, 3 Nov 2009 18:11:48 -0800 (PST), Tom St Denis <(E-Mail Removed)>
> wrote:
>
>
>
> >On Nov 3, 9:09*pm, Casey Hawthorne <(E-Mail Removed)> wrote:
> >> I found the quote from "Coders at Work" where Bernie Cossel is
> >> interviewed, page 560.

>
> >> I don?t want to say that C has outlived its usefulness, but I think it
> >> was used by too many good programmers so that now not-good-enough
> >> programmers are using it to build applications and the bottom line is
> >> they?re not good enough and they can?t. *Maybe C is the perfect
> >> language for really good systems programmers, but unfortunately
> >> not-so-good systems and applications programmers are using it and they
> >> shouldn?t be.

>
> >Maybe the real problem is not-so-good developers are developing
> >software.

>
> >I'm certain I could walk into an operating theatre, pick up the most
> >expensive tool and still kill someone. *Does that mean the expensive
> >tool should be thrown out?

>
> This paraphrase (anyone have a pointer to the first use?) seems apropos:
>
> Some languages are like scissors for children. They can be used to cut
> out pretty much any shape you might want out of paper. They are also
> safe, with blunt tips and not very sharp, so you're unlikely to
> accidentally injure yourself while using then.
>
> C is like a surgeon's scalpel: just a handle and an edge. It can cut
> practically anything and in the right hands it can perform miracles.
> However, use it carelessly and you'll cut your own hands off.


Exactly. Why people attribute that to a negative quality of C I'll
never get it. The real problem is people who are poorly trained are
passing themselves off as developers. I was using C for roughly 7-8
years before I really considered myself halfway competent to even call
myself professional. Sure it only took me a short bit to learn the
syntax, but really writing maintainable and scalable software [in any
language] takes experience.

And really I don't get the drive, if programmers were [and they are] a
dime a dozen they'd get paid jack squat. Is that a good thing?

Tom
 
Reply With Quote
 
BGB / cr88192
Guest
Posts: n/a
 
      11-04-2009

"Tom St Denis" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
On Nov 4, 8:17 am, Rich Webb <(E-Mail Removed)> wrote:
> On Tue, 3 Nov 2009 18:11:48 -0800 (PST), Tom St Denis <(E-Mail Removed)>
> wrote:
>
>
>
> >On Nov 3, 9:09 pm, Casey Hawthorne <(E-Mail Removed)> wrote:
> >> I found the quote from "Coders at Work" where Bernie Cossel is
> >> interviewed, page 560.

>
> >> I don?t want to say that C has outlived its usefulness, but I think it
> >> was used by too many good programmers so that now not-good-enough
> >> programmers are using it to build applications and the bottom line is
> >> they?re not good enough and they can?t. Maybe C is the perfect
> >> language for really good systems programmers, but unfortunately
> >> not-so-good systems and applications programmers are using it and they
> >> shouldn?t be.

>
> >Maybe the real problem is not-so-good developers are developing
> >software.

>
> >I'm certain I could walk into an operating theatre, pick up the most
> >expensive tool and still kill someone. Does that mean the expensive
> >tool should be thrown out?

>
> This paraphrase (anyone have a pointer to the first use?) seems apropos:
>
> Some languages are like scissors for children. They can be used to cut
> out pretty much any shape you might want out of paper. They are also
> safe, with blunt tips and not very sharp, so you're unlikely to
> accidentally injure yourself while using then.
>
> C is like a surgeon's scalpel: just a handle and an edge. It can cut
> practically anything and in the right hands it can perform miracles.
> However, use it carelessly and you'll cut your own hands off.


<--
Exactly. Why people attribute that to a negative quality of C I'll
never get it. The real problem is people who are poorly trained are
passing themselves off as developers. I was using C for roughly 7-8
years before I really considered myself halfway competent to even call
myself professional. Sure it only took me a short bit to learn the
syntax, but really writing maintainable and scalable software [in any
language] takes experience.

And really I don't get the drive, if programmers were [and they are] a
dime a dozen they'd get paid jack squat. Is that a good thing?

Tom
-->

I thought "professional" was a designation of one being employed doing
something?...

have a job as a programmer => "professional programmer".
don't have a job as a programmer, but still a programmer => "hobbyist
programmer".

granted, WRT competence I am probably around a similar level I think to many
commercial developers, and I have maybe around 12-15'ish years C experience,
but since I don't have a job, as I see it, I am a hobbyist...

although, I guess traditionally, "professional" does not apply to unskilled
labor, such as picking fruit or being a frycook... (then again, maybe there
are professional frycooks around, I don't know...).


or such...



 
Reply With Quote
 
Lew Pitcher
Guest
Posts: n/a
 
      11-04-2009
On November 4, 2009 11:41, in comp.lang.c, BGB / cr88192
((E-Mail Removed)) wrote:
[snip]
> I thought "professional" was a designation of one being employed doing
> something?...
>
> have a job as a programmer => "professional programmer".
> don't have a job as a programmer, but still a programmer => "hobbyist
> programmer".


I agree, in as far as this goes.

But...

I retired from writing computer programs for a living; I no longer have the
job as a programmer, but still have all the professional skills, knowledge,
and abilities. Can I not refer to myself as a "professional programmer,
retired", or must I now downgrade myself to "hobbyist programmer"?

[snip]

--
Lew Pitcher

Master Codewright & JOAT-in-training | Registered Linux User #112576
http://pitcher.digitalfreehold.ca/ | GPG public key available by request
---------- Slackware - Because I know what I'm doing. ------


 
Reply With Quote
 
Tom St Denis
Guest
Posts: n/a
 
      11-04-2009
On Nov 4, 11:41*am, "BGB / cr88192" <(E-Mail Removed)> wrote:
> I thought "professional" was a designation of one being employed doing
> something?...
>
> have a job as a programmer => "professional programmer".
> don't have a job as a programmer, but still a programmer => "hobbyist
> programmer".
>
> granted, WRT competence I am probably around a similar level I think to many
> commercial developers, and I have maybe around 12-15'ish years C experience,
> but since I don't have a job, as I see it, I am a hobbyist...
>
> although, I guess traditionally, "professional" does not apply to unskilled
> labor, such as picking fruit or being a frycook... (then again, maybe there
> are professional frycooks around, I don't know...).


To me professional applies to people who work in a particular field
and are competent at what they do. Misleading and lying to people to
get a job does not make you professional even if you get paid to do it
(might make you a professional liar though). The point I'm trying to
make is there are a lot of people out there who label themselves as
professional developers when in reality they have little to no
accountable experience and are only someone basically aware of
language semantics and syntax.

Which is why you see "adults" floating around espousing how awesome VB
is because it has less of a learning curve than say C or Pascal or
whatever. The reality is they don't really understand what they're
doing at any useful level and they view C as "harder" because they
actually have to have half a clue about computer science to make use
of it.

Some might shake that off as "oh well my $fav_lang has a standard tree/
heap/vector/whatever class and I don't need to implement it" but
without failure there will be a time where understanding the
primitives will pay dividends in terms of optimization or debugging.
Worse yet, because a lot of people don't have the fundamentals of
computer science down pat they don't even know of, or when, or how to
use specialized algorithms to make things possible.

This is why you see people using bubble sort, or ECB mode in crypto,
or countless other common trivial mistakes. They don't understand crap
about what they're doing, they just know enough rudiments to glue
things together into what seems like a workable solution.

And that's friggin scary.
 
Reply With Quote
 
Tim Streater
Guest
Posts: n/a
 
      11-04-2009
In article
<(E-Mail Removed)>,
Pillsy <(E-Mail Removed)> wrote:

> On Nov 4, 11:07*am, Tom St Denis <(E-Mail Removed)> wrote:
>
> > On Nov 4, 8:17*am, Rich Webb <(E-Mail Removed)> wrote:

> [...]
> > > This paraphrase (anyone have a pointer to the first use?) seems apropos:

>
> > > Some languages are like scissors for children. They can be used to cut
> > > out pretty much any shape you might want out of paper. They are also
> > > safe, with blunt tips and not very sharp, so you're unlikely to
> > > accidentally injure yourself while using then.

>
> > > C is like a surgeon's scalpel: just a handle and an edge. It can cut
> > > practically anything and in the right hands it can perform miracles.
> > > However, use it carelessly and you'll cut your own hands off.

>
> > Exactly. *Why people attribute that to a negative quality of C I'll
> > never get it.

>
> I suspect it's because, one way or another, C has a pretty long
> history of finding its way into the hands of metaphorical children.
>
> >*The real problem is people who are poorly trained are passing themselves
> > off as developers.

>
> This is going a bit far afield from the original context of the
> thread, but a lot of people who need to write programs in order to do
> their jobs are not professional programmers, in much the same way that
> a lot of people who need to write English prose in order to do their
> jobs are not professional writers.
>
> It's quite common for engineers or scientists to have to write
> programs for their own use and, perhaps, the use of a small number of
> other people, and a lot of the time they end up writing those programs
> in C. There are good compilers available just about everywhere for
> cheap and it has a reputation for being fast.
>
> A person can simultaneously be a phenomenal physicist and a lousy
> programmer.
>
> >*I was using C for roughly 7-8 years before I really considered myself
> >halfway
> > competent to even call myself professional. *Sure it only took me a short
> > bit
> > to learn the syntax, but really writing maintainable and scalable software
> > [in any language] takes experience.

>
> Sure. But someone who has an entire other set of professional
> responsibilities is likely to not get those years of experience
> writing maintainable and scalable software because they're busy
> getting other sorts of experience that is more relevant to their jobs.


This is perfectly true. The difficulty is when the person (clever in
their own field) is able to write a reasonable facsimile of a program
incorporating some clever techniques, and when the program is actually
useful to this person and their colleagues, and then the program is
pushed out to others in their field. Then it's given to some poor grad
student to maintain. And so on ...

Mind you, this can happen in any language, just that it's more likely
with C and Fortran, since these are "everywhere".

--
Tim

"That excessive bail ought not to be required, nor excessive fines imposed,
nor cruel and unusual punishments inflicted" -- Bill of Rights 1689
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Sorry for interrupt,because my mother language is not English,it maybe a little confused to read the c programming language. Zhang Yuan C Programming 6 06-14-2012 04:35 AM
Fuji X100, turned out not to be so great, unfortunately RichA Digital Photography 27 04-29-2011 11:32 PM
Important question to Seeby about new Orcon plans - are they really as good as they seem? MarkH NZ Computing 6 08-18-2005 10:20 AM
Unfortunately it is not working Mango ASP .Net Building Controls 0 03-11-2005 12:43 PM
Unfortunately...fortunately Tim Python 0 07-05-2003 05:44 PM



Advertisments