Re: LAMP vs Microsoft



In some mail from George Capehart, sie said:

<rant>
This is truer than you know. I've been writing code since 1974, and I
see the same mistakes being made over and over and over and over . . .
again. Just as in wars, it seems that every generation is destined to
make the mistakes that their elders made. There is no industry-wide
repository of "Lessons Learned." Each generation is left to make the
same mistakes over and over. If one were to do a root-cause analysis,
what would one find? Programming courses teach grammar and syntax.
They do not teach "safe programming." (Except Crispin and Dave, of
course . . .) Programming managers are programmers who grew up and
decided they'd had enough of the 80-hour weeks and wanted to become
managers. They don't know/care, either. It's only when the "powers
that be" decide that it's better business to deliver bug-free, secure
code than shipping mostly-working code out the door that things will
change. Wanna take a bet on how long that'll be?
</rant>

So, you seem the same mistakes being made over and over...

While I agree there isn't enough of "lessons learned" in programming,
I think this also applies to the people who develop languages. The
unfortaunte case is that potentially the only languages that aren't
susceptible to being "exploited" are those like prolog/lisp, but who
uses them to write an application?

I think this is the case with PHP - it and the problem it is solving
needs to be reexamined and a better language developed that is written
with the actual target audience (and their skill levels) in mind.

Whilst I can't comment on what every project does, I'll comment on
what two projects do do in order to produce better code.
1) openbsd commits generally require the approval of two others
when they're commiting code. to what level the code is reviewed
I can't say - it is all internal.

2) OpenSolaris projects will all post code changes to the Internet
before code is committed to the project. Review of that code is
generally open for at least 2 weeks. When it comes time to put
that code into OpenSolaris, the review process requires the code
team to enumerate and discuss every issue brought up. Internally
the goal is to try and select people who are faimilar with
different areas/functionality to review code. While management
don't like all the delays, they're there for a purpose and the
steps cannot be walked around, so they might grumble but they do
accept it.

For other projects, people post diffs and there is a less formal
review process - and possibly only one person to decide yes/no.

If you want to be part of the solution, rather than just the rant,
feel free to join the opensolaris community and contribute ideas on
source code changes or how the processes work. Doing open code
reviews is a process we are just starting to come up to speed with,
so there are no easy indexes of this activity available.

Darren



Relevant Pages

  • Re: The Borland Vision: Wrong?
    ... Why would the VM make less mistakes than a boundschecker? ... I couldn't care less what a car whore has to say about pointers. ... A colleague needed to encode a lot of information into a licence key ... don't learn that in programming school? ...
    (borland.public.delphi.non-technical)
  • Re: Idiotic question of an Idiot - dint like dont reply.
    ... Start by programming something related what you need, want, or enjoy: ... taking standardized tests ... correcting teachers when they made mistakes or when they asked where they ... to find said manager asking for it after two days, ...
    (comp.lang.c)
  • Re: K&R2 Still good?
    ... [This article contains a review of a review about "C Unleashed". ... The C Programming Language Second Edition by Kernighan and Ritchie ... only one short chapter on C99. ... different languages because we think in different ways. ...
    (comp.lang.c)
  • Re: Mori Seki SL1 NC lathe programming
    ... example that you were changing the parameters and choosing to radius ... then how many mistakes did you make Cliff? ... proves that centerline programming on a lathe isn't intuitive or useful. ...
    (alt.machines.cnc)
  • Re: What is code review? (Java code review)
    ... Nobody likes his code to be found has "error". ... Even they found that bug, ... Pair programming makes this a bit easier, ... development is), but if the code you review is consistently buggy, your ...
    (comp.lang.java.programmer)