Archive

Author Archive

Google Chrome update

September 23rd, 2009 Eric No comments

I was pleasantly surprised yesterday when I noticed a subtle update to Google Chrome. The New Tab page got a makeover, adding dynamic customization capability. Other updates include faster javascript, a more informative Omnibox (i.e. the search/URL bar), and support for themes. From what I’ve noticed so far Chrome is noticeably snappier. While I like the original Chrome theme I also think Glossy Blue is quite attractive.

Google has more details about the update on the Chrome Blog

Google Calendar adds Sporting Events

September 8th, 2009 Eric No comments

Being a big college football fan I was excited to see Google Calendars add Sports Calendars.  You will probably see the standard Google new feature red text in the upper right-hand corner that looks like this: Sports Calendar New Feature

If you click on the link you will see an Interesting Calendars.  From here you will see a Sports tab which gives you a choice of half a dozen sports.  I chose to add the NCAA Football calendar.

Interesting Calendars > Sports

Categories: Technology Tags:

Call external functions in any XSLT context

September 4th, 2009 Eric No comments

Recently, I ran into a problem in an XSLT script that was preventing me from writing a file from within a template processing an attribute node. I am writing a script that takes a single XML file that references other XML files with relative paths as input (a DITA map file to be exact) and crawls the “file reference tree”, processing all files along the way. Since the majority of the files are XML this is a classic single input multiple output XSLT problem….for the most part. Some of the referenced files are graphics such as PNGs, JPGs, and GIFs. XSLT and XPath do not provide any capability to copy these file types so I chose to write an external Java class and call it from the XSLT script. XSLT purists might even say I shouldn’t be doing such a thing but I’m trying to accomplish this whole process with a single script to avoid having to track things in any intermediate XML. The simple Java class has one static method copyFile() that takes two arguments for the source location and destination location.

<xsl:stylesheet version="2.0"  ...
                         xmlns:cf="com.mypackage.CopyFile">
 
...
 
    <xsl:template match="@someattribute">
        <xsl:value-of select="cf:copyFile(string($src),string($dst))"/>
    </xsl:template>
 
...
 
</xsl:stylesheet>

The main issue with what I was doing centered around the fact that the template where I needed to perform the file write was in the XSLT context of an attribute. Saxon complained with the following error:

XTDE0410: An attribute node (audience) cannot be created after the children of the
containing element

I quickly realized that because I was using to run the custom function that I was doing something illegal in terms of what I was appending to the output tree. So I got tricky and wrapped the copyFile() call in an tag. To my surprise this actually worked. Since does not affect the output tree it allows you to do pretty much anything and continue the XSLT thread.

<xsl:message>
<xsl:value-of select="cf:copyFile(string($src),string($dst))"/>
</xsl:message>
Categories: Code, In The Trenches Tags:

5 tips for processing your RSS inbox to zero

July 29th, 2009 Eric No comments

Are you one of those people who feels compelled to read every story that comes through your RSS reader? Do you find yourself spending more time in Google Reader, Feedly, or some other RSS tool than you should.  It occurred to me recently that I might be able to apply the GTD concept of “processing to zero” to my RSS reader inbox.  So I thought I would share some of the initial ideas that I’ve been using for the past few weeks to mitigate wasted time and see if they reverberated with anyone else.

Since I have a full time job, I don’t have a lot of time to spend sifting through the barrage of RSS articles that come in on a daily basis.  I find it’s more information than I care to deal with on a daily basis.  Sometimes it seems downright futile to try and get the unread count to zero.  But I think that recognizing subtle differences between an email inbox and an RSS inbox might help better manage the amount of information you’re actually processing in full.

The RSS inbox: how is it different from an email inbox?

For starters, the more RSS feeds you subscribe to the more posts you will get.  So make sure that you’re subscribed to feeds that give relevant information for you.  If not, unsubscribe.  The type of sources you subscribe to can also affect the amount of information that lands in your RSS inbox.  Blogs or news sources can churn out magnitudes more content per day than a private blog with a single author.   Subscribing to too many of the high-volume feeds can fill up your RSS inbox very quickly.  So limit the number of high volume feeds to 1 or 2 if possible.  Let’s take a look at what we can do to process all of the information more efficiently

1. Determine your goal

The relevance of these methods depends on who you are and what you’re trying to get out of the information flowing into your RSS reader.  If you’re just casually trying to keep up to date with the latest technology trends or news then you may want to easy back on the throttle of a clockwork system like I’ve described.  However, if you’re a blogger or reading information relevant to your job you may want to take it very seriously so that you get a good return on your investment (i.e. that previous time we never have enough of).   If you’re in the first group then you may take these tips more lightly than if you’re in the second group.  Decide what type of RSS user you are.

2. Take it or leave it

For the sake of this article, let’s suppose you’re an average developer who uses an RSS reader.  There are probably more new posts coming into your RSS reader than your email inbox.  Chances are that a good chunk of the information flowing in has less bearing on your success from day to day as a developer.  So you could potentially ignore quite a bit of it and save your time for only the articles that you know will be of interest.  This means that you are not obligated to read everything. I know, this can be hard!  But just like GTD has a maximum of 2 minutes to process each task we should set a fixed amount of time per post or article.  30 seconds or less should be sufficient to read the title and the description or first few paragraphs to get an idea for whether or not the article meets our internal definition definition of “interesting” or “relevant”.  If it doesn’t pass, move on.

3. Set your limits

Now how do we process what we think is potentially relevant?  Give yourself a set amount of time per day to process through actionables. To keep yourself from falling into the black hole of reading articles all day use a timer or some reminder to let you know when time is up and move on to whatever else you do.  It may also be a good idea to schedule the time you process the same every day.  Put it on your calendar.  Whatever.  Just be consistent and you will reinforce the habit.

4. Process once per day

While you’re processing or reading through actionables more stuff is going to keep pouring in.  Avoid the temptation to try and keep up with the constant flow of information.  Process through your feeds one by one and once you’re done, stop.  Don’t go back and try to catch up on what happened in the last 3-5 minutes.  That’s what tomorrow is for.

5. Use keyboard shortcuts

I’m a big fan of keyboard shortcuts and use them whenever I can.  In fact, I’ve been known to choose applications based on whether they support keyboard shortcuts or not.  Find a reader that supports keyboard shortcuts and you’ll find you can process quicker and more efficiently.

As someone who practices GTD for email and other tasks daily (I try my best anyways), this type of system maps well onto RSS readers.  Others may think it’s overkill.  I’m still working it out myself but I’ve definitely noticed improvements in the last several months from staying within the guidelines I’ve described.  Do you find this system may be useful for you as well? Are already practicing a similar approach?  Or do you think it’s overkill?  Leave a comment and let me know what you think.

Related Posts:





Categories: Productivity Tags: ,

Color Scheme Designer

July 20th, 2009 Eric No comments

Lately I’ve been ramping my Web design skills back up in order to get a couple of websites up and running for my wife’s businesses. Color schemes are one thing that are not one of my stronger suites.  I always find it difficult to put together a group of colors that I’m happy with. There are plenty of free color pickers and even some color scheme tools.  However, none of them seem to be an all-encompassing tool that does it all.

That is, until I read a recent post over at devloung.net that mentions a tool called Color Scheme Designer.  This tool has it all from the rich, user-friendly interface (including super-helpful tooltips) to the example web pages that let you see your color scheme in action. Add to that the ability to enable different color models (e.g. mono, compliment, triad, and others) as well as “undo/redo” multiple times.  It even has “vision simulations” that let you test your scheme for different levels of color blindness.  I could waste hours playing with Color Scheme Designer!

Do you use any color tools that you can’t live without?



Categories: Tools Tags: , , ,