We are driving ourselves crazy, folks. Choosing modules is really hard. And it's only getting harder on enterprise Drupal sites (and enterprise just means big teams and with big sites with big requirements).
A recent conversation on twitter started by Drupal rock star Katherine Bailey shows how module selection on a big site can drive you crazy:
So, today I'm going to lay out some ideas I've found for reducing the madness: choosing good modules both as an individual and as a member of an enterprise Drupal site. Of course the enterprise practices build on the set of guidelines for an individual site builder. I'd love to get feedback on other techniques people have used for module selection in big team, big site, enterprise environments.
At Dries' keynote at Drupalcon Copenhagen today, he talked about what the Drupal project might look like in 10 more years, and what it might mean if the project grows by a factor of 10. I'd like to elaborate a bit on his theme by making an analogy with Mozilla Firefox. Read full article »
Sometimes you need a simple way to receive payments from your Drupal site without the complexity of a shopping cart. The Pay module provides the necessary mechanism for online payment handling in Drupal. Pay allows you to add a payment form to your site -- or to a specific piece of content on your site -- and enables a single-click payment transaction. No cart, no check-out necessary.
Shouldering the heavy-lifting of transactions, the Pay module:
Drupal is a very powerful publishing system. In fact, it's pretty hard not to stumble across many modules which will help you create an awesomely powerful publishing platform. Drupal distribtions, such as Managing News, have already packaged a handful of modules which get you started right off the bat.
If your publishing needs are simple and straight forward, then you may just need a handful of uself modules.
One of the default features in Drupal is the baked in revision system, which allows you to track any and all changes to any given node (which is any given piece of content - if you're not familar with Drupal speak already).
Using this default system, you can easily track what changes have been made to your site's content. However, unless it's just yourself creating the content, you may need to facilitate a review process. This means you may go through many drafts before you're ready to release an updated node.
[Edit: Added wildcard DNS section at the end]
After my Debugging Drupal talk at Copenhagen today a lot of people wanted to know how to use a wildcard virtualhost, so I promised a quick writeup.
The purpose here is to be able to deploy new virtualhost-style Drupal sites on your localhost without doing any apache configuration (or /etc/hosts, if you deploy a nameserver).
Most of the time Drupal works better (and more like your production site) if you run it as a production site. If I have a site like debugging_example.com, I run it locally as debugging_example.l. That's way better than localhost/debugging_example, because all the URLs work right, and it's clean URLs.
The basic idea of what you have to do:
Here's the quick version of how to do it:
Recently we posted a blog entry Introducing Maestro and it's task types. As noted in that blog post, Maestro was a rewrite/refactor of our Nexflow product. When I wrote the first iteration of the Nexflow engine, I always had an Object Oriented approach in mind. While the original Nexflow engine is object oriented, it lacked a clear and clean way to easily implement new features. Although you could easily write a new task type, it was much more difficult to implement in the engine, requiring editing of core code which would always require extensive engine retesting.
Maestro Development Methodology:
Our overriding goal was to create a development environment that was suitable for developers to easily attach their own task types and notification mechanisms in to the system without overwriting or hacking core code. Leveraging the strength of Drupal's core functionality along with some neat OO patterns, we were able to create a base set of modules for Maestro that lets developers add their own task types and/or notification mechanisms via add-on modules.
Alex Bronstein (aka effulgentsia) talks about how he got working with Drupal 7 and the Form API through his work on the flexifield module. He's also listed as the co-maintainer of the AJAX, Form, Render, and Theme systems for Drupal 7. Bronstein also talks about some of the work that he has done with Libraries through Your Library Site and mentions the Social Online Public Access Catalog (SOPAC) module.
Some loved it. Some hated the sex-tape comments. Some were not sure what to make of the Tupperware analogy. All this caused a kerfuffle on Twitter, but the keynote was interesting as ever.
I was amazed by the varied tweets that came across the twitterverse that included:
"I always love the Driesnote. @Dries is a fantastic speaker. #drupalcon"
"It was good that @dries mentioned the need for more women in Drupal but unfortunate he linked it to welcoming non-engineers. #drupalcon"
URL shorteners are the bane of the internet. However, for those of us who use Twitter on a regular basis, you know that 140 characters can be limiting. URLs can theoretically be 2,000 characters or more, but most are in the 40 to 80 character range. That's almost half your tweet! So we use URL shorteners to not only shorten the URLs, but (in the case of some services like Bit.ly) to track clicks and get statistics about who clicked on these short URLs.
The problem, however, with the popular URL services is that the more that they are used, the longer their URLs get. Both Bit.ly and Tiny.cc are up to 6 characters in their autogenerated URL paths. Add in the URL protocol (http://), the hostname (bit.ly) and the initial slash, and you've got minimum 20 character URLs.
BoF to learn how to review code contributions on Thursday 26 August 2010 at 16:00 at DrupalCon Copenhagen.
At the Core Developers Summit on Sunday (22 August 2010), webchick gave a presentation about the CVS application process and what was wrong with it and what was valuable and needs to remain (there's a video somewhere of it). One of the impetuses for this talk is the git migration that is happening for the drupal.org infrastructure, because it offers us an opportunity to rethink our code contribution application process (aka CVS application process).
The agreed upon process is not a complete upheavel of our current mechanism, but does help address a few issues. I am sure there will be some issues created, but the basics are the following:
Drupalcon has started! I had the pleasure this morning of giving one of the sessions in the first time slot at Drupalcon Copenhagen.
It was treat to present "Drupal Security for Coders and Themers" with Jakub Suchy from Dynamite Heads and one of my colleagues on the Drupal Security Team. One of the goals of the security team is to help educate the Drupal community about secure coding, secure configuration, and best practices for running a Drupal site. Read full article »
Nuvole is going to present and discuss its development workflow, entirely based on code and Features, at the DrupalCon Copenhagen 2010 in a few minutes!
Please find it as a Slideshare embed below, or attached in PDF format.
AttachmentSize drupalcon2010.pdf1.92 MBThe Campaign for Fair Elections teamed up with Aten Design Group to create a Drupal-based platform for promoting civic action, measuring progress against goals, and visualizing campaign momentum.
The resulting system provides rapid deployment of measurable goals attached to concrete user actions. Actions are entirely customizable, and currently include asking Congress for support, writing letters to your local newspaper, donating to the campaign, and planning a local event.
Learn more about the project.We're entering a new era of the web. To the ignorant masses, this transition will go largely unnoticed; they'll enjoy increased usability and convenience, with more robust functionality and more relevant data at hand. And they'll mostly just take it for granted.
However, for web designers, front-end developers and data system programmers, we have a lot of work to do.
Why HTML5?Why indeed? As someone who's worked almost exclusively with Drupal since 2004, my nose has been pretty much in xhtml 1.1. Back then, moving to xhtml took some learning and patience on my part, having played with basic HTML since 1995. Now xhtml feels like the familiar friend and HTML the ugly cousin.
But then I started really looking at HTML5. And the more I am learning about it, the more I am appreciating how HTML5 looks to be a real game-changer.
DOMinate the webMost of the buzz you see online about HTML5 focuses on the particulars — with the plurality of coverage over how HTML5's media tags stand to push most uses of Flash out to pasture. And that's certainly big.
Just a quick note that I pushed TableField 2.0 for Drupal 6. The major new feature is the ability to upload CSV files to your tables. There are also a slew of UI and CSS bug fixes. Thanks to everyone who submitted issues!
In case you haven't tried it, TableField is a CCK widget that lets you attach simple tabular data to your nodes. There is also a 7.x version that lets you attach tables to any entity like nodes, taxonomy terms, etc.
Upgrading Drupal from one minor version to the next can be time-consuming and error prone. A lot of folks use Drush for this, but a good second choice for the commandlinophobic is to use a patch file.
Bernhard Fürst creates patches from all previous minor versions of Drupal 5 and 6 to the current release and posts them here. I've used this method several times, and it's gone really smooth.
First, go to your sites /admin/reports/updates page and see what version of Drupal you're running. Here's what mine looks like:
So, I'm on 6.16 and need to upgrade to 6.17.
Next, go to the list of patch files and find the one that matches up with your version. Click on it to download:
Move the downloaded patch to your Drupal site's base directory.
Now, we need to move to the command line. Sorry, commandlinophobes.
CSS Solution:
www.cssstickyfooter.com/
The least buggy css-only sticky footer I've found - just arrange your page.tpl accordingly, add the CSS, and it works!
JS Solution:
www.css-tricks.com/snippets/jquery/jquery-sticky-footer/
This one is for the times when you can't create the proper page structure but still need that footer stuck to the bottom of the page.
CSS Solution:
http://www.noobcube.com/tutorials/html-css/css-image-maps-a-beginners-gu...
I used this recently to create a map that would allow users to select different regions as taxonomy terms - it is a bit intensive to set up, but the hover tooltips make it worth the time.
Drupalcon Copenhagen is in full swing and, as you can expect, Chapter Three has made the trip from San Francisco to Denmark. We'll be spreading plenty of Drupal knowledge throughout the entire week, so whether you're looking for a session on Design, Code & Dev, or Business, we'll have someone from the team discussing a little something for everyone.
I think the pictures speak for themselves on this one.
Select:
Configure:
Preview:
Recent comments
1 year 33 weeks ago
1 year 35 weeks ago
1 year 35 weeks ago
1 year 37 weeks ago
1 year 37 weeks ago
1 year 42 weeks ago
1 year 43 weeks ago
1 year 44 weeks ago
1 year 46 weeks ago
1 year 46 weeks ago