Blogs

Come see me speak (if you'd like)

On June 9th, I will be Keynoting at DrupalCamp Sacramento, California, after conducting a free Mentored Training on June 8. It sounds be a great event with a lot of awesome people.

And just in case you're in the Chicago area, this next Thursday (May 10th)I'll be speaking at the famous Chicagoan CMS Expo on Powering a Lean Startup With Drupal. If you have an idea you've been trying to get off the ground, this talk will be all about how to free up the time and build the resources you need to make it happen.

And of course, we have some new PHP videos rolling out this week on a fun and powerful subject:

5 new videos on looping in PHP

Last week we explored some basic control structures like 'if' and 'elseif'. This week, we keep building the logical tools you'll need to build powerful PHP-based applications by exploring looping. As we've alluded to in previous videos, whenever you find yourself repeating the same kind of code over and over again, you can probably save some space in your code - and some sanity later if you need to update the code - by using loops.

How to use a foreach loop to generate an HTML table from an array - 6:43

One common use of a loop is to generate HTML content based off of data in an array. In this video, we generate an HTML table (you'll do this at some point in your development life, I guarantee it!)

How to use a "while" loop - 4:37

Sometimes you need to run a loop a number of times, but not based off of an array. We explore the 'while' looping construct in this video, where we test against a particular condition to decide whether to continue or cut out.

How to use a "for" loop and how it compares to "while" - 1:00

The 'for' loop is pretty si mi liar to 'while', but is a little more compact (and maybe a little more challenging to read). In this video, you can take a gander at 'while' and 'for' side by side.

How to modify PHP settings with the php.ini file and stop runaway scripts - 2:36

Now that we're playing with loops, it's important to know how to stop one if we accidentally set one up to run forever (oops!). In this video we look at modifying some core PHP settings in the php.ini file, and what happens to those infinite loops if we do let them run wild for a while.

New FREE PHP video tutorial of the week

How to use a "foreach" loop - 3:36

A hugely powerful, but sometimes difficult-to-wrap-your-mind-around-concept is "looping." In this video, we look at one control structure called 'foreach', which will allow us to loop through each item in an array and run some code each time. We'll spend a bit of time on loops since they're so important to coding, but our journey starts here!

Get 20% off of all memberships!

This week only you can get 20% off of your initial purchase of a 1- 6- or 12-month membership. Just use the code GETITALL when checking out. Now's your chance to get access to over 650 perfectly paced Drupal training videos, 24 /7. (Note that membership renewals will revert back to the original amount).

New logical PHP videos

This week we begin looking at the logical side of PHP. Now that you're comfortable with strings and arrays, we can start programming PHP to accomplish tasks - which is really what logic is all about. In the first video we give you a sense of what we mean by 'logic', and then we dive right into something called 'control structures', which are PHP constructs that direct PHP in some way. Specifically, we explore how to tell PHP to run certain code only in certain conditions with 'if' and 'if...elseif' statements.

What logic is and how we're approaching learning it - 1:30

Before we jump into working logic, we take a birds-eye view of what logic actually is and how we're going to go about learning it. If you're new to coding in general, this will be a good one to watch.

How to use an "if ... elseif" control structure - 4:35

We can also extend an 'if' control structure to include other criteria, and in this video we explain how to do this with 'if...elseif'.

Incorporating what we know about arrays and control structures in a random generator script - 6:08

In this video we start applying what we've learned about control structures and working with arrays to create a fun random text generation script.

Adding additional elements of randomness to our random generator script - 5:51

Never one to leave good enough alone, in this video we make our random generation script even more fun and flexible by adding additional random elements to it.

New FREE PHP video tutorial of the week

How to use an "if" control structure - 3:32

In this video we walk through a commonly used control where we build code to tell PHP to make a choice based on certain criteria. We'll be using 'if' statements a lot in upcoming code, so getting a sense of the different parts of the structure will pay off down the road.

BuildAModule.com Translations Update

In under 2 weeks we've had some incredible contributions to the BuildAModule.com translation effort. Over 70 videos have been translated into Spanish, and several have been translated into French, Dutch and Hebrew. We're excited that native speakers of these languages will get to enjoy the contributions made my numerous volunteers.

Thank you to everyone who has contributed so far, and if you yourself are interested in assisting with the translations, take a look at the translate page on BuildAModule.com.

Upcoming Mentored Trainings

Over the last year, numerous Mentored Trainings have helped build Drupal resources worldwide. Coming up, we have:

DrupalCamp Twin Cities, May 17: Organized by the amazing Advantage Labs folks, this Mentored Training is geared towards those just starting out with Drupal.

DrupalCamp Scotland, May 25: This full-day Mentored Training is currently at capacity, but you can be put on a waiting list in case they're able to expand the venue.

DrupalCamp Sacramento, June 8: I (Chris Shattuck) will be hosting a Mentored Training, and while the focus will be on Drupal basics, you're welcome to come at any experience level.

There are also proposals in the works for DrupalCon Munich, DrupalCamp Salt Lake City, the Pacific Northwest Drupal Summit and more.

If you're interested in hosting a Mentored Training for your DrupalCamp, it's easy to do and it's a great way to offer affordable, effective training to large groups of people. You can check out the training page for more information, or send us an email with any questions.

New PHP videos diving into arrays

How to work with associative arrays - 4:12

Continuing from last week where we started digging into arrays - one of the most commonly used data structures in Drupal - in this video we explore associative arrays, where we can assign strings as keys.

How to use array functions like asort(), array_pop() and array_rand() - 7:44

Once you have your data in an array, there's all kinds of native PHP functions that will allow you to manipulate and sort that data. In this video we walk through some of the most common array functions and ways that you might apply them in the real world.

How to work with array-like objects - 4:52

In Drupal, there are a number of objects like $user and $node that are simply multi-dimensional arrays wrapped in the slightly different object syntax. In this video we show you how to create these objects, and manipulate data inside of them.

Array function challenges - 1:19

Now that you've got a solid grasp of arrays, this video poses some challenges to help you test your new knowledge and apply it in practical situations.

New FREE PHP video tutorial of the week

How to work with multi-dimensional arrays - 8:09

In this video arrays start to get really interesting. Not only can arrays store data like strings and numbers, but arrays can also include other arrays. And those arrays can store arrays. Before your mind explodes over the implications, we'll spend some time in this video explaining these unique arrays in a way that makes them manageable.

I get requests for consulting and freelance work on a regular basis, but I currently don't take on any consulting. But the requests often come from people I know and would really like to help in some way. So, I'm reaching out to generate a list of individuals I know or have met who also freelance. If you're one of those people, please send me an email that includes the following info:

  • Your full name
  • Stuff you're good at (development, theming, design, IA, etc)
  • Stuff you definitely don't want to do (development, theming, design, IA, etc)
  • Stuff you really want to focus on, or really love doing
  • Your hourly rate (or rates)
  • A link to a portfolio page on your site

I'm limiting this for now to folks I've met, since it's a lot easier to get a sense of someone's overall attitude and such that way. It's also because I want to be able to tell the people I'm passing your names onto that I actually know you to some degree. If we haven't met and you'd like to be on this list, find a way to meet me!

Thank you!
Chris

This last year BuildAModule.com powered numerous free Drupal trainings around the world. This week, we're officially releasing a suite of translation tools that will allow the videos on BuildAModule.com to be translated into any language. These translated videos can form the core curriculum of free community-driven Mentored Trainings in locations where English isn't widely spoken, or where training materials in a native language will help speed up the learning process.

During our beta testing last week, translators made major contributions to the Spanish translation with over 40 videos translated, and there have been contributions in Dutch, Italian and Danish as well.

Why did we build these translation tools?

Shortly after releasing our first video collections last year, we had several requests for translations, and for the tools to help our viewers translate videos themselves for other speakers of their native languages. We've also heard repeatedly that there is a need for Drupal training materials in other languages. With our free Mentored Training model, it made sense to take the time to build translation tools since the translated videos can have such a broad impact on spreading Drupal and helping large groups of individuals learn Drupal quickly.

What exactly will be translated

Every video can have its transcript and title translated. Once translated, the translated video also becomes searchable in that language.

Want to help translate?

If you are comfortable with English and another language you'd like to translate to, you can definitely contribute. Even translating one video helps, though we've heard from translators that it's a little hard to stop once you get started.

Just send us an email with the language you'd like to translate to, plus a little bit about yourself and why you want to translate, and we'll set you up with the tools you need to get started.

Want certain videos translated for an upcoming training?

As a translator, you decide what videos you want to translate. We have a protocol to help people make sure they don't accidentally translate something that's already being translated, but if you want to focus on the Views or jQuery videos, for example, that's perfect. If you have a need to translate certain videos, it's even more likely that other people have the same need.

You can also post translation requests in the BuildAModule.com forums to let others know that you're interested in certain translations, even though you may not be able to participate directly.

Demos

Below are two videos, one of which shows a video that has been translated into Italian, and the other which demonstrates how to use the translation tools, so you can see how they work.

Video demonstration of translation tools

Video demonstration of a video translated into Italian

How can I learn more?

Just go to http://buildamodule.com/translate, or send us an email with any questions you have.

We hope that opening up these translation tools will help the international community build some of the much-needed resources it needs for effectively conducting Drupal training in a variety of native languages.

Subtle improvements on Build a Module.com

This last week we rolled out a number of improvements to Build a Module.com, many of which were geared towards improving performance. So, you should see page load times go down and the responsiveness of the site go up. We've also fixed a few little bugs here and there which should make life just a wee bit nicer for our most intensive viewers. :)

Get 15% off high definition downloads to celebrate the new iPad 3

If our downloads are attractive because you watch video on the go or use your iPad as a second monitor while you're working through the examples on BuildAModule.com, then we have some good news! iPad 3's will now play our crystal-clear high definition videos quite nicely.

If you've been holding out on purchasing a download, we're throwing in a little discount as an incentive. Just use the code IPAD3HD when checking out to get 15% off all high definition downloads.

Want to help test our new translation tools?

If you speak multiple languages and are excited about the idea of BuildAModule.com videos being translated into another language, then we'd love it if you'd give our translation tools a try to give any feedback before we officially launch them.

If you're interested, simply respond to this newsletter with a little information about why you might want to help translate, and what language you'd like to translate to.

New PHP videos on working with variables and string functions

How to work with string, number and boolean variables - 7:04

Last week we looked at using strings, and this week we learn how and why to wrap up a string in a variable. We also explore a couple other types of variables that you'll frequently encounter when writing your own code and working with Drupal.

How a PHP function is structured and how to use strstr() - 2;49

Now that you have a grasp of variables, it's time to start exploring PHP's rich library of functions. Functions are little bundles of logic that you can leverage to accomplish tasks that might otherwise be very time consuming and complicated. In this video, we walk through the structure of a function and use a common string function called strstr(),

How to use the string functions nl2br(), trim() and strlen() - 3:03

For this video, we continue exploring useful string functions, like functions that trim extra spaces off of a string, or tell you how long a string is.

Practical uses for strstr(), nl2br(), trim() and strlen() - 1:38

Knowing what functions are in your arsenal is important, but knowing how they're used in the real world will expand your ability to write effective code. So, we step back in this video and look at reasons we might want to use the functions we just explored.

New FREE PHP video tutorial of the week

How to identify and fix common syntax errors - 5:56

Running into errors is a very normal part of writing code, but it can be frustrating if you don't know where to look to fix it. In this video, we walk some of the errors that are caused when you've missed a little something in your code.

New PHP videos on using variables and strings

Last week we worked on setting up our development environment using Dev Desktop. This week we start actually diving into code! We start by exploring the structure of a super simple PHP script, and move on to discuss how to work with strings and variables of different kinds. For those of you just starting with PHP, this is a great place to jump in.

How to work with white space and comments - 2:12

One confusing point for those new to PHP is how extra space and new lines impact how the code runs. In this video, we talk you through exactly what to expect from white space.

How to work with strings - 4:41

Strings are an essential component of working with content in PHP. In this video, we show you the nuances of using and manipulating strings in your code.

How to use a variable - 2:44

Once you have the concept of strings down, you have the basis for understanding what a variable is and how to use one in your code. This will set the stage for next week, where we talk about many of the other types of variables you'll be using in your code.

New FREE PHP video tutorial of the week

We actually have two free videos rolling out this week!

Creating our first PHP script and the structure of a simple PHP statement - 3:41

In this video we walk you through a simple script in the PHP language and talk about how you tell the PHP application that you want to use PHP instead of HTML.

What an IDE is and the benefits of using one - 1:46

At this point in the videos we start using a different text editor called an IDE, or Integrated Development Environment. Using an IDE can help you catch errors in your code and help you dig deeper into existing code. In this video, we explain the benefits of using an IDE instead of a simple text application.

Our next collection starts releasing next week!

This week we wrap up our Change Management and Version Control collection. This collection was a lot of fun to do, and many of our viewers have expressed that it's been their favorite so far. While it might seem a little sad, finishing up one collection also means something awesome: we're about to start releasing a new collection, and next week we'll release the first two videos as a teaser.

Are you excited? Me too. Want to know what the collection is about? Stay tuned next week!

To celebrate this slew of awesomeness, we're also offering a special 25% off the Change Management and Version Control series as a download or DVD. To claim the discount, just use the code CMAVCDONE when you check out.

New Drupal videos on creating our own Drush commands and a couple other useful utilities

How to install and use the Drush sandwich example command - 4:09

The Drush sandwich command is a built-in example of extending Drush, and though it may be a little contrived, and completely inedible, it serves as a great example of how we can add new, useful commands to Drush. In this video we install it and give it a run.

How the Drush example custom sandwich command works - 4:51

In this video we break down the components of the Drush sandwich example and pull out the pieces we need for the next video.

How to perform SQL queries in Drush and quickly set variables - 3:23

Before we wrap up this series, here's a nice demo of two additional Drush utilities - the ability to run SQL queries through Drush and modify variables in the variables table.

New FREE Drupal video tutorial of the week

How to create a custom Drush command - 5:20

Creating your own Drush commands can be very empowering and increase your productivity significantly. Plus, it's a great way to get some street cred with other command line nerds. We walk through the process of adding our command in this videos.

Post-DrupalCon sale, get 20% off everything!

To celebrate the infusion of information and to give hungry brains some great next steps for learning after DrupalCon, this next week (from March 27 to April 3), get 20% off your entire purchase. That's good on all our DVDs, downloads and memberships*

To redeem your discount, just use the code POSTDC2012 when checking out. Enjoy!

5 more videos from PHP Programming Basics released FREE!

In these introductory videos, we learn a bit about the stack of technology needed to get your PHP scripts to work. For quick and easy installation, we're using Dev Desktop. Even though our examples don't use Drupal directly, Dev Desktop will help you later on as you start to dive into the Drupal examples.

Overview of the AMP stack (Apache, MySQL, and PHP) - 1:59

Understanding what each part of the AMP stack does is an important foundational step in PHP programming. In this video, we briefly explain what each part of a typical stack is for.

How to install Acquia Dev Desktop on a Mac - 2:20

To set up our development environment, we're using an application from Acquia called Dev Desktop. In this video we show you how to install it on a Mac.

How to install Acquia Dev Desktop on Windows - 2:42

In this video, we demonstrate installing Dev Desktop in a Windows environment.

How to import a default Drupal site on Dev Desktop - 2:55

Dev Desktop comes with the ability to quickly spin up Acquia's distribution of Drupal, but it's also good to know how to get the default version of Drupal running. Even though the examples aren't going to be using Drupal directly, this is an important piece of working with the Dev Desktop stack, and it sets the stage for where we put our PHP examples.

Setting up our example folder and creating our first web page - 4:06

In this video we set up the folder we'll be using for our examples and test it out with a simple, HTML-based web page. Don't worry, we'll be getting into the PHP soon!

Did you know every video is transcribed?

If you're not a member yet, you might not know that every video on Build a Module.com has been transcribed. When you log in with a membership account, you will see a 'transcript view' on the right hand side of the video that allows you to read ahead and to navigate to different parts of the video by simply clicking on the text.

Our members love this feature because of the time it saves and the additional insight it gives to the content. It also makes it possible to quickly scan or read through a video without watching it in a traditional sense.

Quick tip: Hide all but one collection

On the video index page on Build a Module.com, the sheer number of links can be overwhelming and a lot to scroll through. This last week we added a oft-requested feature that allows you to show just the collection you're working on and hide all the rest.

To use it, just over over the collection and click the green tab that displays above the collection title that says "Show just this collection".

Announcing "PHP Programming Basics"

PHP Programming Basics

Without programming experience, jumping the gap from Drupal site builder to developer can be incredibly tricky. We've heard from many of our viewers that there's a need for a solid resources focusing on PHP basics, and we're happy to announce that our next collection does just that.

  • Learn PHP from scratch (no experience necessary)!
  • Set up a quick local development environment
  • Grasp of all the variable types you'll be using for Drupal development
  • Learn how to create functions and structure applications
  • Great, practical examples
  • Tons of tips and tricks for organizing code and logic!

In PHP Programming Basics, we begin with the building blocks of PHP programming, including working with strings, variables, arrays and objects. We then start to manipulate these with useful, native PHP functions (it's okay if you have no idea what that means). Once we have the basics down, we begin writing our own functions and building up simple, fun and practical scripts to develop a feel for the architecture behind a typical PHP application.

In our final example, we bring everything we know together to build our own CMS platform. Even though many developers end up using Drupal, several began the process by building their own CMS, and the experience has given them tremendous insight into how the Drupal architecture works and how to manipulate it. In this series, you'll fast-forward through this process and develop an understanding of the robust structure of Drupal while honing your new PHP skills.

Our first two intro videos released FREE!

Welcome to PHP Programming Basics - 3:02

In this video we introduce you to the new collection and give you a preview of what to expect throughout the series.

What programming is and tips for following along - 5:14

This video is a must-see if you're new to development. In it, we give you an approachable way to think about programming, and give you some ideas for getting the most out of the extensive examples used throughout the series.

Come see me at DrupalCon!

If you're at DrupalCon, there's still a lot of fun left to be had. And, if you want to say hello and share some ideas you have for Build a Module.com, or just shoot the breeze, there are a couple places you can find me.

Wednesday 1-2pm I'll be giving my talk Building Beautiful, Dynamic Forms in Drupal 7 in room 401. If you're trying to improve any of your Drupal user interfaces to be more usable and fun, there are some great tips in this talk.

Wednesday 3:15-4pm I will be signing DVDs at the DrupalCon bookstore. Feel free to stop by just to say hello, even if you don't have one. DVDs will be for sale, but come by even if you don't plan on picking one up. I'll be giving away some "Become awesome" stickers as well.

Syndicate content