Jason Salas' WebLog

On-air and online: making people laugh, making people think, pissing people off


ASP.NET sites that kick ass

Pals with blogs

Podcasts I listen to

June 2004 - Posts

When I catch the person who wrote the virus my PC got....
My workstation at work apprarently has some new weird virus on it that causes instances of Notepad to prematurely and irreparably close on its own.  Any good programmer, regardless of their IDE preference, will have Notepad open at all times, so this is a major pain in the butt.  :(
Posted: Jun 28 2004, 02:09 PM by guam-aspdev | with no comments
Filed under:
My site just published its news 10,000th article

I've real psyched about the fact that the site that I built for my company just published our news 10,000th news article in a little more than four years: http://www.kuam.com/news/10013.aspx

It's a milestone I always to be around here for (I enjoyed the allure of the 5-digit thing), and it feel nice that we've got that much content on the web.  It's truly a credit to the team of as many as 6 reporters we've had at a time working on stories.  Whoo-hoo!

Posted: Jun 25 2004, 10:48 PM by guam-aspdev | with no comments
Filed under:
ASP.NET Web Matrix ate my code

Now, this isn't so much a rip on Microsoft ASP.NET Web Matrix as it is on my own company's negligence into proper infrastructure and IT planning.  Short story ==> power outage, data corrupted, work re-hashed. 

Exhaustive story ==> earlier today, I was working on a code module for an upcoming project and was making a minor tweak to a page displaying customized data through cookies and database calls.  We had a semi-large power spike, which, of course, due to the skimpy fact that no one around here runs any UPS or battery back-up systems of any variety - thanks so much - my workstation was kicked totally offline, while the file in question was open in Web Matrix.  Upon rebooting, the file I was working on was blank when opened, despite being 6K in size.  After messing with it some more, I figured it got corrupted and gave up...I re-wrote the thing from scratch, trying to painstakingly re-create the logic, in about 45 minutes.  Thank goodness it's still a test module I've been working with for the last 2 months.  I can't imagine how I'd get around working with corrupted production code that I hadn't seen/touched in months.

At any rate, I'm not sure if this is something common to Web Matrix, as this has never happened in any other program in similar situations.  I've read stories in the past about cannibalistic IDEs, but I wasn't able to correlate power outages and data corruption. 

Anyone have a clue?

SQL2K bug: fields default to NVARCHAR if SqlDbType enum not explicitly set (aka, "install a HotFix to fix one problem, cause two more...")

I think I may have figured out the solution to my recent conundrum with SQL Server 2000 that had me stressed and depressed over the last couple of days.  In a nutshell, after a HotFix was installed on a SQL2K database server I have space on, I was unable to perform INSERT or UPDATE queries on database table of type TEXT, when trying to either create or modify records with more than 4,000 characters of data.  While it was frustrating as heck, it seemed too rigid to be random, so I did some snooping.


The HotFix was intended to solve a known problem of not being able to run UPDATEs against TEXT fields, but in so doing, caused another headache entirely: http://support.microsoft.com/?kbid=839523


Apparently this is a semi-known problem, in that a certain HotFix forces SQL Server 2000 to be a lot more stringent in requiring explicit declaration of data types and data lengths for parameters in stored procedure.  In my client code, I was initially using the overloaded constructor of the SqlParameter object that took as arguments only the parameter name and a value, without specifying a value from the SQLDBType enumeration or length of the parameter (which in my case, needs to be TEXT and 16 (or 2147483647), respectively):


System.Data.SqlDataAdapter.InsertCommand.Parameters.Add(new SqlParameter("@parameterName",parameterValue);


It appears that after the HotFix is installed, if the client doesn’t syntactically set the type and length of data for a parameter, SQL Server and/or .NET will default to a type of NVARCHAR, which has the 4,000-character limit.  This all makes sense.  I’m going to now need to modify the code to straight out declare what’s going in the SPROC: 


System.Data.SqlDataAdapter.InsertCommand.Parameters.Add(new SqlParameter("@parameterName",SqlDbType.Text);

System.Data.SqlDataAdapter.InsertCommand.Parameters["@parameterName"].Value = parameterValue;


It’s a minor change, and it sucks that I have to make it after the code had worked flawlessly over several thousands executions over several months, but c’est la vie!  Better thay than have to rebuild my DB from scratch or switch to a new server.  Changing the client code evidently is the only known fix at this time: http://support.microsoft.com/default.aspx?scid=kb%3ben-us%3b827366 


At any rate, I’m hoping this will hold – it’ll be all back to business as usual if it’s stable.

MS HotFixes/patches possibly stunting DB activity for certain amounts of data

I’m wondering if anyone can shed light on a problem I’ve noticed that's really made for a major thorn in my side.  I recently had a Microsoft patch installed on my server, and now for some reason, trying to run INSERT or UPDATE queries against the SQL 2000 database are severely limited.  I constantly get the error:


“Error: A severe error occurred on the current command. The results, if any, should be discarded.”


I think I’ve isolated the problem to be that I can’t add new or modify existing records that try using a field which is of type TEXT, but now can’t be longer than 4,000 characters, else the error fires.  This is really weird, as I’ve used the same ASP.NET script to call a stored procedure to INSERT/UPDATE records thousands of times before with 100% success.  


I have a feeling this might have something to do with the patch, but has anyone come across this problem specifically, or know for sure which patch(es) cause it?  Why all of a sudden would a TEXT field be so limited in capacity?

VH1's "I Love the 90's" is going to rule

I nearly fell off my bed when I saw the teaser ad for the latest installment of VH1's best series ever, “I Love the 90's“.  It's basically a spoof on the seminal “Beverly Hills 90210“, with the series' mainstays, Michael Ian Black, Hal Sparks and the oh-so-babealicious Rachael Harris lampooning the show that everyone watched.  (Oddly, Mo Rocca wasn't in the spot). 

The best thing about these shows is that despite their phenomenal success (reportedly, the format for the series was developed on a concept originally used by the BBC), they've not strayed too far from the basic model that makes them so much fun to watch.   VH1's meteoric success is largely attributed to MTV Entertainment's Brian Graden, the former producer who made South Park a notorious household name.  I'm hoping Rich Eisen, the former ESPN anchor and now NFL Network lead man and ESPN's Stuart Scott are in there, too.  (What can I say?  I love TV.)

With me now having turned a spry 30 years of age, the network's pretty much covered my entire lifespan with the “I Love the...“ series.  I swear, I've seen each episode at least 50 times, and I'll come in late to work if it's showing as I'm heading out the door.  And I'll still buy them when VH1 finally releases them on DVD.

And while VH1's at it...gimme a shot at being a panelist!  I've got the chops, memory and wit to kick ass on that series!  Not ever having done drugs of any sort, my at-the-moment-still functional brain is chock full of useless trivia from the 90's!

Customers bitching? Bitch back! - delivering premium service by way of reverse psychology

Many people don't realize my background is in retail, and it's upon this foundation of managing the customer relationship that I often draw when thinking about how to serve our audiences better.  I was brought up to have the state of mind that when a customer complains, you cower and belittle yourself to their satisfaction, now matter how ridiculous or outlandish their request, lest they solicit a rival firm.  They are the customer - therefore they have achieved deity-like status for no other reason than having walked in the store. 


Complete and utter excrement.


It's a very interesting change now that I'm in the broadcast media business...the rule of "the customer is always right" doesn't necessarily apply.  A theory I developed years ago was that people often exhibit honest cries for help beneath the guise of a formalized complaint, be it verbal, written, etc.  Further, I've taken note of the fact from a customer service standpoint, most people, contrary to popular belief or much TQM teaching, don't want to be pitied, told "yes, sir, you're absolutely right", get free stuff out of it, receive a discount or otherwise have their asses kissed.  They want to know you care - about them and about the integrity of your operation, as well as providing them with premium service.


We're not in the business of appeasing each and every need and desire a "customer" - a viewer, listener, online user - may have...it's impossible.  I learned very early on into my television career that it's perfectly acceptable to tell someone to take a long walk off of a short pier if they don't like what you're doing.  This is rooted in the Lincoln-esque fact that it's impossible to keep absolutely everyone happy all the time.  And broadcast media, by its nature being the most public of forums, is subject to harsh criticism in tsunami-like swells. 


Aggressive complaints warrant aggressive responses, if the intent is the retention of business.  I've noticed that people more than often than not appreciate a hard-and-fast rejoinder rather than pity, sympathy, or total naive agreement.  You voice a concern about a perceived quality level of our services (or lack thereof), to which I offer a structured rebuttal: explaining our stance, conceding some of your points and accepting your suggestions, but also blatantly stating where you're wrong and are making woefully inept and admittedly ignorant assumptions about how things work internally in my organization.   I also let you in on a few justifying industry secrets so you're in the know.  I lastly bring harsh reality crashing down on you, putting you in your place and reminding you that in the grand scheme of things, your business is valuable, but in the end, if we're to lose it, it's of little consequence. 


But this isn't a make-you-feel-bad-fest just for the sake of hurting someone's feelings.   This is quality customer service, albeit unorthodox.  At the end of the counterargument, I sum everything up and let you know how your business is valued and how we'd like to retain your patronage as a customer.  I also make myself available for further comment and/or explanation of the issue.


I've noticed this approach works very well with people.  Many viewers I've had such discussions with have, as a result of such debates, become loyal customers of ours, because we took such a forthright stance at defending our position and showing concern for them.  It shows our passion for what we do - and that's something no storefront can accurately display. 


My role in the media now mandates that I have to reply to this type of criticism on an almost daily basis about people challenging everything in our business from our use of graphics, to our style of journalism and editorial work, to our strategic business decisions.  So, I've gotten a lot of practice at doing this sort of thing.


And granted this type of tactic isn't for everyone, and only those that really know how to prefect the craft of customer service can pull it off without being outright rude.  For those people, the gambit pays off, and nicely so.  You develop a deeper relationship with your clientele.  You also have to be ready to bite the bullet and be willing to lose the argument at times.  And this certainly can't apply in each and every industry out there, but it does work well in several situations.


So if you ever call, write or fax and get such treatment from me, it's not personal...just business.

Posted: Jun 13 2004, 11:14 AM by guam-aspdev | with 6 comment(s)
Filed under:
The bane of my existence

I wish I could be more positive now...I really do.  I've been in better spirits in my days, and at the moment I'm stressed and depressed over my company's coverage of this year's elections, for which I'm doing a multitude of multi-platform subsystems.  I've wrote about this ad nauseum, profiling the fact that as a media outlet, I'm writing apps to do (a) marketing and promotions for the candidates and (b) election night results tabulators.  At any rate, it's got me pulling 20-hour days again, and what little time I'm left with is largely spent thinking of what to work on next.  And being a one-man production shop, plus having the responsibilities of anchoring news and sports every night, I'm far past the point of this beginning to wear on my psyche.

I'm faced with the challenge of building something really cool, due largely to the fact that as a TV station, a goal of ours is always to outshine our previous production.  And by far, our coverage of the local elections in 2002 was the most outstanding thing we've ever done, integrating TV, radio and the Web.  At the time, ASP.NET was just past RTM, so I admittedly used a combination of ASP 3.0 for the presentation tier, and ASP.NET and XMLHTTP for the BLL.  For those of you that logged onto our site in 2002 and enjoyed it, thanks.

In fact, one of the reasons I think I pulled off writing my company's internal site search engine in a day was that I've been so focused on doing everything and anything election-related, that it was a nice break to do something different and have a fresh problem set in mind.  Now, it's back to the grind of doing candidate profiles and whatnot.  It's actually great fun, and working with the combination of vast amounts of article-style data and numerical voting, all wrapped under the business logic of election rules and regulations is really fun.

This project also marks my first foray into the framework development arena, wherein everything I'm building can be packaged to a certain degree and shipped somewhere else to be used in a different environment.  I'm a zillion times more paranoid that I was in 2002 about security, performance, reusability and other programmatic matters, so the insane time and production schedule I'm putting into this is of my own doing - I'm shooting for perfection.

I'm damn sure glad that this stuff only happens every other year.  But time marches on, dragging me along reluctantly behind.  Fortunately, we're on schedule and we'll hit our release date with time to spare.  And hey - I've had only to sacrifice my sanity and social life in the process.  :(

Zach replaces Stat Boy on "Around the Horn"?

A few days ago I blogged about the knockout hilarity that was the cameo of Zachariah Selwyn on ESPN's equally knockout hit "Pardon the Interruption".  Zach is, of course, the fan favorite for ESPN's first foray into reality television, "ESPN Dream Job". 


Well, because of the time difference between Guam and the U.S. East Coast (I'm 14 hours ahead of NYC), I woke up a tad late and didn't see the start on today's "Around the Horn", but I was really happy to see Zach hosting the show, which has, to date, been staffed single-handedly by Stat Boy (aka, Tony Reali) after the unceremonious departure of two of the show's founding mainstays, Max Kellerman and The Disembodied Voice.


Zach, proving again that he is the man, held his ground and kicked major ass.  His hosting was accommodating and timely and he dropped some gems of sarcastic quips that had me rolling (i.e., "Larry Bird isn't white, he's clear...and is that an adjective or a noun?")


Having neither the ability to see into the future or within the minds of the show's producers, I'm obviously not privy to plans on whether Zach is replacing Stat Boy full-time, who admittedly was doing a lot of work doing both ATH and PTI.  I loves me some Stat Boy, as Tony's a veritable cornucopia of sports knowledge, but give Zach the nod.


So once again, Zach rules triumphantly, proving the one thing I predicted ever since he debuted on Dream Job - that regardless of his success/failure as a prospective anchor for ESPN's flagship show SportsCenter, he'd win in the end, and that network would have to be seriously stupid and/or high not to stick him stick him somewhere.

Problems getting indexed by Google News service

Is anyone else out there having trouble getting the at-the-moment beta Google News product to index their site?  The funny thing is that it worked for my site just fine, getting my company’s stories online within 15 minutes of us publishing them, but then one day it just stopped, and they haven’t been able to get them back.


I wrote to their engineers about 6 weeks ago who said this is a known problem and that they’re working on it.  But nada as of yet. 



Posted: Jun 09 2004, 06:26 PM by guam-aspdev | with no comments
Filed under: ,
More Posts Next page »