dans.blog


The miscellaneous ramblings and thoughts of Dan G. Switzer, II

Using and Installing SQL Server 2005 Performance Dashboard

Sql-Server-Performance.com recently posted a really well written article on a new feature included in MS SQL 2005 SP2 called the Performance Dashboard. This article was written by Brad M. McGehee and really does a good job walking you through installation and usage of this new Performance Dashboard report.

I just installed this report this morning and it looks very promising. One issue I did run into, is that your database must be set to 9.0 compatibility in order to get the benefits of the Performance Dashboard. Here's a brief quote from the article:

In brief, the SQL Server 2005 Dashboard is a custom report (custom reports are a new feature of Service Pack 2) for Management Studio that gathers data from the many Dynamic Management Views (DMVs) and Dynamic Management Functions (DMFs) available in SQL Server 2005. It is not a replacement for other performance tools, but an adjunct tool to help DBAs better identify and troubleshoot performance problems. In many ways, the SQL Server 2005 Dashboard reports are similar to the many built-in reports already offered by Management Studio.


Happy 40th Birthday Sgt. Pepper!

It was fourty years ago today,
Sgt. Pepper was first aired and played.
While its never really gone out of style,
and its always guaranteed to raise a smile.
So may I introduce to you
The album you've known for all these years
Sgt. Pepper's Lonely Hearts Club Band

Happy Birthday Sgt. Pepper!


New Dream Theater video: The Dark Eternal Night

Dream Theater's released a bootleg "video" for The Dark Eternal Night, a new song off their soon to be released album Systematic Chaos. Everything I've heard off this album rocks. It's their best album since Six Degrees or Scenes From A Memory. Anyway, here's the video courtesy of Dream Theater and You Tube...


Spinal Tap to Reunites!!!

Spinal Tap has decided to re-unite for Live Earth Concert. Marty DeBergi is back with a new online documentary which is approximately 15 minutes long.

Spinal Tap is back, and this time the band wants to help save the world from global warming.


jQuery version of Tetris

I've been meaning to blogged about this for a couple of weeks and just haven't gotten around to it, so I thought I'd do it now so I can get rid of the e-mail in my inbox. :)

Here's a pretty cool jQuery implementation of Tetris. Pretty neat to seem something totally recreational done with jQuery. I've been thinking about just trying to put together some small, cool, mostly useless examples using jQuery just to show off some of the things you can do with a 19k JavaScript library. :)


Did you know?

I got this from my Grandma this morning in my inbox and thought it was interesting.

At 3 minutes and 4 seconds after 2 a.m. on the 6th of May this year, the time and date will be:

02:03:04 05/06/07

This will never happen again.

It's one of those things that makes me go hmmmmmm...


Pittsburgh Steelers WM5 Theme

I just posted this in my last blog entry, but I thought I'd it deserved a separate post.

I finally decided to share my Windows Mobile v5 Pittsburgh Steelers Theme. Here's what the theme looks like:

wm5_steeler_theme_preview.gif
Pittsburgh Steelers WM5 Theme

more…


Maybe I do like my Windows Mobile 5 Phone...

I have to admit, a few times over the past two months or so, I've been tempted to throw my Windows Mobile phone out the car window. It was locking up on my with increasing frequency. I was to the point where I had to soft reset at least once a day, and I was lucky to make it through the day w/out it locking up on me. The worst part about it locking up, is you have no idea the phone is dead until you go to use it. I was also lucky to get through the day without the battery draining on me. It really was all very frustrating.

I finally decided I'd try to do a hard reset on my phone to see if that would improve things. I figured if it still acted the same way, it had to be a hardware problem. I knew I had installed and removed a lot of software after getting my phone—while in the pursuit of getting the phone to work the way I needed it to. Having read various Windows Mobile forums, I also learned that I had done several things that could cause lockups. So I was really hoping the hard reset would fix things.

So, almost 2 weeks ago, I spent the day doing a hard reset and then getting my phone back to working order. I am happy to say that my phone is working better than ever.

more…


jQuery Updates...

A couple of cool tidbits on the jQuery front.

Remy Sharp has written a nice, clear, concise entry on demystifying jQuery's this object. He does a really good job explaining the differences in what this means depending on the context of what you're doing. This, no pun intended, is one of the things that can be a little confusing when you're new to jQuery since the this keyword can either be a pointer to the current DOM element or a jQuery object—depending on the context of your code. Remy's write up should help to clear this up for any new jQuery users.

Ralf S. Engelschall has a released jQuery Plug-in for cross-site AJAX. His plug-in allows you to communicate to a 3rd party domain in a similar manor to the $.getScript() call. The new function he introduced is called $.getScriptXS(). He's even added support for callbacks, so you'll know when the script has loaded. Very nice!

more…


USB Cable Slowing Down My PC...

Ok, this might be the weirdest PC performance issue I've ever seen. Starting sometime yesterday, my laptop starting running extremely slowly. Since it was nearly the end of the day, I just assumed some application (figured it was IE7) had just leaked some memory, and since I was shutting it off soon, didn't give it much thought.

However, this morning I was having the same issue. So I opened up Process Explorer to try and seeing what was eating all the CPU cycles. The only thing eating CPU was the Interrupts and DPCs. This really had me scratching my head. What the heck would be causing my PC to slow down so much?

A quick search on 'Net lead me to a forum post that indicated USB issues could cause DPC CPU spikes. So, I look over at my laptop and notice I still have a USB cable plugged in to my laptop, that is not plugged into anything.

more…


My Spring <br /> 2007 jQuery Presentation

I wanted to post my presentation files for the demo I'll be giving at Spring <br /> Conference 2007 tomorrow morning. This file contains the Powerpoint Presentation, plus all the example file (plus some that I probably won't have a time to get to!)

I probably went overboard on the examples—I seriously doubt I can get through them all in 60 minutes, but hopefully you'll find the source code commented well enough that even if you don't set through my presentation, you can still follow what's going on.

Download "Down & Dirty with jQuery" Presentation

more…


Sending e-mail attachments in CFMX without writing data to disk

One of the many projects I'm currently working on is some code to delay sending of e-mails until a specified window of time. We're generating some report data for clients during the offhours, but the clients want the results e-mailed no earlier than 8am.

Our reports often contain images or other attachments that need to be included e-mails. One issue I really don't like about the implementation of CFMAIL in CFMX is that it requires attachments to be written to disk before you can send the mail. This means if I want to use the CFMAIL tag to deliver delayed e-mails, I would to manage attachments until I'm sure the message is delivered. I don't like that solution, so I set out to see if there might be other ways of generating attachments from binary data in memory. This lead me to researching the JavaMail API—which is the API that CFMAIL uses behind the scenes.

I quickly learned that even CFMX v7.02 still uses JavaMail v1.3.1—which is an older version of the API. One of the issues in v1.3.1 is that it does not include any classes for taking a binary stream from memory and converting to an attachment. It comes with a FileDataSource class—which will read in a file and convert it to the correct data source. This might be the reason that Macromedia/Adobe requires the file to be written to disk.

more…


My jQuery Autocomplete Mod

On a recent project I was working on, I needed an "autocomplete" form field that could do both local data array and AJAX lookups. After doing some searching, I came across Dylan Verheul's jQuery Autcomplete plug-in.

This plug-in did a lot of what I needed, but was still missing some of the functionality I required. So, I just modified the library so it worked the way I needed it to. Here's a list of the changes/enhancements I made:

  • Supports local data array (can now use w/out AJAX).
  • Limit dropdown to XX number of results (good for limiting the results to users)
  • Autofill pre-populates text box as you type
  • New findValue() method can be used to programmatically determine if the value in the box is a valid option. (Useful for verifying the text entered is an existing value option.)
  • Dropdown options now correctly re-position themselves on each display (which means they adjust for changing to the DOM)
  • Dropdown box defaults to the width of the input field its attached to (you can manually specify a larger width as well)
  • Better emulates Windows autocomplete boxes (for example: hitting delete and retyping the same box will now bring back the dropdown menu)
  • Miscellaneous bug fixes

more…


Associating Parent/Child Custom Tags (UPDATED!)

UPDATE:
Earlier today I posted a solution to this problem, but after reading a comment by Doug Hughes, I've found a better way to solve this problem, so I'm updating the code. This updated code uses the parent tag as an iterator to loop through the results, which gives Mark the output more to what I think he was after.

Mark Drew posted a question on his blog wondering how you might pass data to a custom tag that acts as a loop. In his post, he's trying to get the following code:

<cfimport prefix="cms" taglib="tags">
<cms:text value="bob">
<cms:loop from="1" to="10">
<cms:text value="bob">
</cms:loop>

more…


Windows Live Search for Windows Mobile is way cool!

Work recently purchased me a Verizon XV6700 Pocket PC (running Windows Mobile 5) so that I could better keep in touch w/our server farms. It's been an interesting 2 weeks playing w/the phone. I'm still learning the ins and outs of it using a PDA phone. It's definitely powerful, but it lacks a lot of "normal" cell phone functionality out-of-the-box. I'm planning on writing a full review later.

Anyway, Microsoft has released a version of Windows Live Search for the PPC. It's pretty darn slick. It's a shame you can't use aGPS with the mapping functionality, but this program runs very well on WM5. I'd definitely recommend checking it out.

I've heard the J2ME version doesn't work as well as Goolge Maps for J2ME, but the version designed especially for Windows Mobile runs exceptionally well (at least so far, I can't say there aren't any slow memory leaks w/my limit usage.)

more…