November 2011

Nov 29, 2011

Suggest a killer feature and win a DVD!

We work hard at Build a Module.com to make sure you have an amazing experience, but we also believe there's room for awesome new features. If there's an awesome feature you'd like to see, send it to us. In 1 month, we'll choose the best feature suggestion and award the winner with a free DVD of their choice!

Send us your killer feature suggestion.

More new Git videos

This week we begin by wrapping up our feature branch workflow, and then start diving into how to capture the other half of Drupal (i.e. the database) into version control. This is where things can get a little complicated, but getting our database information and configuration captured into version control as possible will help you roll back mistakes, review changes, and sleep at night, knowing you have a solid backup.

Merging an update into a feature branch, then deploying and cleaning up

In this video, we prepare our feature branch to merge with the main develop branch by first merging in the changes in the develop branch. Then we deploy the feature branch back into the develop branch and clean up the feature branch. Whew!

Summary of lessons learned in the feature branch cycle

In finishing up our feature branch, we take a step back and review what we learned in the process.

Where to store version controlled assets

Since there's not a default place to put additional assets that aren't part of our code base, we talk about the best place(s) to put them.

How to set up an assets folder that is not accessible via the web

If we decide to put our assets somewhere in our main Drupal directory, it's important to keep it safe from prying eyes. In this video we demonstrate how to use the .htaccess file to do just that.

FREE video tutorial of the week

Overview of database components you can add to version control

Getting our code into version control is a great start, but that's just half the battle with Drupal, since so much information is captured in the database. In this video, we begin the process of exploring the best way to get database components into our Git repository.

Nov 22, 2011

Get 50% off of your first month

For those of you who have been on the fence about becoming a member, for the next week you can get 50% off your first month by using the code HALFONFIRST when you check out. It's a great way to take a tour of awesome features like the transcription view, progress tracking and more.

This coupon also applies to our new group membership feature, and the discount gets bigger the more credits you purchase.

Click here to add a monthly membership to your cart with the 50% coupon code applied.

Drupalcon training in March (pre-announcement)

After the awesome success of our piloted Mentored Training at the Bay Area Drupal Camp, we were accepted to conduct a pre-Drupalcon training in Denver. I will be posting more information on this soon, when registration is open. Space will be limited, so be sure to reserve your spot as soon as you can.

New Git video tutorials

This week we continue to explore the GitFlow branching model and talk about a few types of branches. Even though branching in Git is very flexible, layering on a solid set of rules for using them will make working with a team much more practical.

Summary of how to use release, hotfix and feature branches

In this video we do a quick overview of the roles of a release, hotfix and feature branches before we dive into each one in detail.

Release branch cycle summary

It never hurts to re-iterate the important parts of a complicated procedure, and that's what we do in this video.

How to create, deploy and clean up a hotfix branch

When you find a critical bug on your production site and need to fix it fast, you can use a hotfix branch workflow to tackle the problem and bring your fixes back into your main development branch. We show you how in this video.

How to troubleshoot pushes, pulls and conflicts with a feature branch

We've been using feature branches throughout this series, but in this video we talk through some potential issues you might run into and how to overcome them.

FREE video of the week

How to create, deploy and clean up a release branch

With a release branch, you capture a (hopefully) stable state of your code base and push it to a production site. In this video we walk you through each step of the way, from creating and working within the release, pushing it to production, and cleaning up after the push.

Nov 15, 2011

Video library transcription is complete!

After several months of hard work, our complete 530+ video library is completely transcribed. This is a milestone for us, but what does it mean for you?

  • If you're deaf or hard of hearing, closed captioning is available on every video.
  • Our 'transcription view', which has become an essential tool for many members for navigating and scanning videos, now works with every video in the library.
  • The spoken text in every video is now searchable. When clicked, a search result will take you to the exact place in the video where the text is spoken.

For those of you who haven't used the transcription view (available only to members), it's a fantastic way to read through the text of a video as you watch it. This means if you're not sure about a spoken phrase, you can cross-reference the text. You can also click on any point in the text to jump to that point in the video. If you're tired of listening to video, you can pause and click through different points of the transcription to load up screenshots.

We're very excited to be fully accessible to the deaf and hard of hearing members of our community, and are committed to continuing this effort as new videos are released.

Upcoming Mentored Trainings

After the success of our Mentored Training at the Bay Area Drupal Camp a month ago, several individuals have stepped up to help organized mentored trainings across the US. I'm looking forward to seeing this number grow. The trainings are currently in planning phase, but if you're interested in attending or mentoring, please either post to the user group or contact us for more information.

Come see us at upcoming camps!

This last weekend I attended the fantastic DrupalCamp Phoenix in Arizona. The folks down were incredibly friendly, and I met some great people. For those of you already setting up your calendars for next year, definitely leave a space open for Phoenix.

This next week we're going to be at DrupalCamp Austin, so keep an eye out and come say hi. In December we'll be attending Drupal on the Bayou, which sounds like it's shaping up to be a great event.

If you're considering visiting a DrupalCamp in the near future, definitely take a look at our one-page list of all DrupalCamps and DrupalCons for an easy way to plan

5 more Git video tutorials

Last week we explored how to manage a remote Git repository and push changes from our local environment up to our production site. This week things get even more fun as we look at how to integrate other team members into the development process. The last (FREE) video on working with a scalable branching model will also show you how to manage branches in a sane and sustainable way, regardless of the size of your project.

What conflicts are and how to resolve them

Eventually, you will run into a situation where Git won't be able to figure out how to merge two changes. We'll walk you through why this happens and how to fix it.

How to create a branch and track it remotely

We've already covered creating branches, but here we show you how to add a new branch locally and push it to a central remote repository to share with other environments.

How to create a release with a develop-master branch system

In this basic branching model, we show one technique for creating a predictable release structure to use when pushing changes in batches to a production site.

How to set up a new environment for a team member

So far we've been exploring how to work on a Git repository alone, but in this video we demonstrate how to use the same tools we've been using to track a repository remotely to bring other team members into the equation.

(FREE) How to use a scalable Git branching model called Gitflow

In this free (but information packed) video, we take our develop-master branch workflow and expand it to include several branch tracks in a system commonly called "Gitflow". This system, while it looks kind of crazy as a chart, takes the guesswork out of branch organization and lays down a set of sustainable rules for a project of any complexity.

Nov 8, 2011

NEW! Manage team access with Group Memberships

This week we rolled out a new feature to help organizations manage muti-member access. With one membership, a group can distribute access to as many team members as they need. Access can be re-distributed to other members at any time, making it very flexible, easy to use and cost effective.

For a quick overview of how it works, take a look at the 3-minute video on managing Group Memberships.

If you'd like to hear more about the benefits of Group Memberships, please check out these two short videos. Purchasing a Group Membership is simple, you can:

  1. Check out with more than one membership in your cart, or
  2. Purchase additional membership credits by going to your membership page and clicking Add credits.

Group memberships are great for any organization that needs to give video library access to 2 or more people, for example:

  • University technical departments who have developers, designers and site managers that need ongoing Drupal training
  • Web shops that want a useful reference for their team as well as a way to train new recruits and clients
  • Any organization running a Drupal site in-house

There are price breaks after the first membership, making it more cost effective at any level to use a Group Membership instead of multiple Personal Memberships. Depending on how many credits you purchase, the price for individual credits can go down nearly 50%!

Learn more about how Build a Module.com can help your organization.

Tons of new and updated features!!!

This last month we've been very busy adding a number of frequently requested features. Here's the quick breakdown, enjoy!

Group Memberships

Of course if you read the last bit, you get the idea, but it's such an awesome feature that it was worth mentioning again. Manage multi-user access under one account and one payment plan. Sweet! Learn more here.

Organizations page

For organizations who want to learn more about how Build a Module.com can help more effectively train their Drupal team, from site administrators to developers, we've put together a set of resources specifically for you. Check out the organizations page here.

Improved Search

You can now search forums and FAQ by using the search bar at the top of the page. Transcription search has also been improved. Check it out.

Bulk order form

If you need to purchase a number of items all at once, you can fill out a single form and get it all in your cart instantly. This is a great one to forward to the folks in charge of purchasing. Check out the bulk order form.

License extensions for DVDs and Downloads

If your team needs a mutiple-user license for DVDs or Downloads, you can purchase additional licenses for a very affordable $20 apiece. You can learn more about licensing and purchase license extensions here.

Re-activate expired memberships

In the past, in order to reactivate an expired membership, you had to purchase a new one. We've updated the process now so you can simply provide updated credit card info and be on your way!

And of course, 5 new Git video tutorials

Last week we learned how remote Git repositories work, we set up an account on GitHub and connected up our local repository to the remote. This sets the stage for the next (rather exciting) steps, where we start to use our central remote repository to set up a production environment and push updates to it.

How to clone our remote repository into a production environment

Once we've set up our remote, we can suck down everything into another environment. Bare minimum, you'll probably have a production environment you need to clone to, so we tackle that first.

How to push a change from dev to production with push, fetch and merge

Once we make changes to our local repository, we demo how to get them to production using the push, fetch and merge commands.

How to push a change from dev to production with push and pull

In this video, we do another push to production, but this time using a shortcut command called "pull" instead of fetch and merge.

How to undo commits to a remote repository

Knowing how to undo is just as important as knowing how to do in Git. In this video, we roll back our changes to the remote and obliterate history (Muaahahahaha!).

How to push changes from production to dev

Sometimes you'll make a modification on production that you need to pull into your development environment. In this video, we show you just how similar this process is to doing it the other way around.

Nov 1, 2011

How to add, remove, list and rename tags

Before jumping into working with remote Git repositories, we tackle how to use and manage tags to mark important points in the history of your repository.

How remote central repositories work

If you're new to version control, the idea of a central remote repository might sound daunting, but it's a foundational building block for working with multiple developers and pushing changes from one environment to another. In this video we explain how it works.

How to create an account on GitHub and set up SSH key pair authentication

In this video we demonstrate how to set up a free GitHub account to use as a central repository. We also walk you through the steps of authenticating using SSH key pair authentication. If that sounds scary, don't worry, we'll walk you through the process step by step.

How to set up a remote repository and connect to it

Once you have an account set up, you can create your first remote repository and connect it up with your local repository to sync changes back and forth.

What we'll be doing now with our remote repository

In this video we outline how we're going to use our remote repository throughout the rest of the series.