Katherine Lynch dot org
Blog
contact
resume
decorative icon of a mug saying 'i heart design'

"People ignore design that ignores people." - Frank Chimero

Follow me on Twitter, handle @katelynch Subscribe via RSS

DrupalCamp Chicago slides posted


My presentation materials for "Theming Views" and "Thich, Rich, and Accessible" (accessible rich media) presentations from DrupalCamp Chicago, June 2010, are available here:

See my Presentations and Posters section for the full listing of my presentations.

My Drupal Voices interview, and some other recommendations


So Lullabot has these awesome podcasts that they do with various awesome people in the world of Drupal development.  When I was at DrupalCon San Francisco last month, I was interviewed about my accessibility presentation and my work at Drexel for one.  Here it is:

Some other really cool podcast interviews from DCSF that I highly recommend:

Enjoy!

Drupalcon Presentation slides


Wrapping up a great, productive DrupalCon San Francisco 2010!  I've created a page with slides and video for my accessibility presentation here:

Libraries presentation slides/materials to come. <smiley>

My Top 25 Most-Played Songs


As a matter of curiousity, I took a look at my iTunes "Top 25 Most Played" playlist.  I've had the same iTunes library for about a year, so the dataset is pretty comprehensive, with the most played song at 69 full rotations, and #25 coming in with 37 plays.  However, the list is kind of...unbelievable.  Bear in mind, I most often listen to iTunes when I'm coding. 

By the way, I issue a challenge to anyone else out there to go into their music player, find their top 25 most played songs, and post their list on their own site/blog and/or Facebook, no matter how embarrassing.  :)  May you learn as much about yourself as I did about myself. :)  Plus I just listened to My Hero for what is the 43rd time on this player.

Here's the spread:

(most-played at the top)

Integrate IMCE with FCKEditor in Drupal


So you know how Wordpress comes with that slick little TinyMCE-based rich text editor built in when you install?  A lot of clients like that, particularly those who do not know any HTML.  The fact that Drupal 6 does not ship with a rich text editor installed in the back end frightens some users, with that big empty "Body:" box and not a single tool to be found.  But they shouldn't be afraid, as there are plenty (PLENTY) of ways to create content for Drupal sites without knowing so much as a tag of HTML.  For this article, we'll focus on rich text editors for the body, particularly FCKEditor.

FCKEditor has been popular for years, and just a few months ago was replaced with CKEditor (a supposedly less suggestive name).  I like CKEditor a lot so far.  It claims full accessibility support as an editing tool (though notably, it claims standards compliance with Section 508 and WCAG 1.0, not 2.0).  I can't verify 100% but I can say that, from what I have tested, it is so far, so accessible.  I liked FCKEditor over TinyMCE for the last few years because it inherently encouraged accessible markup a bit more than TinyMCE.  For instance, data table scoping was way easier in general, with FCKEditor.  Other things like headers and lists came at least as naturally as with any other editor.  

I've had a fair number of Drupal 6 clients who like FCKEditor and want to keep it installed for the time being, so I generally use the actual Drupal FCKEditor module for the job, for the reasons outlined above, plus client preference.  It should be noted, however, that a completely stable release of the Drupal CKEditor module is available now and is continuing to be updated/improved for Drupal 6.  Give it a try, you'll like it! (Hey Mikey!)

Now one thing that end user admins tend to want is an ability, similar to that within Wordpress, to upload local images into their content.  With Wordpress's built-in media library, the user clicks the little "add an image to your media library" icon, browses their local files and selects what they want, uploads it, fills out the information, and boom, image-riddled blog post.  It's quite easy to replicate this accepted workflow in Drupal 6.  And here it is:

My new look, and DrupalCon SF


Finally got around to finishing up and launching my new custom Drupal theme for this site.  It's based on Garland instead of Zen, which is a bit unlike me, but I like the end result.  Expect a few progressive enhancements in the weeks to come, particularly where icons are concerned.

In very exciting news, I will be speaking at DrupalCon San Francisco 2010 in April!  Two of my session proposals, "Accessibility in Drupal 6 and Drupal 7: Write accessible modules and themes", and "Shh! This is a (Drupal-powered) Library Site! with Amy Qualls-McClure and Tammy Allgood" will be a part of the jam-packed, super-exciting schedule.  If you're going to DrupalCon, definitely try out the schedule maker, and set up a custom conference schedule for yourself.  It's the only way I'm going to be able to catch all the awesomeness as it goes flying by.  And if you're going, be sure to come say hi!

My/our session details are as follows:

Tabindex on the Mac


Tabindex can be a very helpful attribute when coding a complexly-structured web form or page for accessibility.  It basically tells a page the order in which elements should be highlighted when the tab key is used.  Remember, lots of assistive technologies use the tab input. 

While coding, I stumbled across this little nugget that I thought I'd share here, thanks to Edward Bilodeau (same guy, new blog).

How to get Firefox/Mac to recognize tab index

I just spent the better part of an hour trying to 
get tabindex to work under Firefox/Mac OS X.  
The solution lies not in Firefox, but in the Mac 
OS X preferences.

Apple Menu > System Preferences > 
Keyboard and Mouse > Keyboard Shortcuts and 
under "Full Keyboard Access" choose "All controls".

Sweet lord....

Link to original

Without this enabled, every page in your browser becomes a keyboard trap.  Very frustrating.  Thanks, Edward!

ATIA Chicago 2009


image of a sign at ATIA Chicago, showing the schedule in text and in Braille

I attended and spoke at the Assistive Technology Industry Association (ATIA Chicago) conference last month.  The conference was focused on educating attendees about assistive technologies and their uses in the world today.  Another particular focus of the conference was creating information that remains usable and accessible by users with assistive technologies.  I attended several sessions and spent a good deal of time discussing on the exhibition floor.  Here are some of the highlights.

W00t this looks fantastic!


Game-Day pierogi pizza from Food2.com...looks awesomely incredible.  Extra points if you make your own pierogi though...hehe...

Exclude pages in Wordpress 2.8 search


In Wordpress, it's always been easy to throw a search box into your blog's theme that searches across your blog:

<form id="searchform" method="get" action="<?php bloginfo('home'); ?>">
<input type="text" name="s" id="s" size="15" />
<input type="submit" value="<?php _e('Search'); ?>" />
</form> 

It used to be the case that the search function would harvest all of the information--tags, categories, content--of posts, but only of posts.  In other words, pages were excludable from the search.  However, as more users take on Wordpress for more projects, pages have begun to get used in more ways, an so the fine people at Wordpress went ahead and included pages in the site search functionality.  So in Wordpress 2.8, if you conduct a search, you get page entries too.

There are some good plugins out there to limit searching, but a generally easy and foolproof way to manipulate search in Wordpress 2.8 is to do this.

Create a search results template in your theme by creating a file called search.php.

In search.php, you'd generally have something like this:

<?php if (have_posts()) : ?>

<h2>Search Results</h2>
<?php while (have_posts()) : the_post(); ?>
<?php /* your post formatting code in here */ ?>
<?php endwhile; ?>
<?php else : ?>
<h2>No posts found. Try a different search?</h2>
<?php endif; ?>