Powered by discountASP.NET
referal ID: sdtref
Why recommend discountASP.NET?

Archives
Steve Trefethen Steve's RSS Feed Subscribe or via email
What's this?
Contact me Send mail to the author(s)
About Me
View my LinkedIn profile

Add to Google
Subscribe with Bloglines
MCP Microsoft Certified Professional

Falafel Software
Online or OnSite TestComplete Training
Blogroll
Recent Comments
My Online Tools
Stats
Total Posts: 472
This Year: 77
This Month: 2
This Week: 1
Comments: 1660
Tags
Disclaimer
The posts on this weblog are provided �AS IS� with no warranties, and confer no rights. The opinions expressed herein are my own personal opinions and do not represent my employer�s view in any way.
My most popular blog posts (Q1 2008)
# Wednesday, August 27, 2008

One more reason to like DiscountASP.NET

Posted @ 10:19AM

Categories: Recommended

Tags:

Falafel Software, my employer, has written courseware for TestComplete (which btw you can buy here) that includes examples for Data Driven Testing. The examples make use of Microsoft’s AdventureWorks database which requires an MSSQL install (Express works too) which is not something everyone has installed or access to. On a few occasions I’ve had classes where people have really struggled to get MSSQL Server Express and the DB installed successfully not to mention actually trying to connect to the DB.

Several weeks ago I approached DiscountASP.NET (DASP) to discuss hosting options for Falafel’s ActiveFocus (AF) Project Management application, which is up and running on on DASP’s Windows 2008 servers using MSSQL 2008, and those talks turned out better than I had anticipated. DASP set us up with two separate accounts one for testing AF on the above software combination and the second to use for training allowing us to setup and configure an MSSQL 2005 database to host AdventureWorks for training! In fact, they were pretty excited about the training angle which we’ve been using for several weeks now and has worked out well. By using a hosted DB we can simply provide a connection string to the attendees of the class and get them connected right away, no hassling with installation, configuration and connection issues to MSSQL.

DiscountASP.NET is really focused on the ASP.NET developer audience and not only have I found their service to be solid and reliable and their support is outstanding this additional level of support is icing on the cake.

Time to update Why I recommend discountASP.NET?

# Sunday, August 17, 2008

Free Pascal Team releases version 2.2.2

Posted @ 8:14PM

Categories: Open Source

Tags:

I want to highlight a comment (see below) from Marco van de Voort and congratulate the Free Pascal team on their recent 2.2.2 release. Marco originally commented on a post I wrote nearly a year ago regarding potential copyright issues and the source code of the project. It sounds like a lot of time an effort was put in to clear up any issues and further sounds like the project is on a good footing with tools in place to help prevent future issues. The comment from Marco is as follows:

The new release 2.2.2 has the disputed code removed, and the cut was made fairly wide (using a tool to identify candidates), and this has been merged to all currently live branches. This is also why it took so long.

We have retired the old releases from our site. (rather than relicense, which could have been since all the disputed code was available under GPL via FreeCLX. This was deemed to confusing)

Since nearly all public releases were affected by these disputed routines (most disputed routines arrived in one batch in 1998-1999, which was pre 1.0), this is particularly sad for some of the more odd ball platforms (like Atari) that are not supported anymore.

# Sunday, August 10, 2008

Virtual desktop software VirtuaWin

Posted @ 10:09PM

Categories: Recommended | Tools

Tags:  | 

In a recent post, I talked about the various applications I use while conducting online training. Over the years I’ve dabbled with virtual desktop software but never got very comfortable with the idea and thus it never "stuck". Back in June I decided, once again, to look for virtual desktop software and one of my first searches lead me to this description which looked very promising:

VirtuaWin is a small, fast and easy to use virtual desktop manager for Windows9x/ME/NT/2000/XP with no unnecessary features.

Bingo! Exactly the kind of thing I was looking for and VirtuaWin has lived up to this description. While the above description doesn’t explicitly mention Vista I’ve had no problems (I wish I could say the same about Vista). I’ve been running it now for a month and a half and it’s worked pretty darn well. The current release is 4.0.1 from April of this year so it’s an Open Source project that’s very much alive and well. On of the best features is worked "out-of-the-box" and I’ve tweaked only a few settings so the overall experience as been very good.

At first, it took some time to get used to organizing multiple desktops but once acclimated having the extra space has been very nice. I use four desktops arranged horizontally with the first being my primary, one to the left for browsers, one to the right for email and fourth desktop for things like LaunchCAST for streaming music. My MacBook Pro runs at 1920x1200 and I use a second 20" monitor running at 1600x1200 brining my virtual desktop size to a whopping 14,000x1200, although when connected to a second monitor I usually don’t use the virtual desktops much.

On thing I’ve discovered is that virtual desktops also work quite well for online training making it easy to switch between PowerPoint presentation and the application I’m training on. I guess you could call it an online version of a KVM switch!

# Monday, July 28, 2008

Retrieving XML from Microsoft SQL Server

Posted @ 2:43AM

Categories: howto | Programming

Tags:  | 

A

fter completing work on the EDI Invoicing system I’ve recently started work on the other half of the equation, Purchase Order processing. There’s an existing system in place but it’s old, brittle and doesn’t support everything the system requires these days. The new CCNET based Invoice processing is humming along nicely and has handled over $3 million in invoices.

EDI CCNET Web Dashboard

Getting XML from a SqlDataReader

Like the invoicing system the purchase order side needs to query the database fetching PO data for conversion to EDI and transmission to the trading partner. I’ve been looking for clean ways to produce XML from a SqlDataReader and discovered this post by Roy Osherove. IMO, the interesting piece of that post isn’t necessarily Roy’s VB code but what’s found in the comments. Specifically, the comment I’m referring to is related to using a DbDataAdapter descendent like this:

public class DataReaderAdapter : DbDataAdapter { public int FillFromReader(DataTable dataTable, IDataReader dataReader) { return this.Fill(dataTable, dataReader); } protected override RowUpdatedEventArgs CreateRowUpdatedEvent(
DataRow dataRow,
IDbCommand command, StatementType statementType,
DataTableMapping tableMapping)
{ return null; } protected override RowUpdatingEventArgs CreateRowUpdatingEvent(
DataRow dataRow,
IDbCommand command, StatementType statementType,
DataTableMapping tableMapping)
{ return null; } protected override void OnRowUpdated(RowUpdatedEventArgs value) { } protected override void OnRowUpdating(RowUpdatingEventArgs value) { } }

A descendent is necessary here to help expose the inherited, protected Fill(...) method. Once you have the data in a DataTable you can simply call WriteXml() and viola! But there is an easier way (at least for MSSQL)!

Fetching XML from SQL Server using "FOR XML"

After mentioning the above to John Waters, Falafel’s CTO, he proposed querying directly FOR XML (literally), an MSSQL feature I wasn’t unaware of (no surprise there having been a non-database guy for so long). Using SqlCommand’s ExecuteXmlReader makes creating an XmlDocument very easy as you can see below. Simply setup the SqlCommand normally and use its ExecuteXmlReader() method:

using (XmlReader reader= command.ExecuteXmlReader())
{
   try
    {
       reader.Read();
       return new XmlDocument().Load(reader);
    }
   finally
    {
        reader.Close();
    }
}

The SQL statement looks like this:

1 SELECT * FROM SA_OrderHeader WHERE OrderHeaderID = @OrderHeaderID FOR XML, AUTO ROOT('details')

Notice "AUTO ROOT" which allows you to control the name of the root node of the returned XML document, very handy.

Having said all this I’m sure there are other ways to accomplish the same thing so please let me know what you’ve come up with.

# Thursday, July 17, 2008

TestComplete Training Online

Posted @ 1:21AM

Categories: Technology | Testing

Tags:  | 

I joined Falafel Software a little over a year ago now and in that time I’ve done a lot of online training for TestComplete. For those Delphi fans TC is written in Delphi a fact I usually slip into the training sessions. Online training is, or perhaps more accurately was a new business (it’s no longer new) for Falafel that I was able to pioneer. One thing I looked forward to when I changed jobs was the ability to try and do different things and online training is certainly different! I’d been straight-up programming for nearly a decade at Borland/CodeGear and at Falafel I’ve had the opportunity to be involved and have influence in many different parts of the business which has been a lot of fun.

Presenter’s view of online training

When I sit back and think about all the technology used during TestComplete online training I’m really amazed. We use a multitude of software to present all of the different testing functionality TC supports including:

TestComplete Made Easy
  • TestComplete (of course, that’s obvious right)
  • Microsoft’s PowerPoint
  • GotoMeeting the software that powers desktop sharing
  • AutomatedQA’s Remote Agent for Distributed HTTP Load Testing
  • Virtual PC to demonstrate Distributed testing support
  • NUnit to demonstrate TC’s integrated unit testing
  • VS.NET 2008 to demo support for:
  • Microsoft SQL Server Express 2005 to demonstrate Data Driven Testing (DDT)
  • Visual Studio Team Foundation Server to demonstrate TC’s integrated support
  • Automated Build Studio if/when the discussion leads to Continuous Integration
  • Acrobat reader for the TestComplete Made Easy courseware (which I helped author) and that you can print for yourself from Lulu.
Out of all of this GotoMeeting is the software that facilitates online training and is very cool. It allows for sharing of one’s desktop to multiple PC’s at the same time in different locations. Connecting to GotoMeeting is very straight forward and I’ve yet to run into any problems setting it up which is saying a lot. Additionally, you can turn control over to an attendee as well as display an attendees desktop. In fact, I’ve conducted a number of classes with people scattered around the country which is interesting in and of itself. (Note to attendees, when you ask to share your desktop be sure you haven’t been chatting something in the GotoMeeting chat window you wouldn’t want others in the class to see :-) ) Here is a screenshot of what things look like on the presenter’s end of things:

TestComplete Online Training Desktop

As you can see there’s quite a bit running not including any of the sample applications used to illustrate features.

Along with the online training Falafel provides the above book in PDF form as well as source code to all of the examples and additional TestComplete projects illustrating nearly every type of testing supported by TC.

Since referral commissions go in my pocket this post wouldn’t be complete without a plug right? So, if you or your company is interested in either online or onsite training on AutomatedQA’s TestComplete please contact me and I’ll be happy to provide you more information or help get you signed up!

# Monday, July 14, 2008

Screenshots on the iPod Touch and other enhancements in v2.0

Posted @ 11:11PM

Categories: Tips

Tags:

iPod Touch screen shot feature in v2.0
With the release of v2.0 firmware for the iPhone/iPod Touch Apple added a much needed feature which is the ability to take screenshots. If you hold the home button down and press and release the power button the screen will blank out for a split second giving the illusion of a photo being taken, a very nice touch. The screenshot is stored in your photos and easily accessible. When you reconnect to Windows you’ll first see this prompt:

Windows AutoPlay dialog for importing iPod Touch pictures

If you select the highlighted option you’ll see the following prompt:

Vista’s Importing Pictures and Video dialog

Which will allow you to quickly grab these screenshots for use in things like blog posts.  :-)

Keyboard Improvements

There are a number of other nice features in the v2.0 firmware like this minor but super useful change in keyboard layout (below left). Notice the spacebar is 1/3 size and the @ symbol and the period are provided for things like email addresses. The screenshot on the right illustrates the new password handling where the last character that you typed stays on screen for a second before switching to a dot which makes it easier to correctly enter passwords (notice the spacebar in this case is full size).

image   image

# Saturday, July 12, 2008

Review of iPhone v2.0 applications

Posted @ 12:37AM

Categories: Recommended

Tags:

I’m going to use this post to rate the iPhone/iPod Touch applications I’ve tried using a one to five rating. In alphabetical order:

  • Apple’s Remote -  
    I think this is a great little app.
  • Banner -  
    Cool scrolling LED sign app, free but missing a number of key features like scroll speed, color etc. still cool
  • Bloomberg -  
    Ignore’s accelerometer so no wide screen reading. I think I like the white text on black but we’ll see. Portfolio tracking could be a bit better but hey, it’s free!
  • BofA Banking App -
    It’s just their web site in an app
  • Facebook -  
    The update-to-date address book alone is awesome
  • Google’s Mobile App -
    Like BofA there are just a bunch of links to web apps. I’ll have to play more with the search capabilities to see how those improve on the web version.
  • NY Times -
    Seems pretty slow, though nice to have.
  • Pandora - (added July 13, 2008)
    Radio comes to the Touch!
  • Tap Tap Revenge - (added July 16, 2008)
    I can’t stop laughing when the dots start streaming down faster than my reflexes can handle!!
  • Where -
    For the longest time it displayed the large red "W" then returned to the home screen. IOW, it did nothing. I think their servers are probably getting pounded as just browsing to www.where.com is very slow or times out. It’s working now though only in pieces but I can see there is a ton of stuff to look at. I’m not sure I like bubble selector at the bottom.

What apps are you liking?