General

Ergonomic product: computer desk for use with couch, recliner, etc.

Bringing home a desktop computer for working remotely doesn't require a desk, as long as you have an LCD monitor:

 http://www.airdesks.com/computer_desk.asp

I bought the basic air desk for my laptop a few years ago and moved my "office" to the living room -- fabulous convenience and comfort, and I'll never go back!

The Power of Peer-to-Peer Persuasion

Okay people, let's not underestimate the power of personal communication, especially that which comes from individuals that you respect. I was recently persuaded today to "get blogging or else" (okay, I mentally added the 'or else' part, but I could feel the threat between the lines. Some negative interaction with a baseball bat or other blunt instrument might have been in my near future if I hadn't heeded the advice and posted this). So, as with donations, membership, getting timesheets in (remember the power of the tag team duo in Office Space asking Peter where his TPS reports were?), and everything else, it is a lot more effective to get someone that you already know to get you over the inertia hump and into the land of action. Why is it key to keep this in mind? We need to make sure that we are always conscious of the fact that we, humans, are normally lazy and in a state of inertia and maintenance mode by default and rarely want to take the effort to learn something new, change, modify, and let's face it--evolve.

Useful AJAX windows widgets

Here are a few great AJAX examples that can easily take the place of popup windows.

GreyBox

ThickBox

LeightBox

All are based off the original LightBox technique

Top innovations of 2006 -- An article in Business Week

This week BW has provided very good presentation slides on innovation articles -- top innovation companies -- Very informative.

http://www.businessweek.com/magazine/toc/06_17/B39810617innovation.htm

Good Ajax Tutorial

ASI Asia-Pacific podcasts

As part of the ASI Asia-Pacific "SMART Company" initiatives for 2006, I am recording a regular podcast on topics related to achieving our goals for the year. I have posted 6 episodes so far. You can download the podcasts or subcribe via iTunes by following the instructions here.

Notes from the "e-Knowledge Manifesto"

Predictions gleaned from A Manifesto for the e-Knowledge Industry (shared by Don):

  • Content will be increasingly digitized/tagged, unbundled, and shared
  • User sophistication and appetite for knowledge will only grow
  • Interactivity will drive learning
  • New models of publishing must emerge
  • New economics of learning must emerge (all of the traditional constraints have changed wildly)
  • First e-learning will merely digitize existing offerings, but process will change profoundly as costs plummet
  • Organizational/corporate job learning must become adaptive and continuous
  • As knowledge is managed/shared, staff effectiveness will outpace the importance of merely "knowing"
  • True, international standards must emerge for digital content to support interoperability and scalability
  • Knowledge sharing will occur within open but secure (how?) enterprise infrastructures
  • Knowledge sharing will create horizontal markets for collecting/distributing content
  • Knowledge management will fuse with organizational learning strategy (absolutely!)
  • Power users will be those who master the new knowledge environment
  • Mobile/wireless networking create ubiquitous knowledge environments as well as ubiquitous commerce
  • Integration will increasingly knit together CRM, ERP, portals, LMS, CMS, and KM
  • Expert systems will grow into expert networks
  • New understanding of knowledge processing will drive CM changes
  • Financial benefits from interoperability will fund continued investment in international deployment

 

Simple multiple thread timer

Sometimes you want to record the total duration of a method across threads like a profiler does. This simple class uses a timer per thread to tally time spent per thread and total it up on stop. It also uses weak references to allow shared objects to be collected.

http://www.bluebytesoftware.com/blog/PermaLink.aspx?guid=63efeb75-5e01-4...

complete validation of email addresses

An email address like joeuser@anywhere.com follows the syntax rules for an address. Simple string checking can confirm that the address includes an @ sign, a period, and no spaces, but it doesn't confirm that it's an address where email can actually be received. iMIS currently does simple string checking on email addresses; I'm posting this to keep track of some additional information, in case there's a request for an email validation feature/module someday. Here are a couple of component vendors that do full-up checking (syntax rules, DNS, and SMTP). The first link has a lot of information, including examples of strange-but-valid email addresses. Note that embedded spaces are technically correct, but in research for the Medina release, we found that some email providers don't accept addresses containing them, and so iMIS doesn't allow embedded spaces for Medina -- disallowing embedded spaces in email addresses was a requirement for Medina. http://www.hexillion.com/hg/asp-email-verification-component/ http://www.deskshare.com/sev_pricing.aspx Here's the original ARPANet email standard from 1982: http://www.faqs.org/rfcs/rfc822.html

chili recipe

This makes enough chili to fill two large crock pots, but you can scale it down.

Start with 12 lbs. beef brisket. I call the butcher shop at HEB and ask them to trim all the fat and cut the meat into 1" chunks.

Cook the meat in a large pan (I use a big stockpot) with a little oil at medium-high heat until it's brown all over. You may want to do it in two batches to make it easier. Once it's cooked, reduce the heat to low, and add 4-6 bottles of beer (I used 4 bottles of Shiner Bock for the last batch). How much beer you use depends on how much juice comes from the meat, but I try to end up with about 8 quarts total for this recipe. While the meat cooks, measure all the spices into a separate bowl. When the meat's cooked, stir in the spices: