Visual Studio 2012 Update 1 SharePoint Labs



Just a quick followup to my latest post, Microsoft just announced the availability of new HOLS that includes a dedicated lab for the SharePoint support in Visual Studio 2012 Update 1 which includes a practical step-by-step exercises over the following features:

1- Unit testing SharePoint development artifacts using SharePoint Emulator assemblies. Microsoft SharePoint Emulators basically intercept the calls to Microsoft.SharePoint dlls which reduce the testing/maintenace time of SharePoint development.

2- Intellitrace support for SharePoint Improvement.

3- Web and Load testing SharePoint applications.

You can download the lab directly from here.

Visual Studio Update 1: The New Update Model



If you happen to be a developer or working in the development field, you probably know the pain of keeping the development environment up to date, and the headache caused by patches which sometimes requires another update rollup, but the real pain arise when wanting to prepare a fresh Development environment machine, and facing the necessity to download  and install a lot of updates.

Like other vendors, Microsoft has it’s own mechanism of releasing updates for their software’s and products, for example: in SharePoint and Office world, usually they release a cumulative updates (CU) every two months which is a downloadable package contains the hot-fixes for either a certain product or family of products, and on annual basis, they release service packs; which usually contains the whole set of previous hot-fixes in addition to some core engineering enhancements, rarely they provide additional features, such as the latest SharePoint Service Pack which introduced some additional features to the product.

As for the new Visual Studio update mechanism, VS team is committed to continuously provide the product with additional capabilities and added-values, in addition to the hot-fixes and security updates.

SharePoint Developer Capabilities:

The most exciting capabilities for me within this update pack for Visual Studio 2012 is the new SharePoint capabilities (As you may know my major specialization is SharePoint Technology), which includes the following:

1- Supporting the testing and QA aspects in the SP development in the application lifecycle by allowing the SP developers to do unit tests, coded UI tests, and incorporating Microsoft Fakes Framework to simulate the SharePoint complicated DLL dependencies, which means testing SP development artifacts is not a headache anymore 🙂

2- Load/Stress testing is fully supported, these kind of testing’s usually require different set of tools in order to get an accurate results.

3- Intellitrace logging support for SharePoint, Intellitrace is a very interesting debugging feature, it requires a dedicated blog post to explain the benefits of it, you can read more here if you are interested to know more about it.

I will be blogging more in the next days about these features and how to utilize them in SharePoint development.

Visual Studio 2012 Update 1 Offline Installer:

One more thing to add here; is the offline availability of the VS2012 Update 1, by default VS2012 U1 is delivered through web installer which requires a decent internet connection, in order to download it offline and distribute it internally within the development team, you can do the following steps:

1- Download the Web Installer from here.

2- Use the command prompt to launch the web installer with a parameter which indicates that you want to download the update 1 package to a certain folder instead of installing it to the windows programs temporary folder as the following:

vsupdate_KB2707250.exe /Layout

after downloading the package you can create an ISO file and distribute it internally within your development team.


Fore more information about the Visual Studio 2012 Update 1:

Visual Studio 2012 Update 1 Download Page

Visual Studio 2012 Update 1 Capabilities

Speaking at Expotech Palestine (Again)



Last year, I spoke at the Expotech Conference in Palestine. They kindly invited me to speak again this year. The speaking tour will start on November 28 until the 1st of December and will take place in four universities in different Palestinian cities.

I will be giving talks about “Understanding Application Lifecycle Management and Custom Development”, “Understanding Cloud Platforms”, and “SharePoint Composite Development”.

So, if you are interested and it happens that you are in Palestine by then, you are more than welcome to join me at any of these events, I will be glad to see you there.

For more information about the schedule; click here.

My Speaking Schedule for 2011



So, I published my speaking engagements for this year on this blog into a separate page:


I will be updating the schedule information whenever I have any new speaking engagement.

If you’re in the area and interested in the topics, feel free to stop by.

Free .NET 3.5 and C# 3.0 Community Material


Back in 2007-2008 I wrote a community material about the new features of Visual Studio 2008 IDE, C# 3.0 Language Enhancements, Language Integrated Query (LINQ), and ASP.NET 3.5 new features.

I decided to share this material again because more than 90% of the mentioned features are very important and part of the Visual Studio 2010 IDE, .NET Framework 4.0, and Also C# 4.0.

The material is consists of 4 Modules as the following:

  1. Introduction To .NET Framework 3.5
  2. C# 3.0 Language Enhancements
  3. Introduction to LINQ
  4. Introduction to ASP.NET 3.5

Each module has its own PowerPoint Slides and Module Material in PDF format with some hand on labs (HOLs).

Find here the complete list of my material.

All you have to do is to create an account on and you will be able to download the whole material.

Please feel free to share it and use it as you like.

.NET Learning Path For Students


Lately, I have been receiving many emails from students and fresh graduates asking for advice or recommendations about the right way to become solid in the development field – I mean here programming under Microsoft .NET Platform –

So, I decided to write this blog post about my perspectives about the best learning path that I recommend for students including online resources, Books, Tutorials, and some blogs.

To be completely honest, at the moment of writing this post, I totally believe in one thing regarding the educational system in our region (Middle East – Specifically the Gulf and Arab World), That the complete IT educational system is a big failure and it’s killing the talent and passion in any student due to many factors that definitely will prepare the students for unemployment world.

I will begin with the fundamentals that are necessary for any student, fresh graduate, and even some developers in the field, Let’s start with non-technical books, It’s going to help you a lot in preparing your mindset for systematic thinking:

The Art of Systems Thinking: Essential Skills for Creativity and Problem Solving
by Joseph O’Connor

Read more about this book…

I assume that you are familiar with some programming languages such as C++, Java, or C#, and you studied the Object Oriented Programming course, and as usual 99% of students study the OOP without understanding the real need for such a concept, and a big percentage of them finish their class to get the degree without even building a solid understanding of the basic concepts, to fix this I recommend to read the following awesome book about OOP basic concepts and I am sure that you will understand the basic concepts in a very smooth way:

Object Technology: A Manager’s Guide
by David A. Taylor

Read more about this book…

Now it’s time to get your hands dirty with some code, I definitely recommend to focus on C# (CSharp) language, basically because it’s an ECMA (European Computer Manufacturers Association) standardized language meaning it’s a commercially recognized language in the market, and many big names and vendors are supporting it, Click here for more information. This time I recommend tutorials from Microsoft Beginner Developer Learning Center, and not a book:


After finishing the C# tutorials in Tier 1, Tier 2, and Tier 3, you will become familiar with the .NET code and style.

Now it’s the time to understand what you are writing and how things are going on inside the .NET platform, and from my perspective, this is the most important piece in your learning path, and you have to focus here, and read the book that I’ll mention carefully, It will change your career for ever Smile

CLR via C# 3th (third) edition Text Only
by Jeffrey Richter

Read more about this book…

CLR via C#” is one of the most important books in your career, If you read it, understand it, and practice it, you will become a very solid .NET Developer, even if you are a senior developer or architect, this book is one of the must have books, and if you didn’t read it yet, believe me you are missing a very valuable information that can make a real difference in your career level.

Finally, this is a simple guidance in your .NET learning journey and I hope you’ll find this helpful.