I’ve been a full stack .net developer for several years now using C#/MVC4/SQL Server and have never taken on a freelance project. This is because up until now I have worked only as a full-time consultant by hour or on start-ups for equity. Also, I have only worked on very large complex projects that needed to be built for scale and thus had many layers.
I’m now faced with a potential client who wants a website that is fairly easy:
- Existing client-side
- Build new database of products
- Create a few pages to existing client-side
- Add search/filtering functionality to search products in the database
My usual development routine for building complex, scalable applications is very much overkill for the task so I’d like to use a CMS for the first time. Being that I’m a .NET developer, Orchard CMS looks great and I’d like to jump right in.
I’m trying to come up with an estimate on the work but I’m not familiar with how freelance projects work in regards to source code. After I set everything up do I expose the WebMatrix project to the client so they can begin using the CMS as the administrator, adding content through the dashboard, etc themselves or do I only publish the end product and they have to come back to me for me to add functionality through the CMS dashboard?
Obviously the agreement can be either way, but do programmers generally charge more for actually exposing the project and dashboard to the client or is this generally by default for CMS projects?
As a side question, should I feel obligated to even disclose the use of a CMS behind the scenes (Assuming that I actually charge for the true time taken to set up the CMS)?
The client typically manages their site. In my experience the vast majority of the time they will defer to you to do anything but the most simple of text changes, and even then you’re oftentimes asked to do that too.
I would suggest at this point to perhaps consider extending your knowledge base. I am predominately a .NET developer but I never use .NET technologies for simple CMS based sites, for a few reasons:
- Longer to set up
- Less community support to something like Drupal or WordPress
- Hosting is more expensive (due to Windows and usually SQL Server)
My rule of thumb is for CMS-type sites to use WordPress for very simple sites, and Drupal for anything that requires extensive use of programming.
The only time I consider otherwise is if the client specifically asks for a .NET solution or if they are hosting the site themselves.
There is nothing wrong in telling them you’re using a CMS. Web developers do this all the time, and if anything the client will appreciate that you’re saving them money. You also don’t need to feel bad for using an existing product; after all you’re using the right tool for the job.