Upgrade Your Drupal Skills

We trained 1,000+ Drupal Developers over the last decade.

See Advanced Courses NAH, I know Enough
Oct 30 2013
Oct 30

This week we continue to re-publish lessons from the Pantheon Academy, with Jon Peck. In these free lessons we'll be taking a look at working with Git and MultiDev, the Pantheon cloud-based development environment for teams working on projects together. We'll also take a look at dealing with error codes, and setting up SSL fro your server. We're going to wrap up our current list with a checklist for taking your site live.

Keep your eyes open in the future for more lessons in the Pantheon Academy series. Starting next week, we are diving back into the world of Using Drupal, continuing on with Chapter 4: Media Management. In addition to the Using Drupal series, which uses a development version of Media Module 2, we will also be starting a parallel series using Media Module 1.

Sep 18 2013
Sep 18

With so much data in so many places on the web, more and more site builders find that they need to get external data into their Drupal sites. It's a common problem with many ways to solve. One of the best ways to tackle this in Drupal is to use the Migrate module. The new Importing Data With Migrate and Drupal 7 series will teach you how to use the Migrate module to take data that exists in different source locations and import that into a Drupal 7 website. The Migrate module provides an extremely flexible and robust framework for accessing data from various sources, and then importing or migrating that data to Drupal.

In this series we'll explain the basic components that make up a data migration, and the terminology and code that is specific to the Migrate module. Then we continue with lessons that take you from installing the Migrate module to writing and running your own custom data migration. We'll cover different source data types, mapping the data, and all of the bits and pieces to make sure you get the right data in the right place. A large part of migrations is also testing, testing, testing, and we'll see how Migrate module provides very nice tools for just that.

This week we're kicking the series off with a an overview of what we'll cover in the series, along with a look at the concepts and terminology you'll need to know when tackling a migration. Both of these videos are free, and should give you a good overview of what the Migrate module can do. Then we get Migrate installed, and take a tour of what we have to work with, including the documentation we'll be referring to.

Next week we'll continue onward by looking at the two different ways you can run migrations (UI and drush) and then we'll crack open some code, and start exploring the example modules that ship with Migrate.

May 17 2013
May 17

On the eve of DrupalCon Portland, we're happy to be able to get another free community video out, Installing and Using Dreditor. What's more exciting though, is that this video is part of our Community Tools workshop, and in an effort to spread Drupal community involvement further than where we can show up to run this free workshop, we're putting all of our materials and notes online for everyone to use freely, with the Community Tools curriculum.

A Workshop is Born

The Community Tools workshop was born out our experience with the Drupal Ladder and the Core Mentoring program. The idea was to gather up the essential tools that people need to understand in order to fully engage with the community, and feel confident contributing back to it. We don't just talk about the tools or processes, but we actually walk through them; have people install software they need, make sure it works properly, and use it in a community context. We've given the Community Tools workshop at several DrupalCons and camps now, and we've been working hard to refine it so that it works well for multiple circumstances. The most successful use is as part of a larger sprint event, where people can get up to speed on tools, and then immediately go actively use them to contribute, so that is what the initial draft of the curriculum is focused on.

Sharing What We've Learned

We've learned a lot by teaching this workshop so many times, and we'd love to travel everywhere to provide it, but, well, that's just not realistic. We want to make it possible for others to present it in their local groups, regional events, or wherever it would be a help to onboard new contributors. We have a fair amount of the material available in video form as well, so that people can watch and learn on their own, or in any size group. We've created a new guide, the Drupal Community Tools and Core Mentoring guide to group all of the videos together in one easy-to-find place (and it includes the new Dreditor video too). They are also referenced throughout the curriculum itself. Not everyone is brave enough to stand up and teach, or even if they are, they'd like to see someone explain the topic first. We hope that by sharing the slides, videos, links, experiences, and tips, we can get more people running their own Community Tools workshops around the globe, and warmly welcome more people into the Drupal community.

Learn more at DrupalCon

The curriculum is in a draft state right now, but we have plans to improve the organization, and content, over the coming months. Ideally we want to truly open-source this by providing a good way for people to contribute back their own improvements to it. I'll be talking about this more at DrupalCon Portland, as well as running the workshop again on Friday's Get Involved with Core sprint. If you have ideas around this, I'd love to chat with you about it, either in Portland, or online. If you'd like to volunteer to help out with the workshop or the sprint (either in Portland, or sometime in the future), you should definitely come to the Running Coaches Wanted! session at Portland to get a great overview of how all of this works, and what things will be happening all next week to help people learn new tools, get involved, and become mentors and trainers themselves. (Note that the sessions are all going to be recorded and posted online fairly quickly, so even if you can't make it to Portland, you should check the session out online.)

Apr 17 2013
Apr 17

This week we are kicking off a brand new series, Working with Entities in Drupal 7. Entities were introduced in Drupal 7, and are an extremely useful tool, though they have been somewhat confusing for people to work with. In this series we will start out by explaining what entities are, in addition to things like bundles, fields, and entity types. We then spend time understanding how you can use the Entity API to work with existing Drupal entities in you own custom module work. With that foundation in place, we will create a new custom entity and talk about when and why you may, or may not, want to do that.

To get things started off we will cover some terminology and history, with a free video, and then begin working with entity_load() and the EntityFieldQuery class to work with existing Drupal entities on your system.

This series assumes that you're already familiar with the basic tennents of writing modules for Drupal and makes use of things like hook_menu() without spending time explaining them. If you're not familiar with Drupal module development, you should brush up by watching our Module Development for Drupal 7 first.

Mar 13 2013
Mar 13

One of my earlier memories of creating things on a computer was the Kid Pix application that my dad purchased sometime in the early 90's. Prior to that most of my time on the computer was spent playing games and just sort of putzing around. With Kid Pix though I was quickly breaking into the age of digital publishing. One of the features that this 15+ year old application had that provided my creative process (a.k.a. holding down the mouse button while dragging the stamp tool around the screen in circles) was the concept of undo. Didn't like the placement of that stamp? Or maybe the line you just drew was a little to far to the right and you wanted to try again. No problem. Command - Z and you're right back to where you started before that simple mistake.

In college I took a painting class, and while fun, I was never really all that good at painting. I have these vivid memories though of sitting in the studio working on what I hoped would be a stunning homage to Lichtenstein and it just wasn't going as well as one would hope. I would lay some paint down on the canvas, step back, look at it, and in my head I would hit Command - Z. And of course nothing would happen, instead I was forced to paint over that same spot, over and over and over, until I got it just right. In the end it worked, but it was an interesting experience to have done something in the physical world and had my brain immediately reach for the undo key sequence.

I'm willing to bet that most of us have done this or something similar at some point.

Git: the magical undo tool

That's where Git comes in. Git is a distributed version control system (DVCS) for source code management (SCM). It's like a giant undo button for everything you've ever done on a project throughout it's entire existence. And that's just the icing on the cake. Git also provides some powerful tools for collaborating with your team, browsing a project's entire history, deploying code, and so much more. Oh, and did I mention it's fast? Like whoa fast!

Git is the version control system used for Drupal core and contributed module development and as such is used by most people building sites with Drupal to keep track of their client work as well. It's also the system used to track development of the Linux kernel, Ruby on Rails, Android, and many, many other projects.

The Introduction to Git Series

This week we're kicking off a series, Introduction to Git, that Blake Hall and I recorded, which will teach you to use this great tool. It's an in-depth series that starts with the basics of version control, establishes some terminology, and a base line workflow, then continues to build on that by going beyond the basics of the various Git commands to make the most out of your tools.

This series starts out with the basics and quickly dives into the powerful tools that Git provides. Just a few of the many things you'll learn about are:

  • The basic concepts and terminology of version control
  • Installing and configuring Git
  • Creating and using branches and tags
  • Navigating the history of a project and reviewing changes
  • How to work with conflicts and corrections
  • Using Git with remote repositories and sharing changes with your team
  • And some tips and tricks for using Git with both Drupal.org and GitHub.com

First lessons out the door!

The first lessons in the series, published today, will get you started with a background on version control, getting Git installed and set up, and how to find more help:

Git is a command line application and we'll be interacting with it through the Terminal for most of these lessons so if you're not familiar with using the command line or basic use of the vi editor I suggest you brush up on those things first as they'll come in handy while learning Git. Although there are a plethora of GUI tools that can be used in conjunction with Git, we felt it best to learn the underlying, consistently standard application first, so that you can easily translate that to the GUI of your choice down the road, if that's what floats your boat.

We will be releasing this series over the next month, so look for new Git videos every Wednesday throughout March and in to April.

Feb 06 2013
Feb 06

This week I am continuing the trend of mini-series with some lessons on deploying your code, in the FREE Deploying Your Code Without a Terminal series. The reason behind this quick set of videos is that not everyone is command line savvy, and not everyone has to be. What is important though, is getting your code into version control, and there are plenty of tools that let you do that using a graphical interface. That is all good and well, but what do you do once your code is in version control and you need to get it live on the web? Using the web tool Beanstalk, you can deploy from version control and never open the terminal. This is a great lesson for those of us who want to do things properly, but don't have the time or desire to learn 20 commands that we will forget the next day.

In addition to being a cool service, the nice people at Beanstalk have given us a coupon code to get 50% off your first month. Just use the coupon code DRUPAL when you signup!

We hope you enjoy this mini-series, and we'll have more on the way next week.

Jan 23 2013
Jan 23

This week is the first part of a new mini-series on Lightboxes and Drupal 7. Lightboxes on the web will show larger or full content in an overlay on the current page, dimming the background, when a smaller version, or thumbnail, is clicked on. It's a great way to allow users to browse, and view full content for many different items, without having to leave the listing page they are on and keep clicking back and forth. In today's lessons, we have a FREE lesson which explains what a lightbox is, and gives an overview of some things to consider when choosing a lightbox Drupal module. Then we cover getting set up with the two most popular lightbox module choices: Lightbox2 module and Colorbox module.

Next week we'll wrap up with more lessons about lightboxes, actually putting the modules to use, and looking at the differences when working with images versus regular content and views.

Jan 16 2013
Jan 16

Today we've got two FREE videos for your viewing enjoyment, one about a killer community tool, and the other about a handy module to help you out when working with Drupal databases. In Using IRC (Internet Relay Chat) we look at one of the most over-looked, but most useful community tools available, IRC. IRC is a way to chat online, in real-time with other people, and it is used heavily by the Drupal community. We'll sort out what IRC is, how to get connected, and walk you through some of the basics to get you started.

Our second lesson, Using Schema Module, introduces you to a great way to get information about your database, and a nice, quick way to get Drupal to write some code for you, when it comes to creating your module's install file.

We hope you enjoy these videos, and we'll have some cool new stuff next week, walking you through working with lightboxes in Drupal.

Jan 09 2013
Jan 09

This week we are finally finishing up our Coding for Views series with the last two lessons, which lagged a bit for us. We're happy to round things out by providing another example of writing a Views handler which creates a Views area handler, and with a look at theming Views. In addition to wrapping up that series, we also have a free video that looks at working with secondary menus. While this lesson is using Drupal 6, the concepts and processes used are exactly the same in Drupal 7, and is still applicable there. The lesson looks at how to take a menu with child items, and turn those children into a separate, but contextually related menu, in relation to the parent menu items. We also open up our theme, and look at how to move the secondary menu around, and manipulate the HTML that is being output, so that we can make the menu look the way we expect. The main difference between Drupal 6 and 7 with this lesson, is that the theme code to print the secondary menu looks different, but functions in the same way.

Next week, we'll be taking a look at some more community tools and processes to help people accelerate their Drupal experience. We're also hammering away at some cool new series on topics like Entity API, Git, and SASS. To see what we have in the hopper, to add to our list, and vote on topics, check out our Suggestion Box.

Jan 02 2013
Jan 02

Happy New Year! We're kicking off 2013 with some FREE videos to get people up and running with our Drupal community tools. There are a lot of aspects of the Drupal community that many people take for granted. Even something as "simple" as figuring our what community websites are out there, and how to use them, is often overlooked when talking to people new to Drupal. So, if you want to really dive into this Drupal thing in 2013, here is a gentle orientation to help get you started. We've added three new videos to our free Community category that walk you through the various community websites, how to get an account, and what you can do with it, from customizing your dashboard, to editing and creating new documentation on Drupal.org. We also take a look at how to use the main search on Drupal.org so you can start finding the things you're looking for.

We hope you find these videos helpful, and we plan to keep creating more community videos over the coming months. Let us know if there is something in particular about our community that is mysterious to you, and we'll add it to our list.

Nov 28 2012
Nov 28

Today's release day is a mixture of free videos! We have two new videos to add to our Command Line Basics Series, covering Bash aliases and working with MySQL. In addition to those lessons, we are also releasing a short four-video series about Using the Ooyala module with Drupal. Ooyala is a paid video delivery service, which manages your videos and handles video delivery to your site. If you have an Ooyala account, the Ooyala module will connect the Ooyala service to your Drupal site to display and play your Ooyala videos from within Drupal. The series will explain how to install and configure the Ooyala module, and then show you how to use it with Views and Views Slideshow.

Command Line Basics

Using the Ooyala Module with Drupal 7

Next week, we're excited to introduce a new series on Coding for Drush, which will cover all of the fun things you can do to add Drush commands to your custom modules, and really customize this powerful Drupal tool.

Jul 25 2012
Jul 25

This week we're happy to announce a free series about Display Suite. This series, Display Suite for Drupal 7, was recorded by the maintainer of the Display Suite project, Kristof De Jaeger, also known as swentel in the greater internets. As the project page explains,

Display Suite allows you to take full control over how your content is displayed using a drag and drop interface. Arrange your nodes, views, comments, user data, etc. the way you want without having to work your way through dozens of template files.

What this means is that you can control the layout of all the individual bits and pieces on your site without having to dive into theming or custom code. Another great feature is that you can set up the configuration for things like nodes and users, and then export those to code so that you have the peace of mind of saving your hard work and being able to easily move that around between sites.

We are republishing Kristof's great videos here, and we're starting off with the first three of the 11-part series:

  • Display Suite Installation gets you up and running by explaning the various modules that come in the project download, and looking at basic configuration options.
  • Configuring a Layout in Display Suite shows you how to create your first layout, modifying a content type to suite your needs.
  • Display Suite Fields drills down a bit more and creates custom Display Suite fields, from code fields to blocks. (Yes! Blocks as Fields? Whoa!)

We'll be releasing the rest of the series over the next few weeks, and we hope you're as excited as we are. We're working with Display Suite in our upgrade of the Drupalize.Me site, and we think it's a great tool that can make your site building life so much nicer.

May 09 2012
May 09

Today we have a new series that we're very excited about! Back in March we talked about a new community initiative called Learn Drupal, and the great plan they have to get more people contributing back to core by creating a ladder of lessons. I've personally started to have some meetups for this here in Copenhagen, and I made some time to create videos to go with the lessons.

To kick off the Learn Drupal Ladder series, the first video, Overview of the Learn Drupal project, is a short introduction to the Learn Drupal project in a presentation format. The video is just under 10 minutes long so that it will fit in well as a lightning talk at a meetup. If you don't feel comfortable doing a presentation yourself, you can just play this video for your group to get things started. The rest of the videos in the series will be video versions of the lessons on the Drupal ladder. The first step on the ladder, and the first lesson video we have, is to Install Drupal locally, which is a generally helpful step for everyone working with Drupal in some way. The next few steps on the ladder will be coming out in the next week or two, so be sure to check back for more videos!

I also want to get the word out that we will be adding closed-captioning and translations to Drupalize.Me videos within the next few weeks. If you would like to help us spread the word about Learn Drupal to even more people, and you are willing to lend a hand with transcription and translation of the Learn Drupal videos, please drop us a line and we'll get you set up. Just create a new discussion on our help site and let us know if you would like to help with original transcriptions for English, or translating into another language.

Apr 01 2012
Apr 01

Most of the Lullabot team was at DrupalCon Denver this year, and we had a great time. Lullabots are pretty good at hugging, so seeing each other in person is a great eperience. We did notice, however, that not everyone at DrupalCon feels comfortable, or has practiced enough, with their hugs. As a service to the Drupal community, we'd like to help you out with a free video. Trainer extraordinaire Joe Shindelar is not only an expert in Drupal, he's also an expert in hugging. If done correctly, hugs can be wonderful expressions of affection; but if done poorly, hugs can create an awkwardness that just makes everyone uncomfortable. Joe presents How to Give a Hug: a basic primer on hugging, which covers:

  • Definition of a hug
  • Types of hugs
  • Techniques and Warnings, and
  • Hug Components

Watch the video, practice your technique, and soon you could be Certified To Hug! Start getting ready for your next Drupal event — be it a con, a camp, or a local meetup. We hope to see you in fine form at DrupalCon Munich!

*Disclaimer: Drupalize.Me is not responsible for the outcomes of any hug interactions. Proceed at your own risk.

About Drupal Sun

Drupal Sun is an Evolving Web project. It allows you to:

  • Do full-text search on all the articles in Drupal Planet (thanks to Apache Solr)
  • Facet based on tags, author, or feed
  • Flip through articles quickly (with j/k or arrow keys) to find what you're interested in
  • View the entire article text inline, or in the context of the site where it was created

See the blog post at Evolving Web

Evolving Web