Looking at Google Analytics, It seems that people spend approximately 3.5 minutes per average on my web site, per visit. That's approximately enough time to read one article and perhaps leave a comment.
Is this 'average' behavior for a typical technology / gizmo blog, or am I not doing a good enough job at encouraging visitors to spend more time?
I think it's ok. Most people leave immediately and they bring the average down.
Just think of your typical behavior when you google for something: you visit a website for a few seconds then realize you are not interested so you go back immediately, and you keep going until you find what you're looking for.
Be aware that for sites with a large proportion of single-visit sessions (like blogs, where a user reads a single article), the time-on-site value can mislead. Google Analytics fires a single call each page load, and the time-on-page calculation is the difference between the page load timestamp and the subsequent page load. From this it is clear that the last page in a visit does not get a time-on-page assigned - and for single-page visits there is no accumlated time.
However, Google Analytics calculates time-on-site by dividing the total accumulated time by the number of visits (including bounce visits for which no time is accumulated), so the reported average time on site is lower than the actual time-on-site. If this is a problem, then there are a number of documented methods to track time-on-page by firing GA events after an elapsed time (I'd only suggest doing this for the first page on a session), or alternate analytics packages which automatically log while the page is open (check out ClickTale).
Google Analytics benchmarking tells you exactly how your site compares to a large group of other sites in terms of time on page, pages viewed, etc. Take a look on the menu bar on the left site for "Visitors"/"Benchmarking".