Digging Deeper into Drupal Page Caching

I've been away from full time Drupal development for a couple of years and have recently returned, this time making a commitment improve my understanding of core. There's a lot of information out there on Drupal caching, but I found much of it to be fragmented and outdated (Drupal 6). I wanted to provide a more comprehensive look at Drupal 7's core caching, explaining how some of this stuff is actually working under the hood.

The Importance of Character Encodings

I recently started on a project that involves migrating some data from a legacy app & database into Drupal. The old application is a collection of PHP scripts that basically just generate forms, accept data, insert said data into the database, and output it on a website. Pretty simple stuff - there's not a whole lot going on. It was developed long before many of the popular CMS's and frameworks came to be, and probably before people really started paying attention to the character encoding of their data.

Determine PHP memory usage for anonymous users

In case you've been living under a rock for the past two years: Drupal 7 is known to use quite a bit of PHP memory everytime a page is loaded. I won't get into anything why that is and why it's such a big jump from Drupal 6 (I'm in no position to comment on that), but what you need to know is that Drupal 7 can easily use 40-50 MB per page load for a small to mid size website, and much much more for larger websites. Turn on some sort of PHP opcode cache like APC and you can probably get that small to mid site down to 10MB of usage or lower.

Creating a primary and secondary horizontal menu in Drupal

This is a fairly common menu structure for Drupal developers to deal with, and depending on how it functions, it could be super easy. Here's the scenario: you need to display the 1st level of links in a menu horizontally, and the 2nd level in that same menu right beneath it.

There are at least two different ways that this can be implemented. The first is a static approach, where you do NOT need to show children of each primary link when hovering.

Consider this menu strucure:

Why You Should Use A 3rd Party Comment Service

Drupal is a wonderful content management system. Any Drupal web developer will tell you that there seems to be a module for anything you can think of. For the most part, this is what makes Drupal so great. The community support is second to none and it's never too hard to find a module that suites your needs.

With that said, it's important to understand when there may be something other than Drupal that you should be using for a particular functionality. Commenting is the best example of this.

DrupalCon Chicago 2011 Recap - Part 3

I had a great time at DrupalCon. This was the last day of presentations before I had to catch my flight back to Philly. Because of my flight time I had to miss the last session track and any meet ups that night, but such is life. My favorite presentation of the conference was on this day: Drupal Commerce. I look forward to exploring all of these modules, ideas, and technologies in the upcoming months!

DrupalCon Chicago 2011 Recap - Part 2

This is the second entry in recapping my trip to Chicago for DrupalCon. On the opening night (Monday), a party was held at the Field Museum of Natural History. Beer, wine, and plenty of food was served as we were all free to roam around most of the building. The most impressive was certainly Sue, the world's most complete T-Rex fossil. Certainly worth checking out if you are end up in Chicago.