by Elliot Christenson on November 14, 2016 - 1:13pm

You may have read my previous blog post "Higher Ed Drupal: Drupal In Computer Science". In that post, I detailed  what I hoped to achieve with my students this semester. I'm instructing the Introduction to Computer Science class at the University of Wisconsin-Green Bay.

That first post was written two months ago. At that time, I wasn't sure if I'd be able to get students to a point where they would be able to understand CS Fundamentals" in JavaScript, the basics of database design and an introduction to the basics of PHP.

The students have been great, and I'll give you a final update in a month. For now, I'd like to try to outline what I've come across as challenges. Like I said previously, I was very excited and anxious to dive into Drupal with them. I had some unexpected setbacks, but I still believe we will be successful!

Unexpected Roadblocks

University Linux Server

While we had access to a University Linux server, I didn't think to check prior to the semester that PHP and MySQL were installed. Perhaps I'm showing my age, but I haven't set-up a Linux server installation where it wasn't nearly automatic to have PHP and MySQL. So, we muddled through that for a few extra classes, delaying the jump to learning some PHP and MySQL basics with some additional JavaScript work. Furthermore, when I discovered the lacking LAMP stack, I also came across a disk space issue. It turned out, this server was severely underpowered. No matter, it's easy to get a Linux server, right?

Enter AWS

myDropWizard's David Snopek had enlightened me through the development of some of our in-house tools that AWS can be a great solution. Furthermore, when I expressed frustration with storage on my podcast shared hosting, he prodding to go to S3 for storing the MP3's. It worked fantastically, so I migrated all of my larger files to S3. I've been thrilled with the performance and cost.

So, it was a natural that I'd think to try AWS for hosting some simple student LAMP projects.

That was a mixed bag. While each and every student had an Amazon account, about half of the students ran into an unexpected roadblock. Amazon flags certain accounts to be reviewed for up to 24 hours. Since I hadn't run into that with my account setup, I hadn't anticipated this problem. It really set us back a full class.

Still No LAMP

"Just use all the defaults to setup the free server!", I said. Trying to walk one person through their first Linux server setup is hard enough, but trying to get 25 people to follow along as I tried to quickly get up and running was nearly impossible! I hadn't immediately realized it, but the default configuration also didn't have LAMP. A quick Google search for "AWS LAMP" came up with "Tutorial: Installing a LAMP Web Server on Amazon Linux". It was perfect!

So, aside from some type-o's and some inexperience with the Linux command-line (never use PuTTY), we were finally up and running with:

  • Linux
  • Apache
  • MySQL
  • PHP
  • ...and the instructions setup phpMyAdmin

Finally, we had a server where students could setup databases in MySQL and could load files using their trusty Filezilla.

Finally: Drupal

I tried to prepare them as best as I could for understanding Drupal enough for the goal of producing or migrating some sort of module for Drupal 8. I'm hoping to brainstorm some creative modules soon, but I am definitely open to recommendations of simple modules that should be ported! I feel that a good amount of the class is in good shape as far as JavaScript is concerned, but their PHP skills may not be where they need to be.

While I did walk them through my install of Drupal 8 today as well as installing my one Drupal 8 Contributed Module, I did feel they may have been overwhelmed. One thing that I realized walking through this was that I had only demoed Drupal for otherwise knowledgeable web designers or developers. So, even though we are amazed at the simplicity of installing Drupal 8, it is still very difficult. This is before digging into the concepts of content types, blocks, views, theming, entities. I'm sure it's a bit overwhelming for some of them.

That said, next class, I'm having them install Drupal 8.

Where Do We Go From Here

I'm hoping to identify some small, simple abandoned Drupal 7 projects that could be ported relatively simply. My goal is to get each of my students to contribute to open source. If I don't find any others, I have my small suite of modules that are still in need of Drupal 8 versions.

Again, Open to Your Feedback

Anyone else have experience using Drupal in an introductory Computer Science class? How did you get everyone up to speed? What was the end result? Were some things easier or harder than my experiences? I'd love to hear from you. Ideas, tips, pit-falls!

If you'd like help with supporting your Drupal 6, 7 or 8 website, please contact me for a free site audit! That's what we do at myDropWizard.

Want to read more articles like this?


Subscribe to the blog and recieve e-mail updates when new articles are published!

Add comment