Home / Resources / Blog / Technology


How-to configure faceted search interface with Acquia Search

Implementing grade-A site search functionality is not easy to achieve. Proprietary search solution tend to carry very expensive licensing fees and provide limited flexibility when integrated with open source solutions such as Drupal. Conversely, open source search engines such as Apache Solr are devoid of licensing fees and have tight integration with CMSes like Drupal, however they can also be challenging to deploy and maintain. Acquia Search provides the power and flexibility of open source while eliminating the maintenance tax. Acquia Search is a fully managed SaaS offering that integrates... More

How-to with Cloud API and Cloud Hooks

Drupal has so much to offer to developers. It allows you to experiment, innovate and work with innumerable modules. Drupal does not try to limit you. Wouldn’t it be great if your hosting platform also offered multiple interfaces and functionality? Well, Acquia Cloud allows you to extend its capabilities using cloud API and cloud hooks. Some of you are perhaps familiar with the workflow UI page on the cloud platform. The UI lets you instantly deploy code, files and databases using a simple “Drag and Drop” function. But as a developer, I would like to know that I have more options to work... More

Drupal Development: A Solved Game

Part one of the All the things you need to know to be a great Drupal developer blog series Way back in the olden days (around the year 2000) how we developed for the web was a solved game. An example of a solved game is Checkers (English draughts, if you will). Given that both players play perfectly, the outcome of the game can be predicted at any point. Web development was the same: Use the lightest text editor you can find and find a good FTP program like Filezilla and that was that. The code you had to write wasn’t solved by any means, but the surrounding infrastructure, stack, and... More

Drupal Create released on Github

I felt good yesterday. After a long effort, the Drupal Create mobile app was released on Github. Drupal Create is an iOS app which enables folks to quickly and easily post content to Drupal sites. The code is now available under the MIT license for anyone to reuse, customize, and improve. You can modify the code and distribute it and still choose whether or not to give back those modifications. I hope you do give back, but you are not... More

My Dream for the Web: The Open Source Way

What should the Web be? When I ask this question, I suddenly feel ancient because it takes me back to the days when I was an engineering student. We were always told that with technology, the sky was the limit, but it was never easy for me as a developer to explore everything that technology had to offer. The Internet has been a world of endless opportunities, yet I have always hoped for developers to have a more seamless, free web experience. So, my dream for the perfect technology world is one that completely embraces open source and appreciates “Creative Independence”, where a young,... More

Protecting Drupal's fleshy underbelly with .htaccess

In this article, I’m going to show you a few methods to separate your public site from the vulnerable parts of your administration area. What you need is an effective way to keep your site locked and secure, and protected from attacks, while still leaving your site editable for trusted users. Methods for securing the admin section of your site One of the things that is often overlooked when setting up and securing a Drupal site is the administrative sections. Sure, Drupal protects these paths with access controls but you can do a lot more to protect your site, especially if your site doesn’t... More

The state of the multilingual web and Drupal within

Last week I had the great opportunity to go to the W3C Multilingual Web Workshop in Rome. It was a great gathering of standards crafters (from W3C, OASIS, etc.), service providers, academia, EU institutions and implementors. A wide range of topics were covered. For example, who would have thought representing human names properly is even bigger a problem than date formats. With social services and highly tailored textual feedback these days, this is an important area. I also got insight into the latest thinking on machine... More

A pragmatic guide to the Branch Per Feature git branching strategy

[Update 09/09/2013] I mentioned below that we'd make our scripts available for setting up BPF. Well, in collaboration with the awesome team at Affinity Bridge, we've gone one better than that: there's now a ruby gem available for this at http://rubygems.org/gems/git_bpf. Use this gem to initialize a repo for BPF, including setting up the shared rerere cache (which is actually in the same repo as your main repo, using an orphaned branch) and the hooks that will push to and pull from the... More

Introducing Drupal Commons 3.0!

Today we launched Drupal Commons 3.0, a flagship release of Acquia's social business software solution now available for Drupal 7. This release builds on Acquia's OpenWEM initiative offering a set of customer experience solutions built on the open, unified Drupal platform for content, community, and commerce. We believe this is a significant milestone in the evolution of both Drupal Commons and the greater Social Business Software market. We've already received excellent feedback from both partners and customers throughout... More

Managed Cloud pro tip: The Environments

Managed Cloud is a great tool for hassle-free management of your Drupal sites and works great out of the box. What I realized in the last weeks is that it has a lot of features that we don’t typically advertise to users but are hugely valuable for them. Development environments are one of those. The standard of Drupal development stipulates that you need three environments for your users: Development - for making the actual changes and integrating them Staging (sometimes called Testing) - to test all changes before going live Production (sometimes called Live) - where the actual site runs for... More

Using Selenium as Testing Platform

One of the key aspects of successful project delivery is creating an effective quality assurance (QA) process. Functional testing of the application is usually performed by a separate team than the developers who typically do not know how to program. A challenge that I have found on projects is providing a good open source QA tool to the the QA team that does not require programming knowledge. Selenium has been the tool of choice and works wonderfully, but we have found a couple of issues when integrating it into our continuous integration (CI) processes. The first challenge that we have... More

Drupal-to-Drupal data migration - Part 2: The architecture

In a previous post, I described the basics of using the Drupal-to-Drupal data migration module (migrate_d2d) to import data into a Drupal 7 site from a separate Drupal 5, Drupal 6, or Drupal 7 site. Now that the first full release of migrate_d2d is available, I'd like to dig deeper, explaining the architecture of migrate_d2d and showing some more advanced examples of extending it. Basic... More

Content Staging for Drupal, BADcamp presentation

Ever since Drupal started to hit the big time, anyone talking about workflows and process at a Drupal con or camp has probably been asked this question: 'How can I migrate content from one Drupal site to another, so I can review changes before they go live?' I call this the Drupal content staging problem, and I've never had a good answer for it. Until now. In this BADcamp 2012 presentation, I described how to use the Services Client module and UUIDs to manage bi-directional... More

Open Source in the Public Sector

There are times when it is hard to believe that anything innovative is happening in Washington. At the recent World Government Summit on Open Source, though, it became clear that over the past several years there has been a quiet transformation in the way government agencies are using technology. Throughout the course of the October 11 event, which is a gathering for open source advocates in the public sector, I noticed a trend in the conversation. There was a simple idea we kept returning to again and again: Open source software is influencing government today, and in a big way. Government... More

...and Migrate, future

The major theme of the next release of Migrate on Drupal 7, version 2.6, will be developing an infrastructure to make it easy for migration modules such as wordpress_migrate and migrate_d2d to build user-friendly interfaces for importing content, based on step-by-step wizards. This work includes not... More

Migrate, present...

Migrate 2.5 has been released, consolidating several enhancements and bug fixes since Migrate 2.4 was released in June. Class registration The most important changes to be aware of are around the registration of migration and handler classes. In the past, you simply defined the classes you needed, and Migrate would (by scanning the class registry and instantiating... More

Joining Acquia Cloud Engineering

I spent a thrilling 7 years at my previous company before it was time to move on. In that time I was instrumental in building a leading SaaS community platform and Single-Sign-On solution and got to work with many world renown clients. When I chose to leave I knew I wanted to take my time in selecting my next job. Thus, I researched multiple companies searching for a role that would satisfy my passions for engineering team and product management, building massive, scalable globally-distributed LAMP systems and exciting client engagements. Although opportunities at wonderful companies... More

Drupal-to-Drupal data migration Part 1: The basics

I’m pleased to announce that the migrate_d2d module, long in sandbox mode, is now a full-fledged drupal.org project, and the first release candidate is now available. This module extends the Migrate framework with a framework of Migration classes for importing into a Drupal 7 installation from existing Drupal 5, Drupal 6, or Drupal 7 sites. Motivation There were 2 primary motivations for the development of this module: Taking the opportunity... More

Engineering week 2012 and Hackathon

What do you get when you combine Acquians, BOFs, Drupal, a hackathon, paintball, and bowling? Acquia Engineering week, of course! Two weeks ago, nearly 70 members of the Acquia Engineering, Design, and OCTO teams gathered together for our 3rd annual Engineering week. It"s like an intimate five-day DrupalCon, where many of Acquia"s incredibly talented Drupalists, systems engineers, front-end engineers, automation engineers, writers, designers, and UX specialists gather to learn and have fun together. While the... More

How we test Acquia Cloud

Continuous Integration (CI) is powerful approach for improving software development and release engineering. Acquia Cloud provides a turn-key CI environment for our customers web applications. One important component of the CI process is automated tested, and Acquia Cloud makes it easy for our customers to run automated tests on their sites. Acquia Cloud is itself a software product, and we follow a CI process for developing it as well---including having extensive automated tests. However, instead of being a normal application, Acquia Cloud is the infrastructure running thousands of other... More

Finding All the Things at the Engineering Hackathon

Last week the Acquia Engineering team assembled in the office for a week of brainstorming, coding, and fun. One full day (24 hours) was devoted to a hackathon, and we vetted ideas and jockeyed to recruit teammates right up to the 9 a.m. starting time. A problem often encountered in larger technical teams centers on the one’s ability to find the relevant documentation. At Acquia, we have a wide range of systems that house documentation targeted at the appropriate developers, technical account managers, support and sales departments. Our... More

Trust is the Key to Social Collaboration

I just finished reading Extreme Trust: Honesty as a Competitive Advantage by Don Peppers and Martha Rogers, and it got me thinking about the social collaboration efforts I have worked on the past couple of years. Though the book has an external focus in regards to how social networking is forcing companies to be more transparent with its customers, I think the same principles apply to the collaboration between colleagues within a company. From what I have seen, a “build it and they will come” mentality takes hold and stakeholders forget that trust needs to be built between the different... More

Sticking to Done

One of the terms that I first heard when I joined Acquia was the “Definition of Done”. This was a concept that originated from our engineering team and when I heard it I really liked it. The idea behind the Definition of Done is simply a checklist of what has to be accomplished before you can call a sprint/release complete. I was reminded of how important this concept is today when I had to make the call to delay a release because could not pass the next step in the Definition of Done. My decision to not move forward with the release was easy because it took all the emotion out of the... More

Code sprints after BADCamp 2012

Acquia invites Drupalers to a code sprint after BADCamp on Nov 5 & 6 at UC Berkeley. Join D8 Mobile, D8 Multilingual, Drush, Spark, and many other teams as we make Drupal rock even harder. See who is working on what, and add your name to the signup sheet. Monday November... More

Responsive tables in Drupal 8

I'm thrilled to announce that all HTML tables in Drupal 8 will be responsive. This is a huge win for the Drupal 8 Mobile Initiative.. This is especially important in Drupal's admin section, which traditionally featured wide tables listing recently created content, comments, users, terms, etc. I believe we struck a great balance by hiding unimportant columns by default at narrow widths, and letting user expose those columns on demand. Our technique is a simplified version of... More