Saturday, October 15, 2005

Controlling Transactions and Locks in SQL 2000 and 2005

Here are some very good reads on locks and transaction in both SQL 2000 and SQL 2005(Yukon). Locks and transactions are very important to understand for developers, especially on the SQL Server side.
Controlling Transactions and Locks in SQL 2000 and 2005 - Part 1
Controlling Transactions and Locks in SQL 2000 and 2005 - Part 2
Controlling Transactions and Locks in SQL 2000 and 2005 - Part 3

/Gill

Composite UI Application Block

Are you considering a Smart Client approach to address the challenges of building Line of Business solutions that interact with many backend systems? Ever wondered what would the architecture and design of a complex UI would look like? Do you need to abstract the "plumbing" of such client applications so your business developers can focus their attention on building the business specific components rather than dealing with complex issues like threading, asynchronous requests, etc.? The Composite UI Application Block (CAB) could be a good candidate.

CAB is a guidance asset (an application block) based on .NET 2.0. At this stage CAB is the only Application Block available for Framework 2.0.

It’s intended to provide proven practices to build complex UIs based on simpler “parts” (SmartParts as we call them, “WinParts” in other architectures). This is a recurrent pattern implemented in many well known examples.

/Gill

Beta of “p&p Community” Launched!

Beta of “p&p Community” Launched! (06/21/2005 • More details) p&p Community is a new section on GotDotNet designed specifically to support patterns & practices community activities. The site features several usability improvements over the original workspaces, including multiple message boards, a search feature, and new links in the left navigation menu.

/Gill

Thursday, October 13, 2005

For Developers, Microsoft Has More in Store than Ever Before, Part 2

By Patrick Gallucci

As a follow-up to my previous article on the PDC this year, I present a few more technologies that you are sure to hear about.

LinQ: A Sneak Peek at C# 3.0
The .NET Language Integrated Query (LinQ) is by far the most compelling technology to be added to C# in my opinion. Without going into a lot of detail, I will explain what it is and how and when it will be implemented. I look at LinQ and its relationship to objects as what WMI is to events. It is a query language that allows you to search your objects and their attributes and methods in a standard declarative manner.

(goto http://www.developer.com/net/net/article.php/3554921 to code sample.)

For a meta-data guy like me, this has great potential to allow dynamic application creation and execution.

Now if you join this data to a relational database and WMI or event data, you can start to see the potential. Don Box and Anders Hejlsberg wrote a MSDN article that explains the details of LinQ. Read it, learn it, live it. Keep in mind that LinQ is part of C# 3.0 and is not supported at this point. (I will write a very detailed article on LinQ for Developer.com at a later date.)


To be clear, LinQ is indeed C# but also so much more. As Microsoft Group Manager Alan Griver pointed out to me, it is a cross-team effort between the C#, VB, and SQL teams. "This is a platform technology, not tied to any given language," says Alan, which completely makes sense. Why should us C# guys have all the goodies? I think that makes this an even more compelling technology for everyone to learn.

Office 12: New UI and Tighter IntegrationI have to admit that I am one of the individuals who take Office for granted. I have been using it for so long that I don’t think too much about it. I would not consider myself a power-user from an end-user perspective, but I do extend it with macros and write programs for it using the Visual Studio tools for Office (VSTO). So the new UI for Office 12 was a bit of a surprise to me. I always find myself adjusting toolbars and trying to get my environment set up correctly, but from the looks of it, things should be more intuitive and easier to use in Office 12. From a development standpoint, with the introduction of the CLR with SQL Server 2005, Office development should be substantially easier and more efficient.


Expression: New UI Presentation Tools for Graphics and Web Designers
As a Flash designer/developer wannabe, I am very much looking forward to Expression, a suite of three tools all targeted at the UI or presentation designer:

Acrylic Graphic designer incorporates vector and image editing as well as dynamic special effects and workflow in a single environment.
The Sparkle Interactive Designer allows you to create audio, video, and static designs into a single user experience, such as a movie or 3D interactive animation.
The Quartz Web Designer allows you to take the output from the other tools and create a Web design that is controlled by CSS and XML.

A beta of this tool is available on MSDN. I am interested to see the integration that this toolset has with Visual Studio.

So Many Tools...
Well, those were my highlights of the PDC 2005 this year. If you were not able to make it to the event, you can still see most of the content online at the PDC Web site on MSDN.

Microsoft and other software companies are delivering so many new tools and technologies these days that it is a challenge to keep track of all the products. The PDC and other conferences are a great way to stay in the loop and get a first-hand look at these products before they hit the shelves.

SQL SERVER 2005 SECURES YOUR DATA LIKE NEVER BEFORE

SQL SERVER 2005 SECURES YOUR DATA LIKE NEVER BEFORE by Don Kiely

Right out of the box, SQL Server 2005 does not install many of its services (such as SQL Server Reporting Services) or does not have features turned on by default (.NET integration), thereby reducing the attack vectors that hackers could use to compromise your data security.

http://nl.internet.com/ct.html?rtr=on&s=1,1y6z,1,3,hgug,7ba3,cd9n

Everyone is talking about it...A SharePoint Recycle Bin

The Microsoft Internet IT group has released a SharePoint Recycle Bin implemented via an ISAPI filter. This is really the only “bullet proof” approach to the problem with the current version of SharePoint.

Read about it here from Chris: http://blogs.msdn.com/cjohnson/archive/2005/10/06/477544.aspx

And here from Joel: http://spaces.msn.com/members/joeloleson/Blog/cns!1pw3EWFLZcwvLlkcI8XdgIjw!148.entry

/Gill

Managed Bluetooth library

Bluetooth
Anil Dhawan has written a managed Bluetooth library for Windows Mobile that makes it painfully easy to write Bluetooth apps. Even better, the source code is available under a shared source license. It was used as the basis for a two-player Spacewar game for WM5.0 that runs over Bluetooth.

/Gill

Wednesday, October 12, 2005

Asynchronous client script callbacks (AJAX)

Call them what you will, there’s valuein asynchronous client script callbacks.
by Paul Glavich

Full article is here

DPack

“DPack is a FREE collection of Microsoft Visual Studio .NET 2003 and 2005 tools. DPack is designed to greatly increase developer's productivity, automate repetitive processes and expand upon some of the Microsoft Visual Studio features. ”

New DPack available From the site:

662Kb, DPack v2.2.0 for Visual Studio .NET 2003
545Kb, DPack v2.2.0 for Visual Studio 2005 (Beta 2, June and July CTP only)

/Gill

Sunday, October 09, 2005

For Developers, Microsoft Has More in Store than Ever Before

For Developers, Microsoft Has More in Store than Ever Before
By Patrick Gallucci (from developer.com)

So the grand Microsoft spectacle known as the Professional Developers Conference (PDC) 2005 has now come and gone. Except for the hype surrounding the launch of the original .NET Framework, I cannot remember a technical conference garnering so much anticipation. This might have seemed like the Super Bowl for techno geeks in the US and around the world, but it may have been only the warm-up act. The November launch of Visual Studio 2005, SQL Server 2005, and BizTalk Server 2006 will be the largest such event in Microsoft History.


To get a sense of how big, here are some of the projections:

  • Microsoft expects approximately 2,500 attendees at the San Francisco, Calif. event aptly named “Launch 2005”, where Steve Ballmer will be the keynote speaker.
  • Redmond has scheduled an additional 293 launch events in 241 cities worldwide, covering 91 countries, with an estimated attendance of 200,000.
  • Additionally, over 1,800 launch events will be hosted by the user group, learning channel, and academic communities.
  • Sixty partners—a record number for any Microsoft server and tools launch—are sponsoring “Launch 2005”, including Accenture/Avanade, AMD, CapGemini/Sogeti, Computer Associates, Dell, EDS, EMC, Fujitsu, Hitachi, HP, IBM, Intel, NEC, SAP, Siebel and Unisys.

But enough propaganda. This article is my take on the key announcements and other take-aways from the PDC 2005 this past month. The announcements broadly covered different technology releases; there was a little bit for everyone. So if you’ve been wondering if technology in general is in a slump since the Internet bubble popped, I can assure you that it is not. Just ask anyone who was at the sold out event. Sold out? I thought that was for concerts and plane flights? How on earth can a technical conference for geeks sell out? Hmm, ponder that question as we go over some of the highlights.

Mr. Gates Is in the BuildingBill

Gates Keynote. Enough said. When Bill is in attendance—you know it’s big. You have to wonder how Gates stays interested in technology. The same way I do, I guess: he likes what he does. It’s not work if you enjoy what you are doing. I stumbled into the IT world by accident and thought I was playing. I never imagined I could actually make a living doing it. So anytime I see Gates speak, I see that drive in him that I think embodies a lot of us in this field.
Gates spoke of all the soon-to-be-released technologies and the impact that they will have on future software releases. If you did not make the PDC this year, you can still see the keynotes from Gates and Co-President Jim Allchin.


Windows Vista, WinFS

Windows Vista, formerly known as Longhorn, will be Microsoft’s next operating system release for the desktop and server. For the developer, WinFX is the new programming model that sits on top of and also extends the .NET Framework.

The Indigo API now becomes the Windows Communication Foundation Framework, with extensible SOA and SOD (service on demand) features and capabilities built directly into the API. These will all support industry standards such as the WS*- specifications. This is a key component to the connected services paradigm that the IT world is heading towards.

This announcement means it’s going to be easier to develop on open standards that are deployed as part of the API, rather than as an add-on SDK. The security and reliability will be built into the OS.

Then there is the Windows Presentation Foundation, built on XAML. This to me has been the most exciting thing I have seen yet for one simple reason: I am a meta-data guy, and this solves a lot of the coding issues I had with Windows, Web pages, or anything graphical. The separation of UI design from the code and the data that is driven from the code enables me to store my attributes about a 'widget' in WinFS and render it using the WinFx API. This should be released in 2006 for XP.


Visual Studio 2005, SQL Server 2005, and BizTalk 2006

Visual Studio 2005 (Whidbey) has become my new favorite development tool. Okay, so it just replaced Visual Studio 2003, but I must say that the VS team is doing a great job with this new IDE. Although I have been using it for close to 18 months now, I am just now starting to learn some of the new features.


By far my favorite new feature is IntelliSense Code Snippets (ICS). I used to write macros for what I now can do with ICS. I still write macros, but not as many. I wont go into too many details (as I have a forthcoming Developer.com article on the topic) other than to say, learn it, live it, be the snippet!


The Visual Studio Team Foundation will be the new working model for development projects. It is the flagship environment for medium-sized to large project teams. It is built around industry standards such as Agile software development and Microsoft Solutions Framework (MSF). In some cases, you might hear it as the replacement to SourceSafe, and to some extent that is true. But it does so much more for the entire product lifecycle, such as project management, process workflow, and defect tracking to mention just a few.


SQL Server 2005 (Yukon)—where to begin? Let’s start with Integration Services. If you currently work with SQL Server 2000 Data Transformation Services (DTS) and have not taken a peek at Integration Services, stop whatever you are doing and try it. It is not an evolution but a revolution! First and foremost, it is part of SQL Server 2005—period. I have been a long-time user of DTS 7 and 2000 and grew very found of its capabilities. But as I matured with the tool and my customers matured with it and other Extract, Transform, and Load (ETL) tools, I found myself extending quite a bit in some ways that I think were not intended. I sometimes found myself asking what if; I now just say wow!


The Business Intelligence (BI) and SQL Server Integration Services (SSIS) team delivered a product that I believe over time will have the biggest impact of all the tools that ship with SQL Server 2005. Starting with optimizing the data flow so that the performance is optimal, and then adding most every imaginable task and component, they have all but eliminated the need for extensibility.


But wait, you say you need to extend widget X? No problem, since it’s built on top of .NET 2.0 and part of Visual Studio, you can extend existing objects and components or just write your own in your language of choice.


This naturally leads me to CLR integration. Delivering this feature to say the least was not a trivial process. Early Yukon-CLR integrations were actually hosted by IIS. The 2.0 implementation changed this for stability and integration ease. What you get is a very stable DBMS that allows you to write managed code for stored procedures, triggers, and functions.


More to Come

I hope this has been enough to get you excited about some of the new technologies that are coming. I will follow up this article with a series of articles on some of the specific technologies that were introduced at the PDC.


About the Author
Patrick Gallucci is a Sr. Consultant in the Communications Sector at Microsoft. He has more than thirteen years experience in information technology. Patrick’s area of focus is developing operational efficiencies using development tools and technologies such as .NET, SQL Server, BizTalk Server, Content Management Server, and Commerce Server. His certifications include MCSE, MCDBA and MCT. Patrick is a recent instructor of MSF Design, Microsoft C#, ASP.NET, and other .NET classes. You can contact Patrick at patrick.gallucci@microsoft.com.

WinFX Windows Workflow Foundation!

One of the best things to come from WinFX is the Windows Workflow Foundation. Here is the official website for WF (short for Windows Workflow Foundation). It is there in Beta 1 of WinFx.

I will post more on WF as this is my field of interest since i work a lot with Biztalk and Sharepoint and the occasional MCMS.

Here Mark Schmidt creates a WF XAMLPad. http://blogs.msdn.com/markhsch/archive/2005/10/06/478042.aspx

/Gill

Thursday, October 06, 2005

SQL 2005 Webcasts for Oct 2005-Developer and ITPro

Twenty-four new webcasts are scheduled for October, covering such topics as SQL Server 2005 Reporting Services, SQL Server 2005: Facts and Features, A Primer to Proper SQL Server Development and more.


MSDN Webcast: Introduction to SQL Server 2005 Reporting Services (Part 1 of 6) (Level 200) Monday, October 03, 20059:00 AM Pacific TimeThis six-part series presents a comprehensive introduction to Microsoft SQL Server 2005 Reporting Services for developers. In the first webcast, we provide an overview of Reporting Services.

MSDN Webcast: Introduction to SQL Server 2005 Reporting Services (Part 2 of 6) (Level 200) Wednesday, October 05, 20059:00 AM Pacific Time This second webcast looks in depth at techniques for delivering canned reports to end users, including URL access, subscriptions, and the Web service.

MSDN Webcast: Introduction to SQL Server 2005 Reporting Services (Part 3 of 6) (Level 200) Friday, October 07, 20059:00 AM Pacific Time This third webcast focuses on the Report Builder, a tool for ad hoc reporting.

MSDN Webcast: A Primer to Proper SQL Server Development (Part 8 of 10): Data Loading and Aging Strategies (Level 200) Friday, October 07, 200510:00 AM Pacific TimePart eight in our series on Microsoft SQL Server 2005 development shows you how to use batch strategies to make data loading and aging more efficient.

MSDN Webcast: Introduction to SQL Server 2005 Reporting Services (Part 4 of 6) (Level 200) Monday, October 10, 20059:00 AM Pacific Time In this fourth webcast, we examine some more advanced ideas surrounding report design. Learn how to create tabular reports, matrix reports, linked reports, charts, and sub-reports.

TechNet Webcast: Minimize Blocking with New Snapshot-Based Isolation Levels in SQL Server 2005 (Level 200) Monday, October 10, 20051:00 PM Pacific TimeAre deadlocks giving you grief? Tune into this webcast and learn how you can increase the availability of your applications to your end users.

MSDN Webcast: Introduction to SQL Server 2005 Reporting Services (Part 5 of 6) (Level 200) Wednesday, October 12, 20059:00 AM Pacific Time This fifth webcast focuses on SQL Server Reporting Services extensibility. We demonstrate a custom data source for SQL Server Reporting Services that reads data that is not accessible through SQL queries.

SQL Server 2005: Facts and Features (200-300) Wednesday, October 12, 200510:30 AM Central TimeLearn about the three fundamental advancements SQL Server 2005 brings to the Market: Enterprise Data Management, Developer Productivity, and Business Intelligence.

SQL Server 2005: Facts and Features Wednesday, October 12, 200512:00 PM Eastern Time Learn about the three fundamental advancements SQL Server 2005 brings to the Market: Enterprise Data Management, Developer Productivity, and Business Intelligence.

TechNet Webcast: An Introduction to How SQL Server 2005 Can Help You Deliver Highly Available Database Systems (Level 200) Wednesday, October 12, 20051:00 PM Pacific TimeThis webcast discusses the various features in SQL Server 2005 that can help you deliver high availability: Failover Clustering, Database Mirroring, Peer-to-Peer Replication, Database Snapshots, Snapshot Isolation, and Online Index Operations.

TechNet Webcast: Level Database Mirroring: Why, When and How? (Level 300) Thursday, October 13, 20058:00 AM Pacific TimeIn this webcast, you will learn how to use Database Mirroring as a solution within the broader range of SQL Server 2005 high availability options such as Log Shipping, Clustering, and Replication. You will examine various deployment scenarios, and the considerations and best practices associated with each. Finally, you will learn about the best practices that are based on the experiences gained by internal testing.

MSDN Webcast: Introduction to SQL Server 2005 Reporting Services (Part 6 of 6) (Level 200) Friday, October 14, 20059:00 AM Pacific TimeIn this sixth and final webcast, we concentrate on security and manageability, beginning with a look at the Reporting Services security model, the sources of security information, and the security roles associated with reports and servers.

MSDN Webcast: A Primer to Proper SQL Server Development (Part 9 of 10): Profiling for Better Performance (Level 200) Friday, October 14, 200510:00 AM Pacific Time This webcast, part nine in our series on proper Microsoft SQL Server 2005 development, focuses on the Microsoft SQL Server 2005 Profiler and its capabilities.

TechNet Webcast: Optimize Your SQL Server Environment for Availability with Storage Foundation for Windows (Level 200) Wednesday, October 19, 20059:00 AM Pacific Time Join this webcast to learn how to use VERITAS Storage Foundation High Availability for Windows to optimize your SQL Server environment.

TechNet Webcast: How You Can Achieve Greater Availability with Failover Clustering Across Multiple Sites (Level 300) Wednesday, October 19, 200511:30 AM Pacific Time In this webcast, learn how to turn a server cluster into a geographically-dispersed cluster whose nodes reside in different physical sites.

An Overview of SQL Server 2005 Reporting Services and Analysis Services Wednesday, October 19, 200512:00 PM Eastern TimeDiscover how you can finally offer a unified and integrated view of all your business data in your enterprise reporting environment. See some of the best reasons to get excited about SQL Server 2005.

TechNet Webcast: Disaster Recovery Best Practices for SQL Server 2000 and SQL Server 2005 (Level 200) Thursday, October 20, 20059:30 AM Pacific Time This webcast presents a variety of best practices around maximizing SQL Server uptime and availability, while minimizing service disruption to your customers, using Quest's SQL LiteSpeed.

TechNet Webcast: Minimize Blocking Through Snapshot-based Isolation Levels (Level 200) Friday, October 21, 20058:00 AM Pacific TimeJoin this webcast to learn how these new isolations eliminate blocking, including deadlocks between readers/writers. You will also learn how isolations provide a transactional consistent snapshot of a database at transactional and statement levels. This webcast will focus on basic concepts, managing row versions, and troubleshooting.

TechNet Webcast: Building Highly Available Database Systems that Scale with Peer-to-Peer Replication (Level 200) Tuesday, October 25, 200511:30 AM Pacific TimeThis webcast provides an overview for how you can use Peer-to-Peer Replication in Microsoft SQL Server 2005 to create geographically dispersed redundant copies of a database to improve both scalability and availability for database applications.

SQL Server 2005: Facts and Features Wednesday, October 26, 200512:00 PM Eastern Time Learn about the three fundamental advancements SQL Server 2005 brings to the Market: Enterprise Data Management, Developer Productivity, and Business Intelligence.

MSDN Webcast: A Primer to Proper SQL Server Development (Part 10 of 10): Most Common Roadblocks to Scalability and Reliability (Level 200) Friday, October 28, 200510:00 AM Pacific TimeThis is the final webcast in our ten-part series on proper Microsoft SQL Server 2005 development techniques.

TechNet Webcast: A Technical Overview of SQL 2005 High Availability Features (Level 200) Monday, October 31, 20058:00 AM Pacific Time This webcast examines some of the features of Microsoft SQL Server 2005-the next release of the SQL Server product-that can help you overcome some of these barriers. This webcast reviews several specific areas: database server failure or disaster, user or application error, data access concurrency limitations, and database mirroring and clustering.

TechNet Webcast: Optimize Performance with Maximum Uptime by Creating and Maintaining Indexes Online with SQL Server 2005 (Level 200) Monday, October 31, 20059:30 AM Pacific TimeSee how in Microsoft SQL Server 2005 you can create indexes online using data definition language operations such as CREATE/ALTER/DROP index which can be executed concurrently with Data Manipulation Language operations.

TechNet Webcast: How to Increase Availability Using Database Mirroring in SQL Server 2005 (Level 200) Monday, October 31, 20051:00 PM Pacific Time This webcast provides guidance and offers considerations for operational deployments of database mirroring in Microsoft SQL Server 2005.