Search

Archives

Categories

blog swap (16) books [non-technology] (4) books [technology] (2) code [.net] (10) code [t-sql] (3) code [vbscript] (2) coding (21) dogs (4) funnies (31) links (7) microsoft (100) one liners (19) parenthood (16) ramblings (114) sports (9) technology (68) testing (2) video games (24) workplace (1)

Subscribe

Email or RSS 1.0, RSS 2.0 & Atom

Ignore

growled on Monday, February 28, 2005 11:17:12 PM (Pacific Standard Time, UTC-08:00)
barked at technology

newsgator online.  Seen this?  It's a free web-based RSS reader.  I know it's probably old news in some circles.  I've known about it for a month or so now, but just finally got around to looking at it.  I have been using Sharpreader.  It can be a pain to synch up my work and home PCs, but I like the product well enough that I've endured the minimal effort it takes me (I just export subscriptions to an OPML file, copy it to my USB device and carry it back and forth whenever I add a new feed).

So today I thought 'what the heck' and imported my feeds into newsgator online and at first glance it looks pretty decent.  I'll try it out for awhile and see how things go.  This sure would make it easier to use from multiple PCs...

Update:  A cool feature...  You can share the OPML file listing all of the RSS feeds you subscribe too.  Here's mine.

growled on Monday, February 28, 2005 8:44:45 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings

Today marks the end of an era...at least for me.  My manager, Terry, is moving on to a different position.  He is going to be an OPM (Operations Program Manager) for MSN Search.  Terry has been my manager since March 2002, which is a pretty long time for a manager/employee relationship to stay the same in MSN Ops.

It's been a good run and I've really enjoyed reporting to him the past few years.  Best of luck to him in his new role!

Of course, now this means that my co-workers and I will have to train a new manager...  ;-)

growled on Saturday, February 26, 2005 8:54:35 PM (Pacific Standard Time, UTC-08:00)
barked at technology

I noticed Mike's entry about starting a linkblog at del.icio.us awhile back and decided to follow suit.  Between home and work, I have 4-5 computers that I use on a regular basis and synchronizing all of my Favorites can be a PITA so I figured this might be a good thing for me...

http://del.icio.us/todhilton (rss)

growled on Saturday, February 26, 2005 7:02:27 PM (Pacific Standard Time, UTC-08:00)
barked at funnies

I am a toothbrush.

You are a control freak. You love to be in charge of everything, and like to do things yourself instead of indirectly. Hands-on projects are your favorite. You like to accomplish things the hard way, even if it means getting dirty. You have high priorities and set goals for your life, which will make you very successful. However, you will have to dig deep and get rid of all the crap people throw at you in order to have a promising future.

Most compatible with: Toilet Paper, and Windex.
 
growled on Friday, February 25, 2005 3:09:31 PM (Pacific Standard Time, UTC-08:00)
barked at links

Applications:

Ad-Aware (by Lavasoft) - removes ad-ware and spy-ware
BLAT for Windows - send email from the command line
Microsoft Anti-Virus - MS's first foray into removing spyware and adware
Spybot - Search & Destroy - removes ad-ware and spy-ware
SysInternals - several useful admin & debug tools
Treesize (& other tools) - Details HDD space usage.

Knowledge Bases:

C# - See my C# specific list here
ASP.Net
JSI FAQ - Tips & Tricks for Windows NT/2000/XP/2003
MSDN Magazine - The Microsoft Journal for Developers
Security @ Microsoft.com - Security updates, recent incidents, anti-spyware & tips for how to be more secure.

 

last updated: 2.25.2005

 

growled on Thursday, February 24, 2005 4:50:09 PM (Pacific Standard Time, UTC-08:00)
barked at technology

I hate ad-ware!  Plain, simple fact.  The stuff sucks!  All devs who create this stuff should be taken out back, stripped to their skivvies, tarred and feathered.  :-|  I realize that people need to earn a living and such, but at least try to live by some personal standards.

Here's an article from eWeek about blogs from Blogger.com (owned by Google) installing ad-ware on the PCs of unwitting users.  A few quotes:

"Dozens of blogs hosted by Google Inc.'s Blogger service can install programs that are widely considered to be spyware and adware onto visitors' computers..."

"The offending blogs typically prompt visitors to accept downloads through misleading pop-up windows..."

"A Google spokesperson Tuesday confirmed that Blogger was aware of the spyware issue but declined to provide details about how the company plans to address it."

"To fix the problem, Edelman suggested that Blogger disable or limit the ability of bloggers to add JavaScript into blog templates."

"...were critical of Blogger for being slow to deal with the spyware and adware issues. Both said they have contacted Blogger with the addresses of specific blogs with spyware and adware downloads, but so far none of those blogs has been fixed or removed."

First off, this is not the fault of Google or Blogger, this is a problem because of idiots who want to make a buck and perpetuate the sneaky proliferation of ad-ware.  Like I said at the beginning...anyone associated with this stuff should be flogged!  That's my personal opinion.

Having said that...I certainly hope Blogger.com (Google) is doing everything in their power to stop this practice before it becomes too widespread.  As a technical person who would prefer the ability to customize (something sorely missing from MSN Spaces), I'm somewhat hesitant to jump on the bandwagon of disabling JavaScript in their templates.  On the other hand, I do see the security benefit to doing this.

No matter what the big companies do (MicrosoftMSN, Google, Blogger, etc.), there will always be idiots out there trying to circumvent the policies & software in place to spread their evil ad-ware.  Jerks.

growled on Monday, February 21, 2005 5:28:50 PM (Pacific Standard Time, UTC-08:00)
barked at technology

I read Robert Scoble's post about MSN Found yesterday and was intrigued.  The first thing I did was take a peek at the MSN Found site itself...it didn't appeal to me at all.  It's way too commercialized and dripping with marketing to allow me to take it seriously or even in a comical manner.  Scoble is spot on in saying that this team needs a visit from The Donald (warning, it's a flash site...yuck), but I don't think it's because of the lack of an RSS feed...the thing is just plain bad (my personal opinion).

The next thing I did was read through the first 30 or so comments to Scoble's post, which I normally don't bother with.  I was surprised to see some of the vehement responses about RSS and Scoble's take on it.  Many people suggested that RSS is not mainstream yet because not enough people evangelize it.  I would have to agree with them since I just learned about RSS a few months ago and I've been smack dab in the middle of the internet industry for several years.  :-|  Although it could easily be argued that I keep my head in the sand unless something smacks me upside my noggin...

So here's my take on RSS (Really Simple Syndication)...

In a nutshell, RSS is AWESOME!  It really will revolutionize the way you surf the web and retrieve information!  I'm not joking!  It's true!  I don't know how many ways I can say this and don't think that I can emphasize it too much...RSS is da bomb!

First off, here's a relatively short definition of RSS (taken from here):  Rather than tediously checking dozens of Web sites for new information, RSS enables you to go to one place and find all the latest content from each of those sites. RSS makes it easy to read lots of sites -- from weblogs to major media — in very little time. 

This seems to be the most simple and understandable definition I can find online.  The author goes on to describe RSS in further detail, how to use it, where to find feeds, etc.  The link was referenced within one of the comments to Scoble's post and I agree with the commentor...this information needs to be shared with as many people as you know!  Using RSS feeds and a reader to collect (aggregate) your frequently visited websites is the internet epitomy of "work smarter, not harder."  I spend 30 minutes to an hour each morning reading 60+ sites through my RSS reader!

The first thing you need is an RSS Reader (also sometimes called an Aggregator).  I currently prefer SharpReader.  I have tried a few others (Pluck, Bloglines, etc.) and they are good at what they do, but I prefer SharpReader because it's a separate app instead of an IE plug-in and I can organize my feeds into folders similar to Outlook.  Yes, I'm a creature of habit and once I find something I like I prefer to maintain similar consistency in the things around me...  :)

After you choose your RSS reader of the week (yes, you will probably go through at least 3 or 4 before you find one that suits your situation) then you just need to add some feeds from your favorite web sites (news, blogs, comics, technical, etc.).  Have fun!

growled on Friday, February 18, 2005 4:56:15 PM (Pacific Standard Time, UTC-08:00)
barked at code [.net]

As part of my current project, I am taking an Xml document and inserting it into a text field in a SQL 2000 database.  I found the few lines of code I needed (here), but thought I'd add them here too for reference purposes.

As stated in the link above, "this is kind of a handy utility because when you call ToString method on XmlDocument object, it does not return you its contents but it returns the full class name System.Xml.XmlDocument."

When called by another method, the method below will return the string for you to manipulate.

<------------<start code here>

  1. static string GetXmlString(string strFile)
  2. {
  3.         // Load the xml file into XmlDocument object.
  4.         XmlDocument xmlDoc = new XmlDocument();
  5.         try
  6.         {
  7.                 xmlDoc.Load(strFile);
  8.         }
  9.         catch (XmlException e)
  10.         {
  11.                 Console.WriteLine(e.Message);
  12.         }
  13.         // Now create StringWriter object to get data from xml document.
  14.         StringWriter sw = new StringWriter();
  15.         XmlTextWriter xw = new XmlTextWriter(sw);
  16.         xmlDoc.WriteTo(xw);
  17.         return sw.ToString();
  18. }   
<------------<end code here>
 
I didn't use the exact method above because I only need to do this once in my application...so I just added lines 14 - 16 to convert my XmlDocument.  It worked like a charm!
 
Hope this helps!  Happy coding!
growled on Thursday, February 17, 2005 11:29:00 PM (Pacific Standard Time, UTC-08:00)
barked at

Currently reading:

Inside Microsoft Visual Studio .NET, by Brian Johnson, Craig Skibo & Marc Young - how to get the most out of VS.NET...which I need!
C# and the .NET Platform, by Andrew Troelsen - seems to be a pretty good starting point for learning C#
Apocalypse Watch, by Robert Ludlum - yet another great spy thriller from R.L.

Recently finished:

The Scorpio Illusion, by Robert Ludlum - he also wrote the Bourne Supremacy trilogy (book 1, 2 & 3) and is a great mystery/suspense writer
Stealing the Network: How to Own the Box, by various authors - fictional stories about
hacking, but based on real technological possibilities...very interesting stuff
The Da Vinci Code, by Dan Brown - a great supsense novel based around both factual religious history and conjecture
 
last updated: 9.13.2005
growled on Thursday, February 17, 2005 11:04:51 PM (Pacific Standard Time, UTC-08:00)
barked at links

Stuff I'm interested in:

Gold's Gym - i'm no musclehead (at 5'9" and 160 lbs.), but I workout 4 times/week
IMDB - internet movie database
MSN Music - personally i prefer MP3s, but a good site to find artists & songs
Option Snowboards - i ride a redline
Poopli - internet sharing for ReplayTV users
Pyramid Brewery - i love their hefeweisen
ReplayTV - digital video recorder of choice for a/v geeks (at least my choice)
Stevens Pass - my local mountain for snowboarding
TeamXbox - decent source for Xbox news
 
last updated: 2.17.2005
growled on Thursday, February 17, 2005 10:50:09 PM (Pacific Standard Time, UTC-08:00)
barked at video games
 
Playing now:
Doom 3 - Scary stuff, especially if you play in the dark with surround sound. (87.0% gamerankings.com rating)
Recently finished:
Jade Empire - Bioware does it again...without a doubt! This game is everything that KOTOR was, but with an Asian philosophical and martial arts theme.  The story line is engaging and the graphics are wonderful! (89.4% gamerankings.com rating - the only rating below 90% is Gamespot...boo)
Splinter Cell: Chaos Theory - Damn, this game looks fine! I loved the first two and this one lived up to my expectations. (94% gamerakings.com rating)
Star Wars KOTOR II - All in all a great game, but the ending is almost as bad as Halo 2's!  If you liked the first then check it out. (86% gamerankings.com rating)
Oddworld: Stranger's Wrath - a shooter in Oddworld? yep, you betcha...and a damn great game too boot! (88% gamerankings.com rating)
 
last updated: 6.4.2005
growled on Thursday, February 17, 2005 9:59:15 PM (Pacific Standard Time, UTC-08:00)
barked at links
Bargains:
Comics:
Geek Stuff:
Stuff to do when you're completely bored:
Urban Legends Busted:
 
last updated: 3.5.2005
growled on Friday, February 11, 2005 11:30:16 PM (Pacific Standard Time, UTC-08:00)
barked at links

This sweet blogroll list was brought to you by Inès' Tool (nice job Inès!)

 
last updated: 8.1.2005
growled on Friday, February 11, 2005 9:18:17 PM (Pacific Standard Time, UTC-08:00)
barked at links

Code Highlighters:

Reference - Books:
Reference - Online:
 
 
last updated: 2.11.2005
growled on Friday, February 11, 2005 6:35:47 PM (Pacific Standard Time, UTC-08:00)
barked at coding

I found a nice little resource today on MSDN.  I just discovered (yes, I suppose I live in a cave) that MSDN has a TV program.  Here's their short description:

MSDN TV is a short weekly video featuring useful technology tips and insights from the behind-the-scenes folks at Microsoft. Tune in to stay in-the-know with MSDN TV.

Looking through their archive of shows I quickly found 4 or 5 that I want to watch.  I took 20 minutes to watch "Visual Studio .NET and C# Tips and Tricks" by Juval Lowy.  There were some really nifty little tricks in there:

  • Class Viewer (WinCV.exe) - Much more verbose than the VS Documentation and easier to find the fields, constructors, events and methods available to the various classes.  Unavailable via the VS gui, WinCV.exe is found in "C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin" so you should create a shortcut to it. (found at 1:35)
  • Start/Debug multiple projects (.exe's) at the same time within a single solution. (found at 5:25)
  • When using multiple projects within a single solution, start with a Blank Solution and then add the individual projects in order to keep the solution file from being saved within the first project.  More symmetrical this way. (found at 7:06)
  • Task List.  You can use the built-in //TODO or create custom tags. (found at 8:38)
  • Drag & Drop elements such as Web Forms, Web Services, DataSets, etc. (found at 13:30)
  • Press ALT + Mouse to perform rectangular highlighting versus line-by-line highlighting.  This is extremely useful when you have a series of similar lines in which you need to remove a specific portion of each line. (found at 15:50)
Hope that helps!
 
Also check out the pilot of their new reality series The Code Room.  I haven't watched it yet, but it looks interesting.  :)
growled on Thursday, February 10, 2005 6:04:52 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings

Well, since adding some C# code yesterday I'm quickly seeing some design limitations in MSN Spaces.  My complaint, as with most MSN products, is that it's geared towards the beginner user which is fine in and of itself, but it doesn't allow more complex customization that intermediate and advanced users want.  In my opinion, a really successful product is able to cater to all types of users.

All in all, I've been very happy with my initial usage of Spaces.  It's a good product so far and I must keep in mind that it's still actually a Beta (as denoted so clearly at the top of every page).  I am a beginner blogger, but a power user when it comes to the internet. 

Some things that I would really like to see:

  1. Width of blog column should not be fixed, but should adjust automatically to the width of your screen. 
    • I have a 19" monitor set to 1280x1024 resolution and Spaces only uses about 60% of the screen's width.  This became especially apparent after posting code yesterday as compared with blogs on MSDN.
  2. More customization of your individual space. 
    • I completely understand that they want to maintain a 'feel' to MSN Spaces as a whole, but it's currently too restrictive.  For example, I want more templates to choose from and the ability to create/import my own.  I like the frog and all, but I also like choices...
  3. More control over Lists and how they display on the 'home' page of your space. 
    • Currently they display the whole list of items, but I would like to be able to make this a collapsed list with just the title showing and give the user the ability to click on a plus sign to expand the list.  Right now I have several lists and my home page looks extremely cluttered (which I hate).  I can work around this by creating each of my lists within a blog entry and then just having one list on my home page with permalinks to each of my list blog entries, but as far as I'm concerned that's a hack and I shouldn't have to 'work around features' to get them to work.
I will probably add more as they come to mind.  I also need to add these to the MSN Spaces Feedback Wiki over at MSDN's Channel 9.  The cool thing about Spaces is that the whole team (dev, PMs & Ops) are deeply involved in the product and are really responding to the users' feedback!
growled on Wednesday, February 09, 2005 10:39:22 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings

Ok, so I was just posting my first code in this blog and wanted it to be all prettyfied for y'all.  Unfortunately that turned out to be more of a PITA (pain-in-the-@$$) then I expected.

First, I did a little search for 'C# code highlighter' using MSN Search which yielded quite a few valid results, but the kicker is that MSN Spaces' rich text editor severely hinders the translation of the HTML provided...even when you're using the Edit It tool.  All of the coloring is removed and the spacing is out of whack.  In other words, your f**ked if you try to copy/paste the HTML code generated by several of these highlighters.

So then I remembered reading about this issue on Phil Harvey's .NET Space.  I proceeded to test the GeSHi demo with my code.  It worked much better and the color scheme was retained by Spaces, but the spacing was still out of whack.  Arrgghh!

And then I realized that with the 3 column theme I'm using the blog column is extremely narrow which condenses the code making it hard to read.  Perhaps it's time to move to a 2 column theme... 

growled on Wednesday, February 09, 2005 10:10:52 PM (Pacific Standard Time, UTC-08:00)
barked at code [.net]

As I'm learning C# (now 4 weeks into it) I intend to share the snippets of code that I write to assist others with the learning process.  Remember that I'm a beginner.  My snippets will be geared accordingly.

Retrieve a value from the Registry

Security.  Authentication.  Developers and SEs often have to deal with these issues when writing code or scripting.  In our world of domain authentication and ACLs it's a requirement to know how to secure your information and then retrieve it using proper authentication.  One easy, albeit less secure, way to store 'secure' information such as a SQL connection string or username/password is to simply add the information as string values in a custom registry key then call those strings from within your application/script.  Here's how I did it in C#:

  1. Add your custom registry key.  I added mine to HKEY_LOCAL_MACHINE\SOFTWARE\myProjectName\Access.
  2. Add two new String values.  One called User and the other PW.  Modify the Strings with your username/password information.
  3. Create a DACL (directory access control list) on the Access key to restrict Read permissions to the System or the service account you're running your application under.  Be sure to leave yourself (or team's security group) with Full Control so you can update the values as necessary.
  4. Add the following using statement to the top of your .cs file that allows C# to interact with the registry:

  5. using Microsoft.Win32;
  6. Here's the method that retrieves the User name:

  7. private string getUser()
    {
       // retrieve the user id from the registry
       RegistryKey userKey = Registry.LocalMachine// points to HKLM hive
       userKey = userKey.OpenSubKey(@"SOFTWARE\myProjectName\Access", false)// points to subkey
       string strUser = userKey.GetValue("user").ToString();
       return strUser;
    } 
Here's the full code for a small C# console application that will retrieve a string value from the registry.  You should be able to simply copy/paste into your editor of choice.
 
<------------<start code here>
  1. using System;
  2. using Microsoft.Win32;
  3.  
  4. namespace getRegistryValue
  5. {
  6.    class getValue
  7.    {
  8.       static void Main()
  9.       {
  10.           getValue userName = new getValue();
  11.           string strUser = userName.getUser();
  12.           Console.WriteLine(strUser);
  13.       }
  14.  
  15.       private string getUser()
  16.       {
  17.           // retrieve the user id from the registry
  18.           RegistryKey userKey = Registry.LocalMachine// points to HKLM hive
  19.           userKey = userKey.OpenSubKey(@"SOFTWARE\myProjectName\Access", false)// points to subkey where we put the values
  20.           string strUser = userKey.GetValue("user").ToString();
  21.           return strUser;
  22.       }
  23.    }
  24. }
<------------<end code here>
 
I hope this helps out at least one person out there in the big wide world.  Otherwise it's here for my own reference.  ;-)
growled on Monday, February 07, 2005 10:37:54 PM (Pacific Standard Time, UTC-08:00)
barked at code [.net]

Well, it took me less than 3 weeks to learn enough C# to write the application needed for my project.  It even impressed my manager that I was able to start from scratch with no C# knowledge and arrive at a semi-finished product in such a short timeframe.  I'll have to make a note of it for review time.  :)

I will post snippets of the code, but before I do that I'm going to reference something that is extremely useful for scripts and applications that will be run on a regular basis.  Sure, you can write your script (.vbs, .cmd, .exe, etc.) and simply schedule it to run using Scheduled Tasks, but the smooth way to do it is to convert your application to run as a service.

I started off with a few internet searches on MSN & Google using the string "creating a service with .net".  Unfortunately, from the perspective of a Microsoft employee, Google gave me the most relevant result set.  I sincerely hope that MSN Search excels with their new search service.

The best description I've found so far of how to create a Windows Service using C# is here.  I followed the author's steps and it was fairly easy to transfer the code from my Console Application to a new Windows Service using Visual Basic .Net 2003.  I added a timer to the project so that every hour the service runs my application.  It worked like clockwork over the weekend!  :)

Feel free to leave questions as comments if you want to know how I did any part of it.

growled on Thursday, February 03, 2005 6:07:58 PM (Pacific Standard Time, UTC-08:00)
barked at coding

Well, I spoke with a handful of friends and co-workers about which language I should start with and C# was the overwhelming consensus.  Although, let me add a few of the qualifications presented with the recommendations:

  • 99% certain that the .Net Framework will be installed where needed.
  • Working primarily with Windows platform.
These are pretty much no brainers for me since I work in MSN Operations.  For those that work across platforms or don't have ready access to the .Net Framework, that might make the decision a little more difficult.  Keep in mind though that the people who gave the above qualifications still said that C# is a really good first language to learn, regardless of their qualifying remarks.  It's easier to learn because it's managed code while also having the horsepower to do some really powerful stuff as you become an advanced programmer.
 
Here are a few good C# blogs I've found in the past few weeks:
Within those blogs are links to several more C# focused blogs and sites.
 
Meanwhile, I've actually started coding my first project and am having quite a bit of success.  There have been a few parts that caused me quite a bit of pain and time to work through, but it's been really cool seeing the fruits of my labors.  :)  I'll start posting code snippets for particular functions/methods as time permits.