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

Write in C?

Submitted by nk on Sun, 2007-08-12 20:50

Sung to the tunes of Let it be.

When I find my code in tons of trouble,
Friends and colleages come to me,
Speaking words of wisdom:
"Write in C."

As the deadline fast approaches,
And bugs are all that I can see,
Somewhere, someone whispers:
"Write in C."

gophp5 is gaining traction

Submitted by nk on Thu, 2007-08-09 04:19

Rumor has that PHP4 EOL thread got started very shortly after one PHP team member talked to one of the gophp5 guys.

Drupal IRC channels

Submitted by nk on Wed, 2007-08-08 09:31

In the past there were some friction in #drupal when right in the middle of some deep developer discussion a beginner joined and asked something trivial. This usually ended with the poor chap running for his life to #drupal-support .

However, support is for -- support. Not coding. To this end, the (relatively) newly formed #drupal-dev is reserved for those deep developer discussion and chitchat is frowned upon. #drupal is everything related to coding, advocacy and so on.

Updates on some issues

Submitted by nk on Sun, 2007-07-29 03:32

After much, much debate with myself, the laptop I am going to buy will be a Panasonic Y5, the lightest 14" laptop. Much cheaper than the R500 but extremely capable and 1490 gram for a 14" laptop is still damned nice.

In other news, privatemsg got threading support -- you will be able to see a message, its reply, the reply to that and so forth on the detail screen a la facebook.

Dmitri is writing views_subscriptions -- and he has got pretty far already! Yay!

Email notification when a view is updated

Submitted by nk on Fri, 2007-07-27 18:53

Alas, this post is not about announcing such an awesomeness. But i would like to draw attention to the new, open-to-other-modules subscriptions 5.x-2.x branch and what a fantastic piece would be a small module that ties views and subscriptions together. According to Earl Miles, the creator of views:

you could grab the view, add a nid filter to the view (or argument), run the view and get the result. If there's a match, it's in the view.


Simpletest is simple!

Submitted by nk on Wed, 2007-07-25 06:07

Really, you just need to try it. I took page_creation.test -- it's always good to start with an example -- which creates a user which posts a page. I have continued this test with creating another user to subscribe to this page and then yet another user which posts a comment. Using the sendmail trick in my previous post the email landed in a file and I have tested whether the comment subject appears in it. The whole thing really was more copy-paste than creative coding and worked for the first time. This is fantastic.

Testing email

Submitted by nk on Tue, 2007-07-24 12:18

NowPublic got serious about testing and hired Rok Zlender. Our first project together is email testing. He have mentioned fakemail by the same merry band that has written simpletest. This is a SMTP server which does not deliver anything just writes everything into a file. I began Googling in earnest and after about a quarter hour I realized this does not a full fledged SMTP server -- php.ini has a sendmail_path. This lead to the forthcoming, truly complicated little script:

Future of subscriptions

Submitted by nk on Mon, 2007-07-23 03:26

The current versions of subscriptions module have 'blog' type hardwired. However, with configurable types and Views, this is no longer favorable. Here is what you will see, probably in a block:

Down with pseudo objects

Submitted by nk on Sun, 2007-07-22 20:00

Note: this is a reformatted repost of the original, I have my moved my blog and that entry was not in the dump. It needed a reformat anyways...

I had a node which stored user profile data and upon blocking said user I wanted to clean it up. A little bit later I will post the code -- for now let it suffice that I needed to use $profile->{$key}[0][$k] = ''; instead of $profile[$key][0][$k] = ''; . I consider myself a not-too bad PHP coder but this syntax took me quite some time to figure out.

The icing on the cake that is Drupal 6

Submitted by nk on Wed, 2007-07-04 15:58

Just today, two patches has been committed that has tremendeous importance: one, the AHAH patch by quicksketch was realizes the JS capability Eaton and I have put into form API 3. I spent ten days at the end of April in a Chicago motel just to work with Jeff on form API 3 and with this patch committed, I feel the invested money and time was worth it. Second, another form API enabler was committed which was originally written by me but I had so little time then that dopry submitted it to the queue so I am not even mentioned in the comit message. Credit issues aside, makes writing widgets so much more powerful and a bit easier. All in all, I am content with the form API we will have in six.