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.

Organized

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.

Cheers,
Mil

Leave a Reply