Thursday, June 28, 2007

Video: Secrets to Fast Detection and Recovery from Database Corruptions

How can you tell whether your data is corrupt? If you have corruption, how do you work out what's wrong with the database? How do you ensure you have a valid backup? If you don't have a valid backup, how and what do you repair? If you do have a backup, how do you work out whether you should restore or repair? And at what granularity? How do you go about determining what went wrong in the first place? It's all about limiting downtime and data-loss when a corruption occurs—from knowing the tools, to understanding the choices, to planning a successful strategy. Some of the features discussed in this session are: torn-page detection and page checksums, IO read-retry, backup checksums, consistency checks (DBCC CHECKDB and related commands), and database repairs. Facing database corruption is almost inevitable in every DBAs career—make sure you're prepared when it happens to you.

Watch the video here: http://www.microsoft.com/emea/itsshowtime/sessionh.aspx?videoid=549

Fix: Unable to start debugging on the web server. Debugging failed because integrated Windows authentication is not enabled

FIX: Error message when you try to debug an ASP.NET 2.0 application in Visual Studio 2005 on a Windows Vista-based computer: "Unable to start debugging on the web server. Debugging failed because integrated Windows authentication is not enabled"

SYMPTOMS
In Windows Vista Home Basic or in Windows Vista Home Premium, you create a Microsoft ASP.NET 2.0 application by using Internet Information Services (IIS) 7.0. When you try to debug the application in Microsoft Visual Studio 2005, you receive the following error message:
Unable to start debugging on the web server. Debugging failed because integrated Windows authentication is not enabled. Please see Help for assistance.

CAUSE
This problem occurs because Windows Vista Home Basic and Windows Vista Home Premium do not contain the Windows Authentication module for IIS. When the client tries to automatically attach the debugger in an ASP.NET 2.0 application, the client sends a HTTP request that contains the DEBUG verb. This HTTP request is used to verify that the process of the application is running and to select the correct process to attach. This HTTP request must be authenticated by using Windows Authentication. However, Windows Vista Home Basic and Windows Vista Home Premium do not contain the Windows Authentication module for IIS. Therefore, the problem that is described in the 'Symptoms" section occurs.


RESOLUTION
Hotfix information

A supported hotfix is now available from Microsoft. However, it is intended to correct only the problem that is described in this article. Apply it only to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next Visual Studio 2005 service pack that contains this hotfix.

Download the Hotfix here: http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=7250

Wednesday, June 27, 2007

Windows Communication Foundation Webcast Series

Michele Leroux Bustamante is going to be delivering 15 webcasts on WCF this summer, from July through September. Each webcast will be about 1 hour in length, touching on the fundamentals and practical approaches for your WCF development efforts. Here are the links, with scheduled dates!

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 01 of 15):
Overview
Monday, July 02, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344312&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 02 of 15):
Contracts
Monday, July 09, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344314&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 03 of 15):
Contract Versioning
Wednesday, July 11, 2007 10:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344318&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 04 of 15):
Exceptions and Faults
Friday, July 13, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344322&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 05 of 15):
Bindings
Monday, July 23, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344330&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 06 of 15):
Hosting
Wednesday, July 25, 2007 10:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344338&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 07 of 15):
Messaging Patterns
Friday, August 10, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344342&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 08 of 15):
Instancing Modes
Monday, August 13, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344344&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 09 of 15):
Concurrency, Throughput, and Throttling
Wednesday, August 15, 2007 10:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344346&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 10 of 15):
Security Fundamentals
Friday, August 24, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344348&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 11 of 15):
Federated Security
Monday, August 27, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344351&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 12 of 15):
Reliable Messaging
Wednesday, August 29, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344353&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 13 of 15):
Transactions
Monday, September 03, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344355&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 14 of 15):
Message Queuing
Wednesday, September 05, 2007 9:00 AM Pacific Time (US & Canada)
o http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032344357&Culture=en-US

· MSDN Webcast: Windows Communication Foundation Top to Bottom (Part 15 of 15):
Extensibility
Friday, September 07, 2007 9:00 AM Pacific Time (US & Canada)
http://www.dasblonde.net/ct.ashx?id=c639724e-3ae5-4e8b-9d3f-d4e42dea41e6&url=http%3a%2f%2fmsevents.microsoft.com%2fCUI%2fEventDetail.aspx%3fEventID%3d1032344359%26Culture%3den-US

Tuesday, June 26, 2007

Five Books Every Developer Should Read No Matter What Language You Program In

Which books should you read/buy when you are a programmer? I have listed 5 books that have helped me a lot. The books that I have chosen are not specific to any language although some of the books have examples in one language only. Design Patterns has examples in smalltalk and C++ but since the code is not very complicated you should have no problem converting it to your language of choice. I have included links to sample chapters for the books where I could find them. For some of the books I have also provided links to the author's site; some of them have additional material so that you can look at that. I have also provided Amazon links so that you can read reviews. All of these books are rated 4 stars or higher. I have also provided alternate books if I felt that there were more choices for the same subject

Design Patterns
This book is one of the seminal books on patterns in software development. If you are a professional software developer, you must read this. If you are learning to write good software, this is a book that you will need to take on at some point

Design Patterns Site


Code Complete
Code complete provides the reader with an insight into how
to write good and easy to understand code. You will come away from this book with an appreciation of the thought process that should go into writing every class, routine, comment etc...

Software development steps are outlined clearly. Pitfalls to avoid are discussed and rewards obtained from good code is explained. The author tells you what you need to know and most importantly why you need this information. If one applies the ideas in this book, I think you will be a better programmer.

Sample Chapter: Chapter 1: Welcome (pdf)
Sample Chapter: Chapter 5: Design in Construction (pdf)

Code Complete Author's Site



The Pragmatic Programmer
The pragmatic programmer provides invaluable advice to those who are just starting to program, and those who have been programing for years. By following the authors' simple rules you should have gained some programming wisdom that a programmer would realize in a decade.

Extracts from the book
The Preface
Software Entropy
Programming by Coincidence
Evil Wizards
Balance Resources
Summary of the book's tips
Contents



Refactoring
This book will change the way you think about and working with exisiting code. It'll teach you that changing/modifying software is a fact of life. Martin Fowler does a awesome job of describing how to improve the design of existing code by performing various refactorings. Various design patterns are mentioned throughout the text, that is another reason why the design patterns book is so important

Sample Chapter: Refactoring, a First Example


UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design, 2nd Edition
UML has grown. A few years ago, when UML was just getting accepted, a book on how to use it would have been much thinner. But the successful broad uptake of UML led to its semantic notation being expanded. What the authors give us here is a thorough exposition of UML 2.0 and how to use it. It also goes into the Unified Process for running a project, and how this can be documented in UML


Sample Chapter: Relationships



And here are a couple of more choices instead of the books above
Agile Software Development, Principles, Patterns, and Practices
AntiPatterns
Prefactoring
Ajax in Action
Head First Design Patterns

five new (free) ASP.NET AJAX videos on the asp.net site

Joe Stagner has recently posted five new (free) ASP.NET AJAX videos on www.asp.net:

#40 How Do I: Use the PagingBulletedList Extender Control?
(25 minutes, 31 seconds)
#41 How Do I: Use the NumericUpDown Extender Control?
(21 minutes, 50 seconds)
#42 How Do I: Use the ASP.NET AJAX History Control?
(8 minutes, 59 seconds)
#43 How Do I: Use the ASP.NET AJAX ValidatorCallout Extender?
(11 minutes, 6 seconds)
#44 How Do I: Implement the AJAX After Processing Pattern?
(5 minutes, 40 seconds)

Intel Introduces Worldwide Software Training Curriculum to Spur Multi-Core Computing Software Design

Intel Corporation unveiled today a global training curriculum for software developers to speed and expand software development for multi-core processors. The Intel® Software Training Program offers classroom courses and hands-on lab work to better train software developers in multi-threaded application design. Training is delivered by Intel-approved instructors and designed in a way to quickly reach worldwide developers with NIIT*, an information technology training company, and other authorized providers.

As the industry transitions from single-core processors to ones that have multiple cores and threads per processor, software developers need to hone their skills to create applications that take advantage of multi-core processors that can execute multiple instructions simultaneously. Software developers can no longer rely on increasing processor clock speed to gain improvements in application performance.

The Intel Software Training Program employs Intel expertise and offers basic and advanced software development training, including software parallelism, multithreaded programming and platform optimization.

"The power of multi-core processors to increase software performance is fantastic, but not automatic and not happening fast enough," said Elliot Garbus, general manager of Intel's Developer Relations Division. "With this new training program and a number of other programs, products and tools to help the developer community, Intel is empowering software designers with the knowledge and skills they need to usher in a new generation of software innovation."

The program is being deployed in the United States through Element K*, a subsidiary of NIIT. Other authorized providers around the world include Academy IT* and LANIT* in Russia, Aribil* and NETRON* in Turkey, NIIT Ltd.* in India, QA-IQ* in the United Kingdom, Samsung SDS* in Korea, Training Choice* in Australia and Singapore, and TRIA IT–training GmbH* in Germany.

Additional information about the Intel Software Training Program, including course schedules and registration, is available at www.intel.com/software/college.

In addition to this new program, Intel offers a full suite of development tools for multi-core processors, an online multi-core developer community via the Intel® Software Network and a higher education program that delivers multi-core curricula to thousands of students in more than 200 universities worldwide.

Intel® Software provides resources, technologies, products and services developers need to create innovative products and industry-leading software solutions with enhanced business value and are designed to run best on Intel platforms. For more information, visit www.intel.com/go/software.

About Intel
Intel, the world leader in silicon innovation, develops technologies, products and initiatives to continually advance how people work and live. Additional information about Intel is available at www.intel.com/pressroom.

Building WCF (Windows Communication Foundation) Services with WF (Windows Workflow Foundation)

Channel 9 has published their latest screen cast. This one is about Building WCF (Windows Communication Foundation) Services with WF (Windows Workflow Foundation)
From the site:

I often liken WF and WCF to long lost siblings separated at
birth. Almost every customer I talk to wants to use these two technologies
together. In V1, one could certainly use the two together, there was just
some plumbing that had to be written. In Orcas, we aim to take care of
most of that plumbing for you.This is a 75 minute training session given by
Pravin Indurkar, the PM responsible for the feature in Orcas.For more
information, you can check out my blog here. (Orcas WF+WCF features, Dynamically Creating Contracts (Workflow
First Design)
)


Watch the screencast(WMV)

Visual Studio 2008 Shell Interview

Craig Skibo, developer on the Visual Studio Tools Ecosystem team, talks technical to Ken Levy about the the new Visual Studio 2008 Shell. Discussion includes how to use the VS SDK with VS to build applications (integrated or isolated) for the new free VS 2008 Shell.

Watch it here: http://blogs.msdn.com/vsxteam/archive/2007/06/26/Craig-Skibo-talks-technical-about-the-Visual-Studio-2008-Shell.aspx

CruiseControl.NET 3.1 Released

CruiseControl.NET 3.1 Released

Highlights of the CCNet 1.3 release
Integration Queues
The biggest feature change to CCNet 1.3 is the addition of Integration Queues to control and manage integration concurrency. Integration queues allow you to control which projects are permitted to build concurrently and to set their relative priorities. Please read the documentation for more information.


.NET 2.0 Migration
CCNet has now been ported to the .NET 2.0 platform. This means that the .NET 2.0 Redistributable package will need to be installed on the Integration Server. CCNet now also takes advantage of some of the capabilities of the .NET 2.0 framework, such as the SMTP library replacing CDO for sending emails using the Email Publisher.


Integrated Documentation
The documentation for the installed version of CCNet is now directly available through the web dashboard. This makes it much easier to look up the appropriate configuration and documentation information for the installed server.


Performance Improvements
The performance of the CCNet web dashboard has been improved significantly. Previous versions encountered severe performance difficulties when using CCTray to obtain build status from the web dashboard instead of directly from the server. These performance issues have now been addressed.


Accurev support
Support for the Accurev source control system has been added.


FinalBuilder Support
Support for the FinalBuilder build engine has been added.



Improvement
CCNET-6 - Modification logger doesn't handle subversion encoding
CCNET-836 - Documentation should be accessible through the web dashboard
CCNET-838 - Installer should not overwrite ccnet.config file if it already exists in installation directory
CCNET-840 - Dashboard should show which build is currently selected in Recent Builds list
CCNET-891 - Dashboard: set content-type for xml API requests to text/xml to better support javascript

New Feature
CCNET-401 - Create new email publisher that uses SMTP instead of CDO
CCNET-770 - Add integration queue support for controlling project build serialization
CCNET-812 - AccuRev sourcecontrol support
CCNET-813 - New labeller: LastChangeLabeller
CCNET-814 - FinalBuilder support
CCNET-889 - How to realise Process Encoding Support (solution)

Download it here: http://confluence.public.thoughtworks.org/display/CCNET/Download

Monday, June 25, 2007

Foundations Of F# (FSharp)

Foundations Of F#
Title: Foundations of F#
Author: Robert Pickering
ISBN: 1590597575
Pages: 360 pp.
Published: May 2007



Functional programming (FP) is the future of .NET programming, and F# is much more than just an FP language. Every professional .NET programmer needs to learn about FP, and there’s no better way to do it than by learning F#—and no easier way to learn F# than from Foundations of F#.

If you’re already familiar with FP, you’ll find F# the language you’ve always dreamed of. And all .NET programmers will find F# an exciting real-world alternative to C# and Visual Basic. This book is likely to have many imitators, but few true competitors. Written by F# evangelist Rob Pickering, and tech reviewed by F#’s main designer, Don Syme, this is an elegant, comprehensive introduction to all aspects of the language and an incisive guide to using F# for real-world professional development. F# is the future of programming (not just on .NET), and the future is now.



Table Of Contents
Foreword xiii
About the Author xv
About the Technical Reviewer xvii
Acknowledgments . xix
Preface: The Story of the Book . xxi

CHAPTER 1 Introduction
What Is Functional Programming?
Why Is Functional Programming Important?
What Is F#?
Who Is Using F#?
Who Is This Book For?
What’s Next?

CHAPTER 2 How to Obtain, Install, and Use F#
Obtaining F#
Installing F# on Windows
Installing F# on Linux
Using F# in Different Ways
Installing the Software Used in This Book
Summary

CHAPTER 3 Functional Programming
Identifiers
Keywords
Literals
Values and Functions
Scope
Recursion
Anonymous Functions
Operators
Lists
List Comprehensions
Control Flow
Types and Type Inference
Pattern Matching
Defining Types
Exceptions and Exception Handling
Lazy Evaluation
Summary

CHAPTER 4 Imperative Programming
The unit Type
The mutable Keyword
Defining Mutable Record Types
The ref Type
Arrays
Array Comprehensions
Control Flow
Loops over Comprehensions
Calling Static Methods and Properties from .NET Libraries
Using Objects and Instance Members from .NET Libraries
Using Indexers from .NET Libraries
Working with Events from .NET Libraries
Pattern Matching over .NET Types
The > Operator
Summary

CHAPTER 5 Object-Oriented Programming
Casting
Type Tests
Type Annotations for Subtyping
Records As Objects
F# Types with Members
Object Expressions
Defining Interfaces
Implementing Interfaces
Classes, Fields, and Explicit Constructors
Implicit Class Construction
Classes and Inheritance
Classes and Methods
Accessing the Base Class
Properties and Indexers
Classes and Static Methods
Overriding Methods from Non-F# Libraries
Defining Delegates
Structs
Enums
Summary

CHAPTER 6 Organizing, Annotating, and Quoting Code
Modules
Namespaces
Opening Namespaces and Modules
Giving Namespaces and Modules Aliases
Signature Files
Module Scope
Module Execution
Optional Compilation
Comments
Doc Comments
Custom Attributes
Quoted Code
Summary

CHAPTER 7 The F# Libraries
Libraries Overview
The Native F# Library FSLib.dll
The ML Compatibility Library MLLib.dll
The Native F# Library FSLib.dll
The Microsoft.FSharp.Core.Operators Module
The Microsoft.FSharp.Reflection Module
The Microsoft.FSharp.Collections.Seq Module
The Microsoft.FSharp.Core.Enum Module
The Microsoft.FSharp.Text.Printf Module
The Microsoft.FSharp.Control.IEvent Module
The Microsoft.FSharp.Math Namespace
The ML Compatibility Library MLLib.dll
The Microsoft.FSharp.Compatibility.OCaml.Pervasives Module
The Microsoft.FSharp.Compatibility.OCaml.Arg Module
Summary

CHAPTER 8 User Interfaces
Introducing WinForms
Drawing WinForms
Working with Controls in WinForms
Using the Visual Studio Form Designer’s Forms in F#
Working with WinForms Events and the IEvent Module 182
Creating New Forms Classes
Introducing ASP.NET 2.0
Creating an IHttpHandler
Working with ASP.NET Web Forms
Introducing Windows Presentation Foundation
Introducing Windows Presentation Foundation 3D
Summary 207

CHAPTER 9 Data Access
The System.Configuration Namespace
The System.IO Namespace
The System.Xml Namespace
ADO.NET
The EntLib Data Access Block
Data Binding
Data Binding and the DataGridView
ADO.NET Extensions
Introducing LINQ
Using LINQ to XML
Using LINQ to SQL
Summary

CHAPTER 10 Distributed Applications
Networking Overview
Using TCP/IP Sockets
Using HTTP
Calling Web Services
Creating Web Services
Windows Communication Foundation
Hosting WCF Services
Summary


CHAPTER 11 Language-Oriented Programming
What Is Language-Oriented Programming?
Data Structures As Little Languages
A Data Structure–Based Language Implementation
Metaprogramming with Quotations
An Arithmetic-Language Implementation
The Abstract Syntax Tree
Tokenizing the Text: Fslex
Generating a Parser: Fsyacc
Using the Parser
Interpreting the AST
Compiling the AST
Compilation vs. Interpretation
Summary

CHAPTER 12 The F# Tool Suite and .NET Programming Tools
Using Useful fsc.exe Command-Line Switches
Basic Compiler Switches
Compiler Optimization Switches
Compiler Warning Switches
Compiler Target Switches
Signing and Versioning Switches
Printing the Interface Switches
Adding Resources Switches
Generating HTML Switches
CLI Version Switches
Compilation Details Switches
Statically Linking Switches
Using fsi.exe Effectively
fsi.exe Commands
Controlling the fsi.exe Environment
fsi.exe Command-Line Switches
Using the Source Directory Macro
Writing NUnit Tests
Using Assembly Browsers
Using Debugging Tools
Using Profiling Tools
Ntimer
Perfmon and Performance Counters
NProf
CLR Profiler
Summary

CHAPTER 13 Compatibility and Advanced Interoperation
Calling F# Libraries from C#
Returning Tuples
Exposing Functions That Take Functions As Parameters
Using Union Types
Using F# Lists
Defining Types in a Namespace
Defining Classes and Interfaces
Using F# with the .NET Framework Versions 1 and 1.1
Calling Using COM Objects
Using P/Invoke
Using Inline IL
Using F# from Native Code via COM
Summary

INDEX




Sample Chapter: Ch. 01 - Introduction
Amazon Link: Foundations of F#

Presenter First Pattern

A couple of Presenter First Pattern podcasts which are available on channel 9

Presenter First Pattern (Part 1)
Presenter First Pattern (Part 2)
Presenter First Pattern (Part 3)

Silverlight: Creating Video with Timed Overlays

Channel 9 has published their latest Silverlight screen cast, from the site:

In this screencast, we look at Expression Media Encoder and Expression Blend 2
Preview together, demonstrating encoding a file with media markers and then
using Silverlight to monitor when those markers are triggered, then perform some
animation.

This technique can be useful when re-using media elements
across advertising for example, but displaying different messaging, promotional
offers, links, languages, or whatever


Watch the screencast(WMV)

Speeding up Visual Studio 2005 Tips

thekua.com@work has a couple of tips on how to speed up Visual Studio 2005

here is one of them:

Turn off the VS2005 File Navigator - With resharper installed,
you don’t need VS2005 to update the list of methods and fields at the top of the
file (CTRL-F12 does this nicely). I’ve hardly even noticed the small panel that
sits at the top of the file you’re editing but apparently it takes quite a lot
of effort for VS2005 to keep it up to date. Disable the Navigation Bar checkbox
under Tools … Options … Text Editor … All Languages … Display.

Read the other ones here: http://www.thekua.com/atwork/?p=29

Politically Correct Joke.....Not

What is a Yankee?
The same as a Quickie, but a guy can do it alone.

What is the difference between a Harley and a Hoover?
The position of the dirt bag.

Why is divorce so expensive?
Because it's worth it.

What do you see when the Pillsbury Dough Boy bends over?
Doughnuts....

Why is air a lot like sex?
Because it's no big deal unless you're not getting any.

What do you call a smart blonde?
A golden retriever.

What do attorneys use for birth control?
Their personalities.

What's the difference between a girlfriend and wife?
10 years and 45 lbs

What's the difference between a boyfriend and husband?
45 minutes

What's the fastest way to a man's heart?
Through his chest with a sharp knife.

Why do men want to marry virgins?
They can't stand criticism.

Why is it so hard for women to find men that are sensitive, caring, and good-looking?
Because those men already have boyfriends.

What's the difference between a new husband and a new dog?
After a year, the dog is still excited to see you

What makes men chase women they have no intention of marrying?
The same urge that makes dogs chase cars they have no intention of driving.

Why don't bunnies make noise when they have sex?
Because they have cotton balls.

What's the difference between a porcupine and BMW?
A porcupine has the pricks on the outside.

What did the blonde say when she found out she was pregnant?
"Are you sure it's mine?"

Why does Mike Tyson cry during sex?
Mace will do that to you.

Why did OJ Simpson want to move to West (BG) Virginia ?
Because he heard everyone there has the same DNA.

Why do men find it difficult to make eye contact?
Breasts don't have eyes.

Why do drivers' education classes in Redneck schools use the car only on Mondays, Wednesdays and Fridays?
Because on Tuesday and Thursday, the Sex Ed class uses it.

Where does an Irish family go on vacation?
A different bar.

Did you hear about the Chinese couple that had a blond baby?
They named him "Sum Ting Wong".

What would you call it when an Italian has one arm shorter than the other?
A speech impediment.

What does it mean when the flag at the Post Office is flying at half-mast?
They're hiring.

What's the difference between a southern zoo and a northern zoo?
They both have a description of the animal on the front of the cage, but the southern zoo includes a recipe.

How do you get a sweet little 80-year-old lady to say the F-word?
Get another sweet little 80-year-old lady to yell *BINGO*!

What's the difference between a northern fairytale and a southern fairytale?
A northern fairytale begins "Once upon a time," - a southern fairytale begins "Y'all ain't gonna believe this sh!t..."

Why is there no Disneyland in China ?
No one is tall enough to go on the good rides.

Sunday, June 24, 2007

SQL Server 2008 Will Have 7 New Datatypes

SQL Server 2008 New Datatypes

DATE - ANSI-compliant date data type
TIME - ANSI-compliant time data type with variable precision
DATETIMEOFFSET - timezone aware/preserved datetime
DATETIME2 - like DATETIME, but with variable precision and large date range

GEOMETRY - "flat earth" spatial data type
GEOGRAPHY - "round earth" spatial data type
HIERARCHYID - represents hierarchies using path enumeration model

The first four datatypes are regular SQL datatypes but the last three datatypes are exposed as .NET system UDTs.

Note: none of these are in the current June CTP

Saturday, June 23, 2007

Bridging The Gap from C++ to C#

Channel9 has made available their latest episode.

Remember C++? That language with strange syntax like p->x? (I’m not sure if I can even remember and I spent well over a decade writing this stuff). In a decade you can write a lot of code and much of the code I wrote is still in production today. Some of you have probably even used it. Of course now that the world has moved on to managed environments we can safely discard that stuff right? Wrong! Some of you have to figure out how to make C++ and C# work together. And on this episode we have Manu from Microsoft Israel here to help with some tips on helping these two to get along.

Listen to the podcast(MP3)
Listen to the podcast(WMA)
Download the Video
Watch the Video

Thursday, June 21, 2007

Expression Blend WPF and Silverlight Tutorials

Celso Gomes an amazing interactive designer working at Microsoft who is responsible for the beautiful sample applications that ship with Expression Blend came up with Nibbles: a series of "little tutorials for designers" that cover the use of Expression Blend to build WPF and Silverlight content. The site itself is a stunning example of Silverlight, with faded animations and transitions and accordion bars.

Visit the site here: http://www.nibblestutorials.net/

ReSharper 3.0 Released By JetBrains

JetBrains, the creators of intelligent, productivity-enhancing applications, today announced the release of ReSharper version 3.0, the company's award-winning intelligent productivity add-in for Microsoft Visual Studio. This release is spearheaded by a major expansion into new languages, with full-featured support for Visual Basic .NET, XML and XAML, backed by comprehensive cross-language functionality.
It also brings a host of new productivity-enhancing features such as an in-depth code analysis for C#, a superior unit testing solution, efficient handling of To-do lists, plus a number of new time-saving navigation and search commands.

"With this release we are embracing a greater part of the Visual Studio world by supporting developers who work in more than C#," said Valentin Kipiatkov, JetBrains' Chief Technology Officer. " In addition, we have found yet more ways to improve the Visual Studio experience for our users, from intelligent and insightful code analysis, to our
Go to Symbol' navigation, to enhanced unit testing, to support of XML and XAML. At the end of the day, improving a developer's coding experience is what our business is all about."

Significant improvements and new features in ReSharper 3.0 include:

Unrivalled C# code analysis.
In addition to detecting new warnings and errors on-the-fly, ReSharper offers code suggestions. This feature gives insight into your code by offering an intelligent analysis of actual and potential errors. The code suggestion feature even notices questionable code design - all while you type.
Multiple productivity enhancers across all languages. The most far-reaching navigation/search feature of all, �Go to Symbol', will help developers to find any file member in their solution in seconds. Other additions include a revamped Unit Test Explorer, a To-do Explorer - a feature that keeps track of to-do notes solution-wide, even in closed files, and more.
Full-featured Visual Basic .NET support. The majority of ReSharper's features are now available for VB.NET code, including smart navigation and search, code refactorings, smart code completion options, code assistance, code generation and more - all resulting in a truly enhanced Visual Basic .NET experience in Visual Studio.
Cross-language functionality. ReSharper ensures interoperability in working with mixed C# and Visual Basic projects: usage search, refactorings, quick-fixes and context actions take into account all code written in either language, whenever possible.
XML and XAML support. Extensive support for XML and XAML is now available, answering the needs of many of our existing and potential users.
Considering ReSharper's increased value to different user groups, in addition to regular full-featured ReSharper 3.0 we are offering two pared-down editions: C# and VB.NET. These language-focused editions exclude a part of the functionality and cost a fraction of the full price.

Complete product information about JetBrains ReSharper is available at http://www.jetbrains.com/resharper?rs30pr

ReSharper 3.0 is available for a 30-day free trial download at http://www.jetbrains.com/resharper/download/?rs30pr. No evaluation licenses are required.

New customers can purchase ReSharper 3.0 online at http://www.jetbrains.com/resharper/buy/?rs30pr


Code Assistance, Navigation/Search and other productivity features
Navigation and Search:

"Go to symbol" — navigate to any symbol by its short name, with a single shortcut.
Go to next/prev error action
Command to locate current file in Solution Explorer
Find symbols referenced from type or type member
Find code dependent on referenced assembly (renamed feature) or on project (new feature)
Advanced Find Usages: new UI and ability to specify arbitrary base member to search for
Highlight usages of expression in file
Type hierarchy view enhancements
Two new view modes — show interface leaves, show concrete types
Members panel added
Filter occurrences of attributes by usage in [attribute]


Code completion:
Smart completion for type arguments
Smart completion for generic method arguments
Smart completion in catch clause for Exception parameter — give name to unnamed caught exception
Alt-Ins in Solution Explorer to create a new file from template
Automatic member reordering
Parameter information for named parameters in attributes
Advanced type choosing control in Refactoring UI
Mark quasi-implementations with italic font in "Go to base/derived"
Move statements in code blocks
Move parameters in method signature
Option to generate operators in "Generate Equals & GetHashCode"
"Generate delegating members" includes base as possible target (e.g. for publishing protected members of base type)
Noticeably improved stack trace explorer


C# Code Inspections
Code inspections are capable of detecting erroneous or suspicious code. A developer is however responsible for fixing it or not. You can find some examples on the dedicated C# code analysis page. The folowing inspections are available:

Check parameter name in ArgumentException family
Redundant interface specification in list of implemented interfaces
Redundant attribute parenthesis if empty argument list
Comparison of unconstrained generic value with null
Field could be made readonly
Redundant explicit delegate creation for method
Partial type with single part
Method return value is unused
Overriding obsolete member without specifying obsolete attribute
Assignment in condition
Parameter could be declared with base type
Conditional ternary expression could be re-written as coalescing expression
For statement condition is always true
Redundant unsafe context declaration
Analysis for namespace doesn't correspond to file location
Support compiler warning levels set in project properties
Support specific warning suppressed in project properties, including "member not documented"
Ability to specify custom formatting methods for analysis (like string.Format)




Context Actions
Extract anonymous method to method of the type
Inline method body as anonymous delegate
Replace ArrayList with List
Convert catch(Exception) to catch and vice versa
Insert code to check if parameter is null and throw ArgumentNullException
Copy documentation comments from base
Create overload without parameter(s)
Initialize field from constructor parameter
Rename file to match type name
Move variable to outer scope
Add another accessor to property or event
Split string literal
Replace variable declared at outer scope with several variable declared in inner scopes, when they are independent
Surround string with string.Format()
Move member declaration(s) to another type part
Make abstract member virtual
Replace string checks with string.IsNullOrEmpty() method call
Override virtual member in derived type

Very Good Distributed Partitioned Views / Federated Databases Article

The Microsoft SQL Server Development Customer Advisory Team has a nice blog post about Distributed Partitioned Views / Federated Databases

They cover the following definitions

Definition 1: Local Partitioned View – A single table is horizontally split into multiple tables, usually all have the same structure.

Definition 2: Cross Database Partitioned View – tables are split among different databases on the same server instance

Definition 3: Distributed (across server or instance) Partitioned View. Tables participating in the view reside in different databases which reside on different servers or different instances.

Make sure you read the list of 13 items under Lessons Learned on Distributed Partitioned Views: (multiple servers involved)


Link to the article: http://blogs.msdn.com/sqlcat/archive/2007/06/20/distributed-partitioned-views-federated-databases-lessons-learned.aspx

Podcast: Introducing Acropolis

DotNetRocks published their latest podcast: Introducing Acropolis

Carl and Richard talk with members of the Microsoft Acropolis team at TechEd 2007. Acropolis is a software factory-ish toolset that allows business developers to develop quality line-of-business WPF applications with ease.
http://dotnetrocks.com/default.aspx?showID=252

Wednesday, June 20, 2007

Moonlight: Silverlight For Linux

The open-source Mono project will show off an early version of Microsoft's Silverlight browser plug-in running on Linux later this week.
Work on the plug-in, called Moonlight, was started only in May, after Microsoft's Mix conference. Moonlight uses version 1.1 of Silverlight, a browser plug-in for displaying interactive Web applications, which is due in the fall.
Once completed, Moonlight will allow Linux users to see Silverlight content on the Web, such as videos, and run rich Internet applications.

Tuesday, June 19, 2007

Microsoft Launches .NET StockTrader, Provides Securities Industry With Guidance for Building Scalable Trading Solutions on Microsoft Platform

Today at the 2007 Securities Industry and Financial Markets Association (SIFMA) Technology Management Conference & Exhibit, Microsoft Corp. announced the release of its .NET StockTrader, an end-to-end sample application based on an online stock trading scenario, along with a technical white paper that provides guidance for developers seeking to create high-performance, scalable and interoperable financial services solutions on the Microsoft® platform.

The .NET StockTrader provides a blueprint for how companies can advance their business through Microsoft’s application platform technologies, including Windows® Communication Foundation (WCF), to create service-oriented architecture (SOA) solutions. Because performance and agility are a key concern when building mission-critical applications, .NET StockTrader also includes instructions for performance testing across distributed environments.

“More than ever, securities firms are demanding that their applications leverage existing IT investments, adhere to service-oriented architecture principles, be created in a common development environment, and present an interface that is familiar and easy to use,” said Stevan Vidich, technical architect for capital markets solutions in the U.S. Financial Services Group at Microsoft. “.NET StockTrader addresses those concerns. It was designed to showcase how to implement SOA on Windows Server® and the .NET Framework 3.0.”

.NET StockTrader also illustrates full interoperability with Java-based enterprise systems. In particular, StockTrader can transparently interconnect with IBM Corp.’s Trade Performance Benchmark Sample for Websphere Application Server V6.1. Financial services developers can use StockTrader as a model for building .NET systems that interconnect with IBM’s WebSphere Application Server. Support for Web services standards in WCF provides interoperability, addressing a key requirement in the securities industry. Technologies illustrated by .NET StockTrader application include the following:

• High-performance ASP.NET Web applications based on a logical n-tier, service-oriented enterprise design pattern

• High-performance WCF services, reconfigurable without code change

• Support for different network transports and message encoding formats using WCF

• Loosely coupled message-driven services using WCF and Microsoft Message Queuing

• Distributed transaction services

• Core performance tuning parameters for WCF and .NET to achieve high throughput

• Simple, adaptive load-balanced server clusters for scalability and failover purposes


A complete technical overview of the .NET StockTrader application and more information is available at http://msdn.microsoft.com/stocktrader.

About Microsoft in Financial Services

Microsoft’s Financial Services Group provides software that helps financial firms transform the customer, employee and operations experience so they can maximize opportunities for increased market share and profitability. Microsoft software helps empower people and IT staff within financial firms — and across key focus areas such as advisor platforms, channel renewal, insurance value chain, enterprise risk management and compliance, and payments. Through a combination of Microsoft- and partner-provided solutions, customers enable their employees to turn data into insight, transform ideas into action and turn change into opportunity.

More information about Microsoft’s Financial Services Group can be found at http://www.microsoft.com/financialservices.

Monday, June 18, 2007

Automating web tests with FitNesse and Selenium article

Web user interfaces have traditionally been hard to integrate into an automated test process. Selenium+FitNesse combination, with just a bit of coding, solves this task incredibly well.

Selenium is a free browser automation and testing library, written by folks at ThoughtWorks. It can simulate text input, mouse events and execute various tests on page content. It’s written in JavaScript, and is compatible with all major browsers and platforms.

FitNesse is an open-source test and collaboration server, based on the Framework for integrated tests (FIT), and supports testing Java, .Net, Python and even some other code. I think that it is a good choice for the second side of the web UI testing coin, because it enables tests to be written almost like in English language. As the UI is very close to clients’ eyes, tests can and should be written so that clients can verify them (and if you are really lucky, even help with writing and maintaining the tests).

read the rest here: http://gojko.net/2007/05/20/automating-web-tests-with-fitnesse-and-selenium

Video: Kang Su Gatlin - "Phoenix," next-generation compiler

Channel 9 has posted their latest video:

Kang Su Gatlin is a program manager on the Visual C++ compiler team and talks with us about Phoenix, the code name for new compiler technology that his team is working with Microsoft Research on (it'll be used to compile Longhorn and future versions of SQL Server and Visual Studio).You'll hear more this week from Kang Su about C++ stuff.

Download the Video
Watch the Video

Sunday, June 17, 2007

ASP.NET Master Pages Tips and Tricks Article On Simple Talk

Simple Talk has a nice article about Master Pages. It includes tips and tricks that cover different things you can do with Master Pages such as using the MasterType directive, working with base classes, and handling nested Master Page design issues in VS.NET 2005.

Here are the sections
Using the MasterType Directive
Creating Master Page Base Classes
Handling Nested Master Page Design Issues
Sharing Master Pages across IIS Applications

Read it here: http://www.simple-talk.com/dotnet/asp.net/asp.net-master-pages-tips-and-tricks/

Screencast: Introduction to the Windows Workflow Foundation Pageflow sample

Channel 9 has posted their latest screen cast this one deals with Windows Workflow Foundation.
From the site:

Most people think of workflows as a tool to represent and automate back-end
business processes. Back-end business processes normally require some user
interaction but their main purpose is not to drive the user experience or manage
the UI. However, there is a growing type of application that leverages workflow
as a tool to drive the user interaction and drive the user experience of an
interactive process. This type of technology is called page flow.

Last year at TechEd, we showed off some bits we had been working on
internally that were designed to make that possible, the ability to model the
user interaction of an application using workflow. This approach provides
developers the ability to continue managing the complexity of their application
in a structure and scalable manner. It turned out that the code we showed at
TechEd wasn't going to end up in any of the product releases, so the dev team
requested permission to release that code as a sample of how one can implement a
generic navigation framework using WF that can support multiple UI technologies
(i.e. ASP.NET and WPF). This year, I just finished giving a talk showing
this off and talking about how it will be available today!


Watch the screencast(WMV)

ASP.NET Podcast Show #94 - WCF

The ASP.NET Podcast features, technical talks, interviews, news, reviews, and Wallyisms. Wallace B. (Wally) McClure and Paul Glavich are your hosts.

Download

Paul talks about:

Usage Patterns in WCF
General performance
WCF and WSE/ASMX
Client
engagement around WCF/WSE
Static re-use of the proxy – ASP.NET application
pattern
Not re-creating the proxy
WCF Proxy/Channel pool
Performance
Gains


Wally talks about:
The podcast sit and upcoming changes.
Trip to Florida.
Talking in
Knoxville.
Book Status.
Non Technical:
Marketing.
Contracts.

C# to VB.NET and VB.NET to C# Converters Updated

The free C# to VB.NET and VB.NET to C# converters have been updated on Developer Fusion - they're adapted from the neat little utilities within the free .NET IDE, #develop . They now keep your comments in tact and also support generics

Friday, June 15, 2007

Cyclons: Why Debugging Matters

Got this in an email. Check out the targeted Visual Studio ad

Image and video hosting by TinyPic

Acropolis PartPanes, Acropolis Designer and Transitions in Acropolis Videos Available

Using Acropolis PartPanes - In this video, David Poll shows you how the Acropolis PartPane control provides basic management & support services for part views. David shows you how you can use a PartPane to control placement of your part views, and how to configure the various features of the PartPane, such as the part command menu. Finally, David shows you how to create an additional view for your part and how you can use the PartPane's view switching features to let the user switch between them.

Using the Acropolis Designer - In this video, David introduces the Acropolis component designer. This designer provides a visual representation of the non-visual components in your application. It allows you to define and configure a lot of the behavior of your application without having to write a lot of code. David runs through the various elements of the designer and shows you how to use it to configure the navigational behavior of your application's parts, and how to configure its commands, properties, and service dependencies.

Using Transitions in Acropolis - And finally, in this video, Kathy Kam shows you one of the cooler UI features of Acropolis: Transitions. Transitions are canned animations that the PartPane control can use when switching between views. These provide support for a richer user experience by giving the user a contextual, animated re-arrangement of the UI, rather than a sudden visibility change. Kathy shows you how to add a transition effect to the PartPane control and demonstrates some of the pre-built transitions that comes in the Acropolis CTP 1 release.

Acropolis Community Technology Preview 1 Available For Download

The Microsoft code name “Acropolis” Community Technology Preview 1 is a set of components and tools that make it easier for developers to build and manage modular, business focused, client .NET applications. Acropolis is part of the “.NET Client Futures” wave of releases, our preview of upcoming technologies for Windows client development.


Acropolis builds on the rich capabilities of Microsoft Windows and the .NET Framework, including Windows Presentation Foundation (WPF), by providing tools and pre-built components that help developers quickly assemble applications from loosely-coupled parts and services. With Acropolis you will be able to:



  • Quickly create WPF enabled user experiences for your client applications.

  • Build client applications from reusable, connectable, modules that allow you to easily create complex, business-focused applications in less time.

  • Integrate and host your modules in applications such as Microsoft Office, or quickly build stand-alone client interfaces.

  • Change the look and feel of your application quickly using built-in themes, or custom designs using XAML.

  • Add features such as workflow navigation and user-specific views with minimal coding.

  • Manage, update, and deploy your application modules quickly and easily.



Download it here: http://www.microsoft.com/downloads/details.aspx?FamilyId=72386CE5-F206-4D5C-AB09-413B5F31F935&displaylang=en

Thursday, June 14, 2007

Podcast: ASP.NET Scalability issues

DotNetRocks has posted their latest podcast: .NET Rocks! #246 - ASP.NET Scalability Panel

Recorded at the Virtual TechEd Stage, Carl and Richard welcome Stephen Forte, Kent Alstad, Rob Howard, and Steve Smith for a lively discussion around ASP.NET Scalability issues.

Download it here: http://dotnetrocks.com/default.aspx?showID=250

Stephen Forte is the Chief Technology Officer and co-founder of Corzen, Inc, a Manhattan (USA) based provider of online market research data for Wall Street Firms. Stephen is also the Microsoft Regional Director for the NY Metro region. He speaks regularly at industry conferences like Tech*Ed, North Africa Developers Conference and other conferences around the world. He has written several books on database development and currently is writing the MS Press book SQL Server 2005 Core Developers Guide. Prior to Corzen, Stephen served as the CTO of Zagat Survey in New York City and also was co-founder and CTO of the New York based software consulting firm The Aurora Development Group. He currently is the co-moderator and founder of the NYC .NET Developer User Group


Kent Alstad is a Senior Consultant at MCW Technologies, Chief Architect at Strangeloop Networks, and Senior Architect of Content Solutions at The Active Network. Kent began developing Microsoft Windows applications using VB and VC with the 1.0 version and has been using them as his primary development environments ever since. Currently Kent is focused on creating and communicating best practices and approaches for the developement of .NET applications and services. Kent brings a dynamic approach to effective day-to-day practices of sofware developers and software project managers. He draws from a broad spectrum of experience, from coder to CTO. Raw enthusiasm combined with practical insight is the cornerstone of Kent's speaking style. Kent also is part of the Euclidian Software Group, a company of senior consultants that manages a .NET development shop in Riga, Latvia.


Prior to founding telligentsystems Rob Howard was employed by the Microsoft Corporation where he was a member of the Microsoft .NET Framework 1.0, 1.1, and 2.0 team; specifically contributing to ASP.NET. He has presented at many software developer conferences including: Microsoft PDC and TechEd; Borland's BorCon; ASP.NET Connections; and VSLive! and is consistently rated a top presenter. Rob is also the author of several books, most recently A Preview of ASP.NET 2.0 (Addison-Wesley); Microsoft ASP.NET Coding Strategies with the Microsoft ASP.NET Team (Microsoft Press). Rob has a BBA from Baylor University.

Steven Smith is president of AspAlliance.com and AspAdvice.com. He is a Microsoft Regional Director, an ASP.NET MVP, and an ASPInsider Board Member. He is an INETA Speaker Bureau member, and author of two books on ASP.NET. Steve is also an Army Reserve officer, and spent most of 2004 in Iraq in support of Operation Iraqi Freedom.

ASP.NET Integration with IIS7 Article

Since its release, ASP.NET has been the platform of choice for developing web applications on the Windows / IIS platform. ASP.NET 2.0 took web application development to a whole new level, letting developers build more powerful apps faster than ever before.

IIS7 takes ASP.NET to the next level, by integrating the ASP.NET runtime extensibility model with the core server. This allows developers to fully extend the IIS server with the richness of ASP.NET 2.0 and the .NET Framework, instead of using the lower level IIS C++ APIs. Existing ASP.NET applications also immediately benefit from tighter integration, by being able to use existing ASP.NET features like Forms Authentication, Roles, and Output Caching for all types of content.

While IIS7 provides the improved ASP.NET integration by default, the choice is yours: IIS7 supports both the new and the old ASP.NET integration modes that can be used side by side on the same server.

This article discusses the improvements introduced by the new ASP.NET integration mode, the architecture of the two modes, and describes how to select and configure the integration modes for ASP.NET applications.


Read the rest here: ASP.NET Integration with IIS7

Tuesday, June 12, 2007

Test Driven Development Primer with Peter Provost

Ron Jacobs from channel 9 writes:

At my Tech-Ed 2007 US presentation this year I showed a 5 minute video of Peter Provost answering some basic questions about Test Driven Development. Many people have asked for a copy of this video so I'm putting it out on ARCast.TV for everyone to see. If you are listening to the audio only you won't hear the questions since they are only on the video.
Listen to the podcast(MP3)
Listen to the podcast(WMA)
Download the Video
Watch the Video

Subkismet (Subtext + Akismet) -The Cure For Comment Spam

Phil Haack has created the Subkismet project. It’s more than just an Akismet client for .NET, it’s a library of SPAM squashing code meant to be useful to developers who are building web applications that require user input such as Blogs, Forums, etc...

Please try out the latest release and give Phil feedback!

Monday, June 11, 2007

FIX: "HttpException (0x80004005): '/HandlerTest/WebForm1.aspx/a:b' is not a valid virtual path"

FIX: Error message when you try to visit an ASP.NET 2.0-based Web page: "HttpException (0x80004005): '/HandlerTest/WebForm1.aspx/a:b' is not a valid virtual path"

When you try to visit a Microsoft ASP.NET 2.0-based Web page, you may receive an error message that resembles the following:
HttpException (0x80004005): '/HandlerTest/WebForm1.aspx/a:b' is not a valid virtual path.
This problem occurs if the virtual path in the URL contains one of the following symbols:
• Colon (:)
• Asterisk (*)

For example, this problem occurs when you try to visit one of the following URLs:
• http://www.adventure:works.com/test.aspx
• http://www.adventure*works.com/test.aspx

Note This problem occurs even if you use the method that is described in Microsoft Knowledge Base article 826437 to set the value of the following registry subkey to 1:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET VerificationCompatibility


Get the HotFix here: http://support.microsoft.com/kb/932552/en-us?spid=8940&sid=global

Windows Presentation Foundation Unleashed (WPF) By Adam Nathan

Windows Presentation Foundation UnleashedTitle: Windows Presentation Foundation Unleashed (WPF)
Author: Adam Nathan
Publisher: Sams.
Series: Unleashed.
ISBN-10: 0-672-32891-7;
ISBN-13: 978-0-672-32891-6;
Published: Dec 21, 2006;
Pages: 656;
Edition: 1st.


Book Description
Printed entirely in color, with helpful figures and syntax coloring to make code samples appear as they do in Visual Studio.

Windows Presentation Foundation (WPF) is a key component of the .NET Framework 3.0, giving you the power to create richer and more compelling applications than you dreamed possible. Whether you want to develop traditional user interfaces or integrate 3D graphics, audio/video, animation, dynamic skinning, rich document support, speech recognition, or more, WPF enables you to do so in a seamless, resolution-independent manner. Windows Presentation Foundation Unleashed is the authoritative book that covers it all, in a practical and approachable fashion, authored by .NET guru and Microsoft developer Adam Nathan.




  • Covers everything you need to know about Extensible Application Markup Language (XAML)
  • Examines the WPF feature areas in incredible depth: controls, layout, resources, data binding, styling, graphics, animation, and more
  • Features a chapter on 3D graphics by Daniel Lehenbauer, lead developer responsible for WPF 3D
  • Delves into non-mainstream topics: speech, audio/video, documents, bitmap effects, and more
  • Shows how to create popular UI elements, such as features introduced in the 2007 Microsoft Office System: Galleries, ScreenTips, custom control layouts, and more
  • Demonstrates how to create sophisticated UI mechanisms, such as Visual Studio-like collapsible/dockable panes
  • Explains how to develop and deploy all types of applications, including navigation-based applications, applications hosted in a Web browser, and applications with great-looking non-rectangular windows
  • Explains how to create first-class custom controls for WPF
  • Demonstrates how to create hybrid WPF software that leverages Windows Forms, ActiveX, or other non-WPF technologies
  • Explains how to exploit new Windows Vista features in WPF applications





Table of Contents
PART I Background
1 Why Windows Presentation Foundation?
2 XAML Demystified
3 Important New Concepts in WPF


PART II Building a WPF Application
4 Introducing WPF’s Controls
5 Sizing, Positioning, and Transforming Elements
6 Layout with Panels
7 Structuring and Deploying an Application


PART III Features for Professional Developers
8 Resources
9 Data Binding
10 Styles, Templates, Skins, and Themes


PART IV Going Beyond Today’s Applications with Rich Media
11 2D Graphics
12 3D Graphics
13 Animation
14 Audio, Video, Speech, and Documents


PART V Advanced Topics
15 Interoperability with Win32, Windows Forms, and ActiveX
16 User Controls and Custom Controls
17 Layout with Custom Panels


PART VI Appendix: Helpful Tools
Index



Amazon Link: Windows Presentation Foundation Unleashed (WPF)
Sample Chapter: Important New Concepts in WPF

Sunday, June 10, 2007

ASP.NET Ajax Articles By Dan Wahlin

Dan Wahlin has written three ASP.NET Ajax articles for .NET Insight. Read them here:

Introduction to ASP.NET AJAX
ASP.NET AJAX Configuration
Working with Custom Scripts in ASP.NET AJAX

Saturday, June 9, 2007

Bonus Acropolis Information: Video, Live docs and More! By Brad Adams

Brad Abrams has a follow-up Acropolis post that has a lot more information including videos, links and tutorials.

Check it all out here: http://blogs.msdn.com/brada/archive/2007/06/06/bonus-acropolis-information-video-live-docs-and-more.aspx

Video: Scott Hanselman: Value of Writing Windows PowerShell Cmdlets

Scott Hanselman from the Corillian Corporation and www.Hanselminutes.com fame explains why his company wrote Windows PowerShell cmdlets to simplify the on-going management of their financial applications – Corillian Member Advantage -- 25% of the people who bank online in the USA touch a Corillian system. Jeffrey Snover, Architect of Windows PowerShell, and Scott discuss the need that Corillian had, the fast development process, the architecture underlying the application-specific cmdlets and the value of the cmdlets to both Corillian administrators, sales force and its customers.

Download the Video
Watch the Video

Professional ASP.NET 2.0 AJAX

Professional ASP.NET 2.0 AJAX
Wiley (WROX) has published their latest Ajax book:
Professional ASP.NET 2.0 AJAX by Matt Gibbs, Dan Wahlin
ISBN: 978-0-470-10962-5
June 2007
336 pages


  • ASP.NET 2.0 AJAX (formerly known as "Atlas") is Microsoft's Ajax tool for ASP.NET developers and this book covers the ASP.NET 2.0 AJAX final release-not a beta or preview
  • Explains how to use the ASP.NET 2.0 AJAX features to create richer, more responsive dynamic Web sites
  • Discusses the architecture of ASP.NET 2.0 AJAX, including the server-side ASP.NET 2.0 AJAX Extensions and the client-side Microsoft AJAX library and runtime
  • Walks readers through examples for each feature element, demonstrating how the client and server interact to produce a better Web application
  • Reviews such topics as client framework, script manager control, networking stack, application services, partial page updates, control extenders, client form elements, and client behaviors


Table Of Contents
1. Developing Next Generation Web Applications.

2. Partial Page Updates.

3. JavaScript for the ASP.NET Developer.

4. Understanding the ASP.NET AJAX Client Library.

5. Using the ScriptManager.

6. ASP.NET AJAX Networking.

7. ASP.NET AJAX and Application Services.

8. Rich AJAX Toolkit Controls.

9. Testing and Debugging ASP.NET AJAX Applications.

10. Deploying ASP.NET AJAX Applications.

11. Building Custom Controls.


Read Excerpt 1 (PDF)
Read Excerpt 2 (PDF)
Read Excerpt 3 (PDF

Amazon Link: Professional ASP.NET 2.0 AJAX

New ASP.NET AJAX Control Toolkit Released

This week's release contains a number of other new improvements, including:

  • More than 125 bug fixes
    • Extended client side event support - new client side event handler extensibility points are available with common toolkit server controls
    • ASP.NET Validation Controls now work with the Toolkit Controls
    • Accessibility fixes: Slider and AutoComplete have support for high contrast and other controls have JAWS accessibility support built-in when doing AJAX callbacks.
    • Animation support: More toolkit controls now have generic animation support built-in
    • Nice design mode improvements for the controls, including: 1) designer support for the TabContainer. You can now select/add/remove tabs within the tabcontainer directly from the designer, and you can directly edit both the content and the title, 2) page methods can now automatically be generated for those extender controls that call web-services, 3) nice icon support within the toolbox.


    Download it here: http://www.codeplex.com/AtlasControlToolkit/Release/ProjectReleases.aspx?ReleaseId=1813

    Friday, June 8, 2007

    New SQL Server Best Practices Articles On TechNet

    Predeployment I/O Best Practices

    The I/O system is important to the performance of SQL Server. When configuring a new server for SQL Server or when adding or modifying the disk configuration of an existing system, it is good practice to determine the capacity of the I/O subsystem prior to deploying SQL Server. This white paper discusses validating and determining the capacity of an I/O subsystem. A number of tools are available for performing this type of testing. This white paper focuses on the SQLIO.exe tool, but also compares all available tools. It also covers basic I/O configuration best practices for SQL Server 2005.
    On This Page

    Overview

    Determining I/O Capacity

    Disk Configuration Best Practices & Common Pitfalls

    SQLIO

    Monitoring I/O Performance Using System Monitor

    Conclusion

    Resources



    Partial Database Availability

    This white paper outlines the fundamental recovery and design patterns involving the use of filegroups in implementing partial database availability in SQL Server 2005. As databases become larger and larger, the infrastructure assets and technology that provide availability become more and more important.

    The database filegroups feature introduced in previous versions of SQL Server enables the use of multiple database files in order to host very large databases (VLDB) and minimize backup time. With data spanning multiple filegroups, it is possible to construct a database layout whereby failure of certain data resources do not render the entire solution unavailable. This increases the availability of solutions that use SQL Server and further reduces the surface area of failure that would render the database totally unavailable.



    Comparing Tables Organized with Clustered Indexes versus Heaps

    In SQL Server 2005, any table can have either clustered indexes or be organized as a heap (without a clustered index.) This white paper summarizes the advantages and disadvantages, the difference in performance characteristics, and other behaviors of tables that are ordered as lists (clustered indexes) or heaps. The performance for six distinct scenarios where DML operations are performed on these tables are measured and detailed observations presented. This white paper provides best practice recommendations on the merits of the two types of table organization, along with examples of when you might want to use one or the other.
    On This Page

    Introduction

    Clustered Indexes and Heaps

    Test Objectives

    Test Methodology

    Test Results and Observations

    Recommendations

    Appendix: Test Environment

    Wednesday, June 6, 2007

    Expression Blend with Silverlight 1.0 Tutorials

    Expression Blend with Silverlight 1.0 Tutorials

    Creating Vector Art for Silverlight with Expression Blend
    Animating Vector Art for Silverlight with Expression Blend Part I
    Animating Vector Art for Silverlight with Expression Blend Part II
    Animating Raster Art for Silverlight with Expression Blend
    Using Expression Blend to Control Silverlight Media Playback

    Silverlight 1.1 Tutorials

    Silverlight 1.1 Tutorials

    Getting Started with Silverlight 1.1
    Top Banana
    Dynamic Languages with Silverlight
    Silverlight in Their Own Words

    Silverlight 1.0 Tutorials

    Silverlight 1.0 Tutorials

    Overlaying HTML and Silverlight Content
    Basic Keyboard Input with Silverlight
    Building Video Overlays with Silverlight
    Real-Time Data Update with Silverlight and Web Services
    Using AJAX to Dynamically Update Silverlight Content
    Animating and Clipping Video with Silverlight
    Using Silverlight Brushes for Color, Gradient and Video
    2D Geometries in Silverlight
    Using Silverlight for Full Screen Experiences
    Creating a Video Scrubbing Control with Silverlight
    Silverlight Event Handling with JavaScript
    Using Input Method Editors for Text Entry in Silverlight
    Adding Ink Support to a Silverlight-based Application
    Delivering Parameterized Silverlight Content with ASP.NET
    Delivering Parameterized Silverlight Content with PHP
    Delivering Parameterized Silverlight Content with Java

    Mix 07 Silverlight Sessions

    Silverlight Tutorials

    Building Silverlight Applications Using .NET (Part 1 of 2)
    Building Silverlight Applications Using .NET (Part 2 of 2)
    Building Rich Web Experiences Using Silverlight and JavaScript for Developers
    Building Rich Web Experience with Silverlight and Microsoft Expression Studio for Designers
    Deep Dive on Silverlight Media Integration
    Creating and Delivering Rich Media and Video on the Web with Silverlight, Microsoft Expression Studio, and Windows Server Codename "Longhorn"
    Developing ASP.NET AJAX Controls with Silverlight
    Building Rich, Interactive E-commerce Applications Using ASP.NET and Silverlight
    A View from the Front: Real World Experiences of WPF and Silverlight
    Extending the Browser Programming Model with Silverlight
    Just Glue It! Ruby and the DLR in Silverlight