Archive for category Development

HackMISA Hackathon at UT Austin: April 2nd, 2017

I’ll be presenting topics that are focused on creating a SQL Azure database, and writing a simple web application to enter, update, and display data – all from using cloud resources.  Here’s an overview of the event:

HackMISA is a 12 hour hackathon hosted by the Management Information Systems Asscioation as a new initiative to provide more opportunities for students to learn how to code. This is where you can turn your ideas into a reality. You’ll make new friends and learn cool skills w the help of industry professionals!

Come down for a day of free food, workshops, mentorships, & prizes. Whether you have no coding knoledge or are a seasoned hacker, we would love to see you there!

For more information about the event or to sign up, please visit the HackMISA Spring 2017 web page!

Update (04/03/2017): It was a great pleasure to meet so many excited, committed, and technically-capable people at the event.  All of the entries were excellent, and I was glad to stay for most of the 12-hour session as a sepaker, mentor and judge.  Attached to this post is a copy of the Slides from my Auzre Cloud presentation.  Please feel free to download it for your own use: UT HackMISA – Azure Cloud – Anil Desai

Attend the Microsoft BUILD Austin Event on May 29th, 2015

There’s a lot of change that’s coming out for developers and IT pros that work on Microsoft technologies.  You can find more information about the available sessions at the Microsoft BUILD 2015 site, including the recordings of the keynote addresses from the live national presentation.  Just a sampler would include Windows 10 with huge consumer and Enterprise changes, UI design and development improvements, Azure, Visual Studio 2015, and a lot of other related topics.  Here’s an overview of what will be covered in Austin:

Friday, May 29, 2015 – 9:00AM

Austin City Limits Live at The Moody Theater
310 Willie Nelson Blvd
Austin, TX USA 78701

This event series brings the Build experience to cities around the globe.

As a developer, you can expect:

  • Best of Build announcements and insights
  • Deep dive in the Windows 10 developer platform for app and web developers
  • Coding sessions and exciting demos across devices
  • Partner showcases
  • Open Q&A and face-to-face time with Microsoft engineers
  • Each Event is Free

Build Tour Event Agenda

8:00 – close Registration
8:00 – 9:00 Breakfast
9:00 – 10:30 Keynote
10:30 – 10:45 Break
10:45 – 11:45 Session #1 Universal Windows Platform
11:45 – 12:45 Lunch
12:45 – 13:00 Challenge
13:00 – 14:00 Session #2 Microsoft Edge & Web Apps
14:00 – 15:00 Session #3 Lightning Talks
15:00 – 15:30 Break
15:30 – 16:45 Panel Q/A
16:45 – 17:00 Closing remarks

Best of all, there’s a good chance that the all-day event is coming free to a place near you.  While I won’t be presenting any specific sessions in the Austin BUILD Event.  I will be available on-site all day to answer questions during breaks.

Be sure to register, if you plan to attend this free event (it’s at the amazing ACL at the Moody Theater downtown).  If you’re unable to attend, you can still find the sessions you’re interested online at the Channel 9 BUILD 2015 site.

Austin Code Camp 2014

The eight annual edition of Austin Code Camp is almost here, and I’ll again be presenting two SQL Server topics.  The event takes place at the New Horizons Learning Center (near Highland Mall).  This is a full-day event filled with presentations from expert developer and IT experts from Austin and beyond. 

Registration via EventBrite is required, as space is limited.  It looks like the tickets are selling out quickly, so be sure to get yours soon if you’re in the Austin area and want to attend! 

Here are the details on my updated presentations:

SQL Server Performance Monitoring & Optimization

Developers often overlook the art and science of query optimization, despite the importance of storing and accessing data in all types of applications. Developers can dramatically improve their users’ experience by monitoring and optimizing how they leverage their database. This session will cover practical ways in which attendees can monitor performance at various levels, and how they can use this information to optimize queries. We’ll start with an overview of the many different SQL Server tools that can be used for finding and troubleshooting performance issues. Then, we’ll walk through the process of using SQL Profiler to collect data for supporting real-world questions and goals, including: Generating a "hit list" of worst-performing queries based on execution times and frequency, and finding sources of bottlenecks.

Next, we’ll go through the process of using the Database Tuning Advisor to use captured workloads to optimize physical database structures such as indexes and partitions. Also included will be ways in which developers can use built-in reports and dynamic management views to gain further insight into their production systems. Finally, the presentation will include an overview of analyzing query plans. The overall emphasis will be on solving practical, real-world database performance problems.

SQL Server Reporting Services: Developing and Managing Reports

SQL Server Reporting Services allows developers to author and distribute complex reports that come from a variety of data sources. This session will begin with an architectural overview of Reporting Services and demos of how developers can install and configure the required services. Then, we will walk through the process of creating new reports using Report Builder and Visual Studio. Reporting features including dynamic drill-downs, tablix reports, charts, and sorting will be demonstrated. Also included will be methods by which multiple levels of report parameters can be used to efficiently filter data.

A key goal for reports is to get data to the users who required them, and to manage performance, permissions, and report contents over time. This presentation will cover deployment details, including scheduling report execution, report subscriptions, data caching, creating snapshots, and managing security. Attendees are welcome to bring their reporting-related questions and issues for discussion.

SQL Server Optimization for Developers Presentation in Austin, TX

imageOn April 14th, 2014, I’ll be presenting a session titled, “SQL Server Optimization for Developers” to the Austin .NET User Group.  The free event will opportunities for networking, food and drinks, and (of course) a presentation.

Here’s a brief overview of the topic and the presentation:

Database optimization is a critical component of overall application performance, and sub-optimal configurations can limit reliability, scalability, and the user experience. Unfortunately, many developers see database monitoring and optimization as a black art – something that’s better left to production and operations specialists. This presentation will focus on practical, real-world methods for monitoring and optimizing performance for SQL Server-based applications. Demonstrations will include understanding index types, capturing query data with SQL Profiler, analyzing indexes and using the Database Engine Tuning Advisor. In addition to live demos the content will focus on managing locking, managing schema changes, and application design best practices for developers.

If you’re in the Austin area, I hope to see you there!

Update: You can download the slides from the presentation from my SQL Server Presentations page.  And, coming soon: A full recording of the session, courtesy of (thanks, Shawn!).  Thanks to everyone for attending!

Update 2: The entire recorded presentation has been posted on SQL Server Optimization for Developers, along with my previous videos.  Thanks, as always, to Shawn for recording the session.

The Imagine Cup Competition

After a couple of decades of working in IT in a wide variety of different capacities, I still fondly recall my first computer: The Commodore 64.  Apart from playing tons of games, interacting on BBS’s, reading computer magazines, and writing basic (technically, BASIC) programs, I had a lot of fun just learning about how computers worked.  That was still in the early days of home computing.  Even back then, though, I had so many different ideas for great applications and games.  Now, of course, technology that is many millions of times more powerful is available globally and to a huge portion of the world. 

To me, one of the most important goals of being involved with IT is to inspire others to do the same.  There are so many different aspects of application design and development, data management, systems administration, game design, and related fields that it’s a great field with which to excite people.  Backgrounds in science, technology, and math are well complemented by skills in art, literature, entertainment, geography, sociology, and dozens of other fields. 

imageTo In order to help foster that spirit, Microsoft has created Imagine Cup.  This program is as an annual competition that allows groups from around the world to design software and receive feedback from industry judges.  The overall challenge:

Imagine a world where technology helps solve the toughest problems

Competition categories include user experience design, mobile application ideas, and a wide variety of other technologies.  More details and statistics on the Imagine Cup Competition are available from the Imagine Cup Wikipedia Page.  You can also see a summary and a list of winners in that article.

If you’re interested in participating in the competition, see the All Competitions page to get started with a list of different categories and areas of focus.  You can create an account, form a team, and submit your materials using the site.  This year, winning contestants even have the chance to Meet Bill Gates!

I’m currently volunteering as a judge for the User Experience competition, and so far I have been really impressed with the thought, effort, and creativity that the contestants have shown.  Be sure to use the links in this post to find more information!

Central Texas GiveCamp: Oct. 18–20


Does your idea of a perfect weekend involve writing code, eating pizza, and working with other local-area IT professionals?  Well, if you’re a developer, designer, DBA, etc. and you enjoy at least one of the three, this event might be for you. 

The Central Texas GiveCamp event allows area developers to volunteer their time to help local non-profit and charity organizations.  I participated a couple of years ago (unfortunately, not for the whole weekend code-a-thon), and had a great time.  I think it was a great opportunity to meet other developers and to help design and implement solid technical solutions on a tight timeframe (and who isn’t used to doing that?). 

For more information, visit the Central Texas GiveCamp site.

Austin Code Camp 2013 SQL Server Presentations

If you’re in the Austin area and are interested in a free all-day conference on .NET development-focused topics, be sure to check out the Austin .NET User Group’s annual Austin Code Camp.  It takes place on Saturday, August 17th at the St. Edward’s Professional Education Center in Austin.  See the site for details on the speakers, sessions, and location. 

This year, I’ll be presenting on a couple of topics that were well-receiving in past years.  The sessions will be demo-focused, though you can also find the slides from my past presentations on this site.  Feel free to let me know if you have any questions or comments!

SQL Server Performance Monitoring & Optimization

Developers can dramatically improve performance by understanding how their queries are executing in the "real world". This session will cover ways in which attendees can monitor performance at various levels, and how they can use this information to optimize queries and improve overall application performance. We’ll start with a discussion of developing a performance optimization strategy and how various tools can help. Then, we’ll walk through the process of using SQL Profiler to collect data in a real-world case: Generating a "hit list" of worst-performing queries based on execution times and frequency.

Next we’ll look at using the Database Tuning Advisor to make suggestions related to physical database structures such as indexes and partitions. Also included will be ways in which built-in reports and dynamic management views can be used to monitor performance of production systems. Time permitting, the presentation will include methods for reducing deadlocks and managing long-running transactions. Finally, the presentation will include an overview of analyzing query plans. The overall emphasis will be on solving practical, real-world database performance problems.

SQL Server Reporting Services: Creating and Managing Reports

Using SQL Server Reporting Services, developers can author and distribute complex reports that come from a variety of data sources. The session will begin with an architectural overview of Reporting Services and how developers can install and configure the required services. Then, we will walk through the process of creating new reports by building connections and data sets using Report Builder 3.0 and Visual Studio 2012. Reporting design features including dynamic drill-downs, tablix reports, charts, and sorting will be demonstrated. Also included will be methods by which multiple levels of report parameters can be used to filter data and increase performance.

Next, we’ll look at deployment details, including scheduling report execution, report subscriptions, configuring caching, creating snapshots, and managing security. Time permitting, the presentation will include a demonstration of using Report Viewer controls within ASP.NET and Windows Forms applications.

Visual Studio 2012 Release Candidate Now Available


Today’s release of the Windows 8 / Server 2012 downloads isn’t the only news for techie-types that want to live on the bleeding edge.  Microsoft has also released the Release Candidate versions of Visual Studio 2012.  You can find the downloads on MSDN (of course) and from the Visual Studio 2012 (formerly Visual Studio 11) product page.  Related products, like the Express Editions and Team Foundation Server are also available.

Here’s a little bit of news quoted from Microsoft’s Corporate VP, Developer Division, S. Somasegar:

These releases ship with “Go Live” licenses, so you can get started today building and deploying production applications using Visual Studio 2012 and .NET 4.5.

For this release candidate milestone, you’ll find substantial improvements since the Developer Preview and Beta releases.  We’ve added features, improved performance, revamped the UI, streamlined setup, made it easy for you to move from Beta to RC, and more. 

Personally, I’ve been happy with the Visual Studio 11 Beta.  In fact, I am primarily using it for all of my development work, and haven’t even installed Visual Studio 2010 on my primary development machine.  I’m not sure that I’m complete sold on the monochromatic UI, but I rarely think about it when I’m actually working with the product.  If I find any useful tips or tricks, I’ll plan to post them on this blog.

Austin Code Camp 2012

The Austin .NET User Group (ADNUG) is again holding it’s annual Austin Code Camp 2012 event.  The date is Saturday, June 9th, 2012 at the St. Edward’s Professional Education Center (PEC) (the same location as the last few years).  The event runs all day, and attendees can pick which sessions are most interesting to them.  Visit for more information about the event.

The event features speakers that focus on development-related topics with a focus on real demonstrations (rather than marketing information).  All sessions are free to attendees, and volunteers in the community are invited to speak.  Organizer John Teague states it a little better:

All of the content in community driven, presented by members of the community.   I would encourage you to come and talk about whatever is interesting in the world of software development.  While the event is organized by the Austin .Net Users group, it is not limited to discussions about .Net.   It is an excellent opportunity to gain public speaking experience.

If you’re planning to attend, please be sure to register on the Austin Code Camp 2012 Eventbrite page. That will help the planners determine how much space (and food!) they’ll need.

I have presented at the conference every year since 2008, and it has been a great experience!  The number of attendees is always impressive (I think 2011’s event included more than 250 IT pros and developers).  I’m planning to give two presentations this year:

Practical SQL Server Performance Monitoring & Optimization

Developers can dramatically improve performance by monitoring and analyzing real world queries.  This session covers SQL Server monitoring at various levels to the most impactful performance improvements.  The presentation will start with an overview of different optimization tools and techniques and will be based on practical examples of real-world performance monitoring and troubleshooting.  Details include the use of server monitoring tools, SQL Profiler, the Database Tuning Advisor, and analyzing query plans, Dynamic Management Views, and related methods.  The overall emphasis will be on solving practical, real-world database performance problems.

SQL Server Reporting Services: Develop & Deploy Reports

This session will begin with a brief architectural overview of Reporting Services and details on getting up and running with Reporting Services.  Then, we will look at demonstrations of creating new reports by building connections and data sets using Report Builder and Visual Studio.  Reporting design features including parameterization, dynamic drill-downs, matrix reports, charts, and sorting will be provided. 

Next, we’ll look at deployment details, including scheduling reports, configuring caching, creating snapshots, and managing security.  The presentation will also include details about new reporting and BI features in SQL Server 2012

Those topics are updated versions of presentations I’ve done in the past.  I’m still trying to decide whether they’d work best as one-hour or two-hour sessions.  Feel free to leave comments below if you have any opinion.

Microsoft Virtual Labs

Evaluating and learning about complex server-side software can be quite a challenge for the busy IT pro.  Often, you’re just trying to work with a feature or two for evaluation purposes, but you find yourself spending significant time just trying to setup the pre-requisites for the environment.  Add in hassles related to licensing, and it can so much effort that many of us don’t end up taking the time. 

While the widespread adoption of virtualization has made the process of provisioning a test environment and installing software simpler, free, online Microsoft Virtual Labs make the process even easier.  Basically, all that’s required is a web browser on the client side.  When you choose to launch a Virtual Lab, a server cloud will spin up  a new VM, create a browser-based RDP connection, and will include all the necessary software.  To make the process even simpler, you’ll see a sidebar that includes downloadable, step-by-step evaluation details and guides.  The following screenshot shows an example of a SQL Server MSDN Virtual Lab that I spun up to learn more about configuring the new PowerView feature.


TechNet Virtual Labs

imageMicrosoft TechNet Virtual Labs are focused on providing IT professionals (such as systems administrators and data center administrators) with pre-built evaluation environments that showcase various features and technology.  At the time of this writing, there are numerous labs focused on Windows Server 2008 R2 features, the System Center suite of products, Forefront, and (my personal favorite) Private Cloud guides.

imageMSDN Virtual Labs

Architects and developers haven’t been left out either: MSDN Virtual Labs include a long list of software development-focused labs, including ones for Visual Studio, Office Applications, SQL Server 2012, SharePoint, Team Foundation Server, Windows Azure, and many more related technologies.

A Few Tips

Using an RDP session (especially, a browser-initiated) one isn’t exactly like having software installed on your own computer.  However, it’s a reasonable trade-off for most of us that want to quickly try out or learn about some new feature.  Here are some additional tips that can help make the experience more user-friendly:

  • Limitations: While it might be tempting to cause havoc on the hosted VMs, most are locked down to prevent such shenanigans.  Operations like changing IP addresses or machine names are restricted, so it’s best to “stick to the script”.
  • RDP Window Resizing: In at least some Virtual Labs, you’ll need to connect to multiple VMs through a secondary RDP connection.  The default resolution and size for this window is quite small.  To get a bigger viewable area, first resize the Remote Desktop Connection Manager window, and then connect (or disconnect and reconnect to the VM).  This way, you should be able to get close to the 1024 x 768 resolution that many applications require.
  • Keyboard Shortcuts: Those of us that rely on keyboard shortcuts for simpler and quicker navigation and administration will often need to resort to the mouse to perform certain commands.  Examples include the use of the Windows key (which will execute locally) and task switching.
  • Screen and Input Lag: I have a solid, fast Internet connection, but I experienced a significant amount of screen lag when connecting to several Virtual Labs.  Perhaps this is unavoidable, but to make the best of it, use the extra time to review the available documentation (or rejoice in the time you saved from having to setup the entire environment yourself). 🙂
  • Time Limits: Virtual sessions have time limits (90 minutes for all of the labs I worked with), so it’s a good idea to set aside some uninterrupted time to finish the lab in one shot.  Of course, you can always revisit the same lab later, though you’ll lose your “progress” and will likely need to repeat steps in the evaluation guides.
  • Software Versions: I noticed that in some labs, earlier versions of server applications were installed (for example, SQL Server 2012 RC0 in the screenshot above).  It takes significant effort to update software and the related lab instructions, so that’s definitely understandable.  I didn’t find any major issues in the labs that I tried out, but it is something to keep in mind.
  • Using RSS to keep up with new Virtual Labs: The list of Virtual Labs appears to be growing quickly.  Both the MSDN and TechNet Virtual Lab sites have RSS feeds that can provide you with a quick and easy way to learn about new labs as they become available.

Windows 8 Developer Preview: Virtualization Options (VMware Workstation)

imageFor those of us developers that are itching to get our hands (and fingers) on the recently release Windows 8 Developer Preview, you might hit an unexpected snag.  If you’re like me, the first thing you tried after downloading the bits was to create a new virtual machine in your favorite desktop virtualization platform (most likely Microsoft Windows Virtual PC or VMware Workstation).  However, after creating and booting the VM and attaching an ISO, I encountered the following error:

VMware Workstation internal monitor error

vcpu-O:NOT_IMPLEMENTED vmcore/vmm/intr/apic.c:1903


Unfortunately, it looks like VMware Workstation 7.x platform (and, reportedly, VirtualPC, though I haven’t tested it myself), does not yet support Windows 8.  Perhaps I should have realized that a lot of the undercover boot and CPU optimizations would require an architectural shift to support the required CPU commands.

Options That Should Work

Though this might not be ideal for all users, there are several options to get the Developer Preview of Windows 8 running in a virtual machine:

  • Use Microsoft’s Hyper-V: If you have a Windows Server 2008 or 2008 R2 installation (or the stand-alone Hyper-V Server), you should be able to spin up a new Windows 8 VM quickly and easily.  It’s not desktop virtualization, but if you have a spare machine that supports Hyper-V’s CPU requirements, you should be all set.
  • Wait for the release of VMware Workstation 8.  While I haven’t yet tried it myself, there are reports of people having success with the beta of the upcoming release of VMware’s Workstation production.  A beta virtualization stack with a Developer Preview OS – How’s that for living on the edge?  It looks like the product is officially available from VMware now and you can request a VMware Workstation 8 Evaluation online (registration required).
    • Update: I downloaded a 30-day evaluation version of VMware Workstation 8, and the Windows 8 Developer Preview installed without one minor catch: Don’t use the VMware "Easy Install" option, as it’s based on the automatic install procedures for Windows 7.  Other than that, I’m up and running!
  • VirtualBox apparently supports the WIndows 8 Developer Preview (again, I haven’t yet tried it myself).  The application is available for free download.  The Windows 7 Hacker site has a walkthrough titled Install Windows 8 Developer Preview on VirtualBox.

Dual-Boot / Clean Install

Of course, you could skip virtualization altogether and install Windows 8 directly on your hardware.  That would give the best overall performance and the best experience with the new Metro UI.  You could install The Windows 8 Dev Preview alongside your current OS (though you might need to repartition), or you can just pop a spare hard drive in your computer to avoid any messy boot complications.  In general, this approach has worked great for me in the past.

Another option is to Boot to VHD.  That’s a significantly more complicated process, but the blog post Installing Windows 8 on Bare Metal with VHD-Boot should help.

A Note About the Developer Preview

While we’re all itching to try the new UI and functionality in Windows 8, there are a couple of things to keep in mind.  First, this version is not yet a “beta”.  It’s an earlier release that is designed to get developers up and running.  The official build number is Build 8102 M3.  Even if you’re like me and you’re willing to live on the bleeding edge with software, you probably don’t want to install this build as your primary OS.  Furthermore, Microsoft has mentioned that several features are not included in this build (though I haven’t yet run into anything that’s a showstopper for me).

On the brighter side, this build does not require product activation.  Coupled with the easy accessibility of the download from the Windows 8 Developer Preview site, that effectively means everyone will have easy access to this preview release.  Downloads are also available for MSDN Subscribers.

For More Information…

In case you missed it, Microsoft’s BUILD Conference keynotes are available at the BUILD Conference Web Site.  The Day 1 Keynote covered dozens of really exciting features, presented by Steven Sinofsky and several other Microsoft Program Managers.  I’m just getting started with my testing/development, and I’ll try to post more here once I have something of value.

Update (09/19/2011)

Based on the numbers of hits to this article, I thought this would be a fairly important topic.  On the Building Windows 8 blog, Microsoft has recently published a post titled, Running Windows 8 Developer Preview in a virtual environment.  It includes more details on the pros and cons of running Windows 8 using virtualization and provides the following summary:


  • Hyper-V in Windows 8 Developer Preview
  • Hyper-V in Windows Server 2008 R2
  • VMware Workstation 8.0 for Windows
  • VirtualBox 4.1.2 for Windows


  • Microsoft Virtual PC (all versions)
  • Microsoft Virtual Server (all versions)
  • Windows 7 XP Mode
  • VMWare Workstation 7.x or older

For now, I’m happily running Windows 8 test VMs on an evaluation version of VMware Workstation 8.0 and in Hyper-V on Windows Server 2008 R2 SP1.  Next stop: Running on some fairly recent hardware.

SQL Server 2008 R2 Report Builder 3.0 (RTM)

image By far, the most popular posting on this site is Visual Studio 2008 & Business Intelligence Development Studio (Troubleshooting).  The post currently has over 60 comments.  It seems that here’s a lot of confusion about ways in which developers and report designers can get the tools they need to create and manage SQL Server Reporting Services (SSRS) reports.  If you’re trying to work with the Business Intelligence Development Studio (BIDS) with SQL Server 2005 or SQL Server 2008, or you’re planning to use Report Builder 2.0, that post should point you in the right direction.

So now that SQL Server 2008 R2 has been released, what’s the story for report development?  Fortunately, it’s not quite as confusing.  The primary tool you’ll use for developing reports is Microsoft SQL Server 2008 R2 Report Builder 3.0.  You can download it manually using the link to the Microsoft Download site, or you can install it using ClickOnce by loading your Reporting Services web site (e.g., http://localhost/Reports).  The download is also available as part of the Microsoft SQL Server 2008 R2 Feature Pack (along with a wide variety of other tools and utilities).  Report Builder 3.0 supports the creation of reports for both SQL Server 2008 and the R2 version.

If you’re moving to (or testing) the RTM version of SQL Server 2008 R2, Report Builder 3.0 is likely the best way to get acquainted with the new features of this release.  And, thankfully, the migration process should be much simpler than it was for previous versions of SSRS.  A great resource for more information is the MSDN SQL Server 2008 R2 Reporting Services Forum.  Or, if you have any questions, feel free to post them here.

SQL Saturday in Dallas: May 22, 2010

SQLSaturday SQL Saturday is a series of free single-day conferences that’s being held throughout the United States.  Here’s some basic information about the conference from the web site:

We started SQLSaturday in 2007 as a platform for free one day training events for SQL Server professionals. We focus on local speakers, providing a good variety of topics, and making it all happen through the efforts of volunteers. Whether you’re attending one or thinking about hosting your own, we think you’ll find it’s a great way to spend a Saturday.

Events are currently scheduled through October, 2010 (see the site for details on dates and locations).  Also, if you’re interested in speaking at one of the events, be sure to submit your session early.

I’ll be presenting two SQL Server sessions (details below) at SQL Saturday Dallas 2010.  As of this writing, it looks like there are nearly 500 registered attendees.  It should be a great event!

SQL Server Basics for non-DBAs

Despite the importance and value of relational databases, many developers and administrators often have only a basic understanding of how they work.  This session covers the basic architecture of SQL Server, including basic installation and configuration of the server.  The focus will be an overview of the most important topics, including: Managing database storage, performing regular database maintenance, managing security and data protection.  Finally, we’ll conclude with some best practices for managing database schemas and objects.  Attendees are encouraged to bring their server and database management questions.

Reporting Services: Development and Deployment

This session will begin with a brief architectural overview of Reporting Services and details on getting up and running with Reporting Services.  Then, we will look at demonstrations of creating new reports by building connections and data sets using Report Builder and Visual Studio.  Reporting design features including parameterization, dynamic drill-downs, matrix reports, charts, and sorting will be provided. 

Connection errors when migrating from Visual SourceSafe (VSS) to Team Foundation Server (TFS) using VSSConverter (Error TF31002)

image If you haven’t yet heard, the Release Candidate (RC) version of Visual Studio 2010 is now available to MSDN Subscribers.  Personally, I was waiting for this release to move my primary development environment over to the new version.  Overall, the installation and setup process was easy enough on two of my development machines.  The biggest problems I ran into were related to migrating my dozen or so development projects from Visual SourceSafe to Team Foundation Server.  I know I’m a bit behind the curve, but I’m an independent developer, and I was actually happy enough with VSS.

Using VSSConverter

The VSSConverter.exe utility is Microsoft’s command-line tool for migrating Visual SourceSafe repositories to Team Foundation Server.  The utility includes analyze and migrate modes and is driven by XML-based configuration files.  The process was simple enough and is documented in the following MSDN articles:

Migration Errors

The basic process went well until I got to the step of actually performing the migration.  That’s when I encountered the following dreaded TF31002 error:


I checked my server name, port, and other settings numerous times but still couldn’t get it to work.  Web searches provided some basic troubleshooting information, but nothing relevant to my issue.  All diagnostics that I ran (including the Best Practices Analyzer from the Team Foundation Server Power Tools) reported that everything was OK.

The Solution…

I finally stumbled upon the solution in an old bug reported via Microsoft Connect.  The defect report is titled VSSConverter cannot connect to the Team Foundation Server and offers the following problem description and solution:

When trying to migrate a Source Safe database to TFS2010 the VSSConverter tool exits with the following error:
TF60070: Unable to connect to the Team Foundation Server: ‘http://ts01:8080/’. Please ensure that the Team Foundation Server exists and try again.
The Team Foundation Server exists but at http://ts01:8080/tfs (default installation) The VSSConverter tool is unable to access this location.

There is a new configuration option in the TeamFoundationServer element to specify the collection to which the sourcesafe database should be merged. It’s nowhere to be found in the documentation yet.
The solution is to add collection="tfs/DefaultCollection" to the TeamFoundationServer to specify which collection should be used.

After adding the “collection=” attribute, the migration worked flawlessly.  It took about an hour to transfer all of my code and versions, but everything looks good now.  The migration process could be simpler, but (if I’m lucky), I’ll only have to do this once.  I hope this helps some of you that might have run into the same problem.

.NET Developer Stories

Perhaps one of the best and most enjoyable ways to learn about technology is through examples of how it’s being applied.  Many organizations offer case studies and other details of their implementations in an effort to help others that can benefit from the knowledge.  However, it’s often difficult to find real-world, developer-focused content.  Much of the information has had many layers of overly enthusiastic marketing-ese applied, and the technical details get buried under photos of attractive, happy-looking business people from stock clip art.

To help provide some concrete examples (and recognition) related to .NET development, Microsoft has created it’s .NET Stories web site.  This site allows developers to post some details related to their own projects and the application of technologies such as:

  • .NET Framework and Visual Studio
  • Windows Server
  • SQL Server
  • SharePoint Server
  • Windows 7
  • Windows Azure

You can submit your own projects use the My .NET Story web site.  I’m looking forward to reviewing the submissions for ideas (and I might possibly submit one of my own applications for review).  Oh, and did I mention that the site offers numerous prizes, including a Smart Car and a 12-day trip to the Galapagos Islands?  It’s not often that developers get recognition, so I hope a lot of us can take advantage of the information collected on this site.