Solar 1.1.1 Stable Released

On Thursday, I released version 1.1.0 of the Solar Framework for PHP. Due to a small but critical bug in the PostgreSQL adapter, I released version 1.1.1 with the necessary fix earlier today. Change notes are here for 1.1.0, and here for 1.1.1.

The single biggest new feature in this release of Solar is a Markdown plugin set for DocBook, along with a new make-docbook command to convertAPI documentation to DocBook files. Previously, the Solar API documentation was wiki-like; now, we take the Markdown-based comments in the codebase and convert them to DocBook, and render the DocBook files in to HTML using PhD. (Incidentally, I tried rendering with xsltproc; after three hours, the processing was less than one-third complete. With PhD, rendering takes under five minutes for the entire API documentation set.)

Also, the make-model command now recognizes a star at the end of the model name, indicating it should make one model class set for each table in the database. For example, this will make one model class from the table "foo_bar" …

./script/solar make-model Vendor_Model_FooBar

… but this will make a Vendor_Model class for each table in the database:

./script/solar make-model Vendor_Model_*

That kind of thing is helpful when getting started with an existing set of tables, or when you’re updating your models after schema changes.

Other highlights include a series of small fixes, better CLI output in non-TTY environments, improved automation of CSRF form elements.

Finally, we’ve added a new manual chapter on user authentication, roles, and access control. Find out how, with some config settings, you can instantiate a single object and let it automatically handle user login/logout, role discovery, and access permissions for you! And if you want more direct control over the process, browse on over to these blog entries from CoolGoose:

If you haven’t tried Solar yet, maybe now is the time: run through the Getting Started documentation and see how you like it!

(Cross-posted from the Solar blog.)

Nashville PHP User Group

I was lucky enough to be in town for the inaugural Nashville PHP User Group as resurrected by Ben Ramsey last week. The presentation by Josh Holmes was interesting though over-long.

My favorite part of these things (as always) is meeting the other attendees. We retired to a nearby bar after the meeting, where I cliqued up with Brian Dailey, Ryan Weaver, Jeremy Kendall, and others. Here are some of the books, blogs, and podcasts that came up in our discussion:

If anyone there remembers other stuff we talked about, leave a comment and I’ll put it in the main entry.

Disaster Rituals

Combine How Complex Systems Fail with Fooled By Randomness and throw in some organizational behavior models, and you get the human response to unforeseen disaster. We think we can prevent future disaster, somehow, by going through a particular set of rituals. Then Malcolm Gladwell asks, way back in 1996:

But what if the assumptions that underlie our disaster rituals aren’t true? What if these public post mortems don’t help us avoid future accidents? Over the past few years, a group of scholars has begun making the unsettling argument that the rituals that follow things like plane crashes or the Three Mile Island crisis are as much exercises in self-deception as they are genuine opportunities for reassurance. For these revisionists, high-technology accidents may not have clear causes at all. They may be inherent in the complexity of the technological systems we have created.

I think there are lessons here for, among other things, the BP oil spill. As with most of Gladwell, it’s worth your time to read the whole thing.

On The Job Market Again

After a 4-month hiatus, I’m back on the job market again. If you need a web architect, expert (senior) PHP developer, or someone to manage your programming team as a leader/mentor, send me an email: [email protected].