Wednesday, January 30, 2008
Thank you, Ken
Wow - I read some very sad news this morning: the great Ken Henderson passed away this past Sunday. Ken Henderson was the author of the famous "The Guru's Guide" series and honestly, if it wasn't Ken's insights and his ability to "simplify the complicated", I would not have had such a rewarding career. Ken was truly an inspiration for me and the world will definitely not be a better place without him. I never was fortunate enough to meet Ken in person but he sure came across as a nice person in his blog and his books.
Looks like the news outlets are slow to pick this up as well - Google News only has one article as of this writing (http://news.google.com/news?q=%22ken+henderson%22) - although the blogging world is mourning his loss.
Thank you, Ken.
Monday, January 14, 2008
I'm Using a New CAPTCHA Engine
I've been using Captcha Control by Jeff Atwood (the brilliant mind behind from CodingHorror.com) for a little over a year now on my sites and I've been very happy with it. In case you don't know what a captcha is, a captcha is an acronym (often seen CAPTCHA) which stands for "Completely Automated Public Turing test to tell Computers and Humans Apart". People like me use captchas on signup/etc pages to stop automated scripts/bots from submitting information (such as spam on a forum).
Like I said, I've used Jeff Atwood's freely available Captcha Control (get it here) for a while here on our sites and been happy with it. It is solvable so it isn't 100% foolproof (judging by the automated signups I get) but it probably stops 99.9% of the spam. But it has one recognized problem - if you are visually impaired, it stops you more effectively than it does the spammers. Yikes - not what I wanted :( You see, Captcha Control doesn't feature an audio-only version of the captcha; if you can't read the already-hard-to-read letters, you can't register (or, in my case, download a free video since I use captchas to protect our bandwidth). I've gotten a few comments/emails/phone calls in the past month from people who wanted to download a free video but they were unable to solve the captcha and thus weren't able to download. So I began the hunt for a new captcha engine.
First question I had to solve is the, "Is it better to buy/use third party or build it myself?" Easy - buy. Building and maintaining a captcha engine is tough and requires insane algorithm knowledge - I had no intention of building. Next question - who to use? I ultimately settled on reCAPTCHA (get it here) which is FREE, thus making it quite attractive :)
What I like about reCAPTCHA (other than the cost) is that it is sooooooo easy to use both as a developer and as a user. It has tougher-than-average captchas to solve, it features audio captchas, and lastly it is a community effort - solving captchas with reCAPTCHA actually goes to a good cause. From their website:
About 60 million CAPTCHAs are solved by humans around the world every day. In each case, roughly ten seconds of human time are being spent. Individually, that's not a lot of time, but in aggregate these little puzzles consume more than 150,000 hours of work each day. What if we could make positive use of this human effort? reCAPTCHA does exactly that by channeling the effort spent solving CAPTCHAs online into "reading" books...
... how does the system know the correct answer to the puzzle? Here's how: Each new word that cannot be read correctly by OCR is given to a user in conjunction with another word for which the answer is already known. The user is then asked to read both words. If they solve the one for which the answer is known, the system assumes their answer is correct for the new one. The system then gives the new image to a number of other people to determine, with higher confidence, whether the original answer was correct.
Very cool - we all want to help out, right?
Tomorrow I'll record a series of videos on how to add captchas - both Jeff Atwood's control and reCAPTCHA - to your ASP.NET applications but, in case anyone is paying attention, I wanted to give you a heads-up and let you play with the captchas on the sites. If you want to try them out, just append "/FreeVideos/" onto the end of any of our domain names like this:
* http://www.learnsqlserver.com/FreeVideos/
* http://www.learnsharepoint.com/FreeVideos/
* http://www.learnexchange.com/FreeVideos/
* etc....
Let me know how you like it by dropping me a line through our Contact Us page here!
Friday, January 11, 2008
What? FeedDemon is now FREE!
If you've watched my videos and/or read some of my other posts, you'll likely remember that I'm an RSS junkie - can't live without it. My feed reader of choice is Newsgator's FeedDemon - and they just announced that it is now FREE. I paid about $30 for it 3-4 years ago (back when Nick Bradbury was sole owner) and it was money well spent. Now that it's free, I hope more folks will learn of the goodness that is RSS :)
Download it here - http://nick.typepad.com/blog/2008/01/free-demon-yes.html
Here's a few of my favorite feeds to get you started:
General Tech:
SQL Based
- Bob Beauchamin's blog
- Kalen Delaney's blog
- Ken Henderson's blog
- Adam Machanic's blog
- Jamie Thompson's SSIS blog
.NET Based
- Roy Osherove's blog
- Jesse Ezell's blog
- Jon Galloway's blog
- CodingHorror
- Scott Mitchell's blog
- Scott Guthrie's blog
- Scott Hanselman's Computer Zen
Here's How I "Do" RSS
RSS, to me, is a lot like data mining - unless you have a lot of data to work with, it's not that useful. What I like to do is to collect tons and tons of feeds (organized into categories) and I have FeedDemon set to update all of my feeds every 5-10 minutes. I have about 1,600 feeds right now in my OPML file that I am monitoring every 5-10 minutes - yikes! That means that, every time any one of the 1,600 feeds posts a new entry, FeedDemon downloads it and I can view it inside FeedDemon - without having to go to that website.
But that's too much info to be useful, isn't it?
Yes. Sometimes I forget to open FeedDemon and, if it goes 2-3 days without launching, I'll have 1,500-2,000 new articles to read. Forget that - you'll never care about or read 1,500-2,000 articles 2-3 days.
So what do you do?
Watches Are the Key to Using FeedDemon Effectively (IMO)
Here's what I do:
- I go collect a ton of RSS feeds about a particular topic (Audio Visual - TVs and Stereos, for example)
- Create a watch that looks for certain keywords
- Sharp Aquos
- 1080p
- free dvd
- Sync the feeds every 10 minutes
- Configure FeedDemon to notify me via a popup whenever someone has been added to the watch
The better your watches, the better you'll enjoy FeedDemon. The more feeds you have, the more you'll likely enjoy FeedDemon. One word of caution: some sites are duplicates and post duplicate stories. This can lead to duplicates showing up in your watches. So look for that and prune your feed list periodically.
Go download FeedDemon and get started with it - it's awesome!
http://nick.typepad.com/blog/2008/01/free-demon-yes.html
Thursday, January 10, 2008
VISTA SP1 with SQL Server Integration Services and Office Interop Problems?
| So, in an effort to improve my Vista experience, I downloaded the RC1 for Vista Service Pack 1 and installed it (in less than two hours). However, now all of my Microsoft.Office.Interop DLLs that referenced in my SSIS packages are no longer "visible" by SSIS :( That's right - installing Vista SP1 somehow made a change that made it difficult (if not impossible - problem is still not solved) to use the primary interop assemblies in Vista with SSIS. Believe me - it worked before installing Vista SP1 RC1 but it doesn't work after. When I go into the SSIS Script Designer, it shows me that the Microsoft.Office.Interop.Excel assembly (for example) is referenced properly (on the left side of the screenshot below) but you can also see that VSA doesn't recognize Excel.Application, Excel.Workbook, or Excel.Worksheet ("Excel" is aliased to Imports Excel = Microsoft.Office.Interop.Excel). | |
Now, when I right click on the Microsoft.Office.Interop.Excel reference and select Properties, you get misinformation:
The next logical step was to remove the reference and add it back. Fine - tried that... But the Microsoft.Office.* assemblies do not show up in the list of available assemblies :( I've done the obvious - I've verified that the Interop DLLs are in the "C:\Program Files\Microsoft SQL Server\90\DTS\Binn" folder and that they are in the GAC. See?
I need some help - I'll be sure to post back here with the resolution and/or change required. In the meantime, if you know of the reason for this, please let me know in the comments.