I was busy going through some SQL Adapter walkthroughs in BizTalk 2010 and something very strange happened.

I was setting up my SQL Adapter, not the WCF SQL Adapter, and I come to the wizard screen where I need to select between Select or Stored procedure options.

I happily decided on the Select option. In the next screen you get a text area to write your SQL statement. Mine was just a simple select from a small table. I click the Next button and bang the whole wizard dialog disappeared. No SQLService.xsd was generated. I was so confused and though I did something wrong. I went over the steps like a crazy man.

Finally I restarted Visual Studio 2010 IDE and try again. After the restart everything just worked. I still don’t know why this happens. I don’t know if it is Visual Studio IDE or the SQL Adapter Wizard issue.

Lessons Learned – If something goes wrong in Visual Studio IDE for no reason then just restart the IDE and try again!

Cheerio!

With all the controversy about Reflector going commercial. People had to start looking for other solutions. You know that RedGate tools are very expensive.

So, the first tool I want to show you is ILSpy from SharpDevelop. This is a new tool and that means development is in progress. It follow Reflector’s principle of keeping it simple. Here is a screenshot:

ILSpy

ILSpy Features

  • Assembly Browsing
  • IL Disassembly
  • Saving of resources
  • Search for types/methods/properties
  • Hyperlink-based type/method/property navigation
  • Base/Derived types navigation
  • Navigation History

ILSpy Roadmap

  • Improve the decompiler
  • Assembly Lists
  • Find References
  • Improve search performance
  • Save Assembly as C# Project
  • Debugger
  • Bookmarks
  • Extensibility via addins
  • Find Usage (of type/method/property)

The only thing that is short coming is all those nice plugins that Reflector had. I believe the authors of those plug-ins will soon port them over to ILSpy. As soon as ILSpy provide the extensibility via addins. Please download the tool and provide feedback.

On another note if you are using Resharper. In Resharper 6 that is currently under development you will get a decompiler. Go and check out the following article on JetBrains site: Resharper 6 Bundles Decompiler, Free Standalone Tool to Follow

Cheerio!

I’m going tell you the perfect developer  laptop environment setup. Does not matter if you are a Linux or Windows developer. Maybe Mac user can also find this interesting.

I’m mainly a .Net developer. Sometimes I dabble in Node.js (So Cool!) on Ubuntu. I also use Ubuntu for using Git. My main technology focus for this year is ASP.Net MVC, SharePoint 2010 and Node.js. I sometimes use BizTalk as well.

Firstly let’s discuss my hardware requirements. I need the following laptop spec:

I’m going to use this laptop to setup the minimum Ubuntu OS with VMWare or Virtualbox on top. I’m going to create development VM images on the external hard-drive that will use that nice USB 3.0 performance.

Hardware in Detail

Intel Core i7 logo as of 2009

The Intel Core i7 CPU has great benefits such as 4 Cores with Hyper Threading. Including Intel Turbo Boost Technology and Intel HD Graphics. This CPU will provide enough horsepower to run multiple VMs.

The 12GB Ram is necessary for being able to run multiple VMs. As an example, SharePoint 2010 requires 8GB Ram to run and running Visual Studio for development can easily consume 4GB Ram.

The 32GB SSD Drive is the main hard drive on which Ubuntu and the virtual applications are running. SSD gives you very high IOPS. You don’t need allot of capacity to run the minimum installation of Ubuntu.

The 17” Screen resolution is just a personal choice that give you enough screen real estate for development.

The Nvidia Geforce 500M GPU provide some nice features where certain graphic intense application will benefit from. The virtual applications started to support 3D acceleration inside the VMs. A side interest for me is also the ability to develop with Nvidia Cuda and OpenCL. Nvidia also provide the Optimus technology that intelligently optimize the GPU for better battery life.

500GB plug & play

The Lacie 500GB USB 3.0 drive is where all my VMs will be saved. The drive run at 7200 rpm and can deliver a transfer rate of up to 110MB/s via the USB 3.0 interface. The 500GB size is more than enough. You can get an additional external 2TB drive to backup the VMs.

Minimum Ubuntu Installation

Firstly go and download the minimum Ubuntu installation CD ISO. You can install it via cd-rom or USB device. Install Ubuntu as required by following the installation guide. At the end of the installation you be given the command prompt inside Ubuntu. Make sure you are connected to the internet via a network cable. This is required to download the additional packages.

Now we want to enable some of the fancy Ubuntu features, because we don’t want to be in the command prompt for ever. So here is what we are going to install.

  • Minimal Gnome
  • Wireless Networking
  • Chrome Browser
  • Ubuntu Theme
  • VirtualBox
  • VMware Player

Type the following to install the minimal gnome. This will install a graphical environment.

sudo apt-get install gnome-panel gdm gnome-terminal

Type the following to install Wireless Networking. This will give you a battery monitor and a icon to configure wireless networking. Additionally you get the hibernate button on the shutdown menu.

sudo apt-get install network-manager network-manager-gnome gnome-power-manager hibernate

Let’s install the Chrome browser. Type the following.

sudo apt-get install chromium-browser flashplugin-installer

The default gnome theme looks ugly. Type the following to enable the Ubuntu theme.

sudo apt-get install ubuntu-artwork

After that I would recommend you run the following commands.

sudo apt-get update

sudo reboot

The laptop will firstly make sure it has all the updates and after that we reboot the laptop. After the reboot you will get the login dialog that you use to login to the desktop. Once you on the desktop open a terminal so that we can install Virtualbox or VMWare player. The virtualization technology that you choose is up to you. I will show both.

Firstly I will recommend that you install the Build Essentials on Ubuntu. Some packages require that the build essentials are install before the packages can install.

sudo apt-get install gcc build-essentials

Lets Virtualize – VirtualBox

VirtualBox

Type the following to install VirtualBox. In the terminal type:

sudo gedit /etc/apt/source.list

Add the following VirtualBox repository

deb http://download.virtualbox.org/virtualbox/debian maverick contrib

Now let’s add the public key of VirtualBox to the system.

wget –q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc –O- | sudo apt-key add -

Update the package database.

sudo aptitude update

Now to install VirtualBox type the following magic command.

sudo apt-get install virtualbox-4.0

After VirtualBox has installed you might want to install the dkms package.

sudo apt-get install dkms

Lets Virtualize – VMware Player

Image representing VMware as depicted in Crunc...Lets start installing VMWare Player. Go to the VMware player download page and download the binaries. Now we need to give the VMWare bundle executable privileges. Type the following in terminal where the VMware bundle exist.

chmod +x VMware-Player*.bundle

gksudo bash ./VMware-Player*.bundle

After these commands a installer window will pop up. Just follow the wizard guide. This was now quick and easy.

Installation Summary

At this stage all the required software is installed for you to get started with creating VMs. Here is a list of some additional software you might want to install on Ubuntu.

  • 7-zip
  • Blowfish
  • VLC-Player

Just remember that you want to keep your Host OS as small as possible and to use as little possible memory. I would recommend that you format the external drive to ext 4 file system. It provides very nice performance for the VMs.

I hope you see the benefits of using VMs for your development environments. With this setup you can go crazy with creating VMs and you can easily backup your VMs en data. If you have any suggestions to improve this setup, please let me know.

Cheerio!

Enhanced by Zemanta

Disqus