Tag Archives: drupal

Weekend hacking… much progress

This was one of the most productive weekends of hacking that I’ve had in a long time. I finally managed to get all my fixes for the drupal epublish module upstream. And, as a bonus, I wrote a first pass at exporting the data via views because I needed that in order to make the Featured Veggie block on the PFP website work. I’m actually hoping this is going to turn into an epublish 1.6 release before the end of the month.

On the PFP site I completed the last few things I committed to as part of the winter feature additions. This now means that instead of featured programs on the front page, we’ve got features, promoting columns from our upcoming (or just released) newsletter. I also managed to pull of a bit of a back flip and via the afore mentioned epublish views, figure out what veggie was most recently highlighted in a newsletter. Thus creating the featured veggie box.

The mid-hudson astro site saw a bit of work as well. My lending module is now pretty robust, and ready for review to become an official drupal module. Hopefully it will get some testing over the next month and we can have start transitioning to it come April.

And lastly, I managed to connect up with some of the NY State Senate developers working open government initiatives. Hopefully we can get one of them to come down and give a lecture at MHVLUG, as I think a local talk on open government would be really spectacular.

Drupal Hacking

My typical morning blog writing time has gotten taken over by morning code writing recently, which I’m quite happy about, as I’ve been making very reasonable progress on a new drupal module: lending. This is still in the sandbox as I’m still in the project approval queue, but you are welcome to check out the code if interested.

The basic idea is an informal lending library designed to support the astronomy club. We at the club have a lot of DVDs and other things that club membership gives you access to. Up until now this was handled with index cards and crates. Someone suggested that we have a way to request items to lend so the full set of crates doesn’t have to be dragged around by our librarian at every meeting.

Most of the drupal modules in this space were really about reservations, and were really more complicated than I thought I could get people to consistently use. So I broke down and started building the module to just meet our needs. Some time spent with Pro Drupal and the drupal website, got me most of the way there. My hope is to have the 1.0 version of this out for next Tuesday’s astronomy meeting.

Once the project is official approved, I’ll throw up some screenshots to show the walk throughs of using it. Now, back to hacking in emacs.

Weekend Drupaling

I had a quite productive weekend working on the Poughkeepsie Farm Project site, and learned a lot of useful things about Drupal in the process.

Content Profiles

I now understand why core profiles are going away in Drupal 7, because they really do suck. All the flexibility and features that you get used to with custom content types and views go away when you are working on profiles. This became an issue as we were trying to create a Board of Directors page that was built dynamically from user accounts, and actually wanted to expose a draggable view to let people order lists of users manual (alphabetic sort wasn’t quite what we were looking for). I managed to convert over to content profiles, and life got a lot better. The results are here.

Epublish

This weekend we pushed out the first newsletter in the new format using the epublish module. I’ve been working with Susan (executive director) and Jane (newsletter editor) for the last month to get this right. There is a lot of initial investment here on all sides as I had to make a few code changes to get this to work well for us, and a lot of theming. It’s especially tricky as we’re trying to make an HTML email look basically just like the page people see, even though they go through entirely different templates and theme paths, and html support in email clients is far less intelligent than in browsers.

I also managed to collect and submit my patches upstream, so I feel like a good little open source citizen there.

Recipes

Recipes submission and indexing are now live on the site, using the really well put together recipe module. I had to build a slightly clever hack to list relevant recipes from the produce pages. I’m still trying to figure out the best way to get epublish and recipes to play nicely together, because right now they don’t. They both do slightly funny hacking with the body field and what’s in it, which is going to require patching one or both to get the display we want.

Events

The events infrastructure on the site is now using a local calendar instead of just loading from Google Calendar. This lets us have a google calendar compatible feed. As well as having our event links go to content in our site instead of loosing the user on a Google Calendar page. There are still a few kinks to work out here, but overall this is going pretty well.

All of these have been in the works for the bulk of January, and it’s great to get this stuff coming to fruition. Looking forward to how these are received by the membership. Now I’ve just got to make a few front page changes and we’ve got to pull together the volunteer opportunity database, and the main backend work for the 2011 season will be accomplished.

Drupal Camp Western Mass

When your alarm goes off at 5:30am to go to a conference, part of you wants to skip and go back to bed. When it also means you’ve got to drive 2 1/2 hours in below zero conditions, there is even more inertia to just bail. I’m really happy I fought those primal urges and made it to Drupal Camp Western Mass yesterday, because it was pretty awesome.

Over the course of the day, given the 5 tracks that were being run, I could always find a really good talk. At one point it meant walking out of a bad talk, but I landed somewhere good eventually. I learned quite a bit more about some of the core of drupal, and hit up some of the more design oriented talks, which has given me a new reading list. There were 300 attendees there yesterday, which is a heck of showing for such grass roots organized conference far from a big city. It was also nice to be at a tech conference that wasn’t just a bunch of male geeks. At least a third of the audience was female.

I’ve got about 8 pages of notes, and a new bag of tricks to approach some of the more complex things we’d like to do for the Poughkeepsie Farm Project. I hope they run it again next year, as it’s definitely worth the drive and the time.

Drupal Talk Roundup

A couple weeks ago I gave the first MHVLUG talk of the year on the work I’ve done with Drupal for the Poughkeepsie Farm Project, Mid-Hudson Astronomical Association, and MHVLUG. I think it went well, but it’s sometimes hard to tell, especially because I’ve been trying out some new approaches on talks, so feedback comes in different ways.

When I was building the Android presentation for CPOSC, I realized I was building a generic Android tutorial, and I stopped myself. Why would anyone want to hear me give that presentation? You can get that all over the internets, on the youtubes and vimeos of the world. So, I thought long and hard about what I could uniquely bring to the table. The answer was pretty simple, talk about the things that I racked my brain on, in the context that I ran into them when building my application.

This drupal talk was much the same. Two days before the talk, while doing a dry run at home, I realized that I had a tutorial that was better covered by the internets. So, I started over, and edited heavily, and managed to produce a personal narrative of working with the PFP that showed the nuts and bolts of Drupal along the way. It was a much better presentation. It also made it easier to put a call for action in the presentation, for people to get involved with local non profits.

Because this was a narrative, and not a tutorial, the audience interaction is very different. People stop and ask clarification during a tutorial, but questions during a story are often considered rude. This led to a very distinct boundary between talk, running just about an hour, and questions, which carried for 30 minutes after that. Without questions during the talk, it’s a little harder to tell if people are engaged. I do have a vivid image in my head of looking out out on the audience and even the laptop folks were all eyes up and watching, so I think I succeeded there. The 30 minutes of questions, coming from at least 8 different people, helped reinforce that.

I also made a few mechanical changes to the presentation in Open Office, which others might find interesting. I’ve moved to using Fade Smoothly (Fast) for slide transitions, and Fade In (Fast) for element animation. Getting rid of the hard appear makes the whole thing feel more fluid, and as long as it’s fast, it doesn’t get in the way.

I also realized that when you put up a slide you feel like it should get your time, but sometimes there is nothing really to add. I had a brief walk through of drupal installation. During dry run I realized I spent way too much time talking about slides with relatively little talk worthly content. To keep myself honest during the talk I made those slides automatically advance after 5 or 10 seconds (depending on complexity). That meant I got all of that on screen, but capped it to 40 seconds, and didn’t find myself saying something like “what more can I say about this slide”.

Overall I think things went quite well, and am now looking forward to the ACM talk tomorrow night.

Upcoming Talk: Building a Community Site with Drupal

On Wednedsay, January 5th, I’ll be giving the MHVLUG lecture on Drupal.  It’s been two years since I started poking at Drupal in order to overall the Poughkeepsie Farm Project website, and this talk is largely going to be about that experience, and some of the basic lessons I’ve learned along the way.  While there will be plenty of technical bits, covering basics of getting deep enough into a drupal project to make it interesting, there is also another interesting story about getting involved with non profits.

The talk is coming along nicely, and I’m quite excited for giving it next week.

New MHAA Website

Over the past few weeks I’ve been redoing the Mid Hudson Astronomical Association website.  It looks like this:

Yes, it’s dark, but that’s when astronomy happens.  The site is built on Drupal, as I’ve gotten some experience there recently doing sites for the Poughkeepsie Farm Project and MHVLUG.  For people that want to know more about the tech side, I’ll be giving a talk in January at MHVLUG.

I did come across one really odd thing in working on the three boxes (I was calling them chicklets, but they look less like that with content in them). Round corners in CSS are awesome (thank you w3c). IE9, at least the version in Adobe Browser labs, still doesn’t support it (really Microsoft? I thought you were getting down with the standards). While a TD can have a round background, it’s border is always square (I almost understand why, but it definitely limits what you can do. It also took me a while to realize this was happening as the round is subtle enough on the front page). Div height 100% doesn’t work inside a TD (it seems like it should, but no one implemented it that way).

So the only way to get 3 columns that correctly degrade to 2 columns (50% of screen each) when one is missing (there will not always be a special event), have round borders, and be the same height is…. jquery. While on the one hand, it seems crazy, on the other hand, yay for jquery. You can view the source on the website to see how I did it.