I've recently rediscovered a set of great development pattern graphs and descriptions by Martin Fowler--easily one of the computer science geniuses of the day.
Patterns are wonderful. If you're not using them, you're starting over every time you start to code. You may have invented your own patterns without knowing it. Since I was a designer before becoming a developer, I've found that leaning on the works of great minds like Martin Fowler and Tim Berners-Lee has helped me jump small furry creatures in single bounds and code better than I ever imagined.
I'ts also one of the best writeups I've read on development patterns in a long time.
"Your Interface is NOT Your Application" by the smart folk over at Gadgetopia sums up the idea that your app is the underlying business logic and not it's interface. Access to the application by the interface should happen via an API (whether private or exposed to the public). Making that split, according to the article, helps center the application on it's core functionality, leaves GUI concerns to GUI designers, allows you to create multiple frontends for multiple situations, and keeps cruft out of your code.
The only negative in this approach is that you have to fight to be intentional with how you write your application and do some forethinking before hacking out your app.
Thankfully for all of us, there are plenty of RAD frameworks actively under development that help with this sort of thing.
Well, it would seem that everybody and their mother has recently gotten into the PHP IDE battle.
I knew about Eclipse and Zend hooking up (in spite of the already fairly well established phpEclipse project), but Borland/Inprise? Never saw that coming.
To mention a few other notables (not so new):
and that's only the list of larger PHP IDE's. There's a smaller list that include things like Bluefish and Screem which are more like Editors with some IDE type features (debugging and project file management).
If you're weighing/researching AJAX frameworks (as I am) then you might enjoy reading Dojo vs YUI / YUI-EXT vs Prototype / Scriptaculous vs Mochikit vs JQuery - Part 1. Part 2 is good as well. Kaleb, the author, has decided to go with YUI-EXT for the time being.
That's been my leaning as well. Still more research todo before we commit to a switch. We're currently using Prototype and Scriptaculous over at BigBlueHat, but the widget libraries of YUI-EXT and Dojo are alluring to say the least.
Benjamin Novack Carlyle wrote another winning article about his view of the web's future. As usual he's quite insightful and some of his thoughts are inspring. In his most recent article, The Architectural Spectrum, he makes the distinction between large architectures (the Web) and small architectures (ones specific to a piece of software or organization).
One major thought of note is that he sees RDF as being intentionally(?) relegated to the place of an RDBMS or SQL replacement technology. I certainly see his point, and think he may be right. However, I am enjoying the promises that RDFa makes for embedding RDF data directly into XHTML.
As always, we'll see what actually happens.