design for quality


mlsamuelson's blog


Another of lif - er, Linux's mysteries solved: the ./

I'd searched high and low for the answer to this, and now that I've found it, I want to post it. I guess the real challenge, however, is getting a search engine to render up the goods: doing a Google search for "./" or "dot slash" didn't return much, and I don't have any bright ideas, other than spelling it out as dot slash.

So, that's the issue though - what does ./ mean in a Linux path?


Doing Drupal right; or Drupal, project management, and information architecture

Due to a rather complicated project, and another project that somehow slipped past important aspects of my usual process, I've been studying up on project management, software development processes and methodologies, looking to refine my system. Apparently, these topics are also on the minds of others in the Drupal development community:


Gold for Drupal themers: get_defined_vars()

I remember when I first started working with Drupal, one of the biggest challenges when theming was discovering what variables were available to me.

Perhaps I didn't like the formatting of the date as supplied by the default $submitted variable and wanted to see if there was a simple timestamp I could format...?

Luckily I came to learn of the get_defined_vars() PHP function which returns an array of all defined variables within the current scope.


My Drupal CVS cheatsheet

I was searching today for info on how to proceed on a specific Drupal CVS task, and in the first page of search results I happened upon a CVS examples document I put together for myself and subsequently posted in an online pastebin so a co-worker could grab a copy for himself. This was in the first page of Google's search results* and it got me to thinking, why don't I post this on my own site for reference and so that others could benefit.


Leveling up on Drupal

It's been a few weeks since I last posted.

Been rather busy. VERY busy to be exact. But that's a good thing. I've got a few large projects in the works - Drupal projects for clients, as well as converting the sites of some long-time clients over to Drupal. (Cool!)

I recently programmed a custom search interface for a Drupal site I'm working on and that was a great learning experience. Feels like I leveled-up on my Drupal skills.

More good things to come...


Boise Drupal Users Group

Last week I came across a few Drupal users in the greater Boise area, and so I decided it was finally time to set up the Boise Drupal User Group.

Not a lot of activity there yet (even from me - I'm rather busy with projects at the moment), but I hope we can make something of a vibrant community of Drupallers in the Treasure Valley - and give back to the larger Drupal community as well.


if you like this module, you might like...

screenshot of Drupal module page that says 'If you're looking for...'

I noticed earlier today that there were 14 pages or so of new Drupal modules listed on the new modules feed since last month. That's a lot to keep track of, along with all the other Drupal info that's whizzing past out there.

So it was with great appreciation today that I came across the Registration Role module while searching for a module to allow users to select their own roles.


Drupal: lines of code comparison

Dries Buytaert, Drupal project lead, posted an interesting set of graphs derived from metrics provided by, a directory of open source software that provides a number of metrics about the projects it indexes.

The graphs show that measured in lines of code (LOC), Drupal is 1/8th the size of Joomla. It's even less than 1/2 the size of WordPress!



I've had this waiting in the wings for a while:



on not shifting gears

I love smooth workflows, efficient practices and logical progressions. Before I worked with Drupal I'd gotten my workflow highly refined.

  1. define/clarify site needs and functionality (work with client, share proposals, present wire frames)
  2. produce a workable, extendable data model (usually in the form of a relational database)
  3. code business logic (usually a PHP app)
  4. design interface and presentation layer (XHTML and CSS)
  5. test and debug
  6. reiterate back through this process as necessary for maturity

Syndicate content

© 2008