Ride your music

Like a lot of geeks out there, I have my music collection nearly 100% digitized.  The ritual for the purchase of a new CD is to unrap it and immediately rip the CD into my MP3 USB hotswappable HD and then put it on my Creative Zen MP3 player.

(grumbles that my Xbox360 won't address my USB hotswappable HD...)

I go through phases where I listen to a "set" of stuff for a while and then periodically blank out my player and start over with a new set.  This is because I can't fit all of my music onto my 30 GB player.  (yes I have that many CDs)

Now, thanks to Wired Magazine and my dad's attention to detail, I have a new way to enjoy my music.  Its called Audio Surf.

Its published on the valve steam platform and downloadable for 10 bucks.  If you love music, you'll love this game.

Essentially this game creates a roller coaster based on the music track fed into it.  Climbing up when the tempo is slow, racing down when the tempo is fast. 

On the "Mono" level, you have colored blocks which if you collide with will give you points and grey blocks which will block you from gaining points.  The density of the blocks is dictated by the music.  Some songs have a higher density of blocks than others.

The more blocks, the more difficult the game EVEN if the coaster is uphill the entire way.

The most interesting track I've played so far has got to be the first movement of L. Beethoven's Ninth Symphony.  It was 15 minutes of slow ups and fast downs with a LOT of traffic.

Most difficult track so far was I'm Shipping Up to Boston by The Dropkick Murphys.  The song itself is rather short but its 100% downhill FAST and with a high traffic density.

If you enjoy racing games, if you enjoy music, you'll definitely enjoy this game.

Check it out...the free demo will get you hooked I'll wager.

RIP Mr. Carlin

One of my idols has taken his celestial transfer.

George Carlin has died at the age of 71.  He was one of my all time favorite comics.  His acidic wit, His appreciation for euphamisms (sp?) and his rant of "stuff" are classic moments of comedy.

George, you will be missed!

 

Someone else has found me...

Yet again my blog has yielded a contact from my past.  At least I think its a contact from my past.  However, when I tried to email this individual back I got a "undeliverable" email response from the mail server.

So, this post is for that person.  If you are still reading, yes I am sweatme.  However, I'm terrible with names, better with faces so you may have to email me again with a re-introduction.

(shrugs)

 

Movie Geek strikes again

As some of you may know, aside from geeky pursuits like WoW, WoW TCG, and other random video game obsessions, I am also a MAJOR movie geek.

For example, some people play fantasy football..I'm in fantasy movie mogul leages at FantasyMoguls.com.  In fact I won both of my leagues for the Feb->April season. 

So when I saw this on ThinkGeek.com, I knew I had to have one.  Well, at least I'm lusting after it anyway.

Unfortunately its a little pricey for me at the moment and I am also the proud owner of a Tilly Hat which ROCKS outloud.  It was a bridesmaids' gift and I can't imagine replacing it.  I wear it ALL the time.

BUT still...an Indy Fedora--Come on...that's just COOOOOOOOLLLLLL.

(suppressing urge to whip out credit card).......

 

 

ASP .NET Framework testing?

The company I work for is in the process of converting management of our website from a manual dev process into a Content Management System delivery architecture.

This is good news for me because it makes testing more technical and therefore more interesting.

However, I am in an arena of technology I'm not as comfortable with and I am looking for some suggestions.

First and foremost, does anyone have any links to resources online for functional testing strategies for testing ASP .NET Master Pages & templates?  The primary focus of our QA efforts going forward are going to be Master Page changes & template changes & additions to the CMS structure.  What we need to make sure of is that we are exercising the templates and not the CMS application for the creation of content. (Does that make sense??)  Anyone have any suggestions for test methodologies?

Secondly, does anyone have any links to resources online for regression testing strategies for this type of implementation?  I need to design a scope document that describes what QA will be testing and the means to do so

Suggestions, thoughts, comments from the Geekdom are welcome and urgently needed.

Why This Geek Hates Daylight Savings Time

I hate daylight savings time.  I mean I REALLY hate daylight savings time.  But this year, I've discovered an entirely new reason to hate daylight savings time aside from the change in sleep patterns and disruption in my seratonin levels.

I have a six year old son who is in the first grade at the local elementary school.  They start school at 7:30 in the morning.  And in order for me to get him up, dressed, fed & at school by 7:30, I have to get up at 6 AM and get him up at 6:30.

This means he's got to be in bed by 8 PM otherwise he's the crankiest kid around (makes Damien look like a saint).

There's only one problem....now that the clocks have been clicked forward an hour....he went from going to bed just after sunset and getting up just at dawn..to going to bed an hour before the sun sets and getting up an hour before it rises.  TOTALLY BACKWARDS, in my estimate.

Does anyone know how hard it is to get a child to go to sleep when its still light out??  AND the neighbor kids are still playing outside!!?????

This whole we're gonna change the time to give more light in the evenings to save energy is total bunk.  I mean, so now instead of turning the lights on in the evenings, I'm turning them on in the mornings.  You just moved the problem...how does that save energy.

I WISH the government would just leave the clocks alone.......

 

A Recent QTP Triumph!

As some of you may know, I am a Software Automation Engineer using Mercury QuickTestPro as my automation development environment.  The company I work for is a web-based business with online application processes.  One of the challenges of this online application process is that the business owners like to "tweak" these applications by changing question order, text, and in some cases question sets.

To do this they create different "versions" of these forms.  So if you navigate to the website and request a form its possible to get any one of several dozen versions of these forms.  This poses a problem for automation because in traditional "Object Repository" automation scripts, QTP must know what objects are going to be on a particular page or not.  Historically the way we've dealt with fact is to only automate one version of the application.

Problem with this approach is that we cannot test natural navigation to the application from the website's homepage.  We cannot leverage the automation engine to test a new version of the QF.  Which results in poor automation coverage of the code base which is deployed into production.  So what's an automation engineer to do?

Well, she takes a page from the giants whose massive shoulders she stands apon and comes up with a new approach.

My colleagues here had started the process of creating a new approach to the automation of applications.  Basically what this approach would do is instead of assuming what questions would be on any given page of the application, the automation script would ask the Page itself--What questions do you have?  and then based on a bank of possible questions, answer those which were presented.  Its really an elegant way of handling the problem.  Using the Page's Document Object Model(DOM) we can ask it, what questions are you showing?  And then respond accordingly.

There was only one problem with this approach.  There are times when after a question is answered on a page, several more questions may appear.  An example is Address.  If the applicant says they've lived at the current address for less than two years, we display a set of questions for Previous Address.  So if the automation script asks the page--Give me all the questions you're showing and then fills them out, it wouldn't know that new questions had appeared.

We tossed around potential solutions to this problem for weeks.  Should we create an Array containing the possible questions and mark those we've answered???  It seemed like it was a log jam we couldn't get around.  Until a solution presented itself from the most unlikely of places--MythBusters. 

I know what you're thinking, "What does Mythbusters have to do with writing QTP code?"  Well, a few weeks back I was watching an episode of Mythbusters where the hosts Adam & Jamie are testing the myth of the "killer playing card" and they decide to do a build off.  If you're not a fan of the show, this is where Adam & Jamie will each build a rig to test the myth.  Adam goes off and starts to build a mechanical throwing arm, where as Jamie builds a rig that looks like a miniature version of a football throwing machine.  Adamfaces a myriad of design problems while building this really complicated throwing arm.  In an aside, Jamie makes the following comment, "If the design is overly complicated it is normally a sign of a weak engineer.  Simple designs are best."  This is the engineering equivalent of Occam's Razor.  (You know..all solutions to a problem being equal, the simplest is probably correct?).

When he said this, a gong went off in my head.  DUH!!  Make this problem simple..find a simple solution and go with it.

So...Here's what I did.  I built two functions.  One function fills the page out initially.  The second function verifies the questions are answered correctly based on the set of known good answers provided in the script.  If the verify check fails, the second function will answer the question again and then set a flag saying--I've changed something on the page and you need to run verify again.

And PRESTO--A version independent platform for testing customer applications is born!  And I can run it on any version any time.  (grin)

The action that fills out the application looks something like this:

 

 Do Until (blnXSellFound = True or intLoopCount > 10)
    RunAction "R_FlexPageFill", oneIteration, blnXSellFound
    intLoopCount = intLoopCount + 1
    'Putting a Wait statement here to allow hidden questions to
appear before running FlexVerify
    Wait(2)
 
    If blnXSellFound = False  Then

       Do Until (blnVerifyChange = False or intChngLoopCount > 10)

          RunAction "R_FlexPageVerify", oneIteration, blnVerifyChange
          intChngLoopCount = intChngLoopCount + 1
       Loop
       blnVerifyChange = True
  
 
    End If
Loop

EDIT--I'll post the code that does the "DOM" inspection and manipulation in a future post.  Stay tuned. 

EDIT2--In my haste to post this the other day, I got the names of the Mythbusters backwards.  In the interest of "correctness" I have fixed those names in the narrative above.

Personal Update from the World of MES

Sorry I've been away for so long its been a crazy couple of months.

On the personal front, starting during Thanksgiving Break, my parents decided to move from where they were living to be closer to me and my family.  They made the decision to explore the option of moving up to where I live on November 21, 2007.  On February 8th 2008 they signed the papers to sell their house and then on February 13th 2008 they signed the papers to purchase a house 6 MINUTES from my own. 

So from mid January, I was happily tied up helping them find a house to purchase and then arranging the move etc.  Needless to say, I must give mad props to the Realtor that helped them buy the house up here.  I've never seen a woman work harder for her clientele.  She was awesome!

So now my folks live literally around the corner from me.  I have to say, I think the arrangement is FRICKIN' awesome.  My folks in my admittedly biased opinion are very groovy people and its cool to have them close now.

So unfortunately being engaged in pressing personal business has kept me off the blog front.  However, I'm back to blogging again.

So look for more personal stuff & some geek stuff too.  In fact I have a HUGE QTP success to rave about but that's going to be a seperate post. 

A Moment of Silence from the Geekdom

I know its been a LONG time since I've blogged.  Just been a lot of stuff going on in the World of MES lately.  I'll explain more later.

However, I wanted to share this with the Geekdom and ask for a moment of silence in respect:

Gary Gygax, Dungeons & Dragons creator, dies

MILWAUKEE, Wisconsin (AP) -- Gary Gygax, who co-created the fantasy game Dungeons & Dragons and helped start the role-playing phenomenon, died Tuesday morning at his home in Lake Geneva. He was 69.

He had been suffering from health problems for several years, including an abdominal aneurysm, said his wife, Gail Gygax.

Gygax and Dave Arneson developed Dungeons & Dragons in 1974 using medieval characters and mythical creatures. The game known for its oddly shaped dice became a hit, particularly among teenage boys, and eventually was turned into video games, books and movies.

Gygax always enjoyed hearing from the game's legion of devoted fans, many of whom would stop by the family's home in Lake Geneva, about 55 miles southwest of Milwaukee, his wife said. Despite his declining health, he hosted weekly games of Dungeons & Dragons as recently as January, she said.

"It really meant a lot to him to hear from people from over the years about how he helped them become a doctor, a lawyer, a policeman, what he gave them," Gygax said. "He really enjoyed that."

Dungeons & Dragons players create fictional characters and carry out their adventures with the help of complicated rules. The quintessential geek pastime, it spawned a wealth of copycat games and later inspired a whole genre of computer games that's still growing in popularity.

Funeral arrangements are pending. Besides his wife, Gygax is survived by six children.

(rolls 2 d10 for a constitution check)

Much Sadness in the world of MES today

We had a loss in the family today.  My cat of 10 years, Siren, passed away today.  I'm not sure what happened.  I know she'd had a sniffle/sneezy/cough for a few weeks but she seemed to be getting over it in the last week or so.

Needless to say I am stricken with grief.  I buried her in the woods behind my house this afternoon.

For those who never met her, here she is:

She was a good cat, loving and she will be missed.

 

=(