November 2005 - Posts

Microsoft Technology Center - A worthwhile Exercise

My apologies for disappearing off the surface of the Earth … we are actually hiding at MTC UK at coordinates 51 27’41.18”N 0 55’30.55” W, doing intensive scalability testing … a million concurrent users being our final ‘ambitious’ target. The environment is impressive and the Microsoft engineers such as Ken England a major inspiration and source of invaluable information and experience.

 

Forthcoming weekends will be spent investingating WSE3, migrating Indigo code of our “.Net Enterprise Solutions … Interoperability for the Connoisseur: book to the latest CTP and preparing the January and February saArchitect sessions. This will ensure we keep on track and have an excuse to stay indoors.

 

One thing I do know after 3 days in the UK, is that the South-African weather is definitely the best!

Posted by willy with no comments
Filed under:

Scrum for VSTS

If you are interested in SCRUM for VSTS, then have a look at http://blogs.conchango.com/howardvanrooijen/default.aspx.
Posted by willy with no comments
Filed under:

OO ... worth the pain?

I have often wondered whether the quest for pure object oriented (OO) solutions is worth the pain and suffering most of these projects have to endure, from the issues of getting to grips and onto a common thread with pattern enthusiasts, tying the knot between an OO solution and a relational database, to debugging and wrapping up a solution tied together with functoids, aggregation, facades, inversion of control and other terminology that most ... or some .. of us recognise. I have been involved in solution design and development since the early 80's and tripped across OO in the mid 80's for the 1st time. My mentor at the time was on a quest of OO perfection and solutions were completed on time, according to blueprint and were a joy to maintain. These days ... a mere 20 odd years later ... I often get entrenched in solutions based on OO principles, patterns, frameworks and other goodies, yet they are a mission to digest and understand, not to mention the complexity and cost of maintenance.
 
Is OO really intuitive ... is OO really adding value ... is OO simply a way of IT technologist abstracting a simple business solution from the user and shrouding it in mystery? Looking at the 80's solutions my answer would be no. Looking at today, the answer is a definite yes and my concerns are shared by fellow colleagues and most of the IT people we get exposed to as part of the developer readiness program. 
 
So is OO bad?
 
Most definitely not, instead we should be more concerned about TLA's (three lettered acronyms) which are creating more chaos and confusion in the industry than anything else, least of which OO ... sorry object orientation. The key is to keep the solution simple, implement what is needed today and add what is needed in the future when and as it is required. Trying to forecast the future of any solution requires a crystal ball that none of us have been able to find and complicates the solution without any real effort. Just as OO, patterns are an ingenious concept and must be considered, however, avoid flooding project members with this and that, or rather that, if not we could consider that and/or that pattern ... successful solutions are those that give all involved a sense of achievement and "comfort", making it a maintainable solution ... rather than confusing team members before the real complexities of solutions even emerge.
 
If we realise that OO is merely another tool in our toolbox and that solutions should remain to be simple and intuitive, then the success my first mentor demonstrated with each solution he tackled, will accompany us as well. 
Posted by willy with 2 comment(s)
Filed under: ,

VSTS Chat Feedback

Here are some interesting Q&A's I collected during a recent VSTS chat:

Q: Is Team Foundation Server included in VS Team System or it's sold separately?
A: Team Foundation Server Workgroup Edition is included with Team Editions of Visual Studio. The only difference between the Workgroup Edition and the Team Foundation Server you can purchase separately is the number of users. The Workgroup Edition is limited to five users, but no CALs are required. Meaning, you could have one copy of Team Edition for Developers and four copies of Visual Studio Professional and everyone can install Team Explorer to access Team Foundation Server. For more information, see the Team System Licensing White Paper -
http://go.microsoft.com/fwlink/?LinkId=55933
Q: [28] Will VSTS RTM bring any improvements in terms of installation and configuration around security? The community is really battling with the initial setup.
A: I definitely hear that. We are working on it.
 
Q: [32] Is Team Foundation Server Workgroup included in VSTS is RC?
A: It's not available yet. It'll RTM with the regular Team Foundation Server in Q1 next calendar year.

Posted by willy with no comments
Filed under:

Improving .NET Application Performance and Scalability - Garbage Collection

For all those out there, which included myself up to last night, who want to dabble with the Garbage Collector, i.e. call GC.Collect, ... DON'T! As outlined in the "Improving .NET Application Performance and Scalability" book the direct manipulation and interference in GC is not recommended and can lead to serious performance degradation.

I thought I knew better and wanted to minimise the working memory of a system service and a web service processing 8000 requests and 1000 requests per second respectively, with DataSets, Collections and Entity objects being created and destroyed continuously. Obviously the memory usage climbs scaringly in the beginning, which lead to my GC adventure, btu had I been patient, I would have noticed that both processes balanced themselves out as the runtime started managing the memory space.

With custom GC management ... we always know how to do things better ... the average throughout was around 6000 and 700 respectively, which is a substantial performance hit!

Moral of the story ... DO NOT fiddle with garbage collection ... other than obviously implementing and making use of IDispose properly.

Posted by willy with no comments
Filed under: ,

Free VS training

Make sure you visit https://www.microsoftelearning.com/visualstudio2005/ for some free training which looks great.
Posted by willy with no comments
Filed under: , ,

New Quick Reference Poster: VSTS Security Mapping

New DRAFT security mapping poster has been published on http://www.drp.co.za/default.asp?id=technologies/content_technologies_UnderReview.

We now have the following VSTS based posters on www.drp.co.za:

  • Microsoft Team System Process Overview
  • Microsoft Team System Source Control
  • Microsoft Team System Single Server Install
  • Microsoft Team System Security Mapping

 

Posted by willy with 2 comment(s)
Filed under: , ,

Improving .NET Application Performance and Scalability - The Why

A colleague asked why I am promoting the "Improving .NET Application Performance and Scalability" book and what the "cool" information was that lead to performance improvements. Well, it is difficult to pinpoint to a single or a small subset, because the book is filled with gems. I basically read through the synchronisation and threading sections, applying guidlines to my test harness code. While applying I noticed a gradual performance improvement as I tested the changes iteratively ... looking at overall performance my solution performed slighlty more than twice as efficiently after applying all the changes, than before I opened the book.

While I still need to absorb the rest of the book, I suggest reading the threading and synchronisation sections to start off with.

I should have made notes and evaluated the performance gain of each step ... maybe next time and if, and only if, we are not on another 80+h/week engagement ... q;-)

Posted by willy with no comments
Filed under: ,

saArchitect (Gauteng): Indigo (WCF) Sessions

Please indicate by emailing drpsupport@bbd.co.za which of the following community events you would be interested in, so that we can gauge interest and start planning.

 

What is Indigo

Early’2006, 1 hour, Level 200, By Willy

A Sneak Peek at Indigo - The Unified Framework for Building Connected Systems. Indigo is Microsoft's unified framework for building service-oriented applications. It enables developers to build secure, reliable, transacted solutions that integrate across platforms and interoperate with existing investments. Indigo combines and extends the capabilities of existing distributed systems technologies, including Enterprise Services, System Messaging, .NET Remoting, ASMX, and WSE to deliver a unified development experience spanning distance, topologies, hosting models, protocols, and security models. This session will provide an overview of Indigo and show you how Indigo will simplify the development of connected systems.

Indigo Drill-down: Developing Services

Early’2006, 2 hours, Level 300, By Willy

A Sneak Peek at Indigo service development. This session will provide an overview of how to program Indigo and include after-session mentorship to ensure that attendees can explore the technology and build code after the session. All code samples will be based on the "how to Indigo " section in the new .NET Enterprise Solutions ... Interoperability for the Connoisseur book.

Indigo Drill-down: InfoCard

Early’2006+, 1.5 hours, Level 300, By Willy

A Sneak Peek at Indigo InfoCard development. This session will provide an overview of how to program InfoCard and include after-session mentorship to ensure that attendees can explore the technology and build code after the session.
Posted by willy with no comments

saArchitect (Gauteng): VSTS Session

VSTS Overview and Early Adoption Feedback

December timeframe,  1 hour, Level 200, By BB&D MTU

Evolve from Source Safe and improve the predictability and reliability of delivering mission-critical solutions. This session covers using Microsoft Visual Studio 2005 Team System features focused on improving your source control including advanced SCC, integration with work items, branching, merging, promotion, access control and policies.

Please indicate by emailing drpsupport@bbd.co.za if you would be interested in this session, so that we can gauge interest and start planning.

Posted by willy with no comments
Filed under: , ,

saArchitect (Gauteng): Software Factories Session

Software Factories

December timeframe, 2 hour, Level 200, By Simon, Willy and Ernst

A software factory is a durable starting point that configures Visual Studio for rapid development of a target application type. Software Factories refers to a Microsoft initiative that provides contextual guidance and automation for developing software using Visual Studio. This session takes a look at what software factories, domain specific languages and guidance automation tools are and "how to" develop them.

Please indicate by emailing drpsupport@bbd.co.za if you would be interested in this session, so that we can gauge interest and start planning.

Posted by willy with no comments
Filed under: ,

New Quick Reference Poster: VSTS and Contract First

VSTS

Contract First

Note that all posters have been downgraded in quality to make them "downloadable". High quality posters are available from drpsupport@bbd.co.za.

 

Improving .NET Application Performance and Scalability

The "Improving .NET Application Performance and Scalability" book from Microsoft patterns & practices is a must for all development teams. We are working on a scalability project using C++ and C#/.NET and last night I managed to speed up one of the high volume pieces enourmasouly by just applying some of the guidelines in the book. Excellent and worth every cent!

ISBN: 0-7356-1851-8

Posted by willy with no comments
Filed under: , ,