Hey, I just finished my 2006 summer project! When I joined NMC, I projected having a public version of a new web site ready by September.
I lied. Or grossly underestimated. Or lied.
But this morning we flipped the switch and lit up the tree. I could blog about all details of this process (and should have) but that might take me another year. And I’d rather get some work done. But in a snapshot, and some more bits to be written up in subsequent days/weeks/months/whenever…
The project was taking a pure static, 1999 vintage site, with is clear gif spacers, tables, but basic style sheets to something “2.0”ish. The old site was quite consistent in design, a credit to the non web developer staff who carried out the design for the last 5 years by replication. But it suffered from the pigeon holes of its fixed navigation set, had text a bit squint worthy in size, and did not take advantage of the full screen real estate. And it was a pile of hand coded html. A big pile.
So the new site is powered by drupal. Now as I know folks are already reaching for the comment buttons with, “Why did you choose that and not XXXX?”, or “Yuck, I hate drupal”, I’ll give a simple reason, a rule that has never failed me in the last 5 years.
I copied D’Arcy.
That was a joke,
Sort of. No, I did not conduct exhaustive research of every CMS out there, be it Joomla, Expression Engine, Smooch (I made that one up), etc. But form my reading of D’Arcy, looking at the rabid developer community of drupal, looking at some possible comparable sites like Academic Commons, and knowing we needed something that would be open-source, flexible, user centered, and highly extensible, I felt fairly confident drupal could do the job. It’s not to say another tool might have done it was well, or better, but at some point, you just need to reach in the box, grab a tool, and get to work. Otherwise, you just are hanging around the hardware store debating drill press torque.
Oh, and one more reason — IBM was pretty positive on drupal as well.
But over the summer, as we gathered some requirement, just trying to conceptualize the site, structure, and trying to get my head wrapped around the drupal way, I was facing this immense mountain — how long would it take me to learn drupal from the ground up? I feel very confident in my skills to make WordPress do whatever it takes, but this was a whole new enchilada. A big, sprawling one.
And finally, someone wiser than me suggested (and funded) a better idea… hire someone who can do the back end programming and module juggling, so I could focus on content, form, and function. Thanks to a referral from Mike Roy, we hired the folks at the Longsight Group, who have been fantastic, especially was we wavered in a few false starts on design and organization, and ended up adding to the site in an accretion mode.
So in the end, I have not learned drupal inside out; I have found my way to wrangle taxonomies, to do a lot with views and blocks, to do some custom tweaking to small bits of code.. .but I still just do not understand the full drupal mindset. There are just so many ways to do things, and it just does not compartmentalize anything. And it is a completely different way to organize and structure information.
So that was a whole pile of pre-amble, and I did not even follow my own law of “Start with the %#^#ing Demo!”
So for starters, we have NMC 1.0, and my design and the outcome was that we would not break a single previously established URL. This is a trick since drupal dynamically grabs all incoming URLS to parse them to its own content. Our approach was to move all of the old content to a new virtual domain, and use Apache redirects to make sure all requests to the old www.nmc.org site get auto directed to the what is now the arrchive, at http://archive.nmc.org/
With a side benefit in that if someone really hates what I have done, they can go back to the old and familiar. A few other sites got moved as well to virtual domains, like the NMC Campus Observer, the Campus Observer Wiki, the Horizon wiki, and another domain for active content not tied to drupal. Setting up and shuffling domains, redirects, was a few days effort, some of which was due to my own flubbery. A few server side symbolic links connected the pieces as well. Fortunately, moving a MediaWiki side turned out to be fairly simple (once I remembered I had a hard coded server path for my RSS extension).
So drum roll,,, here is the new NMC 2.0
The front page manages a 4 column look- we pushed beyond the 800px window width (might be an issue for some older PCs, but that limit is pretty dated). Everything in columns 2,3,4 are dynamic content pushed from within. I had a lot more on there at first, but we got pressure to keep the fornt cleaner, and aimed to get most of it “above the fold”.
One of the big steps was migrating our existing user and organization database from FileMaker to drupal, with a lot of steps in between to massage the data for several hundred organizations and maybe some 2000 user accounts. Our plan is to make this our primary organization’s database, and be able to do some administrative reports and activities behind the scenes. One idea I had early, once finding there was a module to do so, was to add to each member organization a field for latitude and longitude, in the hopes we could do a Google Map. This was actually stimulated on my first NMC trip to Austin last year, where the walls of the office has a real map, with real colored push pins, of where our members are.
The data part was not too bad- we had mailing addresses, and the data was exported as tab delimited so I could run it through a batch geocoder, which worked like a champ. I had about 5% of them I had to manually check, some due to lack of real street addresses (for some academic departments), and for many of the international sites. Maporama was very useful for the latter. So now we have a real member map, it generates dynamically every time, so there is some lag in getting the locations form the database:
The GMap module is pretty raw it seems, and I am hoping soon we can color code the pins, and provide a bit more info in the pop up button.
This is just the beginning. I have about 10-12 custom content types, some 2 pages of different views for blocks and what not. We have mst of our content open, but a few members only pieces like being able to see a full profile, a searchable directory, some member discussion forums, and a member job board. We have user tagging. We have favorites. We have links to chat tools via the who’s online listing.
Oh, all accounts for using the site require affiliation with an NMC member organization— but really, about 95% of the site is wide open.
The main shift for the site is away from our office being responsible for posting content and creating member accounts, and even beyond that, making it so any of our staff can update a web page, or make a change in the organization database.
I’ll try to write a few more segments on our approach here, but I have to go tend to some quick needed changes, arrange a few Second Life events, and yes, I am an hour late to eat lunch!
Just glad this puppy is out the door, and now it is time to see if it limps or runs.