JavaScript Best Practices at Design 4 Drupal Stanford

Categories:

I am presenting JavaScript best practices at Design 4 Drupal Stanford on Sunday. This is an updated version of the talk I gave at Bay Area Drupal Camp. New developments include

The slides are available here.

Import CSV into properly sized columns

Categories:

At MAPLight I occasionally have to convert CSV files to SQL. The Table Wizard module handles the import well, but the columns are all long text.

I made a quick module to resize the columns. It uses Table Wizard’s built-in analysis and Drupal’s Schema API to do some basic conversions. It is nowhere near complete functionality or UI-wise. Just barely good enough to get me through 12 tables with 165 columns.

I put it on GitHub since it is incomplete and I don’t have time to do more work. And I wanted to try out GitHub.

Javascript at Bay Area Drupal Camp

Categories:

As a “Drupal Genius*” for Chapter 3, I occasionally write for their website. My inaugural post is about JavaScript best practices. The “200% more AJAX” starburst was actually revived from an April fools joke years ago. Read the post and don’t actually use 200% more AJAX.

I will be presenting material from this post this weekend at Bay Area Drupal Camp. This should be a good camp; Saturday is packed with excellent sessions.

Update: the slides are available online.

* Being a “genius” is not a full-time gig, I primarily work as an independent consultant.

Drupal.org redesign’s dashboard

Categories:

Dashboard prototypeAn important part of the Drupal.org redesign is the dashboard. Power users have a towers of navigation, contributor, and/or documentation links on every page. That is clutter when you don’t need to jump to another section of the site. And one size does not fit all; there are a few options now, but either you turn on a block of links or you don’t.

The redesigned pages clean up the administrative clutter. You will be able to build your own, or keep the good defaults, dashboard to watch and get to what you care about. However, the content in the prototype is mostly positional. We need to design and build the widgets that are most useful for the Drupal community. We need to know what will help you be more productive on Drupal.org.

I started building out a dashboard module at the previous Drupal.org redesign sprints. But, it needs a lot more work. In addition to the issue queue, I made a wiki page to track priorities. I’ll be at DrupalCon Paris looking for people to help work on this important functionality.

By the way, the API.drupal.org work I wrote about, launched a few days ago. Thanks for all the testing and feedback. There are already a a few comments. There are still a lot of improvements needed, especially rewriting the parser. Find me if you want to help make more improvements.

Coming soon: faster API.drupal.org with comments

Categories:

One of the common requests for API.drupal.org is comments, like PHP has. With some help from chx, this is finally almost a reality. But I need your help; this uses a new single sign-on system and has a number of changes throughout the module.

I have been focusing on making the site faster. The auto-complete works at the speed of JavaScript, not AJAX. Short URLs, like http://api.drupal.org/hook_menu will work. OpenSearch plugins work with your browser.

If you have a few minutes, take an early look at the changes and make sure everything works before this all goes live.

Here is Drupal’s doc comment coverage:

Graph of doc comment code coverage.

Except for the lack of objects, doing relatively well, but there are a few undocumented files:>> Read more

Drupal.org redesign sprint San Francisco: Day 5

Categories:

Single sign on, comments for the API reference, search, and project pages all had significant progress during this sprint and will be deployed in the next 2 or 3 weeks.

This was the 3rd multi-day sprint, and there have been 2 one-day sprints. 57 people have SVN accounts and 144 people have joined the redesign implementers group. We are building a flexible and well-engineered theme and a suite of modules for single-sign-on, activity, and dashboard widgets shared among multiple sites. Drupal.org and its subsites have a lot of moving parts supporting the Drupal community. There is still a lot of work to do, especially in the modules we are building and doing editorial work on the content.

Thanks again to the Drupal community making this possible via the Drupal Association.

Drupal.org redesign sprint in San Francisco

Categories:

Developers
During a lunch at the Paris sprint, Dries suggested doing a sprint in San Francisco. I ran with the idea and now we are working on implementing the Drupal.org redesign at Chapter 3’s freshly-refurnished office. Mark Burdett, Matt Cheney, Erik Hopp, Josh Koenig, Kieran Lal, Courtney Miller, Todd Ross Nienkerk, Colin Sagan, David Strauss, and I are busy implementing the new Drupal.org. Chris Bryant, Dmitri Gaskin, Karoly Negyesi, Stephanie Pakrul, and Derek Wright are joining us later this week. I am working on the dashboard and helping organize everything. Kieran has a full list of what we are working on.

Thanks to Chapter 3 for expediting their new desks making room for 12 more people. AF83 and Advomatic are each buying lunches for us. The Drupal Association provided funding for some flights and hotels, we are keeping costs low by couch surfing and using local talent as much as possible.

If you want to help, join the group and #drupal-infrastructure. We are filing many issues to track the progress. We will be working through the weekend. Drupal.org is a big site with many moving parts, with more being added, all being built and maintained by volunteers. The effort in Cologne, Cambridge, Paris, and Washington D.C. has been amazing and shows what this community can accomplish.

State of the API module

Categories:

I talked with a few people interested in API.drupal.org improvements at DrupalCon D.C. This post outlines the details of what I want to see done. Some tasks, like commenting on API pages, seem simple, however there are time-consuming details.

This comprehensive list is a lot of work. It will not get done quickly without help. I am organizing a Drupal.org redesign sprint April 8 to 11 or 12 in San Francisco, some API module work will likely be done April 11 and 12. Email me if you are interested in attending. I will be attending the documentation planning sprint in Toronto to work with the larger documentation project.

I would like to see more people, particularly Drupal shops, using API module. More users means more contributors. For example, Development Seed is trying out API with Spaces on their Code site. I talked with Young about the implementation and the scalability to 4000 modules.>> Read more

FOSDEM 2009 presentation

Categories:

Photo of a classroomYesterday I presented about security at FOSDEM. The slides are now available. At Drupalcon D.C. I will be joining Greg, author of Cracking Drupal, and Matt to give a more broad security presentation with live demos.

I am in Paris for the week continuing work on the Drupal.org upgrade and redesign implementation. We split into two teams, triaged issues and are set to make a lot of progress this week.

Help fund Drupal.org redesign sprints

Categories:

New Drupal.org prototype

We have a new design for Drupal.org, now we need to implement it. To get this done quickly, Dries is organizing 4 sprints. I will be taking 2 weeks off of client work to help out in Boston, Paris and Washington, D.C., joining Gábor, Derek & Chad, Gerhard, Damien and others. We have a lot of work to do: upgrading project module and the existing site to Drupal 6, implementing the new design and new features.

I have been working on

The Drupal community is great at working online, but this type of project will greatly benefit from concentrated, in-person collaboration. Getting people in a room is not free; please chip in to help make this happen. At the time of writing, 48 people have contributed an average of $37.35 each. More convincing is available in English, Français, Magyar and 中文.

Something I am working on for API module

Categories:

l() function signature

Upcoming events and a podcast

Categories:

Drupalcon DCNext week, I will be at the Nonprofit Software Development Summit in Oakland. I am scheduled to help out with a wide range of sessions about Drupal and political data. I have been attending this summit since its first year when CivicSpace was still young; it will be good to catch up with everyone and see what people are doing with Drupal.

In March, Greg, Matt and I will be talking about Drupal security for users and developers at Drupalcon DC. Long-term, insecure configuration and development for Drupal should be harder, with better user interface and APIs; but I think education is still needed. There will be a lot going on since it is a Drupalcon, including another round of usability testing.

Earlier this week, Angie, Earl and I were on The Linux Link Tech Show #273. We talked about a wide range of topics. If you like podcasts, it might be a good introduction to Drupal and what is happening now.

Remote Control

Categories:

I have been doing Drupal development and database work for MAPLight.org. They completed a new report, Remote Control, showing locations of contributions to U.S. House members. On average, 79% of contributions are from outside the congressperson’s district. I helped import and export the data, run queries and built out pages like legislator geography.

Speaking at Bay Area Drupal Camp

Categories:

Bay Area Drupal CampI am speaking both Saturday and Sunday at BADCamp. Saturday I will be talking about Drupal Development Tools and Resources with Matt Cheney. We will demo tools we help build, like Drupal’s API reference and Drupal for Firebug, and other great tools we use to help build sites smarter and faster.

Sunday I will be talking about Importing data with job queue and import manager. I have done this presentation in a few different forms before, at DrupalCon Boston, NewTools Drupal Day and a SFDUG meeting. This presentation will be more-technical than the others and explain how you can queue and manage jobs with Job queue and Import manager.

As always, I will be on the lookout for people interested in Drupal usability and improving the API module.

Job queue for Drupal 6

Categories:

The Job queue issue queue has been quiet and I have been testing it with the development version of the API module, so it is time for a Drupal 6 release.

Drupal 2013

Categories:

Before the Boston Drupalcon, I was asked “Can you describe what the experience of using your [Drupal’s] design will be like in 5 years?” I usually think one or two release cycles ahead, 2 years maximum, so this is a challenge.>> Read more

I’m going to Drupalcon Szeged

Categories:

Szeged 2008 DrupalconI will be on the Performance tuning expert panel at Drupalcon Szeged. I am excited to see a continuing focus on usability and hope to help during the sprints. Please consider sponsoring the conference if you can.

I will be on vacation the week before Drupalcon. If you know where to find vegetarian food between Prague and Budapest, email me.

Drupal performance tuning

Categories:

I gave a talk about scalability at the last SF Drupal User’s Group meeting. Performance and scalability is an excellent topic for a user group meeting; everyone wants to know about scalability and there is enough material for hours. I did my talk in two parts: I spoke about the general process and demoed useful tools.>> Read more

New website

I have a bad habit of destroying my website, leaving it offline for months, and rebuilding it every year or two.

There are usually better places for information than here. Everything I work on with Drupal has a place to be written about in groups, mailing lists, or plain old documentation. I will do my best to write unique and useful content for this site.

I think this site has been offline for over a year. What took so long?>> Read more