Glendale Community College

Glendale Community College home page

Glendale Community College (GCC) wanted a quality Drupal site built by expert Drupal developers, but they also wanted those developers to be partners who would help them come up to speed with Drupal development skills.

At the beginning of the project, during the discovery phase, I visited the GCC team on-site both to gather requirements and to give them their first round of training. The initial training included a bootcamp on Drupal basics, Git version control, responsive design, and the Pantheon hosting environment. I also interviewed them about their static HTML page mockups, and guided them through the process of determining what content types they would need based on their mockups and other requirements they provided during interviews, and how to make their designs responsive.

Through the rest of the project, while leading the team of developers on my end, I was also training the GCC team on what we were doing, so that they could take over developing some of the post-launch site enhancements.

Site Architecture

Working with my contacts at GCC, I helped them determine how to go about configuring Drupal to fit their vision, from content types to views to the theme. I worked with them to decide which content types that I had used on previous projects would be useful to them, and which new ones would be necessary. Some of the new ones I worked with them to create included academic program, degree/certificate, student club/organization, and department. I discussed the advantages and drawbacks of various Drupal field types and field collections with them, so that together we could pick the best solution for their needs.

I also helped them develop views to display lists of these content types. GCC needed the content of these views to be represented hierarchically. For example, degrees and certificates were children of academic programs, and needed to be represented as such in the degree and certificate listing view. I discussed the various options for establishing hierarchical relationships among the content, including through the use of taxonomy, menus, and entity reference fields, and the advantages and drawbacks of each approach. Ultimately GCC decided to use entity reference fields, as they not only allowed creation of a relationship that could be represented hierarchically in the views, they also provided a convenient user interface for content editors when combined with the form widget from the References Dialog module.

Responsive Theme

Although GCC had a staff designer who created HTML / CSS mockups of their new site, he and the rest of the GCC team were unfamiliar with responsive design. I showed them examples of how a page layout could change at different breakpoints, and together we drafted wireframes depicting each page layout they had created, and how the content regions would rearrange at various window sizes. I also educated the GCC team about the use of formal grid systems and grid frameworks. Once we had agreed on a strategy for adapting the page layouts at different window sizes, I led the effort to implement the responsive designs, coding the appropriate grid classes into the designs and writing the necessary Sass code. I also directed the work of other developers on my team who helped with some of the theme development.

Training

At every step of the project, I trained the GCC team how to be Drupal developers. We started with setting up local development environments for each web designer and developer at GCC, then moved on to the basics of Git version control, and how to use Git to push and pull code from the Pantheon hosting environment. We also covered how to add and edit content types and views, and how to use the Features module to export configuration data from the database into code that can be pushed from one environment to another using Git. Post-launch, GCC continued to engage my team and me for training, and to check their work as they gradually built more and more post-launch enhancements to their site themselves.

  • Lead developer on the project, delegated tasks and managed work of other developers
  • Training on views, features, Git, content type development
  • Analyzed requirements to help client develop degree/certificate, academic program, department, and student club/organization content types.
  • Adapted client's design mockups into a responsive theme, used Sass.
  • Enhanced and codified our higher ed Drupal distribution with additional content type and views features, updating make file and installation profile, etc.