Sunday, November 30, 2008

Verified by Visa: Everything We Tell Folks to Avoid

Phishing is defined by F-Secure as:
"Fraudulent e-mail or website claiming to be legitimate seeking indentifiable information. Phishing is an attempt to steal your personal data."
When I recently attempted an online purchase from WalMart using my VISA card, being a security wanta-be, I immediately thought phishing when redirected to verifiedbyvisa.com and saw this dialog:

Seriously, these folks have to be kidding. You're asking for my personal data during a transaction and claim that's its a service "...at no additional cost." Wow! Thanks...but absolutely not, you jokers. As a malicious thief, I can go a long way with this data.

This is exactly the type of experience which aids malfeasance and the folks trying to steal personal data / identities. How long have we been working to educate folks to avoid providing this type of data under these type of circumstances? Years. And we're just now starting to turn the corner.

VISA, get rid of this! When folks submit to this lunacy (more often because they don't know any better), they only become softened against the threat of phishing. Personally, I'm refusing to submit to this and will leverage another card to complete my purchase.

Wednesday, November 26, 2008

TFS VirtualPC Refresh Planned

Update 12/25/2008: Refreshes are out...here!

Update 12/10/2008: Apparently, there's a way to edit the VPC config file (.VMC) to disable time synchronization with the host operating system. Might make demos relying on a sprint/iteration interesting but it's very helpful.

------------------
We rely on the TFS / VSTS 2008 VirtualPC instances Microsoft pumps out for demos, presentations, and even some training. Yes, I can kit out a VPC on my own but it takes at least a day or two, it lacks the scenarios and test users, and sharing 20+GB files across the team can be challenging.

I'm excited to announce the TFS team will be refreshing the 12/31 expiring VPC instances soon...with SQL 2008 and all the latest bits! Thanks, Jeff Beehler for this insight.

Tuesday, November 25, 2008

TFS: TF.exe Workspace Maps $/ by Default

Team Foundation Server's (TFS) command-line interface tf.exe workspace option maps a working folder to the server root $/ by default. That I can find, there's no way to turn this off. To combat this behavior, you'll want to unmap the default after adding in your desired folder mapping(s).

>tf workspace /new /noprompt /s:http://TFSRTM08:8080 MyWorkspace

>tf workfold $/SampleProject c:\src\SampleProject /workspace:MyWorkspace /s:http://TFSRTM08:8080

>tf workfold /unmap $/

Friday, November 21, 2008

MSB4019: "...targets not found" during TFS Build

Recently creating a TFS 2008 build for VS.Net 2005 projects, I kept receiving the following:

...error MSB4019: The imported project "C:\Program Files\MSBuild\Microsoft\VisualStudio\v8.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the declaration is correct, and that the file exists on disk.

I discovered the v8.0 hive didn't even exist on the file system. At first, I thought I was missing something like the .Net 2.0 SDK. Unfortunately, installing that didn't add the files to v8.0. Eventually, I simply copied the v8.0 hive off a VS.Net 2005 developer machine and onto the build server. Maybe not the prettiest but it solved my build problem.

Friday, November 14, 2008

VSTS Tester 2010 Mark Mydland Heartland Tour (CONDG)

Jennifer Marsman, one of our beloved Heartland District Developer Evangelists, arranged for Mark Mydland, Principle Group Manager with Microsoft in Redmond for the VSTS Tester Edition to tour our area and deliver a presentation on VSTS Tester 2010. This also doubled as the November Central Ohio .Net User Group (CONDG) meeting. Thanks, Microsoft for the food and swag.

Along with some great product development stories, Mark highlighted the following:

Playback - often, the written repro scenario provided along with the defect isn't clear (if it even exists). This feature enables developers and other roles to watch a video of the functional / UI test from the Tester live, in action.

Test Case vs. Actual Capture - for manual tests, a list of steps involved with the test can be compared to what steps the tester actually took.

Work Item Categories - classify a work item type into categories with one work item serving as the default.

Cut/paste screen shots - easy to [Alt]+[Prnt Scrn] and paste a defect screen shot into a TFS defect work item.

Testing Activity Center - a UI for the layperson tester. No Visual Studio...just a lightweight app to manage test cases and iterations, execute automated tests, and manage defects.

Thread Debugger Agent - from within the playback for a test case, you can step through the code. It only works with events in the CTP but it will include methods and properties for RTM. It works by attaching to CLR profiler, registering for events and then logging them to the test case/defect. This is tied to a specific version of the asset stored within TFS. Wow.

Distributed Test - agents run as Windows services assigned to a single controller to execute and instrument (collect data metrics) distributed testing scenarios. Included in this instrumentation, called Data and Diagnostics, can concurrently capture things such as the Event Log, System Information, custom logging files, PDBs, and even a video recording. Each agent may possess configuration elements to accommodate environmental differences e.g dev/test/staging...different database connection, etc. 

PEX - this is a tool which while available in 2010, is downloadable for 2008 from the link. This neat feature executes your methods and recursively discovers all the code paths. It does this by throwing varying values and types at your method attributes e.g. nulls, strings, etc. This produces a Pex Exploration Results. Then, one can use this to  generate test harness classes leveraging this sample set. Wow.

Chess - Not here for the CTP but it should come online for a future Beta release. Chess sets up test cases and allows you to debug and break on any context change. Chess intercepts requests to the thread scheduler and re-executes them. Using some magic algorithm, Chess continues to execute thread requests in differing order. This helps determine and test if your code is thread-safe and yields the expected outcome regardless of the order in which it was executed.

Coded UI Test - A new test type which will produce managed code based off a UI recorder.

Thanks for visiting, Mark and thanks for bringing such talent to the district, Jennifer!

Thursday, November 13, 2008

Re-creating my TFS 2008 VirtualPC Instance

After lots of demos leveraging the TFS 2008 VirtualPC (VPC) trial instance released last April, I decided it was time to clean out the garbage and start from scratch. I realized, however, a lot had changed in those few short months. Now, this will be moot for this image on 12/31/2008 when it expires (and I hope replaced...please?) but here are the steps I followed (still a lot easier than starting from scratch):
  1. Update/upgrade Virtual PC client software to SP1.
  2. Apply TFS 2008 SP1
  3. Apply TSWA 2008 SP1 (uninstall TSWA 2008 first)
  4. Apply TFS Power Tools October 2008 (uninstall Dec 2007 first)
  5. Apply any custom process templates: Scrum for Team System 2.2
  6. Install the latest FxCop (v1.36) to %ProgramFiles%\Microsoft Visual Studio 9.0\Team Tools\Static Analysis Tools\FxCop

Tuesday, November 11, 2008

Using Windows Media Encoder for Screen Captures

My primary tools of choice for screen captures are Camtasia and Captivate. However, sometimes clients don't want to pay for these or you just need something quick and dirty. Windows Media Encoder (WME) provides a great, free alternative. You won't be editing or producing SWF files as robustly as the high-end tools but you'll get the capture. Steps:

1. Download and install Windows Media Encoder x86/x64.
2. Start up WME and choose "Capture screen"













3. Indicate what you'd like to capture: window, region, or screen.

















4. Choose the output file: Windows Media is the only option (wmv, wma)
5. Select the quality: low, medium, or high
6. Click "Start Encoding" to begin the screen capture.
7. When complete, switch back to the WME icon in your toolbar and click "Stop"

Easy blue-cheesy.

Central Ohio Technology Community Resources

As co-lead for a user group and a frequent presenter, it suddenly occurred to me, in a way, I posses the moniker of "community organizer". Yikes...not something I pursued. Well, as such, I'm very plugged into the central Ohio technology community and wanted to share a few resources I've discovered to assist our community groups:

Microsoft - Say what you will but Microsoft and the local evangelists step up to the plate every single time. Whether it's use of their Multi-Purpose Room (MPR) up at Polaris Parkway, co-sponsoring an event, or joint marketing, Microsoft supports the community in a huge way.

Platform Lab / Tech Columbus - Serving as a high-end testing lab and technology incubator facilities, respectively, these entities provide large, functional meeting facilities and access to a wealth of start-up and entrepreneurial assistance. They both produce event calendars which reach several thousand Ohioans you may use to promote your events. (Just contact them...what they ask in exchange is very minimal.) They also support joint-technology marketing and community events.

Columbus Tech Life - Ben Blanquera has established an amazing technology following in Central Ohio on his Tech Life blog. His resources include a comprehensive calendar, a wiki, as well as regularly scheduled MeetUp events.

Technology Consulting Firms - I purposely left out names here (because I work for one and usually keep it out of this blog) but you know who they are. I'm in awe of the amount of effort the staff from these firms put into the community.

OCLC - It's a library! It's a data center! It's corporate office space! These guys actually own and maintain the Dewey Decimal system. Cool, huh? Regardless, they open their doors frequently providing free meeting space to a number of area groups. Nice.

Thanks to all these entities for making central Ohio an excellent technology community. Please connect with these resources to further grow the community!