Writing

Before she decides

As each challenge in life appears and is confronted, we find ourselves on the other side of it, having either lost or been victorious. Lessons learned, bridges burned, badges earned... We recalibrate, set our compass to a new bearing, and keep moving on to whatever is next. In life and love, I hope and believe that each time we face a challenge, regardless of outcome, if we pay attention and respect the lessons offered, we come out stronger and more in tune with what we need and deserve in the long run.

Posted in: 

The story of the Drupal 7 core help update

This one's all Drupal folks, cause that's pretty much all I've done for the last two and a half weeks. This is what happened when I asked the question, "Is there some reason we don't just fix it all?" I did not know then what I was getting myself into...

A small inconsistency

It all started in late summer, when I was testing some Drupal 7 core patches for moving fields and image handling into core, and at some point clicked my way into the Help pages. There was a blatant typo on the Node module help, and then a change in language that needed to be made, so on August 1st, 2009 I created an issue for it.

Then someone posted a patch to update the text. And Emma Jane Hogbin posted another...and then she and I started talking on IRC about how it would be much better to have some more clear formatting that could be applied across the board, fans of consistency that we are.  And we went back and forth for a while making little improvements. Thanks to having learned how to apply and create patches several months back, I had just enough experience to make changes and roll new patches.

The patch was marked RTBC (reviewed and tested by the community). Yay! But wait... then Angie, who is the Drupal 7 core maintainer saw the issue (as she is the one who does final reviews of issues marked RTBC before they are committed to the core codebase). And she was like WHOA, this is a major change! A good change, but a major one, which would need to be applied across the board to all the core modules (and eventually all the contributed modules). She also made us aware that if we wanted to make such an overarching change that we would need to be able to prove a higher level of discussion and consensus on the issue and then complete the change in time for the string freeze deadline.

A much bigger task at hand

Various documentation team members went back and for for a while about whether the new standard would be supported, and kept updating the patch getting closer and closer to a format we were happy with. By now it was the end of October, and the patch was finally set back to RTBC. This is when it popped back up on Angie's radar, who was like (paraphrasing)... "So, you guys haven't really addressed the question of whether you are going to make a massive across the board change here." Oh, right, that.

A new patch was created that reverted the format updates, and just updated the text to match Drupal 7 functionality. There was nothing wrong with this patch, and it could have just been applied and nothing else said about it.

But I didn't feel right about it... So I thought to myself, is there an actual reason that we are not making this massive change? It's not exactly challenging, it's just a lot of grunt work. And at the end of it, we would have some much more helpful and readable help references for the core modules in Drupal 7 rather than the difficult to read and horribly out of date information that was currently on the help pages.

Accepting the challenge

I posted back on the issue and asked this very question, and said that I thought it was really important to improve the help. Jennifer Hodgdon, who was another initial supporter, started a thread on the Documentation team mailing list, and it turned out that people agreed on one thing: the help text sucked and we ought to fix it. Happy birthday to me, on November 13th, 18 days before the Drupal 7 string freeze deadline, we made the final decision to overhaul the help pages, and Jennifer posted the template for the change.

Since Jennifer is a more experienced member of the Documentation team, as well as a much more advanced programmer than me, she got us off on the right foot and lead the charge for the first half, with the agreement that when she was going to be away for most of the homestretch I would take over and steer the ship. We'd been working well together and I felt like I was competent enough (and had enough other support available) to take on this responsibility.

The standard was signed off on, and on November 20th (ten days to the deadline), a list of modules was posted so people could start signing up for which updates they would take on. And then the real work began. And oh my...was there a lot of it.

Nose to the grindstone

I had no idea starting this out how much there really was to do. I was only thinking about the template change. But there was also a major need to update the content of the text, and those changes had to be reviewed and tweaked, and reviewed and tweaked some more. And then some more... I learned more about Drupal, the contribution workflow, and writing docs in PHP in that week and a half, than probably in the previous six months. Slowly but surely, myself and the others who were helping out got into a groove, and started cranking out some great updated help text patches. I got a couple of hours of "fun hour" at work to work away at this, but otherwise it was all afterhours; it basically devoured my free-time for almost two weeks.

Maybe it was the timing with American Thanksgiving, or having Jennifer away (thank goodness she was back for about a day and a half before the deadline!), but we definitely lost some momentum after the first five or six days. Feeling a certain level of responsibility, I basically crammed like a crazyperson most evenings and all through the final weekend, reviewing and updating patches. Thankfully a couple other dedicated people stuck with it, tag teaming on patches and reviews. Yes, I totally burnt myself out, but with the help of those great people who stuck it out, we miraculously got all of the patches for the 39 help texts done (44 if you count the Field submodules), updated to Drupal 7 content-wise, reviewed until within an inch of their lives, and marked RTBC (many of them already committed) by the December 1st, 2009 deadline.

The result?

Here is an example of the old help text for the node module:

And here is the updated version:

It might not look like much, but particularly for new site admins, and even more so with some of the more complicated modules, this is going to provide a truly useful resource (rather than a slightly confusing bunch of text that mainly just forces people to click through to the handbook). It was one of those highly neglected and unloved parts of Drupal, and it makes me extremely happy that is got a little much-needed love. On top of that, the first one of my help patches that was committed was my FIRST CORE PATCH! In Drupal-land, this is a momentous event, and I was thrilled to see that two of the others who were helping out both had their first core patches shortly after me while working on this.

(For anyone interested, the help doc standard is here, the main thread for the issue is here and there are several more branched off of it, all tagged with d7help.)

What I learned

This can be summed up in three points.

  1. How much work really goes into Drupal. This was the most time I'd ever spent actually working on Drupal (core), not online documentation, not event organizing. I had done some patch reviews before, but this was the most concentrated amount of time spent in the issue queue, and on IRC, working away alongside all of the developers who have also been cramming for this deadline. Countless hours and energy by people around the world goes into making this an amazing open-source web platform. It's pretty mind-blowing to see how it all comes together.
  2. Technical skills. I can now roll patches in my sleep. The whole process of tracking issues, downloading and applying patches, reviewing and making changes, and posting updates is something I now am completely comfortable with. I also learned some basic PHP coding, and also some of the associated coding standards that the Drupal development community uses. Prior to this, I could at best cut and past PHP into the right place. Now I am beginning to cross the line from memorizing to actually understanding what I am looking at. That is a huge accomplishment for someone who three short years ago was finishing off a Masters in Health Geography, and looking at her first CSS code.
  3. A few determined people can make a big change. The crazy part of this was that despite having to gather a lot of feedback and get consensus on the change, it was really just a handful of dedicated people who made this come to fruition. Several people helped out with reviews, but I have to give extra-special props to the people who did the bulk of the work with me: Jennifer Hodgdon (aka. jhodgdon) from Poplarware, Lisa Rex (aka. lisarex) who is a Freelancer specializing in usability, and Boris Doesborg (aka. batigolix) who from what I could gather works at Erasmus Hogeschool in Brussels. Last but not least Drupal 7 core maintainer, Angie Byron (aka. webchick) from Lullabot, who by golly is one of the most patient and dedicated people I know. Angie fielded a ton of questions about module functionality and what should or shouldn't be included, as well as doing a ton of final reviews and giving great, useful feedback to everyone who was working on this. We never would have made it without her help, and it was great fun some of those late nights on IRC.

All in all, a great learning experience, a great result, and my goodness am I glad it's done (at least until issues start turning up for contrib modules)!

Posted in: 

The important things

Weeks like this are tests.  Tests of how much of a load I can bear before I break.  Tests of how much more I can take when I feel like I've long since had enough.  Weeks like this force me to focus on the important things in my life, and be grateful for them.

Three of my favourite people have been in town for a couple months (though it's hardly felt like that long), and are leaving in a week's time.  One returning home, and two continuing on their ongoing adventures.  It is strange caring so much for people whom when they leave, you have no idea when you'll see them again, only that you will.

going away dinner

When I realized it was going to be their last weekend in the city, I couldn't let it go uncelebrated, so I did what I do, which is catalyze.  I said who, what, when, where, and how, and next thing you know everyone is there, and everyone is smiling.  That is the important thing.

Earlier today I didn't think I would be at the dinner, because the last three days I haven't been feeling well.  Who knows why, either I ate something off, or it was a random flareup, what is the difference really?  I was lucky that work wasn't busy this week, and I had time to rest.  I have had a week and a half long bout of insomnia on top of it, reminiscent of my late teens/early 20s that I am not glad to be revisiting, I forgot how draining it is.  And yet, I made it to dinner.

going away dinner

I went home afterwards rather than continuing on with the evening, so that I would have a chance for a better day tomorrow.  Because even when surrounded by people I love, it is just me here at the end of the day, and I have to be able to rely on myself for tomorrow, and all the days after that.

I know it's disappointing for others when I go home early, I know because it's more disappointing for me.  I know I look okay and that it seems like I could stay out, but that is because I am tough, and I hide how bad I'm feeling, and I push myself as hard as I can when I care to, and I put all of the ick on hold for a bit so I can be where I want to be.  So I can do what I want to do.  I push myself hard so that I can feel like this doesn't control me, so that I feel like I am not missing out on everything I would do if this wasn't how things are.

For me, just being there for a bit was good.  It was enough.  Everyone was together and smiling, and then everyone went out and had more fun, and I came home to rest and that is okay.

going away dinner

Days like these, weeks like these, months like these, years like these, I focus on what is important, because that is all there is.

My favourite people in the world, catalyzing smiles, pretty flowers, pretty pictures, music, walks, a cozy bed, a roof over my head, hugs, sunshine, the ocean, compassion, comfort, empathy, love, and being alive.  Those are my important things.  What are yours?

But then I sit down, put some of my thoughts to words
The very second after the thought occurs
And it gives me a second to rest
Relieves what seems to be an insurmountable amount of stress
Piling up at the same rate I shovel it out
Treading water in this world I know nothing about
But never doubt who I am or sell myself short
Of what I'm capable of long as I'm doing what I love
I'll manage, is what I've been taught to my advantage
People trying to bring me down, but they ain't doing no damage
I got my forcefield up with my pen and a pad
Living out each day like it's the best that I've had
And everybody has their reasons
To keep on holding, to keep on believing
And everybody gets the feeling that they really
Could keep on holding on

- DNA6

I been thinking about…

No, not my doorbell and when you're gonna ring it.  I've been thinking about forgiveness.  I've been told that I forgive people too easily.  Usually it's not really framed as a compliment, but more surprise or questioned.  And it's true, I do forgive people easily...especially for the smaller offenses.

Posted in: 

A life lived in increments

Two shoves forward
one fall
back

When will I be afforded
more
than a moment to heal

Body, mind, spirit
divided

Each step wobbly
each breath short

Each night I lay down
unsure
what strength will tomorrow give

Or take

Determined not to lean too hard
on any strength
offered

Ready to fall
over and over

Reminding myself
I will survive

If only
I can keep a single vow
to myself

Posted in: 

Pages

Subscribe to RSS - Writing