11 Oct 2016
There are certain terms in the software industry which you may hear for the first time and immediately understand their meaning. For instance, backdoor; a hidden method of gaining access to a computer system.
The term dogfooding is not an obvious one. This post explains what dogfooding is and gives you examples of some companies who are doing it.
Dogfooding is short for "eating your own dog food". As a software company or developer this means using the software you write for your clients, yourself.
This has great advantages because you are able to see what the user experience is like for your clients. You are also more likely to fix a bug if it affects you in your daily work.
For a long time the compiler for C# was written in C++. Recently the C# team at Microsoft created a new compiler called Roslyn, which is written in C#. It is a lot faster than the previous compiler and it has the advantage of now being cross-platform. I think it is cool that the code to write the language is written in the language.
The project management software company Basecamp uses its own product to track issues and bugs in its own product.
I built my website codeshare.co.uk in using Umbraco and ASP.NET MVC, written in C#. The reason why this is like dogfooding is because I build websites like this all the time for my clients at work. I can identify and fix problems that I would only see as a user. It has enabled me to build fast, easy to use content managed sites better than I would have if I wasn't using it myself.
Amongst other things, I've learned how to optimise for performance and improve Search Engine Optimization (SEO), all of which are transferrable to the work on my client's sites.
So now you know what dogfooding means, you can find ways to try it yourself. Even if not, it's worth knowing about and spreading the word.