Want to get Lullabot article, videocast, and podcast announcements delivered right to your in-box? Let us know your email address (we won't share it) and we'll let you know when anything exciting happens.

Our New Übercart-based Store

UbercartA little over a year ago, as we were putting the finishing touches on the Lullabot Learning Series, we needed a quick-and-easy way to sell our video downloads and DVDs. We took a look at several of the options out there and Matt ended up stumbling across Shopify, who's tag-line is "E-commerce made easy". Their solution is fully hosted and they claim "setup within minutes". And sure enough, within mere minutes Matt had set up a working site. Within a few hours, it had a Lullabot logo and mostly worked the way we wanted. It took us another day or two to wire it up to our shipping warehouse, and to Fetch, the company which we used for our digital downloads. Overall, it was a quick-and-painless solution.

It served us well for over a year. But we really wanted more out of our store. We wanted better integration with our main site. We wanted to be able to offer coupons and special offers to people on our mailing list. We wanted to be able to create discounted product bundles. And we wanted options like affiliate links and Amazon-style ratings and reviews. And to be completely honest, we were a little embarrassed that we weren't using a Drupal-based solution. So over the past month, we've been toiling away at a brand new Übercart-based store site. And today, we're proud to announce that store.lullabot.com is all-Drupal all-the-time! It did not take us mere minutes to set up. But it's much more configurable, modular, and flexible than our Shopify site.

Incidentally, we'll be celebrating the Independence Day weekend by sending out some deep discount coupons to our mailing list. If you're not already subscribed, hurry up and get on the mailing list to get coupons, special offers, and the inside scoop on upcoming workshops and video tutorial releases... here's a hint: we know a thing or two about Übercart now!

Views Distinct / Node Access Problems

I've been battling a core bug that creates problems when you use node access systems like Organic Groups and try to create views that are limited to distinct nodes. When you are using a node access system and you set 'distinct' to 'true' in any node view, you get ugly ugly error messages like:

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DISTINCT(node.nid), node_data_field_date.field_date_value AS node_data_field_' at line 1 query: SELECT COUNT(*) FROM (SELECT DISTINCT(node.nid) AS DISTINCT(node.nid), node_data_field_date.field_date_value AS node_data_field_date_field_date_value FROM node node LEFT JOIN term_node term_node ON node.vid = term_node.vid INNER JOIN term_data term_data ON term_node.tid = term_data.tid LEFT JOIN content_field_date node_data_field_date ON node.vid = node_data_field_date.vid WHERE (node.status <> 0) AND (node.type in ('event')) AND (term_data.name = 'children') ORDER BY node_data_field_date_field_date_value ASC ) count_alias

Yuck!!

This is actually a core bug, see http://drupal.org/node/284392. Core's db_rewrite_sql() will rewrite the query from DISTINCT(node.nid) AS nid to an incorrect query of DISTINCT(node.nid) AS DISTINCT(node.nid). This invalid query will cause a fatal error keeping the query from executing.

Lullabot Going to Drupal Design Camp In Boston This Weekend

On Saturday, following this week's Drupal theming workshop in Providence, we'll be driving the 40 miles up route-95 to Drupal Design Camp Boston. We're sponsoring the event and I will be keynoting on Saturday with a talk about "Why Drupal Is Like Drupal Is", giving a designer-centric look at both the benefits of using Drupal trying to justify the difficulties.

The event is free and we're encouraging our workshop attendees to make the trip as well. Whether you're a web designer interested in learning about Drupal or you've already drank the Kool-Aid and just want to spend more time talking about things like CSS, semantic markup, grid systems, complimentary colors, and why there's no Drupal plugin for Dreamweaver, this is the event for you!

Spread the Drupal word

Lullabot loves to talk Drupal. So much so, that sometimes you can't shut us up. We are regulars at DrupalCons, (you'll definitely see us at DrupalCon Paris), and you'll find us at regional and local Drupal events all over the place from meetups to sprints to camps. In addition to soaking in the Drupal energy though, we also represent Drupal out in the "the rest of the world." Yes, there is more to the web than Drupal.

In addition to being Drupal evangelists, we also love most things open source, webby, or techy. Name a topic in the geek world and chances are there is a 'bot that wants to chat. Going to non-Drupal-specific events not only lets us get our geek on, but it provides rich opportunities for Drupal. Drupal is one player in a larger space and staying in tune with what the rest of the web is doing is important for fresh ideas, growth and collaboration. In addition to being infused with new information and enthusiasm to bring back to the community, the flip-side is being able to expose more people to Drupal. Showing what Drupal is capable of, where it fits in the web ecosphere and addressing concerns helps us draw more people to the community, as well as making Drupal look more viable to businesses that may only play with "names they know." The continuation of any open source project relies on a flow of new contributors and ideas. Getting out of the Drupal echo-chamber is a great way to see things with fresh eyes and make Drupal stronger.

Now On DVD: Learning CCK & Learning Views

Learning CCK and Learning Views DVDsAfter much compression, menu making, package designing, and eventual thumb twiddling while they made their way through the pressing plant, we finally have the latest Lullabot Learning Series DVDs in hand!

Lullabot's latest Drupal training DVDs are Learning CCK and Learning Views. While the high-definition download video versions have been available for several weeks, the DVD versions are now sitting at our warehouse ready to ship.

Since each of these videos is close to 2 hour long, the downloads are about 1.5GB each. Even though they're high-quality and high-definition, that's still a lot to download. Many people requested the DVD versions and now we're happy to provide the more convenient, conventional DVDs, packaged in nice durable DVD cases. Put 'em on your shelf. Pop 'em in your DVD player. Watch 'em on your TV -or- your computer!

These DVDs are region-free so you can play them on any DVD player, worldwide. And we can ship worldwide, so if you live somewhere where the download is a problem, or if you, like me, simply prefer the convenience of a DVD, head on over to the Lullabot Store and order yours today.

Import/Export Large MYSQL Databases

When working with MYSQL I often use phpMyAdmin, which is a nice GUI way to manipulate my database. But some operations won't work in phpMyAdmin when the database is too large. In particular, you can't import or export really large databases using phpMyAdmin. So sometimes you need to do things on the command line.

So I thought I'd document some of the command line snippets we use frequently. In the following, replace [USERNAME] with your mysql username, [DBNAME] with your database name, [/path_to_file/DBNAME] with the path and name of the file used for the database dump, and [/path_to_mysql/] with the path to mysql bin (like /Applications/MAMP/Library/bin/).

Providence Early Bird Discounts End Wednesday

The early bird discount will be ending Wednesday, May 13th for the Lullabot Drupal workshops in Providence, RI. We will be in Providence June 8th to June 12th teaching Drupal Module Development and Drupal Theming and jQuery. Sign up for both before May 13th to save even more!

Sold Out: May Portland Drupal Theming Workshop

Lullabot's Spring Drupal Theming workshop in Portland, Oregon is now sold out. We still have a few spots available in the Module Development workshop that week. However, they're going fast, so register soon.

Seats are still available for both the Module Development and Theming & jQuery workshops. These are happening June 8th - 12th, 2009 in Providence, RI and we've even got early-bird discounts available when you register before May 8th. And as always, register for both to save some money.

FileField and ImageField 3.0 for Drupal 6 Released

Today I released the final 3.0 versions of both FileField and ImageField for Drupal 6, bringing to close the long journey for a stable, final release of the de-facto CCK image handling solution.

A small time line (in dd/mm/yyyy format):

  • 05/10/2007 - Hook file proposed for inclusion in Drupal 6
  • 02/13/2008 - Drupal 6 released (without hook file)
  • 06/24/2008 - First alpha release of FileField 1.x for Drupal 6
  • 07/31/2008 - RC1 of FileField 2.0 scrapped to start on a new hook file based version
  • 08/08/2008 - First alpha release of ImageField 3.x for Drupal 6
  • 10/08/2008 - Hook file included in Drupal 7
  • 03/15/2009 - New betas of FileField strip out crufty APIs
  • 04/20/2009 - Final versions released

And here we are! Nearly 2 years after the original concept of hook_file() was created and the work on FileField 3.0 began.

Let's take a tour through the final version and see what we have!

The FileField Widget

Probably the most exciting improvement is the addition of upload progress indication. This enhancement requires the PECL uploadprogress PHP extension, but adds a real asset to sites that use FileField for podcasts, videos, or other large files.

The upload field in action. Uploading with the uploadprogress extension installed.

Portland Workshops Early Bird Ends Monday!

The early bird discount will be ending Monday, April 13th for the Lullabot Drupal workshops in Portland. The week of workshops happens from May 4th to May 8th at the Hotel Monaco and includes Drupal Theming and Drupal Module Development. You can also
sign up for both Spring Portland workshops for an additional discount. Register within the next week you'll get our special early-bird rate.

You like saving money, don't you? Yeah, we thought so...

Syndicate content