Thoughts: time warp to 2006

GreenAsh ground-up videocast: Part III: Custom theming with Drupal 4.7

This video screencast is part III of a series that documents the development of a new, real-life Drupal website from the ground up. It shows you how to create a custom theme that gives your site a unique look-and-feel, using Drupal's built-in PHPTemplate theme engine. Tasks that are covered include theming blocks, theming CCK node types, and theming views. Video produced by GreenAsh Services, and sponsored by Hambo Design. (21:58 min — 24.1MB H.264)

I hope that all you fellow Drupalites have enjoyed this series, and I wish you a very happy new year!

GreenAsh ground-up videocast: Part II: Installing and using add-on modules with Drupal 4.7

💬 2

This video screencast is part II of a series that documents the development of a new, real-life Drupal website from the ground up. It shows you how to install a number of the more popular add-on modules from the contributions repository, and it steps through a detailed demonstration of how to configure these modules. The add-on modules that are covered include Views, CCK, Pathauto, and Category. Video produced by GreenAsh Services, and sponsored by Hambo Design. (28:44 min — 35.1MB H.264)

Pleasure vs pro

It's become popular in recent times for people to quit their boring day jobs, and instead to work full-time on something that they really love doing. We've all heard people say: now I'm spending every day doing what I enjoy most, and I couldn't be happier. Call me a cynic, but I am very dubious of the truth of this approach. In my experience, as soon as you turn a pleasurable pastime into a profession, you've suddenly added a whole new bucket of not-so-enjoyable tasks and responsibilities into the mix; and in the process, you've sacrificed at least some of the pleasure.

GreenAsh 3.0: how did they do it?

After much delay, the stylish new 3rd edition of GreenAsh has finally hit the web! This is the first major upgrade that GreenAsh has had in almost 2 years, since it was ported over from home-grown CMS (v1) to Drupal (v2). The site has been upgraded from its decaying and zealously hacked Drupal 4.5 code base, to the latest stable (and much-less-hacked) 4.7 code base. It sports a snazzy new theme, complete with fresh branding, graphics, and content layout. It is using quite a few new modules that are only available in more recent versions of Drupal, including views, pathauto, and the improved captcha module. And, best of all, it has finally been switched over to the category module, which was built and documented by myself, and which had the purpose from the very beginning of being installed right here, in order to meet the hefty navigational and user experience demands that I have placed upon this site. Read on to find out how, and why, the upgrade in all its pain and glory was carried out.

Must have, must do

We humans are naturally selfish creatures. Perhaps it's just me, but I think that the nature of this selfishness changes over time. As children, we are obsessed with owning or possessing things: our entire lives revolve around having toys, having food, having entertainment. But as we get older, we seem to become less concerned with having things, and more concerned with doing things. This strikes me as a fascinating change, and also as one of the key transitions between childhood and adulthood.

Import / Export API: final thoughts

💬 1

The Summer of Code has finally come to an end, and it's time for me to write up my final thoughts on my involvement in it. The Import / Export API module has been a long and challenging project, but it's also been great fun and has, in my opinion, been a worthwhile cause to devote my time to. My mentor has given my work the final tick of approval (which is great!), and I personally feel that the project has been an overwhelming success.

Stop shining that light in my face

💬 1

Evangelism. For centuries, many of the world's largest and most influential religions have practiced it. The idea behind evangelism is that one particular religion is the one true way to find G-d and to live a good life. It is therefore a duty, and an act of kindness, for the followers of that religion to "spread the word", and to help all of humanity to "see the light". I say to all evangelists: stop shining that accursed light in my face!

Import / Export API: progress report #4

In a small, poorly ventilated room, somewhere in Australia, there are four geeky fingers and two geeky thumbs, and they are attached to two geeky hands. All of the fingers and all of the thumbs are racing haphazardly across a black keyboard, trying to churn out PHP; but mostly they're just tapping repeatedly, and angrily, on the 'backspace' key. A pair of eyes squint tiredly at the LCD monitor before them, trying to discern whether the miniscule black dot that they perceive is a speck of dirt, or yet another pixel that has gone to pixel heaven.

Import / Export API: progress report #3

💬 1

The Summer of Code is now past its half-way mark. For some reason, I passed the mid-term evaluation, and I'm still here. The API is getting ever closer to meeting its success criteria, although not as close as I'd hoped for it to be by this point. A very crude XML import and export is now possible, but the ID and reference handling system - which is set to be one of the API's killer features - is only half-complete at present. Unfortunately, it's going to stay that way for a while, because I'm away on vacation for the next full week.

Drupal lite: Drupal minus its parts

💬 4

It is said that a house is the sum of its parts. If you take away the doors, the windows, the roof, the floorboads, the inside walls, the power lines, and the water pipes, is it still a house? In developing Drupal Lite, I hope to have answered this question in relation to Drupal. What are the absolute essentials, without which Drupal simply cannot be called Drupal? If you remove nodes, users, and the entire database system from Drupal, is it still Drupal?

On death and free minds

💬 2

For many years, a certain scene from a certain movie has troubled me deeply. In The Matrix (1999), there is a scene where the character 'Neo' is killed. Stone dead, no heartbeat for over thirty seconds, multiple bulletholes through chest. And then he comes back to life. Up until now, my friends and I have always derided this scene as being 'fake' and 'medically impossible'. But like Neo, I believe that I may finally have the answer.

An undo button for Drupal

💬 7

Every time that you perform any action in a desktop application, you can hit the trusty 'undo' button, to un-wreak any havoc that you may have just wreaked. One of the biggest shortcomings of web applications in general, is that they lack this crucial usability (and arguably security) feature. However, implementing an 'undo' (and 'redo') system in Drupal should be a relatively simple task - much simpler, in fact, than you might at first think.

An IE AJAX gotcha: page caching

💬 28

While doing some AJAX programming, I discovered a serious and extremely frustrating bug when using XMLHTTP in Internet Explorer. It appears that IE is prone to malfunctioning, unless a document accessed through AJAX has its HTTP header set to disallow caching. Beware!

A patch of flowers, a patch of code

Every gardener has a little patch of this planet that he or she loves and tends to. To these people, a patch is more than just a rectangular plot of land filled with dirt and flora. It is a living thing that needs care and attention; and in return, it brings great beauty and a feeling of fulfilment. The same is true of programmers the world over, and of the countless patches of code that they lovingly maintain throughout cyberspace.

A novel style

The novel is considered the most ubiquitous of all forms of literature. You can find novels by the truckload in any old bookstore. But what is the true 'novel style', and just how common are 'real novels'? Read on to find out why novels aren't quite so common as you might think.