Å·±¦ÓéÀÖ

Angela Byron's Blog, page 3

August 15, 2012

DrupalCon Happenings around Spark in Drupal 8 core

The is a Drupal 7 distribution which aims to prototype cutting-edge authoring experience improvements that we hope to propose for inclusion in Drupal 8 core, back in May. Please and check it out, and give us lots of ! (And/or patches! ;))


The next step is to propose the changes added to Spark so far as Drupal 8 core improvements. We’ve set up a number of events and Birds of a Feather (BoF) sessions at DrupalCon to help facilitate this, most of which are happening on Tuesday (first official day of the conference). (There’s also a of these and other Spark-related community sessions.)


Tuesday, 9am - 10:15am:

During this presentation, in addition to other Drupal 8 improvements, Dries will be showing videos of various Spark functionality, including inline editing, responsive layout builder, and mobile authoring.


Tuesday, 10:45am - 12pm:

After the keynote, we’ll be holding a BoF session for any interested community members who’d like to help brainstorm about how best to move mobile authoring experience improvements into Drupal 8 core, led by Jesse Beach.


Tuesday, 1pm - 2pm

After lunch, meet up with Wim Leers to strategize about how best to attack the .


Tuesday, 2:15pm - 3:15pm

Just after Wim’s session, Jesse Beach and Gábor Hojtsy will lead a BoF on getting the responsive layout builder functionality into core, layering on top of the .


Tuesday, 3:45pm - 4:15pm
Friday, all day

Both Wim Leers and Jesse Beach will be leading sprints around mobile authoring, responsive layouts, and inline editing/WYSIWYG issues in the Drupal core and Spark queues. If you’d like to contribute to these initiatives, please join us!


If you’re totally new to core development, stop by the “Core Office Hours" sprint first, where helpful mentors will be there to get you set up with a development environment and provide orientation as to how things work.


There are only about 15 short weeks before , so let’s help Drupal’s authoring experience kick ass! :)


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on August 15, 2012 09:46

June 2, 2012

One Drupal 8 Slide Deck To Rule Them All - Please give this at your local event!

Greetings, Drupal Planet!


Here are the slides from my "hook_future_alter()" talk. This outlines the major changes currently in development for Drupal 8, how Drupal 8 will impact end users, site builders, designers, and developers, and how to jump in and help!


I am providing these in both PDF as well as "raw" Keynote format, in the hopes that others can take this talk and re-give it at tons of Drupal events (Camps, user group meetings, etc.) around the world! There are pretty detailed presenter notes to help with this. If you find problems, please let me know and I'll correct them.


PDF file (if you want to read it):
(~9MB)


Keynote file (if you want to present it; always up-to-date version):
(~60MB)


Huge thanks to Kristof De Jaeger and Jen Lampton for their help in outlining and content for this presentation. And thanks to Dries, Larry, and Gábor for making nice imagery I could copy/paste. :) And thanks to the organizers of DrupalCamp Vancouver for making such a great event!


Shameless plug: Hey! Come to Port Moody on Thursday, June 7 and let's have us a Drupal meetup. ;)


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on June 02, 2012 18:16

May 30, 2012

"No Zombies Allowed" Building Chart

I'm crack-addicted to the iPhone/iPad game , and for whatever reason can't find anything about it anywhere on the Internet.


The gist of the game is, you rebuild your city after a zombie apocalypse. Literally your city; it has geolocation detection and lets you specify nearby businesses from the "real world" from which to loot supplies. :) You progress in the game by buying hollowed-out shells of buildings with coins and turning them into either Housing (lets you bring survivors into your town as "worker bees" and to increase your town's population) or Businesses, where you use supplies to stock items which then sell over time for more coins, which are then used to buy up more hollowed-out shells of buildings which can then be turned into... well you get it.


Survivors have a particular personality type (such as "Leader" or "Joker") which impacts both their physical appearance as well as their suitability to a given business or supply run. If you match survivor and business personality types, you get bonus cash. It adds a bit of strategy to the game since you're limited in the number of survivors you can take in.


The artwork and sound effects in the game are fantastic, as well as the sense of humour around the names and products stocked at the businesses (e.g. "Last Life Arcade" sells a product "Legend of Zombie" ;)). There are action elements as well, so it's not just mindless collecting/waiting. During supply looting you actually shoot / reload at packs of roaming zombies (you get better guns [and eventually a chainsaw!] the more supply runs you do). You can also fire at zombies at the front gate for fun (and additional supplies/cash).


ANYWAY. The point of this post:


Some buildings are better than others, and when you place a new building, you're given three possible choices and no idea what's in store beyond the personality types associated with them. Here's a for making sound choices, since choosing wrong requires a "Z-Buck" plus several hours to bulldoze the building and try again. (I intended to put this on instead of my blog but they don't even have this game listed there yet.) It's editable by anyone (until someone abuses it :P) so feel free to fill in additional details if you want.


Hope that helps someone. :)


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on May 30, 2012 02:43

April 5, 2012

Memories: My Google Summer of Code proposal from 2005

Ha. After talking to aspilicious tonight about (note: still one day left to ), I dug around in my old e-mail archives tonight and came across my original GSoC proposal from 2005.



= PROJECT TITLE =

Drupal Quiz.Module


= SYNOPSIS =

I wish to take on the completion of the ambitious quiz.module for Drupal, primarily aimed at allowing educational organizations to administer quizzes and track student progress.


= BENEFITS =

1. Provides educational organizations with a set of tools with which can be used in a variety of applications, from instructor-led courses to self-paced training.


2. Enhances the Drupal project, and thus the open source world as a whole, and allows both to obtain a stronger foothold in delivering free, powerful tools to this important target market.


3. Delivers a tool which can be used in a number of other ways as well; for example, website bloggers who wish to use quizzes to enhance the interactivity level for their readers, or employers who wish to use the module as a means of measuring potential job applicants' skills.


= DELIVERABLES =

1. The creation of the quiz.module based on the detailed specifications located at

2. The development of a Drupal distribution specifically for use by educational organizations

3. The drawing up of a project roadmap, based on needs analysis of key members within the target community.


= PROJECT DESCRIPTION =

This quiz.module encompasses several different aspects:


1. Questions and Answers: Questions are abstracted from their answers in order to support a wide variety of question types, rather than just standard multiple choice (though this will be the first to be implemented). Properties on questions will determine things like what category it belongs to, how many possible answers a question has, whether or not multiple answers may be selected, and so on. Each answer can be accompanied with feedback to help point out where the student went right or wrong.


2. Question Types: Question types themselves (ex: multiple-choice, fill-in-the-blank, etc.) will be defined in separate include files to allow for directory scanning, a method used in numerous other places within Drupal with great success. These include files will implement a predefined public interface via hooks to do things like display each question's admin interface and render the questions themselves in a standard way. This allows the addition of new question types by users of the software very easily, and without modifying any of the underlying code, both of which are critically important traits for the module's target audience.


3. Quizzes: Creating a quiz will involve choosing one or more question categories and selecting the number of questions for the quiz. The administrator can then select from a list of questions matching the criteria, marking each one as either "include" or "exclude." A number of other properties can be set on a quiz, including whether or not to shuffle questions on each new quiz, whether or not question revision is allowed, whether or not there is a time limit, etc. Quizzes themselves will be randomly generated from the list of included questions.


4. Question moderation and revision: The module will also include the ability for other users to revise questions (to clarify meaning, correct spelling, etc.) in order to ensure their overall quality. This process involves placing proposed revisions into a queue for review by an administrator, who can then make a decision on whether to accept or reject the proposed changes. Allowing users to score a question based on its applicability is another method of gauging overall question quality.


= PROJECT SCHEDULE =

The project will likely take most of the allotted time, and will be broken up into three phases:


1. Planning (completion by end of June): This step will involve getting familiar with the Drupal platform and contacting key people involved with the project and potential users to gain a thorough understanding of all requirements.


2. Development (completion by beginning of August): The development process will be largely iterative, in which small pieces of functionality are added and feedback solicited from the Drupal community at each step, to ensure that the project is adequately meeting expectations.


3. Wrap-up (completion by end of August): Completion final tweaks to module, customized Drupal distribution, and project roadmap.


= BIO =

I've participated in educational organizations both as a student (I've acquired three 2-year diplomas, centered around database management, web development, and application programming respectfully) and as an instructor (I've taught A+ certification and web design courses to the Canadian Navy, and PC maintenance courses to retirees), and I feel this background gives me a unique perspective on the goals of this project. It allows me to "role play" as both an administrator and a consumer of this technology, and I can submit my experiences to the pool as to what well and doesn't within an educational context from both perspectives.


As a result of both my formal education and self-directed learning, I've become somewhat of a "nerd of all trades," with over 10 years of experience in a variety of facets of IT, although my primary focus and interest is on Web technologies. I can offer the Drupal team my experience with both W3C standards-based front-end design and over 5 years of PHP/MySQL development. My online portfolio is available at and contains examples of my work.


Finally, I feel that there aren't enough women represented in the IT world in general, and the free/open source software world in particular, and that's something I'm striving to change. My ideals fit in well with both the F/OSS movement as well as education, and I would greatly welcome the opportunity lend my skills to these worthy causes.



Fun facts:



My only exposure to Drupal before this moment was a "view-source" on spreadfirefox.com. The first time I installed Drupal was the day Google Summer of Code began.
It probably took me another 3 weeks after that to figure out wtf a hook was. :P~ (remember: there were no Drupal books in those days, and the handbook was only about 300 pages :)). I've made it my mission since then to try and destroy the .
Right at mid-terms of GSoC, the , leaving CVS, documentation, the issue queue, and other important things inaccessible. As a result, my first documentation contribution was . ;) Luckily this story had a . :D
In other curve balls, the GSoC projects were being developed against CVS HEAD, which was Drupal 4.7 at the time. GSoC completed about a month before . It was a lot of "fun" re-writing Quiz module a second time, let me tell you. But hey, at least got written. ;) This is also when I and , and the rest is history. :D
There was an 11th hour switch that put my application from #12 to #11 in the list, which put me juuuust barely within the 11 slots the Drupal project was allocated. In other words, I was this || close to not getting into GSoC, and not becoming part of the Drupal community. Thanks for having faith in me, ! :D

Anyway, things overall worked out pretty well I think. :D If you're a student interested in working on Drupal, or a Drupal developer with cool project ideas and no time to implement them (but enough time to guide someone like 2005 webchick through the process), hope to see you at . The deadline for student applications is 19:00 UTC on April 6.


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on April 05, 2012 01:31

November 11, 2011

Hit-list for top Drupal 7 module stabilization

Back in September, was launched to track the porting status of the top 60 contributed projects to Drupal 7. Since then, we've whittled the list down to just 20 projects remaining, as well as tons of progress on the rest! YEAH!


I contacted each of the maintainer(s) of those remaining projects and have come up with a list of next steps for each. Your help is needed if we want to get that graph up to 100% by year's end. (Just in time for ! :))


As a general rule, help is needed in the following areas:



(Difficulty: Novice): Going through the issue queues of these modules and doing things like closing duplicate reports, verifying that bug reports are valid, and so on. None of this is particularly difficult work, but time that maintainers have to spend doing it is time they can NOT spend porting their modules to Drupal 7.
(Difficulty: Intermediate): Going through the issues in the queue marked "needs review" and making sure patches still apply, then testing to make sure that they still work, then reporting on the results of your testing are all critical things that really help save maintainers time, and ensure that any actionable issues are escalated to their attention.
(Difficulty: Intermediate to Advanced): If you know how to write , are familiar with how the works, can answer questions about the new or , there are several issues identified that could use YOUR help! Note that you don't necessarily need to be in MAINTAINERS.txt to provide this help, either; if you've already started building Drupal 7 sites and modules, you likely know enough to be helpful!
(Difficulty: Intermediate) Many of these projects are seeking co-maintainers. If you or your business/customers depend on any of these modules, investing solid time in the issue queue to help review and roll patches for issues in need would be of tremendous benefit, and would help position yourself to ask for commit rights so that you can ensure these modules stay solid going forward.
JavaScript knowledge! (Difficulty: Intermediate to Advanced) Seriously. We are, generally speaking, a bunch of PHP nerds. If you know JavaScript, you can be helpful on a number of different (and important) fronts.

So, without further ado, here are some specifics on how you can help Drupal 7, and the maintainers whose code you rely on!




Maintainer:

Current status: 7.x-3.0-rc1

List of blocker issues: (18 active issues)


Didn't get a response from this maintainer, but the list of blocker issues appears to be valid. While some seem to require a pretty deep understanding of menu system innards, others up for the taking are JavaScript-oriented or dealing with integration with other modules such as Views or Shortcut. Several issues have proposed solutions already, but need review.




Maintainer:

Current status: 7.x-1.0-beta1 (2011-Jan-17)

List of blocker issues: (0 active issues)


Dmitri thinks there aren't really blockers for a 1.0 release, so is going to take a look this weekend. Yay! :D




Maintainer:

Current status: 7.x-1.x-dev (2011-Sep-16)

List of blocker issues: (4 active issues)


The list of blocker issues above is valid. Most relate to entity and field API. Alan is planning to put some solid work into this module over the next couple of weeks, as he needs it for a D7 project of his own. So any helpers in the issue queue should see quick response times!




Maintainer: and

Current status: 7.x-3.0-alpha1 (2011-Aug-01)

List of blocker issues: (0 active issues)


This module is primarily blocked on stable releases of Date and Views. In the meantime, issue queue triage help would be appreciated. If you rely on this module, co-maintainers are very welcome!




Maintainers: and

Current status: 7.x-1.0-alpha3 (2011-Apr-27)

List of blocker issues: (5 active issues)


Did not hear back from these maintainers, but the list of stable release blockers includes several form-related issues. If you have experience with Drupal's form API, you may be able to help! CAPTCHA module is also currently seeking co-maintainers.




Maintainers: ,

Current status: 7.x-1.0-rc3 (2011-Sep-19)

List of blocker issues: (3 active issues)


Contemplate's biggest blocker is the new Render API in Drupal 7. describes the issue, with an analysis by zigazou:



Drupal 7 generates HTML code at the very last moment instead of what was done in Drupal 6 and earlier � Render arrays in Drupal 7

A ready to render array can be generated from the $node object via the node_view function � Drupal API : node_view

Should Contemplate give you a render array (instead of the $node object) in which you could create/modify/delete elements letting the rendering to the theme ?

Or is it up to you to render each elements via node_view and render in the template, thus generating HTML ?

Could Contemplate rely on token or dedicated data structure instead of internal Drupal structure ?


If anyone can provide insight on these questions, the module maintainers would love you to pieces. :) Without help, this module may be forced to become deprecated in Drupal 7. :(




Maintainer: merlinofchaos

Co-maintainers: EclipseGc, neclimdul

Current status: 7.x-1.0-rc1

List of blocker issues: N/A


Immediate needs are issue queue triage. has about 150 issues in it. Needs folks to go through and identify issues which are either:

a) Low-hanging fruit / Quick fixes

b) Really nasty things that ought to be cleared up before a 1.0 release

Earl has a spreadsheet at where he's tracking things that need his immediate attention. Hint: The fewer issues in here, the faster it comes out, so please be picky about what things you escalate. :)

Beyond that, Earl doesn't think there are any release blocker issues, and he should be able to get a release out by year's end. Yay!




Maintainer: and

Current status: 7.x-3.0-alpha1 (2011-Aug-01)

List of blocker issues:


This module needs help on several fronts, including:



General issue queue triage to weed out duplicate/invalid issues would be of tremendous help.
Automated tests for various Date widget/formatter interactions. Spending time here will help greatly to speed up managing other issues.
More thorough reviews. Please, when reviewing, don't just test whether it works for your particular situation but also that it works with all types of date fields and widgets. Automated tests should help with this, but in the meantime testing can also be done manually.
Several UX-related issues, some of which need someone with JavaScript chops.
Date tokens are blocked on one of the remaining issues in the Token module queue. Helping to get Token ported will help Date module! :)
There are a number of issues around translations that need attention by someone who understands the translation system.



Maintainer:

Current status: N/A; no D7 release

List of blocker issues: (N/A active issues)


Didn't hear back from this maintainer, but the from Aaron is that he would like to , although others are focusing their attention on .


In any event, (now at its second release candidate) may be worth a look if you need this capability for Drupal 7.




Maintainer: , ,

Current status: 7.x-1.0-beta4 (2011-Sep-20)

List of blocker issues: (6 active issues)


Didn't hear back from this maintainer on this one, but half of the issues in the blocker issues queue are marked needs review, so testing on those would be extremely helpful.




Maintainer: ,

Current status: 7.x-1.0-beta1 (2011-Oct-16)

List of blocker issues: (TBD active issues)


Didn't hear back from this maintainer, presumably because of :) Congratulations!


However, if I had to guess, I'd say issue queue triage would be your best shot at getting a release of this out sooner. And if you're savvy with JavaScript, this might be a great project for you to sink your teeth into.




(Note: Renamed to in Drupal 7.)

Maintainer:

Current status: 7.x-1.0-alpha3 (2011-Sep-30)

List of blocker issues: (7 active issues)


For the most part, major development efforts for Meta tags is now complete, and Dave is now onto code clean-up and stabilization.


There's one remaining architectural issue which could use hashing out. Meta tags currently puts its information in the $content array so that it can be cached. However, that only works if themes are using print render($content), which it seems many custom conversions from Drupal 6 are not. If you have thoughts on this, or otherwise have performance / Render API experience, please talk to Dave. He's looking for validation on the approach.




Maintainer:

Current status: 7.x-3.0-alpha3 (2011-Mar-17)

List of blocker issues: (1 active issue)


A stable release of Panels is blocked on a stable CTools release, so helping with issues in the CTools issue queue will help Panels.


The biggest thing Panels needs at the moment is issue queue triage, to try and sort through the issues there, close invalid issues, and of the valid issues, determine whether or not they're Panels bugs or actually CTools bugs. If the issue queue gets cleaned up, that'll greatly help Earl to determine what, if any, of the outlier bugs are blockers once CTools 1.0 comes out.




(Note: Renamed to in Drupal 7.)

Maintainer:

Current status: 7.x-1.0-beta3 (2011-May-06)

List of blocker issues: (4 active issues)


Major development on Redirect module is pretty much done. Woohoo! However, there are still a few issues remaining issues in the blocker queue that need reviews from folks, particularly the issue.




Maintainer:

Current status: 7.x-1.0-beta1 (2011-Oct-17)

List of blocker issues: (N/A active issues)


This module's in pretty good shape, with a few, mostly minor to-dos. Reviews and testing would be helpful on patches in the queue.


One problem that could use help is the print_node.tpl.php template file isn't getting picked up for some reason, so . This is probably something easy, so if you're familiar with writing theme hooks and theme suggestions in Drupal 7, João could use some assistance!




Maintainer: , ,

Current status: 7.x-1.0-alpha1 (2011-Sep-17)

List of blocker issues: (5 active issues)


This module needs help in the following areas:

* Technical review of automated tests at

* Some help with UI issues &

* Testing of the upgrade path from D6 to D7

* Assistance with getting the theming right:

* In general, more active issue queue engagement (testing + contributing) by folks who depend on this module. The maintainers get frustrated when they put things out there and get crickets in return. :(




Maintainer:

Current status: 7.x-1.0-beta7 (2011-Oct-28)

List of blocker issues: (6 active issues)


List of release blockers is valid. Here's what's needed:

- is a hot-button issue that blocks many contributed modules.

- If you are JavaScript-inclined, the upstream library needs accessibility and performance improvements.

- Automated tests for basic token support would help ensure a healthy base from which to fix other issues.


Please help! This module unfortunately blocks others in the list. :(




Maintainers: , ,

Current status: 7.x-3.0-rc2 (2011-Oct-07)

List of blocker issues: (0 active issues)


The good news is, no more release blocking bugs in Ubercart! The bad news is, a stable release is blocked waiting on a stable release of Views. :(


Note that a possible alternative to this module in Drupal 7 is .




Maintainers: ,

Current status: 7.x-3.0-rc1 (2011-Jun-17)

List of blocker issues: and (5 + 7 active issues)


Daniel "dereine" Wehner is leading maintainership efforts on Views currently. Currently, the best place to help out is in helping out with issues from the two lists of blocking issues above. Those remaining issues largely center on problems with the views override system.


If that sounds terrifying to you but you still want to help, the is always looking for hands. Members of the Views Bug Squad are Drupal contributors who have committed to spending a few hours a week doing basic triage the Views issue queue. Find out more at !




Maintainer: ,

Current status: 7.x-3.0-beta3 (2011-Oct-14)

List of blocker issues:

(2 active issues)


is the primary blocker for this module. Bojan is about 50% done, and hopes to post it for review within the next few days. Then, the best thing the community can do is provide feedback, so that we can figure out the best way it should look and work. Bojan has some availability in November, so now's the time if you'd like to help drive this module home!




Maintainer: and

Current status: 7.x-2.0-beta3 (2011-Jun-20)

List of blocker issues:

(TBD active issues)


This module primarily needs two things:

1) An active co-maintianer; Dave is currently single-handedly maintaining about 5 of the top 60 modules, and this is one he wouldn't mind having off his plate.

2) Lots and lots of issue queue triage. Because this module is so popular, there are tons of duplicate/invalid issues and Dave could really use some help weeding them down, to help get a clear sense of what's there in terms of release-blockers.


That's a wrap!

Whew! Hopefully you found something in that list that either you or someone you know can help crank on. If not, there's always the for your hacking and triaging pleasure! If you're headed to a over the next few weeks, consider holding a sprint to hack on these important issues.


Thanks in advance for your support!


(PS: Also thanks to for her help in formatting this formidable document!)


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on November 11, 2011 00:27

October 28, 2011

Notes from Drupal 8 status update talk

Here are some notes from the Drupal 8 status update talk that Dries and I gave today to the Acquia team, since this seemed like useful info for the community to know as well. :) It covers both process changes for addressing previous issues that arose in Drupal 7, as well as a status update on Drupal 8 progress to-date. This could be useful to folks who have been wondering where all of the various Drupal 8 status updates fit into the "bigger" picture.


Please comment here if I left anything out, or messed up anything.


Background of D7 challenges and how we're addressing these in D8

Two core maintainers overseeing entirety of Drupal core doesn't scale; appointed "initiative owners" to take on strategic aspects of development.
Bi-weekly "scrum of scrum" calls with initiative leads to get them unblocked.

Established as central place to keep up to date on D8 initiative progress and get involved.
Working on "Community Initiatives 2.0" as a way of providing better structure to these and other initiatives .

Appointed Nathaniel "Catch" Catchpole as Drupal 8 co-maintainer

Focus on reducing complexity of core and increasing performance.
In close contact with Angie/Dries to make sure his own patches get reviewed/committed in a timely manner

Gave Angie access to commit to D8 for D7-affecting bug fixes/tasks

Effectively raising the number of core maintainers to 3 for the most severe issues.

RTBC queue for D7+D8 down from high of ~120 in the summer to ~10-15 pretty consistently now. YAY!
Established "Issue thresholds" of 15 critical bugs/tasks and 100 major bugs/tasks.

No new features get committed to D8 while we are over thresholds: focus turns to bug fixing/stabilization so we can get back to a "stable state."
Means we can release D8 within a few weeks of freezing the code, as we'll never have more than 30 or so release-blocking issues.

Worked with accessibility, usability, performance, testing, and documentation teams to establish "gates" that form checklists of things to check for core patch reviewers:
Created as an "announcement-only" list of major happenings in the core queue.
Started "Core office hours" as a way of on-boarding new contributors:

Drupal 8 progress to date

Canvassed both large Acquia customers as well as the wider Drupal community to identify key strategic initiatives for Drupal 8.
Identified "initiative owners" to take point on each of these, and to spread out responsibility/authority among more than just 1-2 people (from Acquia ;)).

Greg Dunlap: Configuration Management
Larry Garfield: Web Services
Jeff Burnz: Design
Jacine Luisi: HTML 5
Gábor Hojtsy: Multilingual
John Wilkins: Mobile

Most initiatives have bi-weekly IRC meetings announced at to provide status updates/assign tasks.
Configuration management


This initiative deals with how to move content and configuration from dev to stg to live.







Content: UUID patch committed which allows unique identifiers to allow for content staging.









Next step is refactoring entities to use it.

Config: Developed architecture that allows for saving buttons in the admin interface to automatically generate XML files holding configuration data. These can then be moved around with version control. The system intends to replace variable_get/set as well as import/export functionality in Views, Image Styles, etc.

Initial prototype code at
Recent sprint at BADCamp with yched, sun, davidstrauss, etc. to talk about how CMI can work with fields in core.
Trying to get a couple of pages in core done as "proof of concept", then initial core patch will follow.

Web Services


This initiative consists of four parts: a unified context system (to replace global $user vs. arg(1), etc.), a unified plugin system (to replace variable_get('filename') vs. hook_something(), etc.), turning Drupal into a web services platform (providing REST APIs for getting JSON, XML, etc. out), and revamping the page rendering structure to allow for chunks of content to be re-ordered in whatever way (aka "Panels in core").
Initial prototype code of context system at
Recently committed Symfony 2 HTTP library to core so services API can take advantage of it and it does not need to be more code we maintain ourselves.

Part of a larger imitative to have Drupal play nicer with the larger PHP community, lots of outside interest.




Ìý




Design


Two-pronged approach: new responsive, mobile-friendly front-end theme for core, and also improvements to Drupal.org to make it more designer-friendly.







Design.drupal.org prototype:
Initial design brief proposal:

Currently Jeff is helping with HTML 5, since is largely blocked until that and snowman happen (so people know what they're designing for/with).



Ìý




HTML 5


Goal to convert Drupal 8's native HTML output to HTML 5.
Other parts of initiative include: native HTML 5 Form API elements, Modernizr/other prototype library in core, CSS clean-up
Current sprint focused on core template conversion:
Just committed html.tpl.php patch - Drupal 8 now outputs HTML 5 DOCTYPE! YEAH!



Ìý




Multilingual

Roadmap:
Unifiying the language system, bringing in good ideas from contrib to core (e.g. content/entity translation), better UX for supporting complex translation interactions
Work so far primarily around cleaning up underlying language system, but also some solid progress on UX as well thanks to Berlin/Montréal sprints.
In close contact with CMI/WSCCI initiative leads to ensure multilingual concerns are addressed.



Ìý




Mobile

Roadmap:
Just kicked off last week; not too much progress yet. :)
In many ways a "glue" initiative to tie together elements of WSCCI, Design, and HTML 5. Covers things like responsive/mobile-friendly conversion of core themes, a solution for dynamic image resizing, and front-end performance
Goal: Make Drupal the "go to" CMS platform for mobile. YEAH!



Ìý




Other initiatives identified by survey, yet to be announced

WYSIWYG
Usability/ease of use
Media/asset management
"Better APIs"
Content import/export & Content staging







Both part of CMI


Non-initiative progress

PHP 5.3 as a baseline, allows for better support for OO, namespaces, and other cool stuff.
Reducing complexity/code bloat: Profile, Blog, Trigger, and Garland removed from core.
"Unofficial Framework" initiative working towards simplifying/de-coupling subsystems
Numerous performance improvements, most backported to D7
"Snowman" attempting to build useful profile using Drupal core components
Usability testing done at University of Minnesota in May exposing D7UX was a success (yay!) but still more work to do, esp around site building tools:


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on October 28, 2011 13:36

October 6, 2011

Free DrupalCon Denver tickets for sprint leads

One of the things the struggles a lot with is the pricing of DrupalCon tickets for attendees. As detailed in the (1.3 MB PDF), DrupalCon tickets make up a significant portion of the organizations' overall revenue, which goes to funding hugely important long-term projects like the and , server upgrades, programs like the , as well as salaries for our to help run operations. While we are actively working on diversifying our revenue stream through initiatives like a revamped and , and adding numerous benefits to our , the fact remains that in the meantime, DrupalCon ticket sales help to off-set significant costs for programs that help benefit the wider Drupal community, including those individuals who could never hope to attend a DrupalCon due to financial/geographical/visa issues.


At the same time, we also recognize the wonderful diversity of people in our community. And for students, hobbyists, non-profits, evaluators, freelancers, and others, even the significantly off-set ticket prices (thanks to our generous ) can make DrupalCon attendance prohibitive to the people we hope most can get there. And while we offer full-ride scholarships for a limited number of people in financial need, asking for one is often uncomfortable, especially by people who give a lot to Drupal already. In the past, we've done super-cheap "land grab" tickets (first 100 or so), but often those go to the people who don't need them: the major Drupal shops and others making ample money off Drupal who already know they'll be coming to DrupalCon, regardless of ticket cost.


This time around, we're doing something a little different. The Drupal Association has set aside a number of half-price tickets to and , as well as FREE tickets to contributors. To snag one, you have to . These applications will get checked over by the same group who looks over the scholarship applications, and use similar criteria (involvement in community of the participant, impact of the sprint on larger project, etc.) to evaluate the submissions.


So, if you're someone who is driving important change in Drupal (or someone wants to!), please and you could qualify for complimentary admission!


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on October 06, 2011 14:44

Free DrupalCon Denver attendance for sprint leads

One of the things the struggles a lot with is the pricing of DrupalCon tickets for attendees. As detailed in the (1.3 MB PDF), DrupalCon tickets make up a significant portion of the organizations' overall revenue, which goes to funding hugely important long-term projects like the and , server upgrades, programs like the , as well as salaries for our to help run operations. While we are actively working on diversifying our revenue stream through initiatives like a revamped and , and adding numerous benefits to our , the fact remains that in the meantime, DrupalCon ticket sales help to off-set significant costs for programs that help benefit the wider Drupal community, including those individuals who could never hope to attend a DrupalCon due to financial/geographical/visa issues.


At the same time, we also recognize the wonderful diversity of people in our community. And for students, hobbyists, non-profits, evaluators, freelancers, and others, even the significantly off-set ticket prices (thanks to our generous ) can make DrupalCon attendance prohibitive to the people we hope most can get there. And while we offer full-ride scholarships for a limited number of people in financial need, asking for one is often uncomfortable, especially by people who give a lot to Drupal already. In the past, we've done super-cheap "land grab" tickets (first 100 or so), but often those go to the people who don't need them: the major Drupal shops and others making ample money off Drupal who already know they'll be coming to DrupalCon, regardless of ticket cost.


This time around, we're doing something a little different. The Drupal Association has set aside a number of half-price tickets to and , as well as FREE tickets to contributors. To snag one, you have to . These applications will get checked over by the same group who looks over the scholarship applications, and use similar criteria (involvement in community of the participant, impact of the sprint on larger project, etc.) to evaluate the submissions.


So, if you're someone who is driving important change in Drupal (or someone wants to!), please and you could qualify for complimentary admission!


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on October 06, 2011 14:44

October 4, 2011

What has webchick been up to lately?

At the end of June I wrote up a . Here's another update for this quarter!


Drupal 7

Last quarter was focused primarily on stabilization of Drupal core and incorporation of various processes to help ensure it stays stable. With that in hand, this quarter my focus shifted more towards accelerating Drupal 7 adoption.


The good news is that in the last three months, the number of Drupal 7 sites in the wild has exploded from 60K sites on July 3rd to over 168K sites on September 25th, including this one. w00t! (Note: I'm not claiming this is because of me. :P~)


The bad news is that the number one thing holding back Drupal 7 adoption is, of course, the state of Drupal 7 contributed modules, so a lot of my effort this quarter was spent around that problem.




Identifying D7 stable release blockers In a post , a standard tag was established to centrally track all issues across all contributed projects that block a stable D7 release. Since then, nearly 100 of these issues have been fixed. Yay!


If you're looking for someplace to jump in and help contribute, attacking issues in this list would be a welcome place to start! :)




Tracking Drupal 7 contributed module porting Also launched this quarter was a new site at which tracks the Drupal 7 porting status of the top 50 projects (well, 60; 50 + 10 that were moved into core :P), along with links to get involved to help make them happen sooner (or, ). The number of these projects with stable releases has gone up from 15 to 34, so we're making good progress there!


Note: If you need this sort of reporting for evaluate your own Drupal site's D7 readiness, check out the , upon which this site is built.



Meeting issue thresholds After tremendous efforts by the Drupal core developers, for Drupal core that were set up last quarter got met this quarter. That means D7 has far fewer critical and major bugs (including those that block contributed modules from being ported), and it means that D8 is officially free to take off into the stratosphere. Rock!!

Drupal 8

Speaking of...




Community survey + new initiatives The original Drupal 8 initiatives that were announced in Dries's at DrupalCon Chicago—HTML 5, Configuration Management, Web Services, Multilingual, and Design—encompassed a combinatio of Dries's thinking as well as feedback from 20 of the largest Drupal sites, about where Drupal needed to go. But we also wanted to make sure to get the larger community input into that roadmap as well.


The had over 3,000 participants, and directly as a result of that survey some additional initiatives were announced: WYSIWYG, Media/asset handling, Usability/ease of use, Mobile support, Better APIs, Content import/export. This quarter we'll start identifying and announcing initiative leads for some of these, and getting these initiatives bootstrapped.



Multilingual sprint I attended the last part of the that Drupal 8 Multilingual Initiative owner organized alongside in mid-September. I tried to provide feedback on some UX issues, and generally help out wherever I could. See the excellent that summarizes the excellent work accomplished by the contributors there, as well as next steps.

Drupal 8 gates To help ensure code quality, and also to prevent burnout of our seasoned experts in specific areas, one of the major initiatives for Drupal 8 is to define a set of "gates" which document the things to check for in patches before they're committed to core.


In our last report, the Documentation gate had been defined as a "template" of sorts. This quarter, we started additional discussions about a , , , and gates. Experts on each of the teams put their heads together to try and come up with the 4-6 things that they spent the most time fixing in core, so that we could pass that knowledge along to all core contributors (along with resources for learning more).


This work is now visible at the page, which core contributors and patch reviewers should familiarize themselves with.

Drupal 8 co-maintainer! And, of course, one of the most exciting developments to happen to Drupal 8: Catch is a brilliant and conscientious contributor, who highly values both performance and reducing complexity. Which makes him a perfect fit for a release where these are two extremely hot-button topics (that also took a fair bit of time this quarter ;)).


If you'd like to learn more about him, you can read a piece on him from back in 2007. :)




Drupal.org

One of the things that holds Drupal back from being as awesome as it could possibly be is our poor website, Drupal.org (oh, the irony). While the Drupal Association has had tremendous success in funding large-scale initiatives such as the CVS => Git migration and the Drupal.org redesign, smaller-to-medium sized improvements have traditionally been extremely difficult to navigate, even for people who are prolific contributors elsewhere in the project.



Documenting how to make change on Drupal.org Making improvements to Drupal.org was always possible, it's just that the way to do it was trapped piecemeal in about 10 different peoples' heads. :) A huge initiative this quarter was the , which documents said . See the front page post for a step-by-step guide.
Unblocking contributors from being awesome To beta test the process that was documented, a group of contributors set off to try and address some of the most severe community performance issues on Drupal.org. Check out the by the community. The notable thing about this list is that each of these improvements was implemented by people not on the infrastructure team! Hooray!!

Extra added bonus? The is literally days away from deployment. Mmmm! :D



Project application process reboot Greg Dunlap, Alan Palazzo and I gave a Core Conversation on the , which emphasized actual data illustrating the impact on the community that the process has, and the kinds of things the process catches. has been a tremendous thought-leader in this area, and posted a . Feedback welcome!
Unblocking distribution blockers One of the biggest opportunities for Drupal is distributions: products built on top of Drupal like OpenPublish and Commons. However, success of distributions has traditionally been held back by sub-standard tools on Drupal.org. This quarter, I spent a bunch of time working with on identifying and coming up with a fundraising proposal to help see them fixed (or well on their way) next quarter.

Acquia

And of course, there are Acquia-related things as well. :)




Acquia influence concerns There were a lot of discussions, particularly around the time of DrupalCon London, about Acquia's motives and whether or not we were growing too big for our britches, and exerting undue influence on core or the community. A lot of time was spent in these discussions in both real life and IRC offering my own point of view as "part of the problem." (Though I'd like to hope that my to-do list here demonstrates work that is directly in the community's best interests.)


I have to say that I'm really proud of the way Acquia responded to these concerns, from , to , to Dries and . The leadership team at Acquia takes these concerns about community impact very seriously, and their willingness to engage in open and honest dialog with the community is one of the reasons I love working here.




Crowd-sourced competitive analysis One of the things that Acquia always has its eyes on is how Drupal fares relative to its competition, and also what we can do to beat them. :) A new group on groups.drupal.org was created called , to collect posts with in-depth analysis of how other competing products work, particularly where they out-shine Drupal, so we can compile a list of what modules or initiatives exist for making Drupal feature-equivalent.


There you can find a , as well as a pointer to for the Media module by . Feel free to add your own posts as well, and let's work together to make Drupal beat the pants off these other projects. :)




Engineering Week + Gardening Days I was fortunate to be able to attend Acquia's Engineering Week, when all of Acquia's engineering prowess gets into the same physical place to meet each other face-to-face, have key conversations, make progress on development, and of course have a crap-ton of fun! :D One of the itches I acquired this week was making our "Gardening Days" program (two days every sprint where engineers can work on giving back to either Drupal or Acquia) more effective, as well as more visible within both the company, and the larger community. Expect to hear more about that next quarter.




That's a wrap!

Join me next quarter, for yet another thrilling edition of "What on earth does webchick do with all of her time?" :P


°Õ²¹²µ²õ:Ìý
 •  0 comments  •  flag
Published on October 04, 2011 22:00

October 2, 2011

Using Git bisect to figure out when brokenness was introduced

I did a fresh installation of Drupal 8 this morning and came across a bit of ugliness: an ugly grey border on the home page, caused by an empty div being inserted into the page:


Default front page showing a mysterious empty, grey-bordered box


My last fresh install of Drupal 8 was about a week ago and didn't have this problem. I didn't relish the idea of going through since then one-by-one to figure out where this bug was introduced.


Enter the command! The bisect command works by performing a between one state of the code and the other in order to find, by process of elimination, where a given problem was introduced. It's quick, it's easy, and by golly it just works!


Here's how to use git bisect, step-by-step!


 •  0 comments  •  flag
Published on October 02, 2011 14:35

Angela Byron's Blog

Angela Byron
Angela Byron isn't a Å·±¦ÓéÀÖ Author (yet), but they do have a blog, so here are some recent posts imported from their feed.
Follow Angela Byron's blog with rss.