Are you tired of database latency? Low transaction throughput? Have you created a complicated storage design just to eek out a few more IOPS? If you answered yes to any of these questions then you should consider investigating flash-based storage. A flash-based storage array provides consistent performance, simple storage design, and low latency for SQL Server workloads such as OLTP, Business Intelligence and Data Warehousing.

Register for the webinar to learn more about how moving to flash-based storage addresses many of the pain points that application owners and DBAs face in the spindle world.

SQL Server and storage-related issues are among the most common issues I run into with my clients. This presentation, sponsored by PureStorage, will try to dispel many of the myths and not-so-best practices, and will include some real-world input from Rob “barkz” Barker, Solutions Architect at Pure Storage. Be sure to register if you’re planning to attend!

I’m excited to have been given the opportunity to present at the December meeting of the Central Texas Systems Management User Group (CTSMUG)! I’ll try to post some more details on the topic here within the next week.

The meeting starts at 10:00am and includes lunch. For details (including directions and a full agenda) and to register to attend, see the Event Details. There are lots of other interesting topics on the agenda, so do try to attend if you’re in the Austin area!

IT professionals face many challenges in their struggle to deliver the infrastructure, applications, and services that their organizations need. Common issues include limited budgets, datacenter infrastructure complexity, and technical expertise to support a wide variety of changing goals. The presentation will provide guidance and best practices for data center admins that are looking for cost-effective ways to increase automation, improve hardware resource utilization, and provide HA/DR features without having to make costly investments in third-party products. This webinar will discuss:

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.

I’m excited to be presenting a free session that’s focused on how IT pros can use Windows Server 2012 R2 to improve their datacenter operations.

The event will take place on the morning of Friday, September 26th, 2014. The scheduled presentation will start at 9:00am and conclude at 1:00pm, including breaks and meals. For more details, and to register, please visit the Transform the Datacenter MVP Roadshow page for this event. Registration is free, and breakfast and lunch will be provided.

Here’s an overview of the topics I’ll be covering:

Session I: Transforming Your Datacenter: Why and How

a. Common barriers to replacing current OS, applications, network, storage, and related infrastructure

b. Addressing datacenter management challenges

c. Understanding the role and benefits of public/private/hybrid cloud approaches

d. Getting start with moving data, applications, and services to the cloud

One of the many benefits of being a Microsoft MVP is the opportunity to connect with IT professionals that are located in my area (Central Texas). While there’s no shortage of online resources for technical content on this topic, sometimes an in-person, on-site session can help provide the much-needed opportunity to interact with peers outside your organization. If you’re in the Houston or Central Texas area, please do try to attend!

On 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 UserGroup.tv (thanks, Shawn!). Thanks to everyone for attending!

I recently received my 11th Microsoft MVP Award! I’m really happy to once again be included in the program, and I’ll definitely but the benefits to good use. Thanks, as always, to everyone at Microsoft for the award and for making the program so valuable!

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.

To 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!

I often get requests and questions related to training, along with general questions about how I keep up with technology. They range from general requests (“How do I get started with database administration?”), to much more specific (“How can I implement High-Availability for Hyper-V in Windows Server 2012 R2 without purchasing expensive shared storage?”). There’s often a wealth of information available online, with sources including blog posts, product web sites, training videos, White Papers, and industry publications (online and offline). The challenge often becomes trying to organize the available information and to manage your learning.

The Microsoft Virtual Academy (MVA) site is a free resource that includes a huge collection of free, online learning materials on dozens of topics. The content provides both topic-specific (Virtualization, Hybrid Cloud, etc.) and product-specific (Hyper-V, System Center, etc.) content. In addition to standard online courses, there are also live events. The content is presented by industry experts (such as Microsoft MVPs), along with Microsoft’s own product developers and managers.

I recently participated in a multi-day Windows Azure Jump-Start series (if you’re interested, the content will be made available on-demand). You can find, sign up for, and attend events using the Microsoft Virtual Academy Live Events page.

The MVA site also offer some other convenient features. You can earn “points” on the site for completing training courses and evaluations. It’s kind of like Xbox Live Achievements, and it helps to see how much time and effort you’ve put into keeping current or learning something new. You can also add various courses to your My Learning Plan queue, so whenever you have some free time, you can jump quickly into a course. You can even download an unofficial Transcript to keep track of which courses you’ve finished.

Overall, if you’re looking for a good way to keep up with Microsoft products and industry best practices, I highly recommend visiting the MVA site.

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?).

UserGroup.tv is providing free recordings of my recent SQL Server presentations at the Austin Code Camp 2013 event. While the attendance was excellent, I’m sure some people were unable to attend in-person. Here are the links to the presentation recordings:

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.

I have a couple of upcoming presentations on the BrightTALK web site. The presentations are free to attend are available online (registration is required). Also, feel free to take a look at my previous BrightTALK presentations.

Designing Cloud Architectures with Hyper-V

Many of the technical aspects of cloud-based solutions are a natural progression for those environments that want to expand upon their virtualization deployments. This webinar will provide technical details and best practices for deploying new features in the Windows Server 2012 and Hyper-V 3.0 platforms. Topics will include reducing storage costs, implementing high-availability and disaster recovery, and improving automation to reduce data center costs and increase efficiency.

Streamlining IT Operations with Windows Azure

While few would call the use of cloud-based technologies a "quiet revolution", Microsoft’s Windows Azure platform has expanded into a wide range of different services that can be leveraged to reduce costs and increase IT efficiency. The challenge for IT professionals is to arrange the pieces of the puzzle into an optimal arrangement for many different types of workloads. This presentation will focus on practical advice for using SaaS, IaaS, and PaaS approaches to building private, public, and hybrid clouds. It will include examples of applications and workloads that could benefit from the use of cloud technology, and the benefits and drawbacks each approach.

Austin has long been known as a high-tech city, and it’s one of the many reasons I have loved living here for over 20 years. Earlier this week, the technology news just got better: Google Fiber is coming to Austin! We’ll soon be joining Kansas City with access to 1Gbps symmetric bandwidth. For customers that don’t need that level of performance, they can opt for paying a one-time (or one-year) installation cost for free Internet access from there on.

If you live in Austin, you can visit the Google Fiber Austin page to sign up for more information (when it’s available). Now, comes the hard part: The wait until the service is available in my area (in Central Austin). Estimates so far indicate that it will be at least another year before that happens. Still, it’s good to know that this kind of connectivity is on its way!

In general, I’ve been very happy with my Office 365 Small Business Premium subscription, and I use many of the Office 2013 applications all day, every day. I have especially liked the ability to quickly and easily install Office 365 licenses on other computers, and the seamless way in which they’re automatically configured with the most important settings.

Recently, however, I’ve started seeing the following error message when I try to launch any of the Office 2013 programs:

Office is Busy

We’re sorry, [application name].exe can’t be used right now because Office is busy. We’re either updating or helping you add or remove some programs.

You can try using [application name].exe again after we’re done. It shouldn’t take long.

In some cases, the problem occurs even when I have other Office applications open. For example, if I’m actively using Outlook any try to launch Word or Excel, I’ll get the above error. From then on, all of the applications fail to launch or work properly.

In some cases, rebooting the computer (something that I do rarely) has resolved the issue, but in others, it has not. Fortunately, there’s a fairly quick method that seems to work to resolve the problem: In the Control Panel “Uninstall a program” applet, you can highlight your Office 2013 installation (the exact name will vary by your subscription type) and click Change. You’ll see the following two options:

For me, the Quick Repair option has worked on each of the dozen or so times that I have had to run it in the last few days. You can get more information in the support article titled Repair Office programs. The process takes several minutes, and then results with the following:

It does appear that all of the Office 2013 updates remain installed and do not need to be downloaded again.

Unfortunately, the advice on the forums is, at best, an annoying workaround. I’m not sure what is causing this problem (which never occurred prior to a couple of days ago), but I’ll follow up with Microsoft and see if I can get some information. If I do get more details, I’ll post them here.

A Quicker, Faster Workaround

Update(04/05/2013): One piece of information from the Microsoft Community Office Forum seems to have simplified the troubleshooting process: For me, simply stopping or restarting the “Microsoft Office Service” has resolved the problem every time it has occurred. You can do this using the Services applet in Control Panel or by using the command line:

NET STOP “Microsoft Office Service”

I put the above line in a batch file, and I run it whenever the issue occurs. It only takes a few seconds, so it’s a much better workaround until there’s an official solution.

Disclaimer

All content provided or linked to from this site is provided as-is and with no implied warranty. Use of any technical content should be at users' discretion and the author will take no responsibility for any of its usage or applications.