dans.blog


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

New Van Halen Single Blows...

I heard the new Van Halen single, It's About Time, on the radio this morning. All I can say is "Wow... That song really sucks..." It's got to be the worse song Van Halen's ever written. Not sure how a song like that gets released, let alone released as a single. Is Eddie's ego so strong that people were just afraid to tell him the song sucks? It's a real shame to hear a band that's put out some classic hard rock songs end up doing crap like this.

NOTE:
As big of a fan I am of Extreme's work, I never heard the Van Halen album w/Cherone. I know Van Halen fans don't even consider that a VH. I suspect they'll think the same way towards this single.


Update to component() UDF...

I made a modification to my component() UDF that I blogged about last year. I basically added a try/catch to spit out a friendlier error message if the component isn't loaded when passing in a relative path.


What I'd Like To See In Blackstone: Request-based Mappings

Ok, in honor of Tim Buntel's new blog, I'm going to start a little series of blog entries entitled "What I'd Like To See In Blackstone." I'm going to start off the series with a feature I've wanted in the language since CF3 first came out and I started using CF-based custom tags, and that's the ability to create a request-based mappings.

I'd love to be able to create dynamic mappings on page request for both the location of custom tags and for general mappings—which would be especially useful for referencing components. What I'd love to see is a syntax like the following:

<cfmapping
    type="alias"
    logical="/com"
    path="c:\root\site\build\com\"
    />


<cfmapping
    type="customTag"
    path="c:\root\site\build\customTags\"
    />

more…


Tim Buntel's ColdFusion Blackstone Blog

Apparently Ben Forta has finally convinced Tim Buntel, product management for ColdFusion, to open up a blog covering Blackstone—the next version of the ColdFusion product.

There's nothing much but an introduction and a picture in the opening post. Hopefully Tim will make this a good source for what's coming in Blackstone—the good stuff only known by those currently under NDA.


Gas $2.33 Per Gallon...

I had to fill up my 4runner this morning. I like to keep premium in the tanks, and "premium" sure is the right word for that gas, 'cause that's what it costs. I paid $2.33 a gallon for gas today. That's just ridiculous. I need to get into the Oil business.


Lunch w/Dad...

My dad was in town for some blood work today, so we hooked up for lunch. We decided to meet at El Vaquero's—which is one of the best spots in Columbus to get good authentic Mexican food. The foods always good there, and they make the salsa and chips fresh. Anyway, it's one of my dad's and my favorite spots to eat, so it was a pretty easy decision to eat there (plus, neither of us have eaten there in a while.)

After lunch, dad stopped over to see the dogs. I think he was a little upset he didn't get to spend more time with them on Mother's Day—as he was stuck working the store most of the day. The dogs smothered him when he sat down on the couch—both of them licking his face vigorously. Nikki was a bit to enthusatic and manage to nip his ear enough to draw blood. She doesn't bite hard but if you pull away when she's biting, her teeth are razor sharp.

Anyway, I was glad he stopped by for the visit.

more…


Damn Dirty Dogs!!!

The dogs decided to play in the mud today. Maddie used to be a Yellow Lab, looks like she wanted to see what it was like to be a Chocolate Lab. :)

I ended up just pulling the hose in from the garage and stuck it out the window to clean them off a bit before bringing them inside. That technique worked suprisingly well.

dirty.dogs.jpg

more…


Breast Baring Popular in 1600s...

Women of the 1600s, from queens to prostitutes, commonly exposed one or both breasts in public and in the popular media of the day, according to a study of fashion, portraits, prints, and thousands of woodcuts from 17th-century ballads.

Since Fashion styles seem to go in cycles, when is this cycle going to come back into style? Maybe Janet Jackson was just trying to bring back 17th-century fashion when she exposed her breast at the Superbowl, then again maybe not. :)


qForms Build 138 Released!

Well, since v2 is taking longer than planned, I'm releasing build 138. There's a few fixes that I've made and I've added a couple of useful properties. The highlight of this build is that you can now toggle off validation for a form by setting the qForm object's _skipValidation property to true, the validation rules will be ignored. This will be useful for those users looking for a way to "Save & Exit" from a form, without applying the validation rules. Here's a list of what's changed:

[-] Fixed a bug in the is/validateFormat() method which affected masks
    which contained 3 or fewer characters.
[-] Fixed bug in Opera v7.x where single checkbox elements where not
    working w/the setValue()/getValue() methods. I had fixed this in
    the v2 builds already.
[-] Fixed bug w/validateLengthGT and LT if the value was equal to
    the specified argument than no error was thrown (and it should
    be).
[+] Added qFormAPI.styleAttribute which allows you to specify a single
    property to apply a style change to. This defaults to "backgroundColor".
    This provides a quick CSS hack until v2 is released. If you change
    the qFormAPI.errorColor to a valid CSS property value you can do
    more than change the color. For example:
	qFormAPI.styleAttribute = "border";
	qFormAPI.errorColor = "1px dotted red";

    NOTE: This is experimental at best, you need test in different
          browser.

[+] Added obj._skipValidation property which allows you to toggle
    validation off/on for an entire form. Setting the property to
    true will cause the validation routines to be skipped for that
    form object.
[+] Added the validation_addon.js library. At this point, this contains
    one additional validation method called validateAtLeastOne(), which
    you can use to confirm that at least one field out of a list of
    fields contain a value.

As always, you can download the latest version of qForms from http://www.pengoworks.com/qforms/download/.


Mexican Gov't Releases UFO Video

It seems the Mexican Air Force has released a video of what they describe as a UFO. The video was apparently shot well doing routine checks for drug traffickers.

Articles with Videos

Mexican Air Force Pilots Film 11 UFOs
Mexico Releases Video Of Objects Surrounding Military Plane
U.F.O. Close Encounter

more…


Mozilla Firefox Extensions Every Developer Needs!!!

Ok, I thought I'd compile a little list of Firefox extensions that are useful for any web developer (and a few that are good for any user of Firefox.) For those of you who read my blog, you'll know that I've switched to Firefox as my primary browser—it's just fantastic. Anyway, here's a list of the extensions you shouldn't be without.

General Extensions (Stuff For Everyone)

  • Tabbrowser Extensions
    This might be the best of the extensions as it makes Firefox and Mozilla's tab interface work the way it should work out of the box. First, it adds the ability to re-order the tabs by dragging and dropping the tabs. Oddly enough, I find myself re-ordering tabs quite a bit. Next, it will remember all your open tabs when you close Firefox and will automatically re-open them. I love this feature, since there are 3 or 4 sites I tend to have open all the time. Also, if you ever need to reboot while you have a ton of tabs open, you don't have to worry about trying to restore all your windows after reboot—just close Firefox and reboot your PC. The last feature I'm highlighting is you can configure the extension to open all "new window" links into a new tab instead. This extension does more than what I've highlighted, but these are the key features that make it a must download.
  • Bookmarks Synchronizer
    Allows you to synchronize your Firefox bookmarks among different installations of Firefox. I use it to keep my laptop and desktop in sync.
  • RSS Reader Panel
    This extension adds an RSS Panel to Firefox. Just set up a bookmark folder containing links and folders to all your favorite RSS URIs, and hit [ALT]+[R] to bring up the RSS Panel. The panel is split into two sections. The upper section shows the RSS feeds and the lower section shows the snippets from the RSS feed. Click on the headings in the lower section to bring up the actual RSS entry.

more…


Two Utilities No Windows User Should Be Without...

Mark Russinovich, over at Sysinternals, has written written a ton of useful utilities—two of which no real Windows user should be without: Process Explorer & TCPView.

Process Explorer is a replacement for the Windows Task Manager's "Processes" tab—actually it really could be a replacement for the entire Windows Task Manager. This program adds some functionality really missing from the Windows Task Manager. First, it can show you the entire command line path to the all the process running. Next, it will show you all the handles and threads opened by the each process—and it's even searchable. This is great for tracking down rogue process or finding out what problems are locking a file down. This is one of the first things I download when a friend is having PC problems. I'll use this to discover various process that shouldn't be running (such as Trojans and Spyware.) It's extremely helpful. Best of all, no fancy install, just download and extact it to your system.

TCPView was designed to show all the open TCP & UDP ports currently on your computer. Just like Process Explorer, all this information is updated in near realtime (for actual realtime spool of your traffic, check out their free tool TDIMon.) With TCPView, you can quickly located what programs may be listening for remote traffic or for what programs may be trying to connect to remote servers. This is especially useful for finding programs that should not be accessing the Internet—such as trojans and spyware.

more…


Tyson The Skateboarding Bulldog...

I first saw Tyson the Skateboarding Bulldog a few months ago. While it was pretty amazing, he really couldn't do much w/a short stage. Fortunately his owner(s) have put up a web page with both some pictures and movies. You definitely need to check out the two movies—they're great. I'd also recommend reading the FAQ, seems the owner's have no clue how to teach your dog how to skateboard since Tyson taught himself.

Video of Tyson skating in October 2003
Video of Tyson skating in April 2004


Entire Tech TV Cast Fired...

I came across a post on Gizmodo about the firing of the entire staff of Tech TV. When the merger with G4, owned by Comcast, was announced, I tried to be optimistic about union. G4 really sucks—they just don't have any interesting programming and I just can't get in to any of their programming. I was hoping they combine the programming of the two stations and end up with a better product than just Tech TV only could produce—afterall, there's not much of a need for two computer-related stations. Anyway, it sounds like the majority of the Tech TV programming will go away after this announcement. I hope I'm wrong and that Comcast doesn't screw this up like they're apparently doing. If they can keep The Screen Savers, Tech Live and Fresh Gear groups together, I'd be happy. Unfortunately, I don't think it'll happen—especially if all the employees have to relocate to L.A.

TechTV told 285 San Francisco employees on Thursday that their jobs are being eliminated, a move that was widely feared by workers after Comcast announced in March that it would acquire the technology cable channel.

Comcast will merge TechTV, owned by Paul Allen's Vulcan Ventures, with its own G4 video game network when the buyout is finalized next week. David Shone, a spokesman for G4 TV, said the company plans to hire 80 people from the San Francisco office to work at the game channel's Los Angeles headquarters. Employees were given two months notice and various severance packages, he said.

Apparently there are two online petitions you can sign:
Reverse G4 / Comcast Decision to Fire Entire Staff of TechTV
Save TechTV

more…


Dynamic SQL Updates Using COALESCE()

I tend to forget just how many commands are built-in to T-SQL. So often the stuff I do in the database is so basic, that I forget that there are often many different ways to approach the same problem and I often just forget that certain functions even exist.

I was reading through my SQL Server 2000 Unleashed book the other night, and came across the COALESCE() function—one of those functions I had forgetten about. In a nutshell, you can provide the function an unlimited number of arguments and the first argument which isn't equal to null will be the value return from the function. The funny thing is, I had been trying to debate on the best method to re-write a particular stored procedure and the COALESCE() ended up being a very elegant solution.

The problem I was faced with, is I wanted to write a single stored procedure that I could use to update any single column or combination of columns based upon the primary key. In the past, I've always just written out a nasty looking string and then passed that to the execute command or the sp_executesql stored procedure that's included in SQL Server.

more…