Back to top


Greggles, Gregorybeans, Frijoles, Beans

Drupalcamp Colorado 2014 Preview: Large Scale Drupal

This year, Drupalcamp Colorado is taking on the topic of "Large Scale Drupal" - a phrase that was popularized by Dries Buytaert. We're taking that phrase and using it in a generic sense to help set a focus for our event.

Matthew Saunders wrote a great overview of the camp, so if you're interested and need more convincing to come, read that. This is an update on our tracks and some great sessions that have been accepted already.

Tracks and session submission requests

We're taking that theme as inspiration for our sessions which will be across 4 tracks:

  • Business and Open Source
  • DevOps
  • Commerce
  • Design and Front End
  • Development and Site Building

Today we are excited to announce the first 9 sessions that have been selected. Session Submission is still open until July 11th. We've currently got too many sessions in /Development and Site Building/ and not enough sessions in the other categories. So...if you have something to say in those other areas, please submit a session (note, you have to login first, and you should register too).

First sessions that have been accepted:

There are some sessions we know we're going to accept because they come from great presenters on popular topics that match our theme. Below are the 9 sessions we knew we could accept now.



  • Solution architecture: designing a strategy for project success by Diana Dupuis, Amazing CEO of Amazee Labs in the USA
  • Data Analytics and the Day After by Ron Lin, CTO and Co-Founder of
  • Category: 
    People Involved: 

    my schedule

    My schedule is pretty flexible: 7 to 5:30 most days.

    Monday busy from 10:30 to 11:30.
    Tuesday busy from 7 to 9 and 4 to 5:30.
    Wednesday busy from 4:00 to 5:30.
    Thursday busy from 8 to 9:00, 10:30 to 11:30 and 4:00 to 5:30.
    Friday generally free.

    People Involved: 

    Nexus5 Unlimited talk/text/data for $45 per month (seriously)

    You could also call this "Free Nexus5 if you switch from AT&T or Verizon." Here's a comparison of the plans and how I arrived at the idea of "Free" Nexus 5.

    Item Verizon StraightTalk
    Phone purchase price Subsidized $200 every 2 years No subsidy
    Monthly cost for 2 lines $190 $90
    Minutes included 1400 Unlimited
    Text included 500 Unlimited
    Data Unlimited originally, switched to 2GB for the same rate Unlimited (2.5GB cap, after that 3G service)

    This chart shows how much money both of these plans cost. I used a MotoX as the subsidized phone since it is similar in specs to the Nexus 5.

    Comparison of Verizon and StraightTalk plans for 2 years

    For our 2-phone-household, we had been spending $4,658 in a 2 year cycle compared to our annual of $2858. Both of those numbers feel pretty high, but at least with StraightTalk we're saving $1,800 in a 2 year cycle. Source data for that chart is in this spreadsheet

    Let me say that again: $1,800 savings in a 2 year cycle! We could actually buy a new Nexus phone (or similar) every year and still save money compared to Verizon.

    Enter the Nexus 5 and StraightTalk

    People Involved: 

    Grepping Jenkins job config files

    Once you've gone beyond a trivial number of Jenkins jobs you can get into a situation of not knowing which job does which thing. You might say "I know some job is running a query on a table, but which one?" in that case it can be helpful to search your Jenkins jobs.

    Managing Jobs by script size

    We have two strategies for managing Jenkins jobs: put short scripts into the job itself, but move longer jobs into code somewhere else.

    Most jobs use the "execute shell command" Build Step. I also use and recommend the JobConfigHistory plugin to see how a job has changed over time (or who fixed/broke things). When the number of lines in your "shell script" section of the job gets over a maybe 3 or 4 I think it's time to move things to "real code" that is managed by a revision control system with more power than the JobConfigHistory plugin (i.e. git). So, we tend to put things into one of four places: R scripts, Pentaho jobs, Drush commands or bash scripts. All of the R scripts, drush commands and bash scripts are managed with git. The working checkouts of those directories are updated periodically ( Jenkins jobs :)). So, if I want to grep that external code to see where a particular table is being modified it is very easy to do that. But...what about the one or two line shell scripts that are inside Jenkins jobs?

    Searching Jenkins Job config files

    First, you have to know about the Jenkins directory structure. The job configurations are stored in files called config.xml located in the Jenkins home directory (often /var/lib/jenkins/). So, if you have a job named production_deploy then the config file for it is located at /var/lib/jenkins/job/production_deploy/config.xml

    People Involved: 

    Software management on Mac: Why is it so bad for users?

    Compare all these different ways you have to install and update software on Mac:

    1. The app store - obviously this is what Apple wants, but they have rules about what can and can't go there and the rules don't match the rules their customers want (e.g. easy in-app purchases) but instead what Apple wants (more money).
    2. Download software from a website and install it. This works OK, except that the vendor has to get a key that is verified by Apple (which has its own legal paperwork for the developer to pretend they read). If they don't get a key then the user has to follow this Apple knowledge base article that includes advice to control click, use the context menu, answer a dialog and then it will work. That was simple, right?
    3. If you downloaded software from a website, it might update itself (For me, Sublime, Source Tree, and Adium all do this). OR, you might have to periodically go back to that website and see if a new version is available and then download and install it (Looking at you, Dropbox).
    4. Homebrew, Macports, etc. What is this, Gentoo? Since when is compiling source all the time a user friendly idea.
    5. My favorite scenario? When I need to get software X which comes via one channel. But I have to also get something it requires which comes via a different channel. Rough.

    The App Store is clearly the most user friendly option, but as a user or developer I have no control to adjust its behavior. I can't say "Get stuff from the official Apple channel but also get new software and updates from the Dropbox website.

    Glossing over the issues with unsigned packages, having a variety of different methods to install software that are inconsistent with each other means I have to spend more time remembering and researching the software.

    People Involved: 


    Subscribe to RSS - Greg