Museums and cultural institutions make up a large part of Palantir's business. We like working with them because we support their mission and they tend to have fun, twisted problems to solve. They like working with us because we tend to have fun solving twisted problems.
And we both like it because Palantir uses the industry-leading Drupal Web content management platform, and Drupal rocks for museums. In fact, it rocks so much that we'll be giving a workshop on Drupal at the Museums and the Web conference in Denver April 13-17th.
This afternoon I am speaking on the SXSW panel Selling Your Milk When the Cow is Free about what it has been like to make the transition to selling products with Open Atrium.
We only have one way to sell milk right now, and it ain't scaling, but we have plans :)
On the panel, I'll talk about the bootstrapping process we undertook when Open Atrium first launched last July. I'll share how we communicated about the work we wanted to be doing in a way that let us book a set of clients that had similar needs, which allowed us to pool resources to build a good foundation for Open Atrium.
And the answer to yesterday's "Eye grow Drupal" question is: Druplipets. Hundreds of cute little Druplipets, your friendly Druplicon chia pet. Druplipet is the newest member of the Acquia and Drupal Gardens family and will be making appearances at industry events this year. It is making its first appearance at SXSW along with a fun contest. Needless to say, Drupal chia pets are fun and powerful stuff!
So you create your beautiful Drupal theme, tweak it to perfection using Firefox and Firebug, send the url to the client, confident of praise and adulation.
Then the dreaded response "I'm looking at it in Internet Explorer 6 and...". As you can't run multiple versions of IE on the same machine, previously I have used old machines running different versions of IE, and tools like LogMeIn to check browser compatibility but now there is a simpler way.
Grid-based web development has evolved over the past few years from being the stuff of a few fringe enthusiasts to a fundamental concept for designing and building web sites. While grids aren’t the answer to everything, there are a number of ways they make your life a lot easier.
If you’re interested in building or using a grid Drupal theme, here is a big collection of resources in one place to get you started!
I rely on actions extensively to build functionality in my sites. I find them convenient for business logic because they are packaged chunks of functionality that can be called from many places, including Trigger, Rules, and VBO. Today, I've added a new place where actions can be called: the URL. Actions REST provides this functionality.
Consider a job site where a supplier receives an invitation to participate in a project. The supplier logs on the site and views the invitation, then wants to accept or decline it.
Political groups and campaigns have been some of the earliest users of CiviCRM. We've had quite a few political parties using CiviCRM: Green Party of New Zealand, Green Party of Canada, Oregon State Democrats, Vermont Progressive Party and even the Pirate Party of Germany! One of the features missing from CiviCRM has been Canvassing, GOTV, PhoneList and WalkList functionality. This has been long requested and there have been various specifications on the wiki for this.
Earlier this year we worked with Progressive Technology Project (PTP) on CiviEngage, a Drupal Module that brings address parsing, walklist and phonelist support into CiviCRM. You can read more about this work here: Canvass and Phonebank.
At the same time Will Brownsberger, a state legislator from Massachusetts, started using CiviCRM to support his office and campaign operations. As part of his campaign he wrote a drupal/civicrm module to do voter canvassing. Will was kind enough to attend and demo his module at the CiviCRM Boston Developer Camp in February.
Yesterday I saw this post with a video on the new P2 theme for Wordpress and how Automattic* is using that as a real time microblog like tool for status updates in their company. And it got me thinking...
For some time now we've been using Open Atrium in Pronovix for project management. But until today all of our real time communication takes place through Skype. At some point we tried to replace Skype with XMPP (because Skype didn't properly work on Linux) but once Skype worked again for all the colleagues Jabber got abandoned.
One of the reasons why we were interested in Jabber was to integrate activity updates into our communication tool (e.g. posting comment, case, commit messages). So that we would be able to have a discussion and have a bot post newly created cases into our chat channel.
CommonPlaces is thrilled to announce that Michelle Lauer has been selected by the Drupal community to present “Views Examples: Using Arguments and Relationships” at DrupalCon San Francisco, which will be held from April 19-21. You can read our press release here.
In her session, Michelle will share a repeatable strategy for using arguments and relationships with Drupal Views to display specific subsets of content. Here’s the session description, from the DrupalCon SF site:
Views are a powerful way to display specific subsets of your content. From a simple list of all nodes in a single content type to a complex collection of related information, each step will be explained so you can easily repeat the strategy in your own views.
I will demonstrate a systematic approach to building all views and show examples of using arguments and relationships.
Topics
There are several ways you can theme a view on Drupal, and this tutorial will describe a simple and quick way to accomplish just that. I assume that you’re familiar to working with Views and CCK, so I won’t go in much detail on the process of creating the view and content type.
For this example I’m creating a block simple view that will display a teaser for the 3 latest blog posts.
First thing we’ll have to do is create the actual template file on the themes folder (I’d recommend that you create a folder for all the views, but this is optional). We’ll start by going to the views interface to find out how that file should be named.
On the Views interface select “Theme: information” under “Basic Settings”.
You’ll see a list of the possible files you can use listed from the most general(full page)on top to the most specific on the bottom. We’re going to be selecting one option on the “Row Output”. If you don’t need to be too specific about theming that view, you can use the second option. Copy the file name and create that file on your themes folder.
Yves Chedemois (aka "yched") talks about how he became the co-maintainer of the Content Construction Kit (CCK) along with KarenS. He also talks about the early days of CCK, and the co-evolution along with the Views. Yched also talks a bit about his motivation for continuing to work on a project such as CCK, and the challenges of working on it. He also talks about which parts of CCK are included in Drupal 7 as a part of fields in core, the new field storage engine in D7, and which parts of CCK are not included as well as pending tasks such as the challenges of developing the upgrade path to D7.
Today I finally got around to testing out the new field suggestions in Drupal 7. If you’re not familiar with the standard suggestions in short you can either use field templates or override theme_field using a naming convention not unlike we do with preprocess functions. What struck me as kind of odd was the lack suggestions for field types—maybe there’s a very good reason for this such as performance, I don’t know, but I thought it might be interesting to see if I could use them, if I wanted to.
In all our recent excitement, I have neglected to introduce the two newest members of the TopNotchThemes family!
Stacy WrayStacy joined us a few months ago to provide some much needed assistance with themer-herding, customer support, bookkeeping, and generally supporting our team. She’s the friendly face you’ll talk to first if you have any questions about our themes. Stacy is also involved with the rebirth of the Drupal Dojo/Kata, and has been upping her Drupal nerd cred on a daily basis.
Sheena Donnelly
I had the opportunity to present my project Drupal for Facebook, at the San Francisco Drupal Users Group.
Drupal for Facebook let's you build Facebook Apps with Drupal. These apps allow users to register on your site using their facebook password. Or, place your content within facebook.com. It's flexible, lets you build features the way you're used to (The Drupal Way), and can give your sites social features that would otherwise be impossible.
Big thanks to Conrad for providing the video. And to John for inviting me to speak, and everyone at Parisoma for hosting.
A lot of effort has been poured into the upgrade routines for Coder Upgrade as evidenced by the green check marks on this page. (A side note: so far, duellj is the only person to show up for the upgrade barn raising and much thanks to Jon is due. If you are up for a challenge, help is still welcomed and needed to write and/or test routines.)
An interesting example of an upgrade routine is the theme() function call change. This upgrade involves "array-itizing" the variable parameters. For example, this:
<?php
theme('user_list', $users, $title);
?>
becomes in D7:
<?php
theme('user_list', array('users' => $users, 'title' => $title));
?>
The twist involves finding the keys for the associative array of variables.
Sparing the details, Coder Upgrade will insert the proper keys for any theme defined in D7 core files (includes and modules directories) as well as themes defined by the module being upgraded.
Are you planning to build multiple websites for your business? Before you do, read out free, 9-page white paper, “When to Use a Multi-Site Architecture,” to learn more about the significant savings that multi-site can deliver. If your goals require multiple websites, a multi-site solution could cut your development and maintenance costs in half.
Here’s an excerpt from the white paper:
“More often than not, one website can deliver everything an organization needs, and help them achieve all of their goals.
In some cases, however, your goals may necessitate multiple, related websites. Perhaps you want to build upon the success of your resource site for plumbers, and offer one for electricians as well. Maybe you want to create an online university, separate from your main site, and offer courses to your current users. Or maybe you want to customize multiple online stores for different segments of your customer base, but offer many of the same products to them.
Daniel Kudwien (aka sun on drupal.org and tha_sun on IRC) of Unleashed Mind is a prolific Drupal contributed module author, but also Drupal core developer.
He discusses some of the well-known modules that he helped author and maintain, such as WYSIWYG, Admininstration Menu, Image Assist, Inline, and Demonstration Site.
He's taken it upon himself to make sure a lot of the Drupal 7 APIs have been standardized and cleaned up as much as possible, and also rallied a lot of help on tackling Drupal's oldest standing task of "Node 8," which is allowing users to cancel their own accounts. Sun also gave a heroic effort on helping on many of the different exception patches during the code slush period, and fellow developer chx commenting that he's never seen anyone sprint for Drupal.
Drupal 7 now comes with the contextual module which makes it very easy to edit your site as there are inline action links available on your content, blocks and so on. There are a few modules out there available for D6 - block edit and admin:hover come to mind - which offer the same functionality but are different when it comes to interface and/or extendability.
We decided to write a new module from scratch with the UI in mind of the D7 version, also taking care of performance and the need for easy extendability including hooks (duh) and static actions which allows us to have a static variable during the page request which can collect stuff from all over the place. You can test it out at http://demo.customsource.be/content/home with demo/demo. Surf to the 'articles' page which has contextual links for views, nodes & blocks.
What happens next ?
Over the last few years Drush has matured significantly and has seen an incredible uptake in usage. It's become indispensable in the day to day workflow of innumerable Drupal users and has been accepted with open arms by contributed module developers who are finding new and wonderful functionality to expose via its clear command line interface.
What not many people realize is that beneath this simple command line API beats the heart of a far more flexible and powerful beast. Drush was written with re-use and scriptability in mind, with this entire concept deeply ingrained in its design, and this is a large part of what gives it its power and flexibility. This will be even more apparent in Drush 3.0.
Below is a rundown of some useful things you'll be able to do with Drush 3.0.