Just like everyone else, I want to be a nonconformist, too. But when it comes to programming, conformity is a virtue. When your code looks the same as everybody else's, it's easy to read, easy to understand, and easy to maintain. Here are some simple Puppet style tips you can adopt now to help those who work on your code in the future, including yourself.
Logical separation of your manifest into modules is a big help when it comes to understanding and maintaining your code. Although you can structure your modules any way you want—it makes no difference to Puppet—I find the best strategy is to have each module control some more or less independent chunk of functionality.
For example, if you're writing code that manages a particular customer-facing service, such as a website or an API, that could be a module. Similarly, code that manages a specific piece of software such as Apache, MySQL, or Hadoop should have its own module.
Modules can then be connected...