We have all gone back and looked at code we wrote in the past and thought "Wow, this is ugly.", or "wtf was I thinking?", or even "I wrote this yesterday, and I have no idea what it does." Refactoring is the process of going back over already-working code and cleaning it up for the sole purpose of understandability, maintainability, and preserving your self-worth if anyone else were to take a peak. No one likes to be humiliated by their own code.



I have fallen in love with CakePHP's integration of the SimpleTest
libraries. With the type of work that I normally do, unit-testing is
hard to utilize successfully. That is to say, most of the applications
I work on have very straight-forward components and not a lot of
complex functions/methods. I would only be testing whether or not they
worked at all, rather than if they worked in a wide-array of
situations.

PHP's greatest strength is also its greatest weakness. Flexibility.
There are an infinite number of ways to perform the same task which PHP
will happily do without so much as a peep as to how poor the code
really is. Sadly, most developers endure a trial by fire where they
only learn from their mistakes after it's too late.
I finally got around to installing xdebug on my development
environment and have decided it is the best thing since sliced bread.Installation was a breeze and the information it provides when something has gone wrong is incredibly helpful during debugging. What I didn't know, and hope to help others by documenting it here, was the amount of configuration options Xdebug has. The base install has some irritating limitations that are easily addressed with a few simple lines in the php.ini file.
Relational Database Design is one of the most powerful ways to ensure
data integrity and a great way to kick-off any project. Very often the
first thing developers do when starting a new project, or stub-project,
is to design the database. This way the structure of the application is
already in place and we just have to fill in the pieces with some
server-side code. I've found when adding relational constraints to your
database design you add in a very powerful error reporting tool that
will let you know during the development process that you have allowed
something to happen that shouldn't have. In this article, I go through,
step by step, showing how to set up a simple relational database and
discuss the benefits that are enjoyed.
Providing RSS Feeds for your website is fast becoming a necessity in today's web2.0 world. The amount of surfers taking advantage of everything RSS Feeds has to offer has exploded in recent history, and it's easy to see why. The amount gained from offering a RSS Feed far outweigh the effort needed to create one.