(Last updated in 2018)
How CloudShare has enabled me to contribute to SharePoint community projects
We are pleased to welcome long-time CloudShare client and SharePoint architect, John Calvert, as a guest contributor to our blog .
The following article is an excerpt from a post on John’s personal blog. We invite you to read the full post here.
Until recently if you wanted to contribute to an open source or community-based software project in your spare/volunteer time, it often meant having to build a full-scale software development environment on your home/personal computer, including substantial CPU cores/RAM/disk hardware and numerous software licenses – with a potential cost of thousands of dollars. Fortunately the recent rapid growth in cloud-based IaaS/PaaS offerings has dramatically changed this situation. Now the software hobbyist or software engineering professional volunteering their time can contribute to nearly any project with no more equipment than a modern web browser.
These cloud-based IaaS/PaaS offerings are a huge boon – especially for community projects targeting enterprise software systems such as Microsoft SharePoint Server and Microsoft Dynamics CRM. Both SharePoint Server 2013 and 2016 have hardware requirements that generally exceed the specs of most home office computer equipment. For example, a single server farm with all services requires 24GB RAM. Furthermore, when your focus is on rapidly enhancing a community project, then the time and effort to install, configure, tune, and patch server software such as the operating system, database server, and SharePoint Server is an overhead cost that does not directly advance the project.
Two important considerations when I’m volunteering my spare time on an open source or community project are:
- Ready availability of a pre-configured virtual machine suited to the community project’s technology stack – so I don’t have to spend hours or days building up a standard development environment before I can even begin making my volunteer contribution
- Rapid provisioning and resumption of the virtual machine – which allows me to eke out useful contributions in spare moments of 20-30 minutes at a time
For my custom software cloud development environment, I chose the CloudShare SharePoint development environment because it offers the best fit for me as an independent software developer.
A CloudShare environment comes with these essential features which satisfy my need for pre-configured virtual machines:
- Extensive gallery of fully pre-built and pre-configured virtual machines
- Gallery includes SharePoint Server farms in various single-server and multi-server configurations
- Commonly used SharePoint service applications are pre-configured, e.g. Managed Metadata, Search, and User Profile
- Commonly used SharePoint web applications are pre-configured, e.g. Publishing Portal, My Sites, and Team Site
With CloudShare it takes me under 5 minutes to provision a brand new fully functional SharePoint Server 2013 farm, and under 1 minute to restore it from hibernation. And it is completely self-serve, which fits in well with my erratic volunteer schedule.
Other features of the CloudShare platform that I have found especially beneficial for work on open source and community projects include:
- Full local admin access for additional server configuration and software installation
- “Environment” container for sets of virtual machines used for managing hardware resources and other global resources
- On-demand snapshot of the environment to baseline the configuration, e.g., for repeatability of functional and deployment testing
- Easy to dispose of a virtual machine and re-provision a new one
- External URLs for browser/HTTP access to virtual machine SharePoint site, e.g., for demos of the open source/community project
CloudShare for my Community Projects
Prepare a CloudShare Environment
In my case, I’m working primarily with Microsoft SharePoint, so when creating my environment, I simply chose two virtual machines from CloudShare’s template gallery:
- Microsoft SharePoint 2010 Server
- Microsoft SharePoint 2013 Server
The SharePoint 2013 Farm virtual machine is a single server farm with the following service applications and web applications pre-configured, which makes the virtual machine immediately ready for custom development for your open source or community project:
- Application Discovery and Load Balancer service application
- Managed Metadata service application
- Search service application
- State service application
- Usage and Health Data Collection service application
- User Profile service application
- Publishing Portal web application
- My Sites web application
- Team Site web application
Thanks to CloudShare, my idea of the home office has completely changed. Now my home office is in the cloud and I can resume and access it or even re-provision it whenever I need, not just when I’m physically at home. This has enabled me to contribute to numerous open source or community software projects in my spare volunteer time.
About the Author
John Calvert is a seasoned SharePoint solution and technology architect and .NET solution architect, designer and programmer/analyst, with over 18 years’ experience designing IT systems and software for leading enterprises and government agencies – from Nortel to the Department of Justice of Canada to the Canadian House of Commons. John is also passionate about speaking, teaching, and training in the IT community.
If you found this article useful you might also be interested in: