Drupal
I'm enjoying the new wave energy here at jQuery Camp. John Resig dropped two bombshells during his keynote talk. Here is the gist - I might have the details wrong:
- Microsoft will include Jquery as part of its official toolkit. Jquery will start shipping with Visual Studio.
- Nokia has already adopted the open source Webkit project as its web browser. Today, John announced that every new Nokia phone will soon start shipping with Jquery. It is their preferred javascript framework and may be powering parts of the phone outside of the browser.
This is great news for Drupal as well as for the jQuery. Drupal has picked a strong horse to ride, and now the ride will get even faster. Here is a look at the Google Trends data for javascript frameworks. jQuery has just about won the battle.
- weitzman's blog
- 3005 reads
Views2 is finally in beta. This screenshot shows them working together.
.
We are looking at the options for themeing a given field. No theme has been defined so we get the default - theme_views_view_field(). The view is named 'gp'
- weitzman's blog
- 4099 reads
By now, I think most people acknowledge that the CCK+views paradigm for Drupal site building is a runaway success. Part of the attraction of this paradigm comes from the deep integration between the two modules. They work great together.
This week, we saw (at least) two major advances in their integration.
CCK Field Permissions (in Drupal6)
My patch to CCK was committed by KarenS in record time (9 hours - yeah for Contrib). Now, admins can restrict the editing or viewing of fields to specific roles. Those without the permission will simply not see the field. This patch added two permissions for each field - edit and view. Edit affects the node form whereas view affects both all "read only' presentations like node teaser, full node, rss feed, and all Views as well. So you can use restrcted fields in a table View and only authorized people will see that column.
This role/permission based model is not the only way that people want to restrict fields. One other use case is to restrict fields based on the workflow state of the node. For example, the Issue field is only available if the article is in 'editor approved' state or higher. All of the pieces are now available to whomever wants to write that module. When you do, please contribute it!
Node/User Reference Fields and Views (in Drupal6)
When displaying a referenced node or user in a table View in Drupal5, we are restricted to just showing its title. Earl Miles and yched teamed up to bring us the all of the referenced node's fields in Drupal6. This makes for much more powerful table Views. I think this will simplify Organic groups Views integration as well since it's node => node relationship is very similar. The new Views has some very neat backend improvements in addition to its shiny new UI. Nice work, team.
- weitzman's blog
- Read more
- 4356 reads
The webkit team published a terrific article about the terrible effect that multiple external javascript files can have on browser performance. Drupal6 has a terrific feature called javascript aggregation which I encourage folks to enable on your production sites. It is found on the admin/settings/performance page. While you are there, enable css aggregation as well.
If you use an external ad network, I can almost guarantee that they are using just the sort of bad behavior that this article describes. If you suspect that your ads are slowing down your web pages, try browsing with javascript disabled. If it suddenly gets fast, your ad provider is a problem. Unfortunately, ad networks have been using external includes and document.write for years despite performance concerns. I get the impression that chaning their architecture is hard or undesireable so they choose to slow down the pages of their clients.
- weitzman's blog
- Read more
- 4093 reads
The Boston2008 Drupalcon organizing team hosted a tremendously successful conference last week. One of the sore spots though was the wifi for attendees. This wifi is a free service provided by the BCEC. We were assured that the network routinely works fine for gatherings much larger than ours. Even with that reassurance, the Boston2008 bought our own wired network just for the presenters, in case of wifi problems. And boy were there problems.
We noticed wifi instability as soon as the attendees started arriving. Narayan Newton immediately took charge. Narayan is employed by OSUOSL, the organization who manages the drupal.org infrastructure. Narayan knows networking.
In addition to general bad wifi, drupal.org was impossible to reach from the conference floor. Something was clearly blocking access. Narayan tried to prove to the BCEC network engineers that their NAT infrastructure was doing this. Despite clear evidence to the contrary, they blamed drupal.org or its upstream providers. The BCEC engineer kept suggesting "maybe your IIS is misconfigured." On Tuesday afternoon, the BCEC finally declared "Sorry, we can't fix it unless you pay us $2000 to bring in a new line. That will take us 15 minutes to accomplish."
The Boston2008 team had already decided to pay this ransom but Narayan had a trick up his sleeve. Narayan and our other hero, David Strauss, made an emergency trip to Microcenter and bought 5 Linksys wireless access points, a Thinkcentre for routing/proxy, a switch, and miles of ethernet cable. Then they returned to the BCEC and wired up the whole conference area. This took most of the Tuesday night, while most of us were showing off our alter egos at the Acquia party. When we arrived in the morning, our laptops happily connected to a new Drupalcon wireless network. Narayan and David also provided some hard wired ports that we could plug into for emergency use (i.e. my presentation is in 2 hours. Need speed!).
Instead of buying the new line, Narayan setup QoS on the presenter's network which the Boston2008 team had previously purchased. This way, presenters were guaranteed their bandwidth while attendees could use the same line and only suffer when under heavy load. This wasn't a perfect solution, but it helped a lot.
Cheers to Narayan and David for your heroic efforts that rescued our community from horrible wifi during our conference.
- weitzman's blog
- Read more
- 3364 reads
Angie Byron has kicked off a very powerful movement in Drupal. Go read the Introductions thread in her new Drupalchix group at groups.drupal.org. If you are a woman who loves Drupal, consider introducing yourself there.
This group is a reaction to Bert's slide at Barcelona2007 Drupalcon and my re-showing that slide at Boston2008. The slide states that Drupalcon attendees are 93% male. Although we are more balanced than other open source projects, everyone agrees that we can balance far better.
So the Drupalchix at Drupalcon took some small steps to remedy the imbalance. They organized a BoF (an informal meeting), setup the Drupalchix group, and started introducing themselves online. I can feel the girl power emanating from the group. I expect to see some great accomplishments come from there.
Lets see if we can hit 10% female for the next Drupalcon. Once again - if you a woman in Drupal, introduce yourself and poke your lady friends to do same.
- weitzman's blog
- Read more
- 3260 reads
I'm proud to announce my new company, Cyrve, which specializes in data migration into Drupal. Data migration is a painstaking job, with an emphasis on pain. Why not outsource that part of your job to Cyrve? We do migrations every day.
Mike Ryan, a long time contributor to Drupal and original author of the Pathauto module, joins me at Cyrve.
We'll be at Drupalcon Boston 2008. Look for Moshe delivering the opening remarks on Monday. We'd love to chat about your migration project.
- weitzman's blog
- 4254 reads
I'll be deeply integrating panels and organic groups over the coming weeks. Today I want to show what is possible __now__. Each group type on your site (you do know that you can have multpiple types of groups, right?) can have its own custom homepage presentation. This screenshot tutorial shows you how to do it.
- weitzman's blog
- Read more
- 10578 reads
The Post Carbon Institute graciously offerred to sponsor me to integrate Panels and Organic Groups modules. Here is brief milestone plan:
One custom panel for each group node type
This functionality exists today without any changes to either og or panels. In order to complete this milestone, Moshe shall document the steps required to achieve this. The documentation should include screenshots and help text.
Multiple custom panels for a given group, created by a group admin. Admin chooses which one is his group home page.
Here we introduce a new module, og_panels, which ships with og. It lets group admins create/edit displays which are attached to group. The implementation will resemble the integration of display customization in panels_node.module. Displays are stored in the usual panels_displays table and the mapping of display to group is done in a new table managed by this module. When displaying a group homepage, we will use nodeapi(view) to render our display if so configured. og_nodeapi() will gracefully get out of the way in this case.
Optimize the panel creation UI for group admins. Remove cruft.
The panel UI might confuse group admins at first. Do whatever is reasonable to mitigate this confusion. This may require patches from Panels project.
Future
- Let group posts (i.e. not group homepage) get own panel. In other words, a group post will look different from a non group post. For example, they might show the list of recent posts from each affiliated group in a section of the page.
- Let group admins submit new layouts for panels. I suspect they will not use PHP but rather an email variables syntax like
@left-2for a given pane. - Let admins submit custom CSS for their group.
- weitzman's blog
- Read more
- 3612 reads
Dries' landmark post regarding unit testing in Drupal reminds me that I have yet to announce a key transition in our project. I recently handed over maintainership of the simpletest project to Rok Žlender. Rok has been leading its development for over a year now, and the project has flourished under his guidance. We now have a large number of tests, and a largish number of contributors. Rok has earned this module, and I'm proud and happy to hand it to him on behalf of the Drupal community.
I created the simpletest module for Drupal on Feb 27, 2004. Here is an excerpt form the commit message:
- weitzman's blog
- Read more
- 2278 reads



