The drop is always movingYou know that saying about standing on the shoulders of giants? Drupal is standing on a huge pile of midgetsAll content management systems suck, Drupal just happens to suck less.Popular open source software is more secure than unpopular open source software, because insecure software becomes unpopular fast. [That doesn't happen for proprietary software.]Drupal makes sandwiches happen.There is a module for that

My brain is not a stopwatch

Submitted by nk on Sat, 2012-02-11 08:32

While surely time clocks worked well for an assembly line worker, I have always found the push to clock my hours similarly rather annoying and this puncher makes me froth with rage. It's all sorts of wrong to force a creative person to work on an hourly basis. First, if I am able to solve something quicker, am I to earn less...? Worse, if I take a long time, perhaps even miss a deadline then you are to pay me more??

Eating my words on github

Submitted by nk on Mon, 2012-02-06 23:36

Two years ago I wrote a blog post about why not to use github. I simply was wrong. As jQuery won the JS framework war so did git won the DVCS war and one of the reasons is actually github. I have been using github to host private projects for my clients and the service / workflow is really top notch -- fork from the UI, hack, send a pull request, comment the diff line-by-line, do the minor fixes in the online editor on spot, click the merge button, done. Nicely done.

Per style private files

Submitted by nk on Thu, 2012-02-02 20:31

Private files are great but they are a huge resource hog. In certain scenarios, lower-resolution versions of the pictures are absolutely fine to be public, only high resolution originals need to be protected. In this case you can use Drupal's private file handling as it is and the following simple trick to make a style public.


Submitted by nk on Fri, 2012-01-27 21:42

I am taking a break from core development for personal reasons. After writing close to 800 core patches and spending years almost nonstop on core development, I need a break. Please leave me out of core debates on IRC, emails etc. Thanks! Contrib work will continue especially on redis_ssi and relation (mostly thanks to my generous sponsors). I am not against paid core bugfixes either :) contact me for paid core or contrib work, I promise to charge a lot less than normal for code contributed back to

Make your password protected devsite pull automatically from github

Submitted by nk on Wed, 2011-12-28 21:01

Many projects these days keep their work in github and it is a request often to make some dev site automated automatically. When I tried to enter a passworded URL into github, it didn't work. So I came up with what's below.

How to add JavaScript to Drupal 7

Submitted by nk on Mon, 2011-12-26 19:09

While patching Views I added this to an existing JS file thanks to caseyn. You can replace the iframe-related code (which is just two lines) to add your JS to Drupal:




Is the Web dead?

Submitted by nk on Mon, 2011-12-26 08:50

I will use today being Christmas and me being on vacation as an excuse not to fight the hard fight of ordering my thoughts into a linear, nicely reading blog post. So here's an unordered list of my thoughts presented as an ordered list only to allow for easier commenting. They do form a picture, however.

One fundamental value of the Drupal testing framework

Submitted by nk on Tue, 2011-12-13 20:24

I thought this evident but apparently not. You can download Drupal and run the tests provided. Just like that. If you download a few contribs and they have tests you still can run tests on any webserver, any environment what so ever to see whether they work together. It can be a small host or a cloud provider where all you have is the browser and no command line.

Still struggling to find my place

Submitted by nk on Tue, 2011-11-22 10:46

Seeing how much work I put into the past four major core releases and how it ended up as an inconsistent, complex mess, I feel it might be better actually if I withdraw and let others steer. Hopefully they can do better. I am not going to review or comment on any D8 feature patches. On the other hand there is an area where I am needed and that's the major bug queue. I am going to focus my attention on that. There are "toxic", year old issues that just don't want to go away. If each bug takes a week to get rid of, which is an optimistic view then we have two years of work ahead.

URI, path, aliases, oh my!

Submitted by nk on Sun, 2011-10-30 22:16

Say you have Let's presume documentation is an alias for node/26419

Then after a full bootstrap

base_path() /drupal/
request_uri() /drupal/documentation?page=1
request_path() documentation
current_path() node/26419