Tuesday, December 22, 2009

10 ways to work more securely

The security of your computer and data is crucial for you and the success of your company. Lost or stolen information can reveal company secrets, or expose your confidential or personal information. The more you do to keep your computer secure, the safer your information will be. Use these 10 tips to learn ways you can help protect your computer, your data, and your company's network....

10 ways to work more securely

Monday, December 21, 2009

7 tips for team websites

These tips can help you get up and running productively as quickly as possible with your site.
7 tips for team websites

Thursday, December 10, 2009

SQL order by Sort Direction as Parameter

We can specify the order by direction as parameter.

See the Following Stored procedure :

Create procedure testOrderBy
@sd int
as
begin
select * from [_LoanRequest] order by
CASE WHEN @sd = 1 THEN lenderid END DESC,
CASE WHEN @sd = 0 then lenderid END
end

To execute the stored procedue: ,

exec testorderby 1

where 1 is for the order desc
and 0 is for the order asc

hope it work for everyone who are searching to set the sort direction as parameter.

Wednesday, December 9, 2009

VSALM

ALM - Application Lifecycle Management.
VSALM - Visual Studio Application Lifecycle Management.

ALM is a method of managing software development lifecycle and IT initiatives by automating the process from end to end and integrating information from every stage of the project.This report focuses on Microsoft’s achievements, challenges,opportunities and strategy in delivering an ALM platform, and the impact that the company will
have on the market and for customers.

ALM Opposes common application development challenges.If you have a lack of visibility into project status, ALM will provide a single, unified view of the project that helps enforce responsibility, accountability, sign-offs, and checkpoints.
Suffering from ineffective team communication? ALM helps align everyone with the overall business goals and gives people access to the information they need in a timely manner by coordinating efforts across functional, geographic, and organizational boundaries.
With ALM, the team is better equipped to complete projects on time and on budget, while delivering critical business value that helps support business goals.

See in Microsoft

Monday, December 7, 2009

Windows Azure

Windows azure is a cloud services platform. Windows azure is a new era of Cloud computing. And it is a operation system as service.Running applications on machines in an Internet-accessible data center can bring plenty of advantages.

Windows azure is a platform for running widows applications in CLOUD.









Windows Azure

SQL AZURE

SQL AZURE database is the cloud based relational database build by microsoft. Administrator or Developer no need to install, setup, patch or manage any software. It provides a highly available, scalable, multi-tenant database service hosted by Microsoft in the cloud. SQL Azure Database helps to ease provisioning and deployment of multiple databases.

In short, SQL Azure is simply a Microsoft branding change. SQL Services and SQL Data Services are now known as Microsoft SQL Azure and SQL Azure Database. There are a few changes, but fundamentally Microsoft’s plans to extend SQL server capabilities in cloud as web-based services remain intact. SQL Azure will continue to deliver an integrated set of services for relational databases. The reporting, analytics and data synchronization with end-users and partners also remains unchanged. This makes it most appealing to current users of SQL Server.

Case Study from Infosys

Friday, November 27, 2009

A New Invention - Achivement of an Indian

I got a chance to see one video today. It was one of the great video I have ever seen and I wondered and amazed. A guy explaining how to use the physical objects around us instead of using computing devices like mouse and keyboards.

See here

Wednesday, September 30, 2009

Windows Sharepoint Services (WSS)

WSS

Windows SharePoint Services is a versatile technology in Microsoft Windows Server™ 2003 that organizations and business units of all sizes can use to help increase the efficiency of business processes and improve team productivity. With tools for collaboration that help people stay connected across organizational and geographic boundaries, Windows SharePoint Services gives people access to the information they need.


Collaborate Easily and Effectively


Windows SharePoint Services helps teams stay connected and productive by providing easy access to the people, documents, and information they need to make more informed decisions and get the job done. Enhancements in Windows SharePoint Services 3.0 make it easier than ever to share documents, track tasks, use e-mail efficiently and effectively, and share ideas and information.

http://technet.microsoft.com/en-us/windowsserver/sharepoint/bb848085.aspx

Sharepoint - An Introduction

What is Sharepoint?

A collaboration and document management platform that “helps organizations, teams, and business units to be more effective by connecting people and information.”

Structure of Sharepoint

Sharepoint is organized into sites.
Sites contains list, libraries and web parts.
List and libraries hold many types of information -- from docs to photos to contacts.
SharePoint allows you to customize and uniquely organize all of these things.

Monday, September 28, 2009

Sharepoint Server - My First view

Sharepoint server is an integrated suit of server capabilities that help to improve the organizational effectiveness. It providing comprehensive content management and enterprise search, accelerating shared business processes, and facilitating information-sharing across boundaries for better business insight.

Additionally, this collaboration and content management server provides IT professionals and developers with the platform and tools they need for server administration, application extensibility, and interoperability.

Wednesday, July 22, 2009

Cloud Computing

In traditional computing, we runs software programs in our own computer and the documents we created to our computer memory.
With Cloud Computing, software programs are not run from one's personnel computer, but are rather stored in server and accessed via internet.
Cloud computing is an emerging computing technology that uses the internet and central remote servers to maintain data and applications.Cloud computing allows consumers and businesses to use applications without installation and access their personal files at any computer with internet access. This technology allows for much more efficient computing by centralizing storage, memory, processing and bandwidth.
Cloud computing comes into focus only when you think about what IT always needs: a way to increase capacity or add capabilities on the fly without investing in new infrastructure, training new personnel, or licensing new software. Cloud computing encompasses any subscription-based or pay-per-use service that, in real time over the Internet, extends IT's existing capabilities.


Tuesday, June 30, 2009

Cookies ASP.net

How to create a cookie in ASP.NET

To write a cookie in ASP.NET we can use a code like this:

[ VB.NET ]

' Add this on the beginning of your .vb code file
Imports System.Web


' Use this line to save a cookie
Response.Cookies("MyCookieName").Value = "MyCookieValue"
' How long will cookie exist on client hard disk
Response.Cookies("MyCookieName").Expires = Now.AddDays(1)

' To add multiple key/value pairs in single cookie
Response.Cookies("VisitorData")("FirstName") = "Richard"
Response.Cookies("VisitorData")("LastVisit") = Now.ToString()

[ C# ]

// Add this on the beginning of your .vb code file
using System;


// Use this line when you want to save a cookie
Response.Cookies["MyCookieName"].Value = "MyCookieValue";
// How long will cookie exist on client hard disk
Response.Cookies["MyCookieName"].Expires = DateTime.Now.AddDays(1);

// To add multiple key/value pairs in single cookie
Response.Cookies["VisitorData"]["FirstName"] = "Richard";
Response.Cookies["VisitorData"]["LastVisit"] = DateTime.Now.ToString();
How to read a cookie in ASP.NET

To read a cookie value, use this:

[ VB.NET ]

Dim MyCookieValue As String
' We need to perform this check first, to avoid null exception
' if cookie not exists
If Not Request.Cookies("MyCookieName") Is Nothing Then
MyCookieValue = Request.Cookies("MyCookieName").Value
End If

[ C# ]

string MyCookieValue;
// We need to perform this check first, to avoid null exception
// if cookie not exists
if(Request.Cookies["MyCookieName"] != null)
MyCookieValue = Request.Cookies["MyCookieName"].Value;
How to delete cookie in ASP.NET

To delete existing cookie we actually just set its expiration time to some time in the past. You can do it with code like this:

[ VB.NET ]

' First check if cookie exists
If Not Request.Cookies("MyCookieName") Is Nothing Then
' Set its expiration time somewhere in the past
Response.Cookies("MyCookieName").Expires = Now.AddDays(-1)
End If

[ C# ]

// First check if cookie exists
if (Request.Cookies["MyCookieName"] != null)
{
// Set its expiration time somewhere in the past
Response.Cookies["MyCookieName"].Expires = DateTime.Now.AddDays(-1);
}
HttpCookie class

HttpCookie class is located in System.Web namespace. You can use HttpCookie class to create and manipulate cookies instead of using of Response and Request objects.

HttpCookie class have these properties:
- Domain - Gets or sets domain associated with a cookie. It is often used to limit cookie use to web site sub domain.
- Expires - Gets or sets time when cookie expires. After that time cookie is deleted by the browser. The maximum life time for cookie is 365 days. You can increase expiration time every time when visitor visits your web site, but if visitor don't comes for more than 365 days, the cookie will be deleted.
- HasKeys - Returns true if cookie has key pairs or false if not. Cookies are not limited to only simple data as strings, but could stores key/values pairs as well.
- HttpOnly - Gets or sets a true/false value if cookie is accesible by client side javascript. If value is true, cookie will be accessible only by server side ASP.NET code.
- Item - Not necessary, it exists only because it is used in old classic ASP.
- Name - A name of a cookie.
- Path - Similar like Domain property, path is used to limit a cookie scope to specific URL. For example, to limit using of a cookie to sub folder www.yourdomain.com/forum you need to set Path property to "/forum".
- Secure - Would cookies will transmit through HTTPS protocol by using SSL (secure socket layer) connection.
- Value - Gets or sets a cookie's value.
- Values - Used to get or set key/value pairs in individual cookie.

You can use HttpCookie class to create a cookie or set cookie's properties, like in this example code:

[ VB.NET ]

Dim MyGreatCookie As HttpCookie = New HttpCookie("MyCookieName")
MyGreatCookie.Value = "Some cookie value"
MyGreatCookie.Expires = Now.AddDays(100)
Response.Cookies.Add(MyGreatCookie)

[ C# ]

HttpCookie MyGreatCookie = new HttpCookie("MyCookieName");
MyGreatCookie.Value = "Some cookie value";
MyGreatCookie.Expires = DateTime.Now.AddDays(100);
Response.Cookies.Add(MyGreatCookie);
Web browser limits for cookies

Cookie size is limited to 4096 bytes. It is not much, so cookies are used to store small amounts of data, often just user id.

Also, number of cookies is limited to 20 per website. If you make new cookie when you already have 20 cookies, browser will delete oldest one.

Your web site visitor can change browser settings to not accept cookies. In that case you are not able to save and retrieve data on this way! Because of this, it is good to check browser settings before saving a cookie.

If your visitor blocked cookies in web browser privacy settings, you need to decide do you still want to save that data on some other way (maybe with sessions) or to not save it at all. Anyway, you application must continue to work normally with any browser privacy settings. It is better to not store any sensitive or critical data to cookies. If using of cookies is necessary, you should inform your users with some message like: "Cookies must be enabled to use this application".
How to find does web browser accepts cookies

There are two possible cases when your client will not accept cookies:

- Web browser does not support cookies
- Web browser supports cookies, but user disabled that option through a browser's privacy settings.
How to check does visitor's web browser supports cookies

[ VB.NET ]

If Request.Browser.Cookies Then
' Cookies supported
Else
' Web browser not supports cookies
End If

[ C# ]

if (Request.Browser.Cookies)
{
// Cookies supported
}
else
{
// Web browser not supports cookies
}
How to check if client web browser not saved a cookie because of its privacy settings

Code above will tell you does web browser supports cookie technology, but your visitor could disable cookies in web browser's privacy settings. In that case, Request.Browser.Cookies will still return true but your cookies will not be saved. Only way to check client's privacy settings is to try to save a cookie on the first page, and then redirect to second page that will try to read that cookie. You can eventually use the same page to save and read a cookie when perform a testing, but you must use Response.Redirect method after saving and before reading cookies.
Best practices with cookies in ASP.NET

Cookies are just plain text, so usually are not used to store sensitive informations like passwords without prior encryption. If you want to enable "Remember me" option on web site it is recommended to encrypt a password before it is stored in a cookie. Cookies are often used for data like: when visitor last time loged in, what site color she likes, to keep referer id if we offer affiliate program etc.
Security issues about cookies in ASP.NET

Because of security reasons, your web application can read only cookies related to your web domain. You can't read cookies related to other web sites. Web browser stores cookies from different sites separately.

Cookie is just a plain text file on client's hard disk so it could be changed on different ways outside of your application. Because of that, you need to treat cookie value as potentially dengerous input like any other input from the visitor, including prevention of cross site scripting attacks.

Monday, June 29, 2009

Caching Asp.net

Introduction: It is a way to store the frequently used data into the server memory which can be retrieved very quickly. And so provides both scalability and performance. For example if user is required to fetch the same data from database frequently then the resultant data can be stored into the server memory and later retrieved in very less time (better performance). And the same time the application can serve more page request in the same time (scalability).

Drawback: Suppose the server memory is filled with the data then the remaining part of the data is stored into the disk which slower the complete system performance. That's why self limiting caching techniques are best; where once the server memory gets filled the data has been selectively removed from the server memory to ensure that the application performance is not degraded.

Caching Types: Basically, caching is of two types:

1. Output caching - The rendered html page is stored into the cache before sending it to the client. Now, if the same page is requested by some other client the already rendered htm page is retrieved from the server memory and sent to the client, which saves the time requires rendering and processing the complete page.
2. Data Caching - The important pieces of information, that are time consuming and frequently requested, are stored into the cache. For example a data set retrieved from the database. It is very similar to application state but it is more server friendly as the data gets removed once the cache is filled.

There are two more models which are built on the above two types:

1. Fragment caching - Instead of caching the complete page, some portion of the rendered html page is cached. E.g.: User Control used into the page is cached and so it doesn’t get loaded every time the page is rendered.
2. Data Source Caching - It is caching built into the data source controls (eg. XmlDataSource, sqlDataSource etc). It is very similar to data caching but here the caching is not handled explicitly but the data source control manages it as per the settings made on the data controls.

Output Caching: The rendered html page is stored into the cache before sending it to the client. Now, if the same page is requested by some other client the already rendered htm page is retrieved from the server memory and sent to the client. Which saves the time requires rendering and processing the complete page. So saves the time taken to create the controls, start/run the page cycle again, and execute the code.

Declaration: To use output caching, declare the below line at the page:

<@ OutputCache Duration="20" VaryByParam="None">

It means that the page will be cached for the 20 seconds. If any client requests for the same page under this time, the rendered page is sent to it. After 20 seconds the updated/latest version of rendered page replaces the earlier version.

Note: The page is automatically removed when the application is recompiled.

Output Caching and Query String: Output caching also supports the query string values to cache the specific pages. On basis of query string parameter values, different pages are cached. For example, in the below declaration:

<@ OutputCache Duration="20" VaryByParam="ProductID">

Different version of page is cached based on different ProductId value. And later when the page is requested with specific query string value (ProductId value), the matching page is retrieved.

It is also possible to specify more than one query string parameter. In those cases the combined value of both the parameter work as a key for pages to be cached. There is also a special case, where "*" is passed as a parameter. In this case, pages are cached for all the separate combinations of the query string arguments.
<@ OutputCache Duration="20" VaryByParam="*">

Custom Caching Control: It provides a flexibility to user to cache the page based on their own built custom string. Let's take below example:

<@ OutputCache Duration="20" VaryByParam="None" VaryByCustom="Browser">

User has defined a custom string that will be used to generate the custom cache string. In this case, user wants to cache pages based on browser version. It requires the below method implementation under global.asax page (or should have the below structure):

Public override function GetVaryByCustomString(byval context as HttpContext, byval arg as string) as string

// Check for the requested type of caching.

If (arg == "browser") then

// Determine the current browser.

dim browserName as string = _

Context.Request.Browser.Browser + Context.Request.Browser.MajorVersion.ToString()

// Indicate that this string should be used to vary caching.

return browserName

Else if (arg=="SomeCustomString") then

//Define the custom cache value for the custom string

....................................................

Else MyBase.GetVaryByCustomString(context, arg)

End If

End Function

Caching using HttpCachePolicy Class: It contains methods to perform caching programmatically. Response.Cache property provides the instance of HttpCachePolicy class. Let's see the below example:

Public sub CacheCurrentPage()

// Cache this page on the server.

Response.Cache.SetCacheability(HttpCacheability.Public)

// Use the cached copy of this page for the next 60 seconds.

Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))

// Ensures that the browser can't invalidate the page on click of Refresh button

Response.Cache.SetValidUntilExpires(true)

End Sub

But, it's awkward to embedded caching through the code.

Fragment Caching: Sometimes it's required to cache only a portion of the page. In such scenarios, the portion is wrapped into a user control. Then the OutputCache directive is included in the user control file. In This way only user control part will be cached.

Cache Profiles: ASP.NET 2.0 introduces a new option that’s suitable if you need to apply the same caching settings to a group of pages. This feature, called cache profiles, allows you to define the caching settings in a web.config file. Use the tag in the section, as follows. You assign a name and a duration.



















...





You can now use this profile in a page through the CacheProfile attribute:

<%@ OutputCache CacheProfile="ProductItemCacheProfile" VaryByParam="None" %>

Cache Configuration: You can also configure various details about ASP.NET’s cache behavior through the web.config file. To configure these settings, you use the element inside the element described above.








disableExpiration="true|false"

percentagePhysicalMemoryUsedLimit="number"

privateBytesLimit="number"

privateBytesPollTime="HH:MM:SS"/>

...





...



1. DisableMemoryCollection: stop ASP.NET from collecting items when memory is low
2. DisableExpiration: remove expired items.
3. PercentagePhysicalMemoryUsedLimit: set the maximum percentage of virtual memory that ASP.NET will use for the cache.
4. PrivateBytesLimit: Determines the maximum number of bytes a specific application can use for its cache before ASP.NET begins aggressive scavenging(removal of older data from the cache).
5. PrivateBytesPollTime:how often ASP.NET checks the private bytes used. The default value is 1 second.

Data Caching: The basic principle of data caching is that you add items that are expensive to create to a special built-in collection object (called Cache). This object works much like the Application object. However, a few key differences exist:

1. The Cache object is thread-safe: This means you don’t need to explicitly lock or unlock the Cache collection before adding or removing an item. However, the objects in the Cache collection will still need to be thread-safe themselves.
2. Items in the cache are removed automatically: ASP.NET will remove an item if it expires, if one of the objects or files it depends on is changed, or if the server becomes low on memory. This means you can freely use the cache without worrying about wasting valuable server memory.
3. Items in the cache support dependencies: You can link a cached object to a file, a database table, or another type of resource. If this resource changes, your cached object is automatically deemed invalid and released.

But, as with application state, the cached object is stored in process, which means it doesn’t persist if the application domain is restarted and it can’t be shared between computers in a web farm.

Adding Items to the Cache: As with the Application and Session collections, you can add an item to the Cache collection just by assigning to a new key name:

Cache("Key") = “Value”

But the better approach is to use the Insert() method. It has four versions:

1. Cache.Insert(key, value): Inserts an item into the cache under the specified key name, using the default priority and expiration.
2. Cache.Insert(key, value, dependencies): Also includes a last parameter containing a CacheDependency object that links to other files or cached items and allows the cached item to be invalidated when these change.
3. Cache.Insert(key, value, dependencies,absoluteExpiration, slidingExpiration): Also indicating sliding or absolute expiration policy(defined later on this section)
4. Cache.Insert(key, value, dependencies,absoluteExpiration, slidingExpiration,onRemoveCallback): In addition, one can submit a delegate that points to a method you want invoked when the item is removed.

Sliding Expiration and absolute Expiration: Both can't be used at the same time. If absolute expiration is used, set the slidingExpiration parameter to TimeSpan.Zero. To set a sliding expiration policy, set the absoluteExpiration parameter to DateTime.Max.

With sliding expiration, ASP.NET waits for a set period of inactivity to dispose of a neglected cache item. Here’s an example that stores an item with a sliding expiration policy of ten minutes, with no dependencies, So, the data will be removed only if it is not used within a ten-minute period.

Cache.Insert("MyItem", obj, null, DateTime.MaxValue, TimeSpan.FromMinutes(10))

With absolute expiration, we set a specific date and time when the cached item will be removed. Here’s an example that stores an item for exactly 60 minutes:

Cache.Insert("MyItem", obj, null, DateTime.Now.AddMinutes(60), TimeSpan.Zero)

Cache Dependency: Basically cache dependency falls under two categories:

1. File and Cache Item Dependency: Cache item can be dependent on a particular file. On modification of this file, cache will be invalidated.

// Create a dependency for the ProductList.xml file.

CacheDependency prodDependency = new CacheDependency(Server.MapPath("ProductList.xml"));

// Add a cache item that will be dependent on this file.

Cache.Insert("ProductInfo", prodInfo, prodDependency);

Cache can be dependent on other cached item as well. Create the array of cache keys and set the array as the dependency of other cache.

Cache["Key1"] = "Cache Item 1";

// Make Cache["Key2"] dependent on Cache["Key1"].

string[] dependencyKey = new string[1];

dependencyKey[0] = "Key1";

CacheDependency dependency = new CacheDependency(null, dependencyKey);

Cache.Insert("Key2", "Cache Item 2", dependency);

Also, a cache item can be dependent on multiple cache dependency objects. It’s called as aggregate cache dependency.

CacheDependency dep1 = new CacheDependency(Server.MapPath("ProductList1.xml"));

CacheDependency dep2 = new CacheDependency(Server.MapPath("ProductList2.xml"));

// Create the aggregate.

CacheDependency[] dependencies = new CacheDependency[]{dep1, dep2}

AggregateCacheDependency aggregateDep = new AggregateCacheDependency();

aggregateDep.Add(dependencies);

// Add the dependent cache item.

Cache.Insert("ProductInfo", prodInfo, aggregateDep);

2. Dependencies on a database query: cache items can be depenedent on sql queries as well. In SQL Server 2000 and earlier version it was tedious task but the same is simplified in SQL Server 2005. It requires following few steps, as mentioned below:

1. Enable cache notification - Make sure your database has the ENABLE_BROKER flag set. Assuming we’re using the Northwind database:

Use Northwind

ALTER DATABASE Northwind SET ENABLE_BROKER

2. Create the cache dependency - As per below code line.

string query ="SELECT EmployeeID, FirstName, LastName, City FROM dbo.Employees";

SqlCommand cmd = new SqlCommand(query, strConnectionString);

SqlDataAdapter adapter = new SqlDataAdapter(cmd);

// Fill the DataSet.

DataSet ds = new DataSet();

adapter.Fill(ds, "Employees");

// Create the dependency.

SqlCacheDependency empDependency = new SqlCacheDependency(cmd);

// Add a cache item that will be invalidated if one of its records changesor a new record is added.
Cache.Insert("Employees", ds, empDependency);

3. Call the static SqlDependency.Start() to initialize the listening service on the web server. This needs to be performed only once for each database connection. One place to call it is the Application_Start() method of the global.asax file.

4. Finally, call SqlDependency.Stop() to detach the listener. Typically, this is called under Application_End() method.

Retrieving/Deleting the cache collection: There’s no method for clearing the entire data cache, but you can enumerate through the collection using the DictionaryEntry class. This gives you a chance to retrieve the key for each item and allows you to empty the class using code like this:

foreach item as DictionaryEntry in Cache

Cache.Remove(item.Key.ToString())

next

OR

foreach item as DictionaryEntry in Cache

itemList += item.Key.ToString()

Next

Special Point: When you retrieve an item from the cache, you must always check for a null reference. That’s because ASP.NET can remove your cached items at any time.

Cache Priorities: You can also set a priority when you add an item to the cache. The priority only has an effect if ASP.NET needs to perform cache scavenging, which is the process of removing cached items early because memory is becoming scarce. The data are deleted in following sequence:

Low, BelowNormal, Normal, AboveNormal, High

Low items are most likely to be deleted. There is one more priority,"NotRemovable"; these items will ordinarily not be deleted.

Saturday, June 27, 2009

Microsoft Certifications by Name

IT professional

MCSD
A Microsoft Certified Technology Specialist (MCTS) certification enables IT professionals to target specific technologies and to distinguish themselves by demonstrating in-depth knowledge and expertise.
MCITP
A Microsoft Certified IT Professional (MCITP) certification enables IT professionals to demonstrate comprehensive skills in planning, deploying, supporting, maintaining, and optimizing IT infrastructures.

MCDST
A Microsoft Certified Desktop Support Technician (MCDST) certification enables IT professionals to demonstrate technical and customer service skills in troubleshooting hardware and software operation issues in Microsoft Windows environments.
MCSA
A Microsoft Certified Systems Administrator (MCSA) certification enables IT professionals to demonstrate their ability to administer network and systems environments that are based on the Windows operating systems. Specializations include the MCSA: Messaging and the MCSA: Security.

MCDBA
A Microsoft Certified Database Administrator (MCDBA) certification enables IT professionals to demonstrate their ability to design, implement, and administer Microsoft SQL Server databases.

MCSE
A Microsoft Certified Systems Engineer (MCSE) certification enables IT professionals to demonstrate their ability to design and implement an infrastructure solution that is based on the Windows operating system and Windows Server software. Specializations include the MCSE: Messaging and the MCSE: Security.

Microsoft Certified Business Management Solutions Specialist
A Microsoft Certified Business Management Solutions Specialist certification enables IT professionals to demonstrate their proficiency with Microsoft Dynamics and related business products.

Microsoft Certified Business Management Solutions Professional
A Microsoft Certified Business Management Solutions Professional certification enables IT professionals to demonstrate professional proficiency with Microsoft Dynamics in one of three areas: applications, developer, or installation and configuration.

Developer


MCPD
A Microsoft Certified Professional Developer (MCPD) certification enables IT professionals to demonstrate comprehensive skills in designing, developing, and deploying applications for a particular job role. These certifications show that you have the skills required to perform the job successfully.

MCAD
A Microsoft Certified Application Developer (MCAD) certification enables IT professionals to demonstrate their ability to use Microsoft technologies to develop and maintain department-level applications, components, Web or desktop clients, or back-end data services.

MCSD
A Microsoft Certified Solution Developer (MCSD) certification enables IT professionals to demonstrate their ability to design and develop leading-edge business solutions with Microsoft development tools, technologies, platforms, and the Windows operating system.

Advanced Certifications

Microsoft Certified Master
The Microsoft Certified Master program enables experienced IT professionals to demonstrate and validate their ability to successfully design and implement solutions that meet the most complex business requirements.

Microsoft Certified Architect
The Microsoft Certified Architect program recognizes and provides advanced certification to practicing architects in an enterprise setting.

Home and Ofiice Users

MCAS

A Microsoft Certified Application Specialist (MCAS) has advanced business skills with the 2007 Microsoft Office system and Windows Vista.

MOS
A Microsoft Office Specialist (MOS) is globally recognized for demonstrating advanced skills in using Microsoft desktop software.


Trainer

MCT
A Microsoft Certified Trainer (MCT) certification enables IT professionals to demonstrate they can successfully deliver Microsoft training courses to IT professionals and developers.

MCLC
The Microsoft Certified Learning Consultant (MCLC) credential recognizes Microsoft Certified Trainers (MCTs) whose job roles have grown to include frequent consultative engagements with customers. These MCTs are experts in designing and delivering customized learning solutions.