.NET Data PracticesSearch this Blog!
The jury is still out on this one, but Eli Lopian has thoughts from 14 of the jurors. I've blogged about Eli's opinion on this subject before. Personally, I like mocks, but I sure wish there was something better. Later this year, I hope to have some more time to give this some real thought.
I blogged previously about the ADO.NET Entity Framework Overview whitepaper. Now you can download a CTP to play with. Note that these features will NOT be in ADO.NET 3.0. This is in some future version. This is a very early CTP and is extremely limited. The “ADO.NET vNext Entity Data Model Designer Prototype CTP” enables developers to design their data access stack using a designer in Visual Studio.This is an unsupported tool that showcases upcoming ideas for ADO.NET vNext tooling and Visual Studio ......
Battlestar Galactica starts it's third season on the Sci Fi Channel next Friday (October 6). For those of you who haven't watched it, this is not your father's Battlestar Galactica. TV Guide has called it "The best show on TV", and NEWSDAY has called it "the Year's Best Drama". There's a good cover story on it on Entertainment Weekly (when will this be available on Zinio?) This even has some stars that you may know. Edward James Olmos plays Commander (now Admiral) Adama, Mary McDonnell plays Laura ......
You can get the build here. I've yet to install any of the Firefox 2 builds, which is totally unlike me. I'm not usually happy unless I have at least 3 or 4 major alpha or beta applications on my desktop. I'll take a peak at this one, but I'll probably continue to wait. Why? Two reasons: Firefox 1.5 already does everything I want. I'm addicted to my Firefox extensions and too many of them (as of the last time I checked) don't yet work with Firefox 2. Don't take my extensions away from me! I know ......
You can now read the NYT from Vista with the Times Reader BETA. It's built using WinFX to make the most enjoyable reading experience, and uses the same font styles as the print edition. This is one of the few "Designed for Vista" apps I've seen, so is worth a look for that reason, I guess, but it'd be more worthwhile if It was a Drudge Reader, I think. ;-)
Tom Hollander blogs about the results of the voting and their prioritization meetings with a planned feature list for Entlib v3. Here's the base list: Medium Trust support Manageability extensions for configuration (WMI, Group Policy) Simple Strong-naming Mini-Factory for building your own blocks and providers Validation Application Block Exception Handling: WCF integration (exception shielding / fault mapping) Logging: WCF pipeline integration AuthZ: WCF Pipeline integration And, as time allows: ......
On this day (September 27), in 1905, Albert Einstein published the article "Does the Inertia of a Body Depend Upon Its Energy Content?", which introduced the famous equation E=mc2
There's a lot here in Scott Guthrie's blog about improving your build performance. He talks not only about how to improve your build times, but also on how to decide whether to use Web Application Projects or Web Site Projects and what the differences are between them. There are several useful nuggest and links here for any kind of ASP.NET Web site build issues. As they say, read the whole thing ......
Jeff Atwood has an interesting post on Vista's memory management and how it differs from Windows XP. Vista treats your system memory as a cache and uses it aggressively. In other words, don't be surprised or upset if Vista consumes all your available memory. It's not a bug, it's a feature! In summary, here's how much faster each cache memory type in your computer is than the hard drive: System memory37x faster CPU Level 2 cache82x faster CPU Level 1 cache283x faster Those figures explain why I only ......
Useful KB Article: SYMPTOMS When you unplug the AC power from a Microsoft Windows XP-based portable computer, the battery may drain more quickly than you expect. Therefore, the operating system may shut down prematurely. CAUSE This problem may occur if one of the following conditions is true: • The portable computer cannot enter the deeper Advanced Configuration and Power Interface (ACPI) processor idle sleep states.This occurs when the USB 2.0 driver leaves the asynchronous scheduler component running ......
Here's a library for manipulating the clipboard using C#. Why do we need such a library? Because the Windows.Forms.Clipboard class only allows you to manipulate serializable data. You need to escape out to the Windows API if your data doesn't conform. This class does all that magic for you. From the introduction: The code uses Windows API calls to read and write into the clipboard. It provides a ClipboardHelper, an easy to use API bridge, which offers, in addition, functions to serialize complex ......
There's a great series of posts on BPMN diagrams at Tyner Blain. Foundation Series: Business Process Modeling BPMN Diagrams - Introduction to Intermediate Events BPMN Diagrams - Make It Right With Intermediate Compensation Events BPMN Diagrams - Hit the Links With Intermediate Events BPMN Diagrams - Intermediate Multiple Events BPMN Compensation Event Correction UPDATE: Free BPMN Stencils for Visio 2003 What are BPMN diagrams? They are Business Process Modeling (as-is, to-be, etc) diagrams that conform ......
If you're still using Google and you want to add image searching capabilities to your app, here's how.
What I'd really like to see here would be an option to choose from multiple search engines (I only use Ask.com), or even a meta-engine like DogPile, but this is a good start.
H. S. Masud has written a nifty little collection class for listing all the workstations and servers on your network. There appears to be a small issue with SQL servers. They're repeated for every domain and workgroup on the local network. I'll look into that. It takes a while to load the collection if you have a fairly large network. ......
Microsoft has released the official Microsoft® Windows Vista™ User Experience Guidelines. The following guidelines are currently available: Design Principles Controls Text Interaction Windows Aero Aesthetics ......
SolutionZipper is a very nice little VS2005 Add-in. It cleans up your Visual Studio 2005 Solution and zips it up for backup. I can't even count the number of times I've done this by hand over the years.
Nice little replacement for regedt32.exe.
The author of this control on CodeProject calls it a "split button". I'm sure there's a reason he came up with that particular nomenclature, but I prefer dropdown button. Basically, it's a button that acts like a dropdown list. You can push it and select the default actions, or select one of the other actions from the dropdown menu. Whatever you call it, it's pretty sweet ......
Apparently, mine is exceptionally bland. But if you like having your IDE font and color schemes customized, this site is for you. I like ZenBurn, I think.
Jaroslaw Kowalski has announced the birth of NLog 1.0. This is a free logging library for .NET. It seems to be much more streamlined than what's in EntLib, which is probably a good thing. From the website: NLog is a .NET logging library designed with simplicity and flexibility in mind. With NLog you can process diagnostic messages emitted from any .NET language, augment them with contextual information, format them according to your preference and send them to one or more targets. The API (application ......
The Visual Studio 2005 Tools for Office Second Edition Beta (called VSTO 2005 SE Beta for short of course--I mean what else would you call it?) is now available. This lets you build applications for Microsoft Office 2007. VSTO 2005 SE Beta includes the following functionality: Managed code application-level add-ins for some of the most popular Office applications: Outlook, Excel, Word, PowerPoint, InfoPath and Visio. Programming model and runtime support for key Office 2007 features including the ......
On the heels of my posting about dotTrace 2.0 Beta (I have so much influence), red-date has updated their ANTS Profiler to version 2.7. It looks like the biggest change in this version is making it "Vista ready".
Okay, I admit I'm not sure exactly why you'd want to do this, but if you have a VB 6 app that needs migration to .NET, the Interop Forms Toolkit will let you do it in pieces. With this toolkit, you can add .NET WinForms to your VB6 application. The Interop Forms Toolkit 1.0 is a free add-in that simplifies the process of displaying .NET WinForms in a Visual Basic 6 application. Instead of upgrading the entire code base, these applications can now be extended one form at a time. The goal is a phased ......
ScottGu blogs about the ASP.NET AJAX Extensions UpdateProgress Control. This is sooo much cooler than what you typically see as a "wait" indicator on most websites. Simple, but cool.
Here's a good blog entry on the different User Experiences in Vista, Aero Glass, Vista Standard, Vista Basic, and Windows Classic. It has several screen shots of various scenarios with only the UI Experience changed. Now you can see what has taken Vista so long.
From the people that brought you ReSharper, comes dotTrace 2.0, which lets you do performance and memory profiling of your .NET app. What's New: Memory profiling With dotTrace 2.0, you can now quickly see what happens with the memory used by your .NET applications. Nine informative views, each tuned to a specific aspect of memory usage, enable you to quickly find memory leaks and optimize memory usage. A memory comparison tool is also provided for viewing the difference between two snapshots taken ......
A little while ago, I read this post by Jeff Atwood on the subject. His conclusion is no, you don't. However, the results I did find are so poor that I wonder if any quad CPU system is good for much more than bragging rights. Of the desktop apps, only three truly benefit from a quad CPU configuration: 3D Studio Max, POV-Ray, and Cinebench 2003. Notice a pattern? Rendering and encoding tend to parallelize well. Unless you're often running a specific application that is optimized for multithreading, ......
Ok, I'm not sure this really needs to be a Firefox extension, but it is a free typing tutor and it's not bad.
In older versions of SQL Server, we just used SELECT @@VERSION and we were happy. You can still use that if you wish, but the "new and improved and Microsoft recommended" way is the following: SELECT SERVERPROPERTY('productvers... SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition') I just ran this on one of our servers and got: 9.00.2047.00 SP1 Standard Edition For those interested in associating version #'s with service packs: Release Sqlservr.exe RTM 2005 2005.90.1399 SQL Server 2005 ......
I've been meaning to blog about these for some time. The last of the rules was published on June 15th, so I've certainly had opportunity. The good folks at Tyner Blain have come up with what they think are the requirements for writing requirements. :) Characteristics of Good Requirements Valuable Concise Design Free Attainable Complete Consistent Unambiguous Verifiable Atomic Passionate All of the articles are worth a read. I'd add more info on the series, but I'd just be copying or re-wording what's ......
This is pretty cool. If you have some e-mail subscriptions that you'd rather view through RSS, NewsGator allows you to do that. Basically, you set up an e-mail address through NewsGator, and it publishes e-mail sent to that address as an RSS feed. Then you just change your subscription to use this new e-mail address. You can keep the feed private or make it public if you'd like to share it with others or make it available to an RSS reader outside of NewsGator. Gotta be a NewsGator subscriber to get ......
The one thing that Sandcastle appears to be missing is an NDoc-like GUI front-end. Well, here you go. The GUI interface is almost identical to the NDoc interface so anyone familiar with NDoc should be quite comfortable using it. You can import several settings from an existing NDoc project to start a new Sandcastle Help File Builder project. You can import the assembly and documentation file information from a Visual Studio 2003/2005 solution or project file to start a new Sandcastle Help File Builder ......
Why doesn't ASP.NET 2.0 support the <optgroup> element? I don't know. But here's the solution for you, if you've been wishing it did. From the introduction: ASP.NET 2.0, for all its bells and whistles, lacks the odd bit of functionality for reasons completely unknown. One such notable omission is that of OptionGroup (<optgroup>) support in the DropDownList control. For those unfamiliar with the <optgroup> element, it is part of the XHTML standard and has the effect of categorising ......
This looks like a really good book. They also have a website with examples and summaries of the refactorings. A refactoring is a small change to your code which improves its design without changing its semantics. A database refactoring is a small change to your database schema (the table structures, data itself, stored procedures, and triggers) which improves its design without changing its semantics. Database refactoring is a technique which supports evolutionary development processes. It has the ......
Regulazy is what it sounds like. Regular-expressions for the lazy. :) Seriously, it helps beginners create solid regex's without having to have knowledge of the syntax using a nice simple point-and-click interface. Roy Osherove is the author and blogged about the release. You can download it here ......
An exceptional article on CodeProject detailing an extensible mass emailing framework using the MS SQL Server 2005 Service Broker. I'm not sure about the IM-conversation style of writing, but that's just taste. The content is first-rate. What's the Service Broker? Service Broker is a new feature of Microsoft® SQL Server 2005. It offers asynchronous messaging support, and is tightly integrated with the SQL Server database engine. Service Broker provides a new, queue-based durable messaging framework ......
Atlas 1.0 was announced earlier this week, and of course, re-branded as well. ScottGu blogged all about it. A couple highlights: I am excited to announce today that we are going to ship this fully supported “Atlas” 1.0 release on top of ASP.NET 2.0 and ensure that it works with Visual Studio 2005. Our goal is to ship the “Atlas” 1.0 release around the end of this year. The plan is to first have a Beta, then an RC, and then decide on the final date based on customer feedback. As part of releasing ......
There's a good writeup on the BCLTeam's blog comparing the performance of NameValueCollections with HashTables (HT's are faster). The #'s are only moderately surprising, but its the details behind the #'s that's the important stuff here.
I will be making two and only two blog posts today, both commemorating the five year anniversary of 9/11. This is the first of the two. 2996 is a blog memorial for all 2996 victims of the terrorist attacks on September 11, 2001. 2996 bloggers have signed up worldwide to celebrate the lives of the souls lost on that day. Paul A. Skrzypek was one of those souls. Paul worked for Cantor Fitzgerald in the North Tower (Building 1). He was a broker at the eSpeed division. His only sin that day was doing ......
Note that the timeline used here comes from the Cooperative Research History Commons. Some people may consider this post to be too long and will complain about it. To all of you I say, "Get a life." It's the morning of September 11, 2001. Take a moment to think about where you are. It's now (all times EDT): 8:46 AM American Airlines Flight 11 Hits the North Tower of the World Trade Center. Two minutes later CNN would break off a commercial with live news on this. Carol Lin says, “This just in. You ......
If you haven't read the FairTax article on Wikipedia, you should. It's a very good place to get started learning about it. The FairTax (H.R.25/S.25) is a proposal for changing United States tax laws to replace all federal personal income taxes, payroll taxes, corporate taxes, capital gains taxes, self-employment taxes, gift taxes and inheritance taxes with a national retail sales tax and monthly tax rebate to households of citizens and legal resident aliens. The FairTax would be levied once at the ......
The Team Foundation Power Toys are now available for download. Brian Harry blogged about it, and there are definitely a couple that make me go "oooh", such as: Annotate (IDE & command line) Annotate is a version control feature that enables you to quickly and easily determine who last changed a section of code. It traverses the history of a file and "annotates" each line with the name of the user that last changed it and the change set # of the checkin. TreeDiff (IDE & command line) For a ......
You don't know what Fitts' Law is? Neither did I, but it's a very important one when considering UI design. From Wikipedia: In ergonomics, Fitts' law is a model of human movement, predicting the time required to rapidly move from a starting position to a final target area, as a function of the distance to the target and the size of the target. Fitts' law is used to model the act of pointing, both in the real world, for example, with a hand or finger and on computers, for example, with a mouse. It ......
If you're a fan of the Microsoft Solutions Framework (I personally go back and forth--to me, there's a lot of "duh!" in it, and on the flip-side there's an awful lot of overkill), or a fan of Agile development with VS 2005, you'll probably want to look at this. This download contains the source code and HTML in the agile process guidance that ships with Visual Studio Team System. MSF for Agile Software Development is a scenario-driven, context-based, agile software development process that utilizes ......
This once was a built-in feature in the upcoming Office 2007 release. Due to complaints from Adobe it was removed from the base product, but has now been resurrected as an add-in.
What is FreeDOS? FreeDOS is a free DOS-compatible operating system for IBM-PC compatible systems. FreeDOS is made of up many different, separate programs that act as "packages" to the overall FreeDOS Project. These days, there are three main uses of FreeDOS: To run old DOS games (like DOOM, etc.) To run old business software that only supports DOS To support an embedded DOS system, such as a computerized cash register or till You can run FreeDOS on pretty much anything. While can run FreeDOS on a ......
You'll have to register with the Customer Preview Program to receive a Product Key, but you can download it from the Microsoft Download Page.
As a follow-up on my post yesterday about threading, here's a good post on how to choose among the wide variety of choices to create a thread-safe GUI. After reading both of these, I've decided that I need to re-work the threading on an app I recently wrote. Live and learn. From the intro: With .NET 2.0 and with the new "anonymous delegates" feature in C#, doing multi threaded responsive GUIs is now easier. In fact, you get multiple choices on how to accomplish this task. But which choice is the ......
No, not "your code stinks", but identifying "code smells", areas that are begging for refactoring. Jeff Atwood has a good post on what warning signs to look for.
Here's a very good blog post comparing and contrasting DNN with SPS (SharePoint Services). It's long, but well worth the read. Like anything, choose the right tool for the right job. Obviously DNN isn’t as scalable as SharePoint is and it can’t search file shares, web sites, Lotus Notes databases, etc. but then it also can’t be setup and running on an external web host where you don’t have console access in 10 minutes like DNN can. Choose, but choose wisely ......
This was news a couple months ago, but I never had a chance to read up on it. The answer? 24,000 pages. The IRS is touting this on their website because GM was able to file electronically. Look at all the paper they saved. Yippee. But how much money did they spend on tax attorneys, management approval, etc.? How many man years did it take to complete this? And how much of my taxpayer money will it cost the IRS to review this return? And people still claim that our tax code isn't too complex and that ......
Tom Hollander posts on the results from the voting. Apparently people really want new blocks dealing with Business Rules, Workflow, and Validation.
Good luck to Tom and the team on pleasing everyone. :)
Expression Web, formerly (and better) named "Sparkle" has moved up from CTP status to Beta status. Expression Web is Microsoft's attempt at a "Flash killer". I've seen it in action, and I'm very impressed with it's functionality and how well it fits into the VS 2005 Team System environment. However, I'm not a Flash developer, so I'm not the correct person to judge its features. I think that Microsoft has an uphill climb convincing Flash developers (definitely and indepent group) to "go corporate" ......
IronPython 1.0 for .NET has been released on CodePlex. I haven't really done anything with dynamic languages, but I can certainly see their benefits, particularly in a RAD environment. I realize that both Python and Ruby make efforts to make sure the dynamic code is maintainable but I think the jury is still out on how easy/difficult that is. IronPython is a new implementation of the Python programming language running on .NET. It supports an interactive console with fully dynamic compilation. It ......
Microsoft is working on a project called 'BrowserShield', a browser add-on that will detect malicious code in web pages and remove it on-the-fly. Sounds interesting but conceivably dangerous to me. What if we disagree on what constitutes dangerous? Anyway, it will be interesting to see what comes out of this group. The BrowserShield project—the brainchild of Helen Wang, a project leader in Microsoft Research's Systems & Networking Research Group, and an outgrowth of the company's Shield initiative ......
After you've gone out and gotten your new Treo 700wx, you can connect to it using Windows Vista RC1, if you're bold enough. That is, if you can download it. TechBeta and TAP users can get it now. MSDN and TechNet availability "real soon now".
As I blogged about last week, the Treo 700wx is now available from Sprint. Rush out and get one now ......
One big complaint I have with .NET is that there are too many ways to launch one or more background threads. If you're interested in doing that, and you start perusing through the documentation, you'll immediately find lots of information on how to do it. In several different ways. And there's really no guidelines such as "Use this method if you're doing X, and this method if you're doing Y", etc. Mark Newman does a decent job of laying this all out and (sigh), gives you one more choice in his article ......
The Microsoft .NET Framework 3.0 (formerly known as WinFX), is the new managed code programming model for Windows. It combines the power of the .NET Framework 2.0 with new technologies for building applications that have visually compelling user experiences, seamless communication across technology boundaries, and the ability to support a wide range of business processes. These new technologies are Windows Presentation Foundation, Windows Communication Foundation, Windows Workflow Foundation, and ......
Microsoft has been working on behavioral targeting systems, which determine information about users based on what they do. To state it more clearly, and give an example, they have a "Demographics Prediction Demo" The intro says: You can use adCenter technology to predict a customer’s age, gender, and other demographic information according to his or her online behavior—that is, from search queries and webpage views. I entered my car, Cadillac CTS, and it did pretty well on guessing my age group, ......
This is a Visual Studio add-in that automates the AssemblyVersion control. That's useful for managing version of multiple assemblies. From the introduction: As suggested on George Shepherd's Windows Forms FAQ, a simple solution to synchronize versions among multiple projects is to extract version information into a single file and reference it from each project. However, that approach has one drawback: if an assembly is used in different solutions, you may end up having two different versions of ......
This is pretty neat. It's a TabPage control that allows you to drag out your tabs and dock them. Visual Studio has this feature, but I've never tried to do it on my own. From the introduction: Have you ever made a nice stable winForm application that had several tabs? Did it contain a nice clear distinction of workflow or had just a real nice component separation? Then did you find out some time later (weeks or months) that some of your users want to see some of the data side by side and that they ......
Charlie Poole has been thinking about changing the NUnit syntax for Asserts for his upcoming NUnitLite. One the one hand, it drives me crazy that the Assert syntax keeps changing. On the other hand, I think he's right on with his new idea. It will certainly make it easier to automate creation or at least standardize creation of unit tests.
A good article comparing two different earners and how they'd be taxed under the FairTax.
Engadget has the scoop on the upcoming Palm Treo 700wx. I still like my PPC-6700, but if you're looking for something from Palm, or just have to have the "latest and greatest", take a look at the 700wx.

According to Microsoft Watch, who got their data from Amazon.com, Office 2007 and Windows Vista will be available to the general public on January 30, 2007. Prepare to shell out a combined $900 for Office Professional and Vista Ultimate Edition ......