Our hosting stack from the bottom up - Part 3

This blog post is about why Code Enigma uses Debian as our Linux distribution of choice.

We talked in previous posts about our infrastructure and our virtualisation. This time it's the turn of our operating system.

Overriding styles combo in CKEditor

CKEditor is a superb WYSIWYG text editor and when used together with the CKEditor module for Drupal it's a great solution for enabling editors to easily add HTML to content. A common issue site builders seems to have is changing the list of styles that are available in the Styles drop down combo. Here's the salient tip for getting it working!

CKEditor comes with a Styles drop down combo that enables editors to select some text and then decorate it by selecting from a list of available styles:

Our hosting stack from the bottom up - Part 2

Second in a series of posts about the Code Enigma hosting stack, covering every aspect of how we operate, from networks and servers up to deployment and testing.

In my last post I wrote about the base of our hosting stack, our infrastructure providers over at Rackspace UK. Now it's time to move up a level and look at what we put on that infrastructure, starting with our

Breaking words

Migrating away from legacy content management systems can prove challenging, in this blog post we look at a technique for improving the friendliness of URLs!

I'm sure we're all aware that human-readable URL's are a good thing, not only for us but for search engines too. Take, for example, the following URL: /topsubjects/businessandintellectualproperty/businessandmanagementstudies/yourstudyprogram

Our hosting stack from the bottom up - Part 1

First in a series of posts about the Code Enigma hosting stack, covering every aspect of how we operate, from networks and servers up to deployment and testing.

Over the next few weeks I'll be writing a series of blog posts explaining the Code Enigma stack, the technology and the motivations, from the bottom up. We'll be covering things like our virtualisation platform, our choice of Linux distro, our deployment tools, testing suites, etc.

Prevent ctools custom "content type" plugin's title from being overriden

When creating a ctools "content type" plugin, default behaviour of the settings edit form is to present users with an option to override the title. While this is handy most of the time, some use cases requires that you prevent that from happening.

While you might be tempted to start messing around the setting form itself in your edit callback, you can simply define this in your plugin definition, as follows (in Drupal 7):

What's the ideal process for my next digital project

The question on how we should tackle the creation of a new website doesn't have a single answer. There are too many conditions to take into account. Nevertheless, there is a general process we can suggest.

  Planning Project Fundamentals

Drupalcon Session: Looking for the value in Content Strategy

On Thursday 24th of September, our content strategist Koen Platteeuw shared his views on what value content strategy brings to web projects at Drupalcon Europe

Don't ask yourself: "Can I afford to include content strategy in my web project?" The real question is "Can I afford NOT to include content strategy in my web project?"

Code Enigma at DrupalCamp Spain

Code Enigma will send three members of staff to the annual DrupalCamp Spain. This year, the event is held in Jerez de la Frontera, in the south of Spain.

As in previous years, Code Enigma will be present at the annual DrupalCamp Spain. This year's event will be held in southern Spain, more precisely, in Jerez de la Frontera.

Creative tension

There's an inevitable tension between different roles involved in a project such as sales versus production. If you ignore it it can lead to communication breakdowns. If you embrace it it can improve the understanding and trust between you and your client.

When I started thinking about this blog I was torn between calling it ‘creative tension’ and ‘the fuzzy zone’, but a quick check of the urban dictionary tells me that fuzzy zone describes the phase in a relationship when you’re more than friends but not quite lovers; that’s way off the mark for t

Who drives Content Strategy?

After reading a blog post called "What Marketing Can Learn from IT About Content", Code Enigma's content strategist wants to add his 2 cents to the discussion on who drives content strategy.

A friend once told me that the problem with social & online media is that we read to respond rather than to understand or learn.

Editorial Workflows: Who's responsible for my web content?

What’s the best editorial workflow for generating quality content for my site? We'll help you pick the right model that works for you, taking into account corporate culture, size of the organisation, available resources, internal politics, and so many other factors.

If you’re asking yourself this question, you’re on the right track! It means you take content governance seriously as an integral part of your content strategy. But setting up a content management procedure that works for you, is not that obvious.

Drupal and PHP Traits - Developer love

As difficult as it is to find any OOP code in Drupal 7 contrib, it does exist in certain modules. See how to use PHP traits when the module's base classes are not entirely up to the task.

Admittedly, PHP Traits have been out there for a long time. You'll surely have heard about them, but chances that you've used them are not that high.

Git Hooks, Round 2: Post-checkout

How to use git hooks to have a different set of Drupal settings for each branch of your repository.

In my last blog entry about git hooks, I talked about the post-merge hook, as a way to automate certain tasks every time a "git pull" command is issued on the command line.

Testing Frameworks - an Exploration

A quick guide to setting up a headless unit testing framework incorporating Behat, Mink and Selenium.

Many months ago, a discussion between my colleague Chris Maiden and I sparked off an idea that we developed into an automated testing framework, which is capable of taking any assertions from user stories, and running them either as unit tests against code, or as functional tests against a staged

What are web conversions?

When reading about making sites successful, one of the concepts that is always mentioned is conversion rate. But what does that stand for? What are conversions, and do they only apply to commercial websites?

Starting with the basics, what’s a conversion? 

Content Audits: Where to start?

Anyone who ever conducted a content audit knows they're time consuming and boring. And while there is no magical quick solution, in this article we will try to help identify how to conduct these in a methodical way.

The problem with content audits is twofold: volume & criteria

Is my site performing well?

In this post we explain basic Google Analytics metrics of website success. These will allow you to measure if your site is performing well in the light of the objectives of the site.

In this post, we will try to answer the simple question: how can I see if my site is doing well? We’re looking at this question from a usage perspective.