Arcane Talks

On Thursday July 12th I’ll be speaking at the Birmingham Software Developers Association (BSDA). You can get directions from the club’s website, http://www.bsda.info/ .

I’ll be speaking on the subject of SQL Server Compact Edition. It’s been a while since I blogged about this, so I thought I’d provide a few links for quick reference.

As promised, here is a link to the Power Point presentation (in PDF format) I used during the presentation:

 SSCE presentation for BSDA user group

My very first post was back in January 2007:

http://shrinkster.com/nsk

My next series of posts began on April 10th, and described how to create databases using the various tools available to you.

http://shrinkster.com/qtl

The complete C# and VB.Net code samples were posted April 13th, 2007:

http://shrinkster.com/qtm

And finally, the series of posts I mentioned on system Views started with this post on April 16th, 2007:

http://shrinkster.com/qtn

If you want to see all of my SSCE posts, simply click the SQL Server Compact Edition tag over in the categories area, or use this link:

 https://arcanecode.wordpress.com/tag/sql-server-compact-edition/

Please note each of these links is a starting point, be sure to read the blog for the next few days after each link in order to get the full story.

And now a question, I’m working up material for a new presentation. Debating between SQL Server 2005 Full Text Searching and SQL Server Integration Services. Any opinions?

Eventually I’ll do both, but would like to do the first one based on feedback. Even if you can’t attend please post a comment and let me know where your interests lie.

Arcane Portable Passwords

After a long time searching, I finally found a password manager I like. I’ve looked at quite a few, but for whatever reason never seemed to find one that suited me. Today I finally found KeePass and am happy.

KeePass ( http://keepass.info/ ) is a free, open source password manager. It has the same basic functionality that most password managers have, but laid out in such a manner that to me is easy to use. It will generate a complex password for you, or you can enter your own. It even has a meter, which measures the strength of your password.

Be warned I had some issues with the installer version of KeePass under Vista. However, it also has a standalone no-install version which you can download and use, which is what I did. It works like a champ under Vista.

It also has a version (http://portableapps.com/apps/utilities/keepass_portable ) that integrates nicely with Portable Apps ( http://portableapps.com/ ). In case you are not familiar with Portable Apps, it’s a suite of tools that don’t require installation.

The idea behind portable apps is you can place all of them on a USB thumb drive or external USB Hard drive. Then no matter what machine you plug it into, all off the apps and settings go with you. Nothing is stored on the host PC.

There are versions of FireFox, OpenOffice, GIMP (the paint program), and of course KeePass. Much more too, so take a look. Great for someone who travels a lot and just needs a few simple apps on the road.

Arcane Thoughts: Privacy in 2054

You might not have known it from the blog but I took last week off. Vacation! I actually took a little time away from the computer and caught up on some movie watching (made some good finds in the five dollar bin at my local big box discount store).

One movie I saw was Minority Report, based on the Phillip K. Dick story. In short, it’s the year 2054, and there are some precognitive people who can see murders before they happen, which allows the hero to stop the murder before it happens.

Whats interesting though is the optical scanners that blanket the city. As the hero walks down a street, optical scanners are constantly scanning his eyes. Wall mounted billboards greet him by name, asking him if he’d like to buy more of whatever it was they were selling. One even asks how he’s enjoying a previous purchase, mentioning they have a sale or something.

In addition the scanners track his movements as he moves through the city. They control admission to buildings, his purchases, etc.

Even though they movie takes place in the year 2054, I suspect we’re a lot closer than 47 years from this sort of targeted marketing. Everytime I go to Amazon, it has a list of recommendations based on my past purchases. Google gives you targeted advertising based on your current search.

Is this a good thing? I can’t say I’ve decided yet. On one hand I do appreciate having relavent ads. On the other hand, I don’t know that I’m comfortable with not only being tracked, but who might have access to that data. For example, perhaps I don’t want my insurance company to know I’m doing MSN Live searches for home remedies for back pain.

It’s not just the web that’s tracking you. How much info is being logged from just using your software? I have quite a bit of software that calls home looking for updates on a regular basis. At the back of my mind I often wonder what other info is getting passed back and forth.

Cranky Geeks latest episode (#71 as I write this, http://www.crankygeeks.com/2007/07/episode_71_how_vulnerable_are.php ) has a very interesting discussion on the entire topic as I write this.

So am I worried for nothing? Should I care if Amazon (or anyone else) knows I like books about .Net? Are we doomed as a society to “big brother”? Let me know your thoughts.

Arcane Tidbits

Today I thought I’d cover a few items that I found interesting, but were not in and of themselves enough info for an extensive blog post. I call these Arcane Tidbits.

First up is an interesting new Trojan horse that is attacking computers. When you reboot the computer, something pops up that looks alarmingly like the Microsoft Windows Activation screen. It tells you another user has activated your copy of Windows, and demands you enter credit card info as a way to validate your identity, of course reassuring you that you won’t be charged. If you fail to do so it shuts down your PC. PC Magazine has an interesting writeup as well as a link on how to remove this pest at http://www.pcmag.com/article2/0,1895,2147608,00.asp .

Another interesting story from PC Magazine, the first known spam sent out as a PDF file is now in circulation. Read more about it at http://blogs.pcmag.com/securitywatch/2007/07/more_pdf_spam.php . To quote Patrick Norton (http://dl.tv/ ) “Remember kids, never ever ever open attachments from people you don’t know, and sometimes even from people you do.”

If you’ve been working in the .Net space for a bit, you’ve probably heard of the new Microsoft Cardspace that is part of .Net 3.0. However, you may be looking for a good basic intro to give to your boss or non-programming friends like system administrators to help them understand it. In episode 98 of Security Now, Steve Gibson gives a nice basic overview of what Cardspace is and how it works.

You can this episode at http://www.twit.tv/sn98 . Steve does get a bit technical, so I don’t know I’d suggest it for your dad (unless your dad is a former CIO like mine) but for your boss, DBAs, or System Admins it’s a good intro on what it is and how it works without getting into the programming. You might want to listen to show 95 (http://www.twit.tv/sn95 ) on OpenID first, as OpenID and Cardspace go hand in hand.

Next a bit of a personal note, I feel like a kid in a Web 2.0 candy store lately. You see, up until this week I’ve been using Hughes DirecWay to get my internet via Satellite. The speed was slow, about 700k down, but better than dial up. The downside is their FAP, or Fair Access Policy. Now I was spending nearly 90 bucks a month for their Professional Level service. Under that plan, I would get FAPped if I downloaded “too much”.

And how much is too much? Good question, I tried to find that out myself and was met with evasive technical answers. The best I could determine, based upon the elusive answers given to me by several tech support personnel, was somewhere around 50 megabytes an hour. Yes, you are reading that correct, 50 megabytes an hour, or about 1 podcast.

And what happened if I downloaded to much? Well I got FAPped as they call it, my bandwidth was choked back to a speed so slow it made dial up attractive. And forget doing VPN on it, it won’t work.

In order to get the speed out of the satellite, Hughes compresses the packets before they go up and down to the satellite via the dish. With VPN however all traffic is encrypted, so it can’t see the packet to compress it. Oh, the sales people don’t mention this, and one even told me it “should work” and I have to admit that once, just once, I actually made a VPN connection to the office. It was so slow though I had time to drive to the office to see the results of a single keypress.

Well happy days are here as AT&T ran DSL to my house last week. The installer could not have been nicer and more professional, and they even called a few days later to follow up and make sure everything was still working. I admit I was a bit dubious when AT&T bought BellSouth, but so far they look like they really have their act together.

My rather long winded point is I now have an 8 megabit connection to the net, with no limitations on bandwidth. No more FAPping! No more latency! No more 90 bucks a month for a service I’m not allowed to use! I’m now free to go explore all the cool Web 2.0 stuff like Skype, YouTube, and more. I’m sure I’ll be blogging about my experiences, but if you know of some cool high bandwidth technologies I can go play with drop a comment and let me know.

And finally, my local Discovery store is closing (sniffle). True there’s still the online store, but it was a lot of fun to go in and browse. I picked up two books I’ve had my eye on for a while at a deep discount. One is Mythbusters: Don’t Try This At Home Unless We Tell You To. It’s a book of experiments you can do with your kids, I intend to give it to my daughters and we can have some fun with it.

The second book is also about Mythbusters, and talks about the founding of the show and covers the stories behind 30 of their most popular myths. I’ve already looked through the first chapter, this looks to be a fun read, and with discounts I bought both books for a mere 20 bucks. You might want to check your local Discovery store as well.

And there you go a few little tidbits for your reading pleasure.

Standard Disclaimer: I receive no considerations financial or otherwise from any of the business or products mentioned in today’s post, and being a geek think the Mythbusters are really really cool.

Happy Birthday U.S.A.

Today is the 4th of July, and in the U.S.A. a national holiday. I’ll be taking the day off, celebrating my country’s birthday with barbeque, fireworks and special events.

Here in Alabama we have a great place called American Village ( http://americanvillage.org/index.shtml ), a place that has recreated many important buildings from colonial days such as the Philidelphia Courthouse and George Washington’s house. On the 4th they have a lot of displays, actors recreating historical moments (the Patrick Henry “Give Me Liberty or Give Me Death” speech is especially good), and tops the day off with music and fireworks.

Happy Birthday U.S.A.!

Getting Started with SQL Server 2005 Full Text Searching: Part 5 – Advanced Searching

Last week we looked at how to search for data by passing a simple search word into a SQL Query that uses Full Text Searching. As you would expect, Full Text Searching is capable of much more powerful searches than a single word.

First, you can search for a phrase. To do so, you include the phrase inside double quotes.

SELECT WebSiteID, WebSiteName
FROM MyTableOfCoolWebsites
WHERE CONTAINS(*, ‘”Arcane Code”’)

Will find occurances of the phrase Arcane Code in your index. Let’s say however, you want to search for either Arcane or Code? FTS supports Boolean searches.

WHERE CONTAINS(*, ‘”Arcane” OR “Code”’)

Will return results where either the word Arcane or Code is in the text. If you want them both, use an AND in place of the OR. Additionally, FTS supports the AND NOT keyword, for when you want the first word but not the second.

Full Text Search also supports something called Proximity searches. In a proximity seach, one word appears near another.

WHERE CONTAINS(*, ‘arcane near code’)

So how near is near? Well the online docs are a bit vague on this, a safe guess is about ten words. You may also see this form of the syntax:

WHERE CONTAINS(*, ‘arcane ~ code’)

~ equates to near, although to me not nearly as readable, be aware though in case you run across it.

Finally, you should be aware that certain words are excluded from searches. Common words such as a, an, the, and so on. Microsoft refers to these as “Noise Words”. You can edit the list of noise words in case you have some words in your environment that wind up being Noise Words. Your company name might be one example.

I found the file in the folder C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\FTData (your milage may vary). The file is named noiseenu.txt. (ENU is for English US, not to be confused with noiseeng.txt which our friends in the British Isles will be using.)

This is also handy to know in case there is a reserverd word you need to remove from the list. In our environment one of the reserve words is also an abbreviation for a piece of our equipment, so I would want to remove this from our list.

Getting Started with SQL Server 2005 Full Text Searching: Part 4 – Valid Data Types

Hopefully everyone had some fun over the weekend with their digital cameras and listening to some good photo podcasts. Today we’ll return to the subject of Full Text Searching (FTS) under SQL Server 2005.

If you’re like me one of your questions is “OK, FTS is great, but exactly what data can I index with it?” Good question, a quck reference of the books online gives us the answer.

Char, nchar, varchar, nvarchar, text, ntext, xml, varbinary(max), and image are the valid data types for FTS. However, according to the documentation text, ntext, and image are going to be removed in a future version of SQL Server, so I’m going to avoid them and so should you.

Char, nchar, varchar, nvarchar are pretty straight forward, and probably expected, so I won’t go into them further. XML is pretty cool, as you may be aware with SQL Server 2005 Microsoft added the ability to store XML in the database. You can then do XML queries into these XML fields, a subject for a future post. However, MS also allows you to search inside these XML fields using Full Text Searching as well.

The final one that needs explanation then is varbinary(max). I’m sure you’re scratching you’re head over this, how can FTS work on binary data? Well remember, the Full Text Search engine is built on top of the Microsoft Indexing Service, which can scan inside Word, Excel, etc files stores on a server.

Thus FTS can actually look inside files stored inside varbinary(max) and if they have the proper extension FTS will look inside them and index the contents of the files. How sweet is that?