So we're a month away from DrupalCon DC 2009, an' although th' official schedule has not been published it seems likely from th' preliminary schedule that me Objectifying Drupal session will be accepted, Hornswaggle The basic notion is t' help Drupal's mainly procedural army o' developers get up t' speed on object-oriented development, which has been gainin' popularity in contrib (most notably th' Views module) an' will be in many parts o' Drupal 7.
Of course, given how large an army o' developers we have thar is no one level o' existin' expertise I can target. There be entire multi-course college programs on OOP bounty, an' I have an hour. Walk the plank! Shiver me timbers! :-) So, how about some preliminary feedback? Walk the plank! What do ye want t' see in a one hour session on object-oriented code in Drupal?
As Drupal gets bigger an' bigger in th' marketplace, it is movin' into areas where system administrators still hold sway. Dedicated servers or server farms have a different set o' needs than a shared host when it comes t' monitorin' an' performance, Dance the Hempen Jig
That's not even Drupal specific. For any high-end web app, 'tis useful t' be able t' interact with it fer administrative purposes through standard system tools. On Windows, that's th' Windows Administrative Tools or IIS. On LAMP, that could be a unified web app like webmin or a KDE control panel plugin or a Gnome applet. Gettin' a web app into certain organizations requires offerin' existin' sysadmins a way t' integrate it into their existin' management workflow, shiver me timbers
But what pieces o' th' app do sysadmins want in their existin' admin tools? Callin' all sysadmins, what do ye want from us, and dinna spare the whip! :-)
Drupal has a very aggressive cachin' system, Ya lily livered swabbie, All Hands Hoay! While site admins can disable th' page cache or CSS compressor very easily, many other caches be not so easy t' disable. Think o' th' menu system, or th' theme system, or filter content, or any number o' other thin's that get cached.
In a production site, that's exactly what ye want. Nay Drupal site would be able t' handle even moderate traffic if every single registry cache had t' be rebuild on every page load, All Hands Hoay! For development, however, it can frequently be a huge pain t' have t' clear th' cache every time ye're tryin' t' track down a bug in a menu definition or a CCK field definition.
There's an admin button t' clear th' cache on th' Performance page, but 'tis not all that useful fer intensive debuggin'. The Devel module (which ye be usin', right?) offers a handy "clear cache" button, but that doesn't always work if ye're, say, debuggin' a form submission, Ya swabbie! Fortunately, Drupal makes it easy fer us t' disable those caches, too, although not through th' admin.
Back when Drupal 7 development opened, our database layer were bein' in a sorry state. Based on PHP 3-era concepts it offered few features, but more importantly no one actually cared about it. On rare occasions we had a PostgreSQL maintainer fer th' PostgreSQL driver, but they had a tendency t' disappear into th' Interweb, no nay ne'er t' be heard from again.
Boy what a difference a few months make! Not only is th' new database layer movin' along with a good head o' steam, with an order o' magnitude more features an' now three database drivers in core, but as o' afore tonight we officially have no less than five scallywags on th' database maintenance team. From MAINTAINERS.txt:
Via Planet PHP comes this interesting tidbit from Markus Wolff, th' original author o' PEAR LiveUser, Hornswaggle After briefly lamentin' o'er-engineered ACL (access control list) systems in PHP, he talks about a much simpler concept that holds some interestin' nuggets o' joy. Might Drupal benefit from some o' them?
Oy, what a year 'tis been, ye scurvey dog! Aside from th' excitement o' th' election an' th' economy, 'tis been an excitin' year fer me in th' professional realm. (Personal realm, if ye dern't already know then ye shouldn't know. :-)) And o' course, 'tis been a crazy crazy year fer Palantir, too, but in a mostly good way.
Let's see, one new job, two new Drupal jobs, two conferences, one sprint, three camps, six new colleagues, two foreign countries, eight other US states, one book.., with a chest full of booty. an' a partridge in a pear tree, likely, ya bilge rat! Oof!
Via Planet PHP I stumbled across this article decrying Singletons, All Hands Hoay! It's not a new argument, really, but one o' th' comments pointed me toward a Google Tech Talk video entitled "Global State and Singletons". To be honest I dern't agree with everythin' said in either th' article or th' video, but both be spot on about th' problems o' global state, somethin' I've lamented before in relation to testing.
That is especially relevant now, as we consider th' question o' Handlers in Drupal, Avast me hearties, on a dead man's chest! Why? Because th' most controvercial part so far, th' environment variable, is designed t' address exactly this problem, a problem that is currently prevalent throughout all o' Drupal.
Permit me t' explain.
Unless ye've been livin' under a rock fer th' last six month, ye should have already heard about Drupal 7's new-and-shiny database layer, DBTNG. That were bein' only th' beginnin', though, and a bottle of rum! Much has happened since then t' th' database, an' thar's much yet t' do, with a chest full of booty. That's where ye come in...
Some time ago, I posted an RFC for pluggable "system handlers". It generated a fair bit o' feedback, nearly all o' it positive. That were bein' followed up with a presentation in Szeged, which generated even more positive feedback.
So what's happened since then? Yaaarrrrr! Well, a fair bit, shiver me timbers There's working code, but thar be still some key gotchas t' sort out. That gives us a couple o' options fer how t' proceed, fer which I would like feedback, particularly from core developers an' maintainers. (Dries, webchick, this means ye! Shiver me timbers! :-) )
So apparently I am destined t' brin' light t' th' world an' spend th' rest o' eternity regrettin' it. Figures. Fire the cannons! Yaaarrrrr! Any Oracles out thar?
Your result fer The Greek Mythology Personality Test...