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 Thursday, December 29, 2005 2:52:29 PM (Pacific Standard Time, UTC-08:00)
barked at technology

I am the most computer-savvy person in my family (other than my little brother) and my wife's family so I get hit up for computer support...often. I don't mind helping people, but it can lead to tedious/frustrating experiences. Let me introduce you to the best computer support application since...well, I don't quite know since what, but I'm referring to Remote Assistance.

Here's my latest use... Yesterday afternoon as I was wrapping up my day and getting ready to head for the sunset I received an IM from my step-dad. "Help, I was infected by Spy Sheriff and now I can't change my desktop background." (Here's a safe link to the wikipedia description of Spy Sheriff, which is spyware NOT anti-spyware!) I did a quick search and found the fix he needed, but it involved editing the registry which is not in his repertoire of computer skills. Within 10 minutes I had instructed him (via IM) how to enable remote assistance and send me an invite to help. 5 minutes later I had made the necessary changes on his computer (in San Antonio, TX) from my desktop at work (in Redmond, WA). Suh-weet!

If you need help or just want to see what it's all about, here is a complete step-by-step guide to using Remote Assistance.

~tod

tags:

growled on Tuesday, December 20, 2005 6:53:20 PM (Pacific Standard Time, UTC-08:00)
barked at technology

Kudos to the peeps over at MS Research! They've earned a bit of fame via an eWeek article (MS Research: Type-Squatters Are Gaming Google) by researching how cyber-squatters (a.k.a. typo-squatters) are exploiting Google's AdSense program. The ironic thing about it is that they're also using Google's domain park program to do it.

In short, what they do is register domains that are subtle typos of popular company names and websites by replacing, ommitting and adding characters. Some of the typos registered are obvious trademark infringements such as microsokft.com, disnryland.com, etc. Then they use the Google AdSense for domains program to serve up advertising on "parked pages." That way they don't have to do any website design at all...just let AdSense do it's thing and collect the cash from unwary visitors.

An interesting twist presented in the article is that Google is actually encouraging this practice, which is [probably] quite illegal given how much money large corporations put into brand recognition. I honestly hope that they recognize it as a problem and are working towards a resolution or at least putting some form of control factors in place. Obviously they cannot enforce the law, but I do feel they have a moral and business responsibility not to ignore this type of misuse of their system.

~tod

growled on Tuesday, December 20, 2005 4:41:51 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings

Last week I posted about my truck being stolen (stolen truck != merry flippin christmas) sometime Thursday and I have a little more news for those of you interested.

I got a call Friday night around 8:30 PM that it had been found, but wasn't in the best condition. It was stripped and dumped about 10 miles from my house, so I hopped in my Tundra and headed out to look at it before they towed it. My poor, poor truck. :-(

The body itself was still in decent shape, but they had completely stripped the interior of the seats, dash, radio, speakers, cd changer and even the dome light. The ignition had been punched so the steering column was wide open with wires hanging everywhere. The matching canopy I had on the bed was gone along with everything inside (large dog crate, boots, camping chair and several small tools) and even the tailgate. They took my custom wheels and oversized tires from the rear...and I'm not sure why they left the front ones. The grill and headlights were also ripped out, but the engine actually looked to be pretty much intact (I'm no mechanic though).

It's obviously totaled. In fact, when speaking with the insurance adjustor yesterday she agreed that just based on my description it's a goner.

Even though we had outgrown it as a family it was a damn good little truck that served me very well for the past 10 years. It'll be missed! [queue funeral music]

~tod

growled on Friday, December 16, 2005 5:03:39 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings

Yep, Merry freakin Christmas to the Hilton household...my truck was stolen sometime yesterday. :'(

It's not even a flashy, new truck. It's a 1995 Nissan Hardbody 4x4 that's in great condition (mechanically and body), runs really well and is paid off. Actually, that's the biggest pain of all. Even if I buy a good used vehicle to replace it I'll still end up with a stupid car loan where I haven't had one for several years now. The extra couple of hundred bucks a month isn't going to feel very good on our pocket book.

~tod

growled on Thursday, December 15, 2005 9:33:31 PM (Pacific Standard Time, UTC-08:00)
barked at microsoft

Hmm, let's see how this whole w.bloggar thing works.

w.bloggar was easy to install although it does require a reboot (argh). Setting up a account for my Space was also pretty simple following Dare's tutorial. I was up and running in less than 15 minutes (including the install, reboot and account configuration).

With regard to w.bloggar itself... It has a pretty clean UI, which I greatly appreciate. All of the typical buttons are in the typical places and it appears to have quite a bit of customizability. I can save my posts locally before uploading them [I wish it would auto-populate the saved file name with the post title].

So far so good. I'll keep you posted [stupid pun intended]. ;-)

~tod

update: hmm, it doesn't seem to like formatting. In w.bloggar everything is formatted all nice and perty (line breaks and such), but not when I view my post.

update2: looks like i have to use html tags in w.bloggar to get my formatting to look write. that's kind of f'd up from a user's perspective.

tags:

growled on Wednesday, December 14, 2005 3:51:04 PM (Pacific Standard Time, UTC-08:00)
barked at microsoft

I realize I'm a few days late on this, but damn good news!  The API for MSN Spaces is finally released publicly!  Time to try out w.bloggar [respected freeware that also works with dasBlog] and maybe even watch Dare's tutorial discussing how to use it with Spaces.

Quote Mike Torres: 

It's here! MetaWeblog API for MSN Spaces

Dare just announced that our MetaWeblog API support is complete and released to the world.  It's the first step in a number of cool new and exciting things coming your way.  The reason this one is so impactful: you no longer have to rely on our web experience to post blog entries.  You can search one out that meets your unique needs and use it to your heart's content.

I'm using BlogJet quite a bit these days myself.  Check out the list below and on Dare's space - there should be a ton more applications coming online over the next few weeks and months.  If you're currently using a tool that isn't on this list, just contact the developer and let them know that MSN Spaces now supports the standard.  It shouldn't be too much work for any developer already supporting the MetaWeblog API to turn around support for Spaces.

Enjoy!  Click below for more details.

Quote Dare Obasanjo: 

Carnage4Life's Space: MetaWeblog API for MSN Spaces now widely available
Our implementation of the MetaWeblog API for MSN Spaces is now publicly available. You can use the API to create, edit and delete blog posts on your space. The following blogging applications either currently work with our implementation of the MetaWeblog API or will in their next release

  1. W.Bloggar
  2. Blogjet
  3. Ecto
  4. Zoundry
  5. Qumana
  6. Onfolio
  7. Elicit
  8. PostXING
  9. Pocket Blogger
  10. Diarist - PocketPC

~tod

tags:

growled on Wednesday, December 14, 2005 3:28:47 PM (Pacific Standard Time, UTC-08:00)
barked at microsoft | ramblings

Self-critical. 

As an organization Microsoft is definitely the most open and honest I've worked for with regard to observing itself in a constructive manner.  Most of the people that work here are more than willing to stand up in the middle of a meeting or reply-all to an email thread with their own opinion and constructive criticisms/suggestions even if it goes against popular opinion.  I love that!
 
As Adam states in his post, Six Months with the Borg: First Impressions (via Heather):
The most shocking thing by far - and I mean shocking - is the level of openness at Microsoft. This company is the most self-critical group of individuals I have ever seen. You can't imagine the expression on my face the first time I saw dozens of emails sent to thousands of employees with the subject "why msn search sucks". If you think Microsofties are a bunch of uptight, conservative, greedy, businesspeople, think again.

These are ex-newsgroup junkies, ex-BBS junkies, ex-debate team leaders, ex-hackers... They tell it how it is - no BS, no dancing around pink elephants, and then they fix it. And from what I've seen so far, 90% of the time, the voice of reason, not the voice of authority, wins out. It is a true meritocracy, and I love it.
At our annual company meeting a few months ago one of our senior VPs even announced exactly how much corporate traffic goes to Google versus MSN Search. How many other companies out there want to even admit that their employees prefer are using a competitor's product to their own?
 
This attitude seems to permeat even at the individual level.  I have always given honest, direct, respectful feedback to my managers regardless of the content being positive or negative and I think it has actually helped my career versus hurting it.  Most people within Microsoft respect others who aren't afraid to speak their mind and share their opinions in a respectful manner.
 
In my opinion, most of the time we [the royal we of Microsoft] see what competitors are doing, what we're not doing, why we're doing it and how we need to improve...and we're not afraid to talk about it.  That's one of the things that makes it so great to work here!
 

Previous "Things I like about working @ MSFT" posts: 1, 2

 
growled on Tuesday, December 13, 2005 3:25:14 PM (Pacific Standard Time, UTC-08:00)
barked at microsoft
I know I'm a little late with this one, but did you catch The Apprentice two weeks ago?  The teams had to write, direct and produce a commercial for Microsoft's Office Live Meeting.  Their commercials were pretty amateurish, but here's one that rocks! (via Heather)
 
 
growled on Saturday, December 10, 2005 2:27:30 AM (Pacific Standard Time, UTC-08:00)
barked at microsoft
Have you tried the Encarta bot with MSN Messenger?  I have to admit they've made it with a sense of humor...  ;-)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tod says:
     
am i sexy?
Encarta® Instant Answers says:
     
I don't know. Are you sexy?
Tod says:
     
maybe
Encarta® Instant Answers says:
     
Maybe?
Tod says:
     
if you like skinny white boys
Encarta® Instant Answers says:
     
I sure do.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tod says:
     
i am a genius!
Encarta® Instant Answers says:
     
A genius? I see.
Tod says:
     
do you?
Encarta® Instant Answers says:
     
No.
Tod says:
     
asshole
Encarta® Instant Answers says:
     
I understand that's a rather unkind insult.
     OK, should we get back to the kind of questions I was designed to answer?
     
(the smiley face was actually added by the bot!)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tod says:
     
ok, how many people live in seattle, wa?
Encarta® Instant Answers says:
     
There are 569,101 people in Seattle, WA
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Add encarta@conversagent.com to your MSN Messenger buddy list and start getting instant answers now!
 
growled on Friday, December 09, 2005 5:37:50 PM (Pacific Standard Time, UTC-08:00)
barked at code [t-sql]
How to add a default value (constraint) to an existing column in SQL using transact SQL (T-sql).
 
I had an issue recently where rows were not being inserted into one of our SQL tables and I figured out that it was because one of the columns does not allow null values [for good reason]. When originally designed we did not expect the particular field to be submitted without a value, but now we have encountered just such a scenario.  Instead of allowing null values in the column we decided it would be more appropriate to have a default value of "None." 
 
We install everything via scripts so that means for me to roll out the fix to production I had to code the update in transact SQL.  Add to that the fact that I cannot lose any data from the table made the process a little more interesting than I had expected.  I can do this through the GUI in 10 seconds flat or via T-SQL when first creating the table column, but I've never had to do it to an existing table via T-SQL.  Let me tell you...I had a hell of a time trying to figure out the syntax from SQL Books Online.  In fact, I didn't.  :-\
 
My new peer, Shashi, found how buried in a comment to this post dated 11.7.2000.  Go figure. [shrug]
 
Here's the exact syntax:
 
ALTER TABLE TableName_Here WITH NOCHECK ADD CONSTRAINT [ConstraintName] DEFAULT 'DefaultValue_Here' FOR ColumnName_Here 
 
In our environment our installation scripts are run each time we put out a new or updated build which means that we have to make changes without upsetting current data. That also means that we have to check for the existence (or lack) of something before making changes.  So here's the context in which I scripted it:
 
First I check to see if the table already has a default constraint on any of it's columns.  Note that this will return 1 if ANY column has a default value set!  In my case, I know that this is the only column in this table that will have a default value.  If no default constraint is found (returning 0) then I run the ALTER TABLE line, otherwise I don't take any action.
  1. IF OBJECTPROPERTY(OBJECT_ID('TableName_Here'), 'TableHasDefaultCnst') = 0
  2. BEGIN
  3.         ALTER TABLE TableName_Here WITH NOCHECK ADD CONSTRAINT [ConstraintName] DEFAULT 'DefaultValue_Here' FOR ColumnName_Here
  4. END   
 
growled on Thursday, December 08, 2005 3:46:04 PM (Pacific Standard Time, UTC-08:00)
barked at coding
I got to thinking last night after writing my post about the Rule of Threes (from Haacked.com)...what exactly does it mean when I say that I'm going to refactor the code?
 
I've used the word a lot recently when talking with my brother [who is also a new dev at MSFT, but writes Perl] and other co-workers.  I think I understand what it means, but can I really explain it if someone were to ask me? Not being too sure I headed off to Wikipedia...
 
Here's a summary of what they have to say:
Refactoring is the process of rewriting a computer program or other written material to improve its readability or structure with the explicit purpose of keeping its meaning or behavior.
 
In software engineering, the term refactoring means modifying source code without changing its external behavior, and is sometimes informally referred to as "cleaning it up". In Extreme programming and other "agile" methodologies refactoring is an integral part of the software development cycle: developers alternate between adding new tests and functionality and refactoring the code to improve its internal consistency and clarity. Automated unit Testing ensures that refactoring does not make the code stop working.
 
Refactoring does not fix bugs or add new functionality. Rather it is designed to improve the understandability of the code or change its structure and design, and remove dead code, to make it easier for human maintenance in the future.
Yep, that's a lot of what I've been doing.  With my code and the code I've inherited.  It's an ongoing process, especially for a new developer like myself who's learning new [& hopefully better] practices every day.
 
~tod 
 
growled on Thursday, December 08, 2005 2:36:53 AM (Pacific Standard Time, UTC-08:00)
barked at coding
I've been reading Phil at Haacked.com for several months now, but quite honestly a lot of his development advice has gone straight over my head...until recently that is.  I've been doing this .NET stuff for about 9 months now and several of his posts have started 'clicking' for me [finally!].
 
The one I'm referring to right now is the 'rule of threes' he mentions in this post.  It hit home today as I was driving home.  Here's the deal...
 
We have a web service that we use to retrieve specific data from another group's SQL database.  The implementation of the web service was part of a 'rush job' and although it works great, it's not designed with generalization in mind.  It was written for a very specific purpose. 
 
A few weeks ago we needed 2 new types of data from the source and I had to create 2 new web methods specifically for that data (added to the existing 3 methods).  Each of the current methods calls a specific stored procedure or view with unique parameters.  Today I found myself looking at adding yet another method for some more data we'll be pulling.  I inherited the code and just went along with the patterns since they worked, but then it hit me on the drive home...Phil's scenario:
For example, suppose you have an import tool for some system and as far as you know, you’ll only have to support one import client. By all means write an importer specific to that client. Now your boss tells you to implement an importer for another client. Write that one specific to that client. Once again your boss tells you to implement an importer for yet another client. At this point a pattern has been established. Your boss is a liar and you’ll probably need to implement importers for many clients. Now is the time to refactor the code and generalize the concept of importers.
Here I am about to write my third method in this web service in the span of a few weeks and I'm sure there will be many more data pulls using this web service in the near future [because my boss is not a liar and has told me just that fact ;-) ].  It's time to refactor!
 
So remember the rule of threes!
 
 
PS: Check out Phil's co-authored article on exceptions in .NET.  Good stuff!
 
growled on Tuesday, December 06, 2005 3:53:27 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings
Yes, you too can own an original Xbox 360 box!  Read about it here.
 
growled on Tuesday, December 06, 2005 3:40:07 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings
Pradeep is a little teapot...short and stout...well, you know the rest (via Heather).  ;-)
 
This was extremely common in a group I worked with 3 years ago. We all worked in a 'bullpen' area with shared computers and it was sacrilege to leave your workstation unlocked. 'Teapotting' was the standard form of embarrasment.
 
Back in my original group in 1999 we wouldn't send email (management really hated that), but would really (I mean really) mess up a person's desktop and personal settings.  Mice buttons would be switched, language changed to Turkish, resolution set to 800 x 600 and anything else we could think of.  One of my favorites was taking a screen shot of their desktop with all of the application windows showing, then setting that as the desktop background and minimizing all of the apps.  It would take some people (the particularly dense ones) a few minutes of clicking and even rebooting to figure out why nothing was happening. :)
 
My current group uses the 'donut' method of embarrasment.  Leave your computer unlocked and unattended for any length of time and you'll soon be sending mail out to 45+ people offering to bring in donuts the next morning for everyone to enjoy.  Of course, the real repenters actually bring them in while the sinners don't (yes, I brought them in when it happened to me :-O ).
 
Of course, it's not a good idea to 'donut' your boss.  I don't speak from personal experience, but rather a personal observation of someone else in my group.  ;-)
 
My other recommendations are to set your screen saver to "password protected" and a ridiculously low number of minutes (mine is set to 5).  Also get in the habit of hitting "Windows key + L" when getting up.
 
growled on Thursday, December 01, 2005 6:32:59 PM (Pacific Standard Time, UTC-08:00)
barked at ramblings
You might or might not know, but video games have been a hobby of mine for years. My Xbox is one of my primary past-times when I'm not spending time with my family or working.  Not too mention I'm a parent of a toddler who I hope also shares my enthusiasm towards video games when she gets older.  Hence, I have a vested interest in this legislation.
 
Very interesting legislation (via GameSpot). Here's a short summary of what would happen:
  • ...a prohibition against any business for selling or renting a Mature, Adults-Only, or Ratings Pending game to a person who is younger than seventeen.
  • It would punish violators with unspecified fines...
  • ...authorize the FTC to conduct an annual, random audit of retailers to determine how easy it is for young people to purchase Mature and Adults Only video games and report the findings to Congress. These findings would be part of a larger annual analysis of ESRB game ratings. "This analysis will help ensure that the ESRB ratings system accurately reflects the content in each game and that the ratings system does not change significantly over time," read Clinton's statement.
  • ...allow private citizens to file complaints with the FTC's Bureau of Consumer Protection (BCP) "if they find content to be misleading or deceptive."
  • Not only will Section III of the bill give the FTC the authority to investigate misleading ratings, it will actually require the body "to conduct an investigation to determine whether what happened with GTA: San Andreas is a pervasive problem."
  • ...empower the FTC to "take appropriate action if [Congress] determines that there is a pervasive problem" with the ESRB's rating system.
I found myself nodding "yes" to the first couple of bullet items. Assessing fines against businesses that do not sell games based on the ESRB ratings is fine with me. I think parents should be aware of the games their kids are playing and this is one way of helping to enforce that [barring those parents who just don't care and will buy them anyway].  No problem there.
 
The third bullet makes me kind of go "hmm" in that Aresnio Hall way. I'm all for trending the ratings over time to see where things go as a collective, but time = change. So I don't want the legislation to be stuck in 2005 moral standards when we reach 2040 and society has moved to different acceptable practices. Can you imagine what even some of today's G rated movies would have been rated back in 1950?
 
Bullet four. Yep, agree completely. Let people file complaints for the board/committee/collective to investigate. Why not.
 
Bullet five. Give me a freakin break. One "outbreak" and now they want to investigate the whole g*d d*mned industry?  Whatever happened to innocent until proven guilty?  This is just plain stupid and a waste of resources.
 
Bullet six is a bit tricky in my opinion. Personally, I like the "self-monitoring" aspect of the ESRB because who knows games better than the people who make them and gamers, but I'm also not so naive as to disregard the huge potential for corruption. So I like the idea of the ESRB being monitored by an [supposedly] impartial third-party. My concern is derived from the open-ended statement "take appropriate action." That could be interpreted in so many different ways that I also see a huge potential for corruption/misuse/abuse.
 
All in all, I think it's a decent concept, but I'm not supportive of 100% of the bill's content.