Chop up the red onion and bacon into small bits.
In a very large pot, throw the olive oil, bacon, crushed garlic and onion and cook slowly until the onion is translucent and the bacon more or less cooked.
Toss in the ground beef and brown it. While it's browning, measure the rest of the dry ingredients in a bowl: cocoa powder, coffee granules, chilli powder (both mild and hot), cumin, paprika, oregano, sea salt and black pepper.
Add this mixture to the pot and stir well. Then add your chopped tomatoes, tomato paste and balsamic vinegar.
Let this cook for a good half hour or preferably more on a slow, low heat. Even better, cook the day before and then reheat and serve the following day!
This freezes well, and unless you're having an army over for dinner, you'll have leftovers!