Drawing the line between best practices, least effort spent and organized.

How do you define the terms “Best Practices“, “Least Effort Spent” and “Organized“? Let’s Bing it and see what results returned.

A best practice is a method or technique that has consistently shown results superior to those achieved with other means, and that is used as a benchmark. In addition, a “best” practice can evolve to become better as improvements are discovered. Best practice is considered by some as a business buzzword, used to describe the process of developing and following a standard way of doing things that multiple organizations can use.

Best practices are used to maintain quality as an alternative to mandatory legislated standards and can be based on self-assessment or benchmarking.[1] Best practice is a feature of accredited management standards such as ISO 9000 and ISO 14001.[2]

Source: http://en.wikipedia.org/wiki/Best_practice

Unfortunately I couldn’t find the other two terms because this terms (perhaps too simple) is made up by myself in my day-to-day context and experience. Let’s drill down a little to the main objective of listing all these terms.

I have embarked on my new career since October 2011 and have since pretty happy with the environment here. During this one-year in this new environment, I consider myself lucky to be able to bump into many different projects from small one to enterprise (huge) one. I have also met different breeds of people that were involved in the respective projects and I seriously could list a couple groups of people who different mentality in terms of getting work done and some really pleases me to the max because I really consider those as “Best Practices” and some really made me defend myself to the last stage no matter what because I consider those implementation and way of managing the project(s) as wanting to go via the shortcut or “Least Effort Spent“.

How do we (me in this context, you in the other) differentiate a technical folk who are following the “Best Practices“, “Least Effort Spent” and “Organized“?

Let’s take the scenario of managing multiple SharePoint projects, comprising of the following…

  • Project A – Deployed the solution using WSS 3.0
  • Project B – Deployed the solution using SharePoint 2007
  • Project C – Deployed the solution using SharePoint 2010
  • Project D – Purely custom solution built in .NET

How would you configure your test environment / development environment? To me, I will do this for each of the terms…

Best Practices

Deploy each project in their individual virtual machine and configure it as similar to the production environment. Not forgetting the best practices provided by Microsoft.

Least Effort Spent

Deploy SharePoint 2007 in a virtual machine and share between Project A and B. Deploy SharePoint 2010 in another virtual machine and primarily using it for Project C until there is new project that are implemented using SharePoint 2010. Have Project D put in either of the virtual machine created, both of them should have Visual Studio installed so that shouldn’t be a big problem.


Deploy each project into their own set of virtual machine, not mixing them together. For this, we can ignore the best practices such as having multiple service account to run different services in SharePoint. Running all of them off the SharePoint Farm Administrator account may be the only good option with the least problem caused. However, there is always a breach of the best practices and many other practices which I am not going to name.


Based on my implementation, do you think this would be the better way? I don’t understand why some Senior Technical folks could tell me to stop spending time preparing virtual machine for individual projects since it is not worthwhile doing so. Is installing OS and applications on virtual machine that hard and troublesome? Are we skipping the easy way of having multiple snap shot done up so that we can easily clone images and run up a virtual machine with the bear minimum tools needed easily?

What has all these technical folks thinking in their mind? I may not have the biggest exposure in the development world because I couldn’t help but to agree that development work is not my forte but it is definitely no harm trying, which I always did. How many times must a non-hardcore developer re-iterate the point, WE HAVE TO SIMULATE THE ENVIRONMENT AS CLOSE TO THE PRODUCTION ENVIRONMENT!

Well, we could easily pull this topic off by saying it is the different perspective of these folks but I couldn’t cover the fact that, I do need to take into interests of the client we are serving. After all, the client(s) pay the company, the company pay us, we pay for our daily spending. This is the visual cycle, simple as ABC right?

If you do have better ways for implementing this, do share with me.


Leaving the comfort zone: From VMWare Workstation to Hyper-V

Ever since Windows 8 was on the Release Candidate (RC) phase, I have been trying to see if Hyper-V on Windows 8 could be a substitute my day-to-day operations and usage versus Windows 7 Professional with VMware Workstation. Some of the things that I need in my day-to-day would be…

  • Virtualization – I run a couple of Virtual Machine from time to time for the sake of development, testing or proof-of-concept (POC).
  • Office tools such as Microsoft Word, Excel and Access.
  • Internet browsers (I used a mixture of Internet Explorer, Google Chrome and Mozilla Firefox but put more focused on the first two for a long time already)

So let’s drill down to the need for a Virtualization software, the client that power my needs, simple one though. What I always use, what I always need from VMware Workstation?

  1. Flexibility of running multiple virtual machines
  2. Resource hungry-ness.
  3. Speed
  4. Snapshots

When I first tried Hyper-V on Windows Server 2008, I always felt that the features aren’t rich enough. The only reason that I can probably cook up for the reason why VMware Workstation has such a fancy look is that since we are paying a premium for it (yes, it’s a premium for a piece of software but well, on the other hand it may not be since we now do pay a hefty amount for the OS in order to get the Hyper-V feature. After all, we are looking at OS + Feature versus Feature only).

I am not going to do a feature comparison post comparing Hyper-V and VMware Workstation as you can find tons of them online just by Binging it.

So what really stopped me in the past but now I have move on, out of the comfort zone that every single tiny winy feature that I enjoyed? Let’s drill down on some of them and see how I have overcome it…

Internet Connectivity for Virtual Machines in Hyper-V

What used to be as easy as create additional NAT adapter is missing out in the Hyper-V and making it difficult for my virtual machines running on Hyper-V to go without connection to the internet. Once I installed Windows 8, I do a search on the internet and I came across this article by Karsten Bott where he wrote “Share Internet Connection with Hyper-V Guests (NAT) on Windows 8“. The article can be found here.

If you follow the instructions in the article by Karsten Bott, you will definitely be able to setup internet connection for your guests easily.  With my above setup, my intention is as followed…

External Link – Will get an IP from the DHCP Server and get access to the internet.

Internal Link – Purely for my virtual machines that doesn’t require internet connection (Example, Active Directory, SQL Server)

Internet Link – Sharing – This is the one that I used to tap on the internet connection that are bridge via my Wireless Adapter.


Viewing of Virtual Machine within the Virtualization Client Software

One major thing that is missing in the Hyper-V is that since the whole intention is for Server usage and therefore may have neglected the user-experience that users receives. So the biggest drawback between the two is that I am losing the ability to do “Fit Screen Size” / “Full Screen Mode” and it will automatically change the screen resolution accordingly. Since I am a simple person and I wouldn’t mind losing that feature… So I know that the only way to achieve the comfortable level of viewing is to use Remote Desktop Connection via the Remote Desktop Protocol to connect to the virtual machine. This is obviously treating every single virtual machine as a physical machine.

For this, I would recommend getting Remote Desktop Manager which can be found here.

With this, the interface is almost similar to how VMware Workstation presented where the Virtual Machine library is on the left, while the session is spanning from the center to the right. Each virtual machine can be opened in full-screen mode or tabbed mode.

So how do I setup this and made my user-experience almost seamlessly integrated?

–> This shows all the available virtual machine on my workstation that I brought to work everyday. 

–> This is he left hand corner that I was referring to as the “Library”.

–> This is just one connection settings to the virtual machine loaded on the local drive. Take note of the IP that was used. This IP is used in conjunction with the adapter (Internal Link).

–> This shows all the network adapters (Physical + Virtual) that I have added.

–> This is to show that since I want to control all the virtual machine that uses all “Internal Link” connection, therefore on the host machine, that master adapter must hold a IP address and also the same gateway as those virtual machine instances.


Last Point (The most important one) – Speed

One thing that many couldn’t deny if they are the user of VMware Workstation is the speed. It’s really slow when you try to put your running virtual machine to hibernate mode where you pause the virtual machine. This would then write the current state down. The only thing is that the time it take to put the virtual machine to sleep and also resume it is super slow and super time consuming.

On the other side, virtual machine that are paused in Hyper-V resumes within seconds. (Gosh, I am serious, seconds!)

That’s about it for my sharing post, if you think you could make Hyper-V more user-friendly, please share with me by dropping an email to me at [email protected] or post a comment here.


DropBox Alternatives for Windows 8 App featuring “All My Storage”

DropBox Alternatives for Windows 8 App featuring “All My Storage”

When Windows 8 RTM was released on TechNet, I was so excited to download a copy and quickly installed it on my laptop that I used for my daily operations. Polished it shiny with the new OS, I need to find my usual stuffs that powered my day2 operations. Let’s zoom down to, DropBox.

I did a search in the soon-to-be-popular and populated with applications Windows Store. There I found… “All My Storage

Wooo. Judging from the amount of applications available in the Windows Store, I get 3-4 related to what I want, not that bad right? Target set on…! Get it install…


After installation, I will start configuring the account to grab my files…

My Thoughts – This app may seems very easy to setup, just like the usual style of other Windows App but it is still shortfall of functionality that made things more user-friendly and easy to use. Comparing this with the native DropBox client, I seriously can’t leave without the native client. However, we all know that we are moving into the era towards the cloud. It’s definitely inevitable we have to leave with more apps this way. Unless, someone out there could do better, I am sure there will be.

I will continue to search for more windows app that can power my cloud storage… Stay tuned then…