# Dog Fooding Antipatterns This was taken from the gitlab handbook: > An easy antipattern to fall into is to resolve your problem outside of what the product offers. Dogfooding is not: > 1. Building a bot outside of GitLab. > 2. Writing scripts that leverage the GitLab API (if the functionality is on our roadmap and could be shipped within the GitLab Project). > 3. Using a component of GitLab that is part of our [components](https://docs.gitlab.com/ee/development/architecture.html#component-diagram) or [managed apps](https://docs.gitlab.com/ee/user/clusters/applications.html). > 4. Using templates or repos that are not part of the default UI (having to type or copy-paste to add them). > 5. Not deprecating the non-GitLab product or part as you introduce the functionality in GitLab, we need to eat the dogfood, not just serve it. > 6. Using it for something that isn't crucial or essential. > 7. Delaying until every single feature you use now is in the GitLab product. > 8. Not starting it because using a non-GitLab and GitLab product at the same time introduces overhead. > 9. Trying to move the most complex part first, instead please iterate and move the simplest first. > 10. Building it outside of GitLab because "It is just a prototype", "We're not sure it will work", or "We're not sure it is better than the existing functionality" --- Date: 20230427 Links to: Tags: References: * [Engineering Principles | GitLab](https://about.gitlab.com/handbook/engineering/development/principles/#velocity-over-predictability)