#native_company# #native_desc#

Fundamentals of Application Design

By Angus Madden
on March 4, 2001

One thing I think many developers new to programming lack is a summary of
the fundamentals. The experienced developers take certain concepts for
granted – having a thorough understanding of how their systems work, they
understand implicitly how certain code affects performance and other basic
do’s and don’ts. The new developer, on the other hand, may not have the
benefit of a formal programming education, and many programming tutorials
assume a basic level of knowledge.
I’ve written this article to emphasize the basics for the new programmer.
It applies to web development in any language, but since I do my development
work in PHP (usually building the php(Reactor)),
I’d like to share it with the PHP community.
Whenever I talk to people about web development I always lead in with the
question “What do you think is most important for building web sites?” I get a variety of answers, but 9 times out of 10 the answer is:
“It has to look good” or “Good graphic design.”
At that point I take a step back and say “oh … really?!?! Are you sure”
That usually pauses them. After that, I find my way to the closest white board and go to work. I make a list on the board like so:

  • security
  • maintainability
  • usability
  • performance
and then way down at the bottom of the board I put:

  • graphic design
Where do I get my priorities? Let me explain in detail. I’ll start with security …