Monday, November 30, 2009

Accenture Plc and Adchemy Teams to Create Enterprise-Ready Digital Marketing Platform...

Accenture Plc and Adchemy Teams to Create Enterprise-Ready Digital Marketing Platform

Accenture Plc and Adchemy, a company in audience relationship management (ARM), announced that they have formed a global alliance to help large companies and their agency partners build more effective digital experiences with their customers. The alliance will give clients a new way to identify, engage and acquire customers. As part of the alliance agreement, Accenture has taken a minority equity stake in Adchemy and Tim Breene, Accenture`s senior managing director of Strategic Initiatives, has joined Adchemy`s Board of Directors.

http://www.reuters.com/finance/stocks/keyDevelopments?symbol=ACN

-D

Sunday, November 22, 2009

MS Application Architecture Guide...

Looking for an "Application Architecture Guide" that is intended to help solution architects/designers design and build effective, high quality applications?

Microsoft has released 2nd edition of Microsoft Application Architecture guide @
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=ce40e4e1-9838-4c89-a197-a373b2a60df2

This guide helps you to:
1 Understand the underlying architecture and design principles and patterns for developing successful solutions on the Microsoft platform and the .NET Framework.
2 Identify appropriate strategies and design patterns that will help you design your solution's layers, components, and services.
3 Identify and address the key engineering decision points for your solution.
4 Identify and address the key quality attributes and crosscutting concerns for your solution.
5 Create a candidate baseline architecture for your solution.
6 Choose the right technologies for your solution.
7 Identify patterns & practices solution assets and further guidance that will help you to implement your solution.

- D

Sunday, November 08, 2009

Visual Studio 2010 Professional download and .NET Framework 4 Training kit...

Visual Studio 2010 and .NET Framework 4 Beta 2 Ready to Download...

VS 2010 Professional version-
http://www.microsoft.com/downloads/details.aspx?FamilyID=a80dfb5d-51c6-4778-8656-a9ff29d3a132&displaylang=en

There's a training available for Preview as well here on MSDN site -
http://www.microsoft.com/downloads/details.aspx?familyid=752CB725-969B-4732-A383-ED5740F02E93&displaylang=en

-D

Thursday, November 05, 2009

Accenture LLP receives P&G Supplier Excellence Award...

Accenture LLP receives a "Supplier excellence award" from P&G for FY 2009 yesterday night for consistently performing against expectations for service delivery, innovation and being a great business partner. One of the 55 suppliers that received an award among P&G’s 80,000 suppliers and the only one in our IT field besides HP beating our competitors who are not listed anywhere :)

http://www.pg.com/news/supplier_awards_release_final.shtml

Cheers - time to celebrate :) - DJ

Tuesday, September 22, 2009

ROI from MS

Here's a nice link for ROI from MS - http://nucleusresearch.com/microsoft-roi-support-center/

Sunday, February 08, 2009

Accenture Vision 2009 - "Our Elastic Future"

Featured in the CIO article "Our Elastic Future" Accenture Technology Labs identified 5 dimensions of this "Everything Elastic" world and major trends for 2009.
You can read the entire version on "Our Elastic Future" in the CIO magazine.

Thanks - Dipesh

Monday, September 29, 2008

Silverlight 2 RC released

Silverlight 2 RC released.... from Scott's blog ....
http://weblogs.asp.net/scottgu/archive/2008/09/25/silverlight-2-release-candidate-now-available.aspx

Visual Studio 2010 and .NET 4.0 Framework

Microsoft Unveils Next Version of Visual Studio and .NET Framework
The press release just went live over on MS press pass. Go and have a look at the enticing screenshots and read the Visual Studio Team System (VSTS) 2010 overview on MSDN. This is the release formally code-named “Rosario”.
And best of all, Brian Keller is running Visual Studio Team System 2010 Week on Channel9. With new videos every day this week, they are not to be missed!

Reveals extensive enhancements for simplified application life-cycle management, provides sneak peek at all key focus areas for Visual Studio 2010 and the .NET Framework 4.0.

Details on Microsoft site:
http://www.microsoft.com/presspass/press/2008/sep08/09-29VS10PR.mspx

Thursday, August 28, 2008

IE 8 Beta 2 release

http://www.microsoft.com/windows/internet-explorer/beta/worldwide-sites.aspx?icid=ie8_asdf123

Monday, August 25, 2008

Silverlight Beta 2 Released...

Silverlight Beta 2 Released

Scott Guthrie just published this on his blog here -
http://weblogs.asp.net/scottgu/archive/2008/06/06/silverlight-2-beta2-released.aspx

Monday, August 11, 2008

VS .net 3.5 and TFS SP1 shipped

Brian Harry just posted this news that - Microsoft released VS .net 3.5/TFS SP1.

At a very high level, the improvements include:

Improved WPF designers
SQLServer 2008 support
ADO.NET Entity designer
Visual Basic & Visual C++ improvements (including an MFC-based Office 2007 style 'Ribbon')
Team Foundation Server improvements - detailed here
Richer JavaScript support, enhanced AJAX and data tools and web site deployment improvements
A new .NET profile for client applications that is much smaller and installs much faster
Substantial .NET performance improvements (particularly in startup time)
And much, much more...

Here are the downloads -
Visual Studio Team System 2008 Team Foundation Server Service Pack 1 -http://go.microsoft.com/fwlink/?LinkId=124829

NET Framework 3.5 Service Pack 1 - http://go.microsoft.com/fwlink/?LinkId=124150

If you have setup issues, a great first resource is Heath's blog: http://blogs.msdn.com/heaths/archive/tags/VS+2008+SP1/default.aspx

Here's a useful entry about collecting setup log information: http://blogs.msdn.com/heaths/archive/2008/05/09/visual-studio-and-net-log-collection-utility.aspx

Wednesday, July 23, 2008

Accenture has been named to the Fortune Global 500 for the seventh consecutive year...

Accenture has been named to the Fortune Global 500 for the seventh consecutive year...

Accenture has been named to the Fortune Global 500 for the seventh consecutive year. The ranking of the world’s largest companies is based exclusively on revenue, for the fiscal year ending on or before March 2008.

Accenture ranks #392 this year, up from #394 last year. Accenture is listed with $21,453 million in gross revenue, up from $18,228.4 million in 2007.

Fortune ranks Accenture in a newly-created category this year, Information Technology Services, maintaining the #3 position the company had last year in Computer Services & Software. IBM (#1) and EDS (#2) joined Accenture in the new category.

Competitors Hewlett-Packard rank #41 overall, with IBM ranked #46 and EDS ranked #384 on the 2008 list.

Accenture was first named to the Fortune Global 500 in 2002 when, as a public company, it became eligible for the first time.

Wednesday, June 11, 2008

Resharper 4.0 release

This release brings you the most up-to-date support for Visual Studio 2005 and 2008, including C# 3.0 and LINQ:

http://www.jetbrains.com/resharper/features/newfeatures.html?40nl

Try ReSharper 4.0 free for a 30-day trial. Simply download ReSharper 4.0 and start running it now:

http://www.jetbrains.com/resharper/download/index.html?40nl

Thursday, June 05, 2008

ASP.NET MVC Release - Preview 3

Just in case if you haven't visited Scott's blog for a long time :)

http://weblogs.asp.net/scottgu/archive/2008/05/27/asp-net-mvc-preview-3-release.aspx

Achieving High Performance: The Sustainability Imperative

Sustainability is moving from the periphery to the heart of business and government. As that transition occurs, organizations need to transform their operations—and, in some cases, their business models—to fully integrate sustainability initiatives across the enterprise. It’s a daunting effort. But the challenges are offset by the tremendous opportunities that lie ahead.

In this Point of View (link below), Accenture examines how organizations that weave sustainability into the fabric of their strategies and operating models can drive new capabilities with far-reaching effects in four areas:

1. Revenue growth from new products and services.
2. Cost reduction and efficiency improvements.
3. Better risk management.
4. Brand and reputation enhancement.

Accenture believes sustainability is an *engine* that can drive high performance. Further, the building blocks of high performance—market focus and position, distinctive capabilities and performance anatomy—can be used to create business opportunities and lasting value, for your stakeholders and for society at large.

Read more here - http://www.accenture.com/NR/rdonlyres/88EA36BC-3EBE-4D0F-BA6E-C3481B988475/0/AccentureSustainability.pdf

Saturday, May 31, 2008

Accenture awarded “Best Employer” for second straight year...

For the second year in a row, Accenture has received the “Best Employer” Award in Belgium, granted by the Great place to work in Europe with the support of the Vlerick Leuven Gent Management School.

Employees in Belgium once again voted Accenture into the top 10 by completing a survey distributed by the Great Place to Work Institute Europe.
Accenture awarded “Best Employer” for second straight year.

More on Vlerick Leuven Gent Management School @ http://www.vlerick.be/en/home.html

Microsoft releases ASP.NET MVC (Preview 3)

This Tuesday May 27th Microsoft released the Preview 3 build of the ASP.NET MVC framework. This build includes some additional features not in last month's drop, some nice enhancements/refinements, as well as Visual Studio tool integration and documentation.

You can download an integrated ASP.NET MVC Preview 3 setup package here. You can also optionally download the ASP.NET MVC Preview 3 framework source code and framework unit tests at http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=aspnet&ReleaseId=13792

Read more at Scott Guthries' blog here -http://weblogs.asp.net/scottgu/archive/2008/05/27/asp-net-mvc-preview-3-release.aspx

- Dipesh

Tuesday, May 27, 2008

StyleCop released as Microsoft Source Analysis

Source Analysis is similar in many ways to Microsoft Code Analysis (specifically FxCop), but there are some important distinctions. FxCop performs its analysis on compiled binaries, while Source Analysis analyzes the source code directly. For this reason, Code Analysis focuses more on the design of the code, while Source Analysis focuses on layout, readability and documentation. Most of that information is stripped away during the compilation process, and thus cannot be analyzed by FxCop.

Source Analysis comes with a set of default rules analyzers covering approximately 200 best practice rules. These rules are full compatible with the default layout settings in Visual Studio 2005 and Visual Studio 2008.

Read more -
http://blogs.msdn.com/sourceanalysis/archive/2008/05/23/announcing-the-release-of-microsoft-source-analysis.aspx

Friday, May 23, 2008

Accenture ranks first in global outsourcing, unseating IBM

Unseating two-time leader IBM, Accenture placed first on the Global Outsourcing 100, the annual list of the world’s top outsourcing service providers compiled by the International Association of Outsourcing Professionals (IOP). “We won on customer testimonials—the strongest evidence you can have,” says Kevin Campbell, group chief executive-Outsourcing.

Global 2008 Outsourcing ranikings -

RANK: 1
COMPANY: Accenture
KEY STRENGTH: Customer Testimonials

RANK: 2
COMPANY: IBM
KEY STRENGTH: Size & Growth

RANK: 3
COMPANY: Infosys Technologies
KEY STRENGTH: Executive Leadership

Here's the complete list - http://www.outsourcingprofessional.org/content/23/152/1197/

Thursday, May 22, 2008

Why am i not getting any SQL notifications fired?

Why am i not getting any SQL notifications fired?
What are the constraints implementing SQL Server 7/2000 Dependency Caching? (see below...)

Here are few quick things you can check real quick
- Check your query string. Is it valid?
- Be sure you don’t have select *
- Be sure you do have two-part names for the tables e.g., dbo.countries
- Ensure that you have your broker service enabled: Run SET ENABLE_BROKER

- Check the compatibility mode of your database to be set as 90 at the database level. You can see and modify this setting in the Database Properties/Options/Compatibility level. *

- If you are want to use compatiblity mode 80 then you can still achieve it by setting ARITHABORT ON for the database properties or specifying at each individual connection as an example below -

Example:
--------------------------
Dim conn As SqlConnection = New SqlConnection(connectionString)
conn.Open()

Dim cmd1 As New SqlCommand("SET ARITHABORT ON", conn)
cmd1.ExecuteNonQuery()

Dim cmd As New SqlCommand("SELECT country, country_desc FROM dbo.COUNTRY", conn)

dep = New SqlDependency(cmd)
AddHandler dep.OnChange, AddressOf TableProxy.OnDependencyChanged
Dim rdr As SqlDataReader
rdr = cmd.ExecuteReader()
dtLocal.Load(rdr)
---------------------------------

There are several constraints as well in the way which query you can use for SQL notifications ....

Don’t use queries whose results will change frequently.
Don’t use Select * in queries.
Do select explicit columns.

Don’t use UNION, DISTINCT, or TOP.
Don’t use Aggregate functions such as AVG, MAX, etc...

Take a detailed peek at the do's and dont's here -
http://msdn.microsoft.com/en-us/library/aewzkxxh.aspx

Take a look at ASP.NET’s Visual Web Developer Guided Tour for implementing SQL Server 7/2000 Dependency Caching at -
http://www.asp.net/Guided-Tour/s23.aspx

HTH, Thanks - Dipesh

Tool to generate .net query or fetchXML in CRM

Following stunware tool is pretty useful that lets you graphically build a query that generates either fetchXml or c# / vb.net query which you can copy and paste in your code in CRM 4.0

http://www.stunnware.com/crm2/topic.aspx?id=Framework1

Similar tool for CRM 3.0 can be found too at - http://www.stunnware.com/crm2/topic.aspx?id=FindingData6

Often you may have faced cryptic errors from CRM web service like "0x80041103: The specified attribute does not exist on this entity. Platform" that burns quite few hours. Most of the time this is because of incorrect query statements or mispelled words or something very trivial to catch your eyes. Hence this is of great help. Though i still prefer hand coding myself as that is a great learning! :)

Wednesday, May 21, 2008

Best Practices for implementing web services

Here's a codeproject article i went through for best practices for implementing web services (worht a read) - http://www.codeproject.com/KB/cpp/Web_Services.aspx

Thanks - Dipesh

Best Practices for Security in WCF...

Good article to read on Microsoft MSDN site-
http://msdn.microsoft.com/en-us/library/ms731059.aspx

How to implement SQL notifications in .net?

How do i notify the .net client when data changes in SQL server backend?
How to implement SQL notifications in .net easy way?

Query Notification, a collaboration between Microsoft’s ADO.NET and SQL Server teams. In a nutshell, Query Notification allows you to cache data and be notified when the data has been changed in SQL Server. Upon notification, you can then refresh your cache or take whatever action you need to.

Query Notification is possible because of a new feature in SQL Server 2005 called Service Broker. Service Broker puts queuing functionality into the database with a coordination of queues that communicate with services that, in turn, know how to communicate back to the calling entity. The queues and services are first class objects just as tables, views, and stored procedures are. Although Service Broker can be leveraged completely within SQL Server, ADO.NET knows how to communicate with Service Broker to trigger this mechanism and retrieve the notifications back from the Service Broker.

On the .NET side, there are a number of ways of hooking into this functionality. ADO.NET 2.0 provides the System.Data.SqlClient.SqlDependency and System.Data.Sql.SqlNotificationRequest classes. SqlDependency is a higher-level implementation of SqlNotificationRequest and is most likely the one you will use when working with ADO.NET 2.0. ASP.NET 2.0 also communicates with Service Broker through the System.Web.Caching.SqlCache-Dependency class (that provides a wrapper around SqlDependency), as well as directly through functionality provided declaratively in an ASP.NET page using the <%OutputCache> directive. This allows ASP.NET developers to easily invalidate caches that are dependent on data from SQL Server.

Read this article for implementation details - http://www.code-magazine.com/Article.aspx?quickid=0605061

Credits: I got the pleasure of working with Jeff Clark for a short stint though at Avanade recently and i learnt quite a few things from him...

how to raise and handle events/callbacks in .net?

How to implement and respond to Events in .net ?

In the following example, you'll create a class library containing a class that raises a pair of events. Then you'll create a user interface application that can respond to those events. You'll use both compile time event association with Handles and run-time event association with AddHandler.

Create the Class Library
Follow these steps to create the class library that will raise the events:

Open Microsoft® Visual Studio® .Net, and on the Start Page, click New Project.
On the tree view on the left-hand side of the screen, click Visual Basic Projects.
Click Class Library to select it as the project template.
Set the name of the application to Water and click OK to create the project.
Click the class called Class1.vb in the Solution Explorer window and rename it to Bucket.vb.
Select the code for Class1 in Bucket.vb (this will be an empty class definition) and replace it with the following code:

Class Bucket

Private ContentsValue As Integer
Private CapacityValue As Integer
Private NameValue As String

Public Event Full()
Public Event Overflowing(_
ByVal sender As System.Object)

Public Sub New(ByVal Capacity As Integer)
mintCapacity = Capacity
mintContents = 0
End Sub

Public Sub Empty()
mintContents = 0
End Sub

Public ReadOnly Property Contents()
Get
Contents = mintContents
End Get
End Property

Public Property Name() As String
Get
Name = mstrName
End Get
Set(ByVal Value As String)
mstrName = Value
End Set
End Property

Public Sub Add(ByVal Amount As Integer)
mintContents = mintContents + Amount
If mintContents > mintCapacity Then
RaiseEvent Overflowing(Me)
mintContents = mintCapacity
ElseIf mintContents = mintCapacity Then
RaiseEvent Full()
End If
End Sub

End Class

This code creates a class named Bucket to represent a bucket that can be filled with water. The New method initializes the bucket with a specified capacity. The Name property assigns a name to the bucket. The Add method adds water to the bucket, and the Empty method empties the bucket.

The Bucket class includes two event declarations:

Public Event Full()
Public Event Overflowing(_
ByVal sender As System.Object)

These two events are both raised within the Add method. If the amount of water in the bucket exceeds the capacity of the bucket, the code raises the Overflowing event. Otherwise, if the amount of water in the bucket exactly equals the capacity of the bucket, the code raises the Full event.

Note that the argument lists of the two events are different. You have complete flexibility to pass whatever information you need in any particular event.

On the Build menu, click Build or press Ctrl+Shift+B to build the class library.
Create the User Interface Project
Follow these steps to create a Windows Application to test the events of the Bucket class:

Open Visual Studio .Net and on the Start Page, click New Project.
On the tree view on the left-hand side of the screen, click Visual Basic Projects.
Click Windows Application to set it as the project template.
Set the name of the application to BucketTest and click OK to create the project.
Select the form called Form1.vb in the Solution Explorer window and rename it to frmBuckets.vb.
Create the form by adding the appropriate controls and setting the properties of those controls.

Add Code to Handle Events
Now you're ready to write code to handle the events from the Bucket class. This code will create three objects of the Bucket class. The Full events will be individually connected to event handlers at compile time using Handles. The Overflow events will all be handled by a single procedure, dynamically associated with the events at run time by using AddHandler.

On the View menu, click Code, and enter this code before the Windows Form Designer generated code:

Dim WithEvents Bucket1 As New Water.Bucket(10)
Dim WithEvents Bucket2 As New Water.Bucket(10)
Dim WithEvents Bucket3 As New Water.Bucket(10)

Now enter this code after the Windows Form Designer generated code:

Private Sub Form1_Load(_
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Bucket1.Name = "Bucket 1"
Bucket2.Name = "Bucket 2"
Bucket3.Name = "Bucket 3"
AddHandler Bucket1.Overflowing, _
AddressOf HandleOverflow
AddHandler Bucket2.Overflowing, _
AddressOf HandleOverflow
AddHandler Bucket3.Overflowing, _
AddressOf HandleOverflow
End Sub

Private Sub btnAdd1_Click(_
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnAdd1.Click
Bucket1.Add(1)
pb1.Value = Bucket1.Contents
End Sub

Private Sub btnAdd2_Click(_
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnAdd2.Click
Bucket2.Add(1)
pb2.Value = Bucket2.Contents
End Sub

Private Sub btnAdd3_Click(_
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnAdd3.Click
Bucket3.Add(1)
pb3.Value = Bucket3.Contents
End Sub

Private Sub Bucket1_Full() Handles Bucket1.Full
lblFull1.Visible = True
End Sub

Private Sub Bucket2_Full() Handles Bucket2.Full
lblFull2.Visible = True
End Sub

Private Sub Bucket3_Full() Handles Bucket3.Full
lblFull3.Visible = True
End Sub

Private Sub HandleOverflow(_
ByVal sender As System.Object)
lboOverflow.Items.Add(sender.Name & " Overflow!")
End Sub

Read more on this msdn site where you will find this example and details - :
http://msdn.microsoft.com/en-us/library/ms973905.aspx