Drupal development, project updates, occasional knee / head slappers

Oct 4, 2011

If last week's videos helped 'git' you interested in version control, this next week is where we start learning how to apply the commands you will use most often as you to to your repository. For those of you who are new to version control, this will set an important foundation of uniquely version-control-esqe concepts along with super practical application. If you're coming from a Subversion background, you'll learn about the 'staging' area, something we'll use throughout the series to finely-tune our commits.

Next week, keep an eye out for the next installment where we learn how to roll back our changes, leverage a graphical utility to visualize our modifications, and more!

How to stage and unstage files and what staging means
In this video we set the 'stage' for a proper commit cycle. Whether you're new to version control or have some experience with another system, this will help you get oriented to a typical two-step commit process.

How to commit a file and stage multiple files
Building on our staging video, we show how to stage several files and make an actual single-file commit to our repository.

Why certain files are ignored and how to add your own ignored files
Drupal 7 comes built-in with a list of files to ignore to keep your repository free from sensitive database data and large binary files, but in this video we show how to expand this list to include our own set of files in a way that doesn't require hacking.

How to commit unstaged changes and modify staged files
Once you're solid on the idea of staging, we look at bypassing staging altogether, and what happens after you've modified a file that's already been staged. Understanding this is cortical when troubleshooting why some changes aren't automatically being rolled into commits.

How to use the diff command to review modifications
A diff can look a little strange the first time you see it, but once we walk you through how to read a diff line-by-line, you'll learn just how powerful a tool it can be. For those of you who have used diff before, we go deep into what each bit of information is telling you.

Sep 27, 2011

New to Git and the command line? Need to get everything into version control so you can sleep at night? Do you crave a sane release workflow? 10 NEW free videos from Build a will help get you started.

This week we're releasing the entire first chapter of a new series called "Change Management and Version Control" for free. I'm super excited about this series because it puts some very powerful tools in the hands of both new and experienced Drupal developers, and smoothly transitions the viewer from one topic to another by using practical, connected examples. By the end of the series, viewers will:

  • Have a solid grasp the scalable techniques you need to sanely manage or work within a team of developers engineering a single Drupal site, and even how to create a sane, stable workflow for a one-person project.
  • Know how to use Git to manage release cycles to a production (i.e. live) site.
  • Have every valuable piece of work, both in code and configuration, captured in version control for peace of mind using Features, Selenium IDE and a variety of other techniques.
  • Be able to do (and just as importantly, undo) on any level with Git, a powerful version control system.
  • Be able to work faster using the command line and Drush
  • And more. Lots more? Oh yes.

This first chapter sets the groundwork for the rather exciting examples to come. In it, we help you get Git installed, demonstrate how to use the command line and explain what 'version control' is to the uninitiated (oh man, you uninitiated are in for a treat!). Even though we're about to dive into some advanced topics, this chapter will help level the playing field between those who are just starting out and those with more experience.

Welcome to "Change Management and Version Control"
This is a quick overview of the coming series and a pep talk for those ready to dig deeper into some of the most powerful tools available for managing a Drupal engineering and deployment workflow.

How to install Git on Windows with mysygit
In this video we help you get Git installed in a Windows environment, along with a nice cross-platform graphical Git app called SmartGit. We use the mysygit package that includes great command line tools that will allow you to follow along with the rest of the series.

How to install git and SmartGit on a Mac
We take you through the straightforward steps of installing Git and the free (for non-profits) graphical tool SmartGit on a Mac.

How to create a Git repository and add a complete Drupal site to it
Bam! We jump right into getting a Drupal project on version control by adding the whole thing to a new repository. Don't know what a repository is? No problem, we'll talk you through it.

Why the command line can be scary, and the benefits of conquering your fear
Before we go too deep into Git, we take a little detour to introduce you to the various commands you'll be using throughout the series. But, we before we do that, we validate any fears or discomfort you have about the command line and explain what's in it for you.

How to navigate file structures and stop processes on the command line
The start of a straightforward, 4-video overview of using the command line. With these videos, you'll be able to get 80% of what you need. This first video covers how to find out where you are, how to get somewhere else, and how to stop everything if you get stuck.

How to edit and save text files on the command line with VIM
If you've never edited text on the command line, I envy you a little. But, it's hard to get around it when you're using version control. In this video we tell you just what you need to know to get in, make your changes, and get out without too much fuss.

How to use built-in help on the command line
The command line isn't all about masochism and penance. There's actually a ton of great help if you know where you find it (and how to read it). In this video we show you how to do just that.

How to create, move, copy and remove files on the command line
While you probably have a file explorer of some kind to get you through the process of shifting file structure around, this will show you just how easy it is to do on the command line. And maybe, just maybe, you'll kind of like it.


If you feel any lack of confidence in your development and release workflow, either as a single-do-everything-er or a member of a vast development team, this new series will clear it up. Really. And the approach is friendly to all levels of experience while still staying incredibly focused at each step.

Enjoy these videos and keep an eye out for new free videos in the "Change Management and Version Control" series coming down the pikes over the next several weeks.

Chris Shattuck

Sep 20, 2011

New series for advanced users, "Change Management and Version Control" plus 7 new site building videos

Wow! It's been a long time coming, but finally we're releasing the final installment of "Build Your First Drupal 7 Web Site". If you've been following the series as we've released it over the last several weeks, then congratulations! Completing the series and wrapping your mind around Drupal's various parts and how they all move together is no trivial task. And now you have exactly what you need to embark on awesome new projects using nothing but the Drupal front end. But, if you're starting to get curious about what's going on under the hood, we definitely have some videos to help you with that, too. :)

Before I talk a little about the next series being released on Build a, here's a list of this latest set of site building videos:

Drum roll, please... "Change Management and Version Control" series will start rolling out next week!

For those of you advanced users that have been waiting patently through all the intro site building material, your patience is about to pay off big time. This next series is one I'm super excited about because it will cover some of the most powerful tools out there for Drupal development workflow management. I'll be talking more about it in the coming weeks, but here are some highlights:

  • What version control is all about, and how to use the Git version control system to deploy live sites, create stable release cycles and allow team members to work together without toe crushage.
  • How to use both simple and more complicated Git branching workflows to manage any scale of project.
  • How to use the command line (and why it's okay to be a little scared of it)
  • How to upgrade Drupal and patch modules.
  • How to use the Features module to version control many aspects of your site that aren't normally version control-able.
  • How to use Drush to speed up your development and deployment process.

To demonstrate the slew of tools and features we cover in this series, we'll be using very practical examples and will work on a single, consistent project all the way through.

The tools we'll cover are tremendously useful for both Drupal 6 and 7, and most aspects will be applicable to Drupal 8 when it releases as well. It will also enhance your development process regardless of the size of your team or the size of your project, which means that the tools will scale as you scale.

Starting next week, we'll be releasing new videos in this series as streaming additions to online video library, which you'll be able to access with a membership. We anticipate releasing the full series on DVD and for download within the next 2-3 months.

Enjoy the anticipation and have a amazing week!

Sep 13, 2011

In this first part of the last chapter of "Build Your First Drupal 7 Web Site", we work on integrating tools to make it simpler for editors to work with content on the site. Specifically, we explore using IMCE - a media manager tool - to embed images into a Wysiwyg-enabled field, and we configure the Wysiwyg module to CSS class selectors. Along the way, we solve an issue where content displays differently on the site than it does in our Wysiwyg.

If you've been following along with this series as it's been released, then you know we've just about completed our project. Throughout the process of building this site to match the mockups and requirements we were given at the beginning of the series, you've learned an amazing amount of material, so give yourself a huge pat on the back (but don't hurt yourself). You're familiar enough now with the essential building blocks of Drupal that you will be able to create other incredibly functional web sites without ever having to touch code. And from here, you can build on what you know to explore new modules, adjust the look and feel of cookie cutter themes to look unique and site-specific, and move on to other exciting aspects of Drupal like theming or diving into the community.


Build a featured on last week's DrupalEasy podcast

This last week I was a featured guest on the excellent DrupalEasy podcast. If you're interested in hearing me talk about some of the ideas behind Build a or thoughts on Drupal training innovation, you can fire up the podcast here. The hosts of the podcast, Mike and Ryan, are great at distilling some of the biggest news and movements in the Drupal community into an entertaining, useful dialog, so definitely stick around after my bit is done and consider subscribing.

Get Free DVDs and Memberships for Your Event

Just a quick reminder that you can get free DVDs and membership certificates to give away and Drupal and other tech-related events. Just fill out the form here letting us know more about your event (this includes user group meetings) and we'll hook you up with something nice. :)

Sep 6, 2011

How to Evaluate Modules Chapter Released

This week we're releasing the second-to-last chapter in our "Build Your First Drupal 7 Web Site" collection. These 11 videos take you through the process of evaluating whether a module is a good fit for your project, and if it's going to work for you in the long run. We also introduce you to IMCE, a useful media manager and talk about troubleshooting permission issues.

One-on-one mentorships

If you have some Drupal skills you want to share in the form on a mentorship, or could use an experienced Drupal mentor as you work through a complicated project, we've set up a page to be able to connect you to the right person. The videos on Build a provide a great framework of learning resources that you can leverage to enhance the mentorship and optimize time.

If you would like to be a mentor, simply fill out your profile on your user account page, and if you want to see a full list of mentors, go to the One-on-one Training page.

Aug 31, 2011
What Drupal training could be

Skilled Drupal talent is in demand, and the number of Drupal trainings are growing to help fill the talent gap. But the number of trainers is limited, and the traditional lecture / workshop model is restrictive, requiring significant preparation on the part of the trainers, and absolute, unwavering focus and comprehension from the students for hours on end.

I'm proposing a different model that allows students to work at their own pace, freely moving backwards and forwards through the curriculum, that frees up trainers to directly answer student questions 100% of the time, that requires very little trainer preparation, allows a much higher trainer to student ratio, and eliminates the need for the performance skills required to stand in front of a classroom of eager students and not freak out.

And if this model works, Drupal training can be done more effectively for more people at much less expense.

A little background

I fell asleep in class. A lot. All through high school and college, I'd doze off at least a couple times a day. When I got out of school, I realized I could learn a lot more doing research on the internet than I could in a classroom. Since most classes were lecture-based, my theory is that at some point my brain wanted to stop and process some information, but there wasn't any time for that mid-lecture. So at some point, as a defense mechanism my brain would slip into subconscious mode where it could do that processing and I'd begin drooling on the desk.

When I could pace myself learning online, things changed. I picked up enough programming, design, business skills that in a a year or so I was employed doing exactly what I'd been learning about. Being able to stop and go for a walk, apply a concept to something I was working on, or skip over something I already knew was like slipping into a custom-tailored suit. It fit my brain. And I don't think my brain is unique this way.

If you have been living in a cave like me...

A couple of months ago a friend mentioned the Khan Academy to me, since he saw some parallels between it and what I was doing with Build a (albeit on a smaller scale). If you haven't heard of the Khan Academy before, it is a set of free lesson-style videos covering most high-school level subjects like math, physics, history and a ton of other subjects. Kahn's vision of the future of the classroom resonated with me (because of my lecture-induced narcolepsy) and made me realize how much potential pre-recorded training material has, combined with live teachers and trainers, to really expanding our capacity to teach and learn pretty much anything.

The idea is that instead of students sitting through lectures where they often miss out on one important concept that keeps them from understanding everything that comes after it, they watch pre-recorded lecture videos at home. This allows the student to rewind when they don't get something, pause to take a break, and keep moving forward when they're getting excited about something. Then in the classroom, where they would normally be sitting through the lecture, they work through examples and get questions answered. In essence, the application part of learning, where you find out what you really do and don't know, is done where there is a skilled teacher available to help, 100% of the time. The teacher is now free to mentor because there is no longer the need for a lecture.

Applying the mentorship model to expand our ability to teach Drupal

If you've ever been in a training, or given a training, hopefully your wheels are turning a bit on how reversing the typical classroom structure can help people learn and teach more effectively. I see a couple implementations of this model working in the Drupal space, and am calling them 'mentorships' since most of a trainer's time will be spent with students one-on-one or in small groups, rather than 'training' the class.

Live group mentorship

Imagine you walk into a training. You sit down and a trainer comes over and says 'what would you like to learn about?' You tell them and they set you up with a set of videos to watch. They say, 'believe me, these get to the point much faster than I could. Go ahead and start watching these, and whenever you have a question or want to see something in action, just raise your hand and I'll come over. I'm here to help you learn as much as you can today. I'm also going to hook you up with some other people at the same experience level and interests so you can work through some of the material together if you'd like."

So, you slip on some comfortable headphones and start watching. They do get to the point. After 20 minutes or so you need a break, so you get up and walk around. You think of some questions and ask one of the trainers. Then when you're ready, you start watching again.

I guarantee that in this scenario, if the videos are well done and include some practical exercises, you will learn more than if you sat through lectures, even with hands-on workshops between them.

Online group mentorship

If you take the live mentorship model and move it online, you optimize trainer time even more, but at the cost of less human-to-human interaction. The idea would be that there would be a syllabus with all of the lecture material available as pre-recorded videos. Online meetings would be arranged at specific times to allow students to ask questions of the trainers that have come up as they've been working through the material.

Instead of the trainers preparing webinar-style presentations, they would instead be spending the entire time helping students troubleshoot, answer questions, and demonstrating examples on-the-fly.

Why this is a good idea

Trainer benefits

What employing this model means is that trainers no longer need to be performers. They also need only a fraction of typical preparation time, which if you're like me, is significant. They just need to know the technology. If they will be mentoring students on how to theme in Drupal 7, they should know how to theme in Drupal 7. And that's it, they're qualified. Of course, knowing how to teach a concept is important, but the need for astoundingly good teaching skills is offset somewhat by the teaching that's happening through the video, which just means that the talent pool available for this kind of training is a lot bigger than traditional training.

Student benefits

Students can work at their own pace, meaning they have the opportunity to absorb everything. If they start zoning, they can take a break to get focused. They can rewind to review, they can fast-forward to skip stuff they know and they can pause to reflect. They get constant access to highly-skilled Drupal talent to get over conceptual and technical hurdles quickly so they can keep sprinting forward.

Something that Khan's research showed was that when students get stuck on a concept in a traditional classroom, they can have trouble with everything that builds on that concept. Since there's not enough teacher time to help each student individually, and since everyone has to move at the same pace, those students end up doing poorly and were often labeled as slow. But, they were able to demonstrate that once the students were able to get past that sticky concept, they were often able to speed through the rest of the material without a hitch.

What the mentorship model provides is a way to let each student have their own sticky spots and get the help they need to get past them quickly.

The cons

While the mentorship model has a lot of potential, there are couple of aspects that might make it less appealing to some than the traditional model.

There's no performer

A lecture is a performance, and we all get some satisfaction from watching someone perform. The trainer makes mistakes, you get to watch them interact with people, and watching people in action without being on the spot yourself is just kind of nice. One potential downside of this model is that you remove the performance and replace it with more one-on-one interaction. But aside from the performance, there's very little that can be offered through a lecture that can't be done better when it's recorded, edited and produced. If the goal is to help more people learn faster, with less frustration and less manpower, a mentorship model has more bang for the buck.

There's less performing

From a trainer perspective, the missing performance aspect can also be a downside. When you're standing in front of a room full of people, sharing your knowledge, you're building a relationship with each one for the entire training. These relationships can mean potential business leads, employees or friends. Instead, you get shorter one-on-one interactions with the people who need your help the most, which might or might not be your cup of tea. This could be offset a bit by doing short lectures throughout the mentorship, like an orientation lecture at the beginning, a debriefing lecture at the end and demonstrations of common questions as they come up, interspersed throughout the day.

Where's the demand?

Traditional training is generally an accepted way for institutions to train their people, so effectively selling a new model like this as a training company might be a bit down the road. Once there's some hard evidence that it works, it will be easier to convince institutions to give it a shot. In the meantime, there's plenty of other venues that are perfect for this kind of training. If the video lectures are available publicly, they can form the basis of a live mentorship anywhere, and as long as there's some technicians at hand (developers, themers, site builders), they can put on a mentorship-based training.

Sounds awesome, what can I do?

First of all, I've proposed a free workshop for BADCamp to prototype these ideas. Feel free to let the planners know you're interested. If it gets accepted and you've got a free day, sign up to see how it works.

If you're ready to try an informal group mentorship, there are several online Drupal video libraries out there to base off of. If you know of one that would work well and you or someone you know has the technical skills to mentor (i.e. you are a developer mentoring on development, a themer mentoring on theming), set up a half-day gathering to work through the material and spread the word to your local Drupal or techie community. If the video library requires a fee, talk to the producers to see if they can give you a deal for a day of access for your group. Because a lecture space isn't required, you can be somewhat distributed in a coffee shop or restaurant. Make sure to bring power splitters and some extra headphones for those that forgot them at home, and keep it as simple as you can.

If you have any questions or want to add some ideas, feel free to post them here, or send me a message.

Tiny disclaimer and motivation

As many of you know, I produce Drupal training videos at Build a I want to make it clear that this writeup isn't a product pitch. It's an idea pitch. While I think the videos on Build a have the potential to get a lot of people trained in Drupal really fast leveraging the mentorship model, it's way more interesting to me on a community level than a business one. And there are several other Drupal video libraries that can be leveraged for this model as well.

The really exciting part to me is the idea that with the same number of trainers, we could potentially be training maybe 3-4 times the number of people we are now, and with less time commitment from trainers (who are usually also contributors to Drupal in other ways). Plus, if it works well, then it's just one more push to make learning in general more flexible for students like me who don't hold up well in a more traditional classroom.

Aug 23, 2011

10 new videos on putting the pieces together

Over the last several weeks, we've been releasing a set of videos demonstrating how to take a mockup and build a fully functioning, information-rich web site using nothing but the front end of Drupal. In this chapter, we apply several of the concepts and tools we've covered in previous chapters to hone look and feel, to add a new user and give them the permissions they need and to dig a little deeper into text formats. Enjoy!

Upcoming Build a Drupal Camp Tour

After being sequestered in a small enclosed space for many months recording videos and managing a small startup, I will be emerging to attend several Drupal camps over the next few months, starting with the Pacific Northwest Drupal Summit October 14-16, followed a week later by the Bay Area Drupal Camp (BADCamp) October 21-23. I'll be posting a full schedule of camps where Build a will have a presence soon.

We're also going to be submitting a FREE FULL-DAY WORKSHOP proposal for BADCamp, in which students will be able to get one-on-one time with skillful mentors as they work through Build a material at their own pace.

If you're interested in participating, please let us know!

Watch the recorded 1h webinar on customizing Drupal Distributions free!

For those of you that didn't make it to the webinar last week because you had better things to do (really?!), or for those of you that attended and had trouble with the audio, there's a recording with pristine audio available for your viewing pleasure. I hope to record some focused videos on distributions in the future, but this is a good place to begin if you need some quick tips.

Watch the free 1 hour webinar on customizing Drupal distributions

Aug 16, 2011

Video updates graphic

Tomorrow on August 17th, 1pm EDT, I will be presenting a webinar on customizing Commons, an Acquia-branded Drupal distribution that brings the best of Drupal's contributed modules together for a community-based collaboration platform. It's totally free, and you can register here.

Not using a distribution? Don't know what a distribution is? Well, this could be a good opportunity to wrap your mind around some of the implications of using distributions to speed up the site building process. And even though this presentation is specific to Commons, the tools will be the same across most distributions, so the information is very portable.

The presentation will be about 40 minutes long with time for questions.

Also, if you've been curious how I present when I don't have post-production video editing software at hand to clean things up, now's your chance. ;-)

Register here for the webinar at 1pm EDT, tomorrow, August 17th (it's FREE!)

More new videos on updating modules and manipulating CSS

This week we release one more chapter in our Build Your First Drupal 7 Web Site series, where we cover how to update modules in a couple different ways, and then dig into some more CSS manipulation as we start to really craft our site to look like the mockups we were given in the beginning of the series.

Aug 9, 2011

Video updates graphic

Drupal is notorious for being on the move. Core Drupal errors get fixes, modules get updated, or the interface changes. So we've added a new feature called video updates that will quietly alert you if there have been any updates to a video you should be aware about.

When there's an update, you'll see a green box above the video player with the number of updates that have been made. You can click this to open up an overlay (so you don't lose your place) to view the updates.

If you want to view all the updates across all the videos, there's a link at the very bottom of the site called Video Updates.

We'll also be posting any errors or inconsistencies in the videos that you should be aware of this way.

Click here to check out the updates page.

50+ Transcripts Have Been Added

This last week we added 50 or so more transcripts, making more of our library searchable, and enabling the transcript view for more of the videos. If you haven't see the transcript feature in action, check out the video.

The transcript view really changes the way you can watch or review a video since you can quickly scan through the content, clicking on different areas of a transcript to jump to that point in the video. It also works great when the video is paused, allowing you to see virtual screenshots at different points in the text. You can also use your browser to search the transcript for particular keywords and quickly find what you're looking for.

Get 30 Days Free!

You can still get 30 days free by sending us a video review of Build a Just tell us what you think, how Build a has helped you or your organization, and we'll hook you up with a free month's subscription.

12 New Videos on Troubleshooting Module Installation and Configuration

This week we're releasing chapter 15 of Build Your First Drupal 7 Web Site. In this chapter, we explore what do do when you run into problems installing or configuring a module. We explore how to dig up information about deep module dependencies and how to find out more about errors.

Aug 2, 2011
Example of a Certficiate of Completion

Have you been up all night, alone, plugging away at one of Build a's extensive video courses and find yourself a little giddy to be watching that last video, wishing that somehow you could share the awesomeness of this moment with the world, this moment where you graduate from Viewer to Doer? Maybe no one will see you do the little happy dance, maybe no one will see you wag your finger at the screen and say "Ha! I own you!" But, with our new Certificates of Completion (slash Awesomeness) you can at least share the achievement.

When you finish a course, or if you've already completed some courses, just head over to the certificate page and select the courses you've completed. We'll in turn e-mail you a high-resolution, printable PDF stamped with your name, the course you completed, and the date. And the certificate looks official enough to hang next to your doctorate on your wall of impressiveness.

One of the reasons we put together this feature is because some companies will reimburse their employees for training material only if there is some kind of certificate of completion involved. If you haven't already and are currently employed, consider checking with your company to see if they have the same kind of offer.

Check out the Certificates of Completion (slash Awesomeness) page

Send us a photo with you and your certificate and get $10 off your next purchase!

For the next 2 weeks only, if you send us a photo with you and your Certificate of Completion, we'll send you a coupon for $10 off your next purchase at Build a, good on Memberships, DVDs and Downloads.

12 New videos on working with CSS

A new chapter in the "Build Your First Drupal 7 Web Site" collection focuses on creating blocks with custom content and displaying them only in certain places. We also look at Image Styles, a Drupal feature that allows you to automatically crop, resize, or perform other modifications to images on the fly. If you've never seen Image Styles in action before, this will be a lot of fun.

Syndicate content Syndicate content Syndicate content Syndicate content Syndicate content