Kevin's Blog

All blog entries reflect the opinions of the author and have not been expressly endorsed by the Ivan Allen College of Liberal Arts or the Georgia Institute of Technology.

On the Future of Web Theming

Submitted by Kevin on Mon, 11/27/2017 - 16:33


Recently, I released a framework that I call a Web Theming Infrastructure, and I think it's worth dissecting and exploring here given the potential that I see in it.  But first, I have to explain how I got to this point.

For more than a decade, web theming at Georgia Tech has been the domain of Institute Communications, and they have handled both specifications and implementation.  Unfortunately, they've never been funded to act as a true central web development unit, so they have struggled to manage the implementation side of the equation.  I would imagine that Georgia Tech is not alone in facing this kind of problem, but like most universities, we have been applying early 2000's techniques to a rather complex problem that needs a more sophisticated approach.

Drupal 8.3 Migration - Better, But Still Limited

Submitted by Kevin on Tue, 06/27/2017 - 16:17

A little over a year ago, I wrote about the usability of the Migrate tool in Drupal 8.1.  We're now up to Drupal 8.3, and while Migrate has improved a little bit, it's still officially an experimental module, and still has some notable gaps.  This doesn't mean that you can't successfully use it, but you do have to understand what you're getting from it and prepare yourself to bridge those gaps by hand.

The instructions I gave in my previous post are still valid, so I won't waste space repeating them here.  Instead, I want to start by explaining how the Migrate tool works, so that you can better understand its limitations.

Customizing CKEditor in Drupal 7 and 8

Submitted by Kevin on Tue, 06/20/2017 - 13:21

Having worked on new ways of doing layouts with the Paragraphs module and worked with Institute Communications on the development of a new version of the Georgia Tech web theme, I realized that there was still one component of website visual design that I had yet to address:  a visual building block toolkit for content creators and editors.  Custom layouts are a part of this puzzle, but they do not address the need for custom styled headings, buttons, introductory text, etc. that need to be part of the actual content of a page.

The challenge here is that you want to make these custom styles easy to use and easy to maintain.  The most obvious approach is to add them to your chosen WYSIWYG editor, but figuring out how to do that can be tricky.  Here at Georgia Tech we use Drupal and in turn the preferred Drupal editor, CKEditor.  This is helpful, as there are lots of guides out there for extending both Drupal and CKEditor, but it can take time to dig through them and figure out how to make it all work.

Drupal 8.1 Migration - Not Quite There Yet

Submitted by Kevin on Fri, 04/29/2016 - 17:41

With the announcement that the Migrate modules were being included in Drupal 8.1 (albeit as experimental modules), I thought it would be worth giving them a try against a moderately small site just to see how well they work.

First of all, Migration is going to be a very different process from anything you may have done in the past to go between Drupal major versions.  It's very important to read the basic instructions, which I'll summarize here:

Drupal Paragraphs Module: The Holy Grail?

Submitted by Kevin on Tue, 12/29/2015 - 20:14

After a vendor recently delivered a site to us built in Panels that I found to be unbelievably confusing to try to work with, I went off searching once again for the Holy Grail of Drupal - a module that can actually make it easy for a non-technical content manager to create and maintain moderately fancy page layouts.  Fortunately, I didn't have to look far, as a former co-worker pointed me to a wonderful little diamond in the rough called Paragraphs.  This module doesn't look like much at first, but it really has some nice power under the hood once you figure it out.  I guess it's just par for the course that a module like this one would have the same steep learning curve as Drupal itself.  So, in today's blog post, I'll try to unravel the mysteries of this marvelous module and provide a quick tutorial to get you started.