How to make a Chilli

Chilli is one of my favourite things to cook. While I enjoy being a web developer and working on the web, my next biggest passion is cooking. If I ever change career, it’s almost certainly going to end up with me in a chefs hat (hopefully anyway). But while a chilli may not be the pinnacle of high-class cuisine, or the most intricate of pastry dishes, a chilli is one of my most enjoyable dishes that I’ve made countless times over the years.

To me, it’s the opportunities offered by the simple chilli that makes it so incredible. You have the main ingredients: meat (or sometimes beans), tomatoes, and spices. But from there the options are limitless. You can add different types of beans and pulses, other meats, various combinations of herbs and spices to your own liking, and I’ve even had people recommend black treacle or chocolate as their own personal twists over the years.

Those of you that are developers reading this might be starting to think this is all sounding rather familiar. There’s this core set of things, and then each chef adds their own variation or twist on top. Lately, whenever I make a chilli, I’m reminded of just how much variety the dish affords and how similar that feels to how the web is at the moment.

My chilli recipe

I’m going to bring the discussion back to the web in a minute, but first here’s one of my favourite recipes for the chilli I usually cook: (if you’re not interested in how to cook a delicious chilli, you can skip to the web bit).


  • 500g minced beef (less fat the better, I usually get at least 10%)
  • 1 brown onion, chopped
  • 2-4 cloves of garlic, chopped (I like a lot of garlic)
  • 1 tin of chopped tomatoes
  • 1 tin of butter beans
  • 1 tin of red kidney beans
  • 1-2 tsp of chilli powder (however hot you prefer)
  • 1 tsp paprika
  • 1 tsp cumin
  • 1 tsp oregano
  • 1/2 tsp ginger
  • 1/2 tsp cinnamon
  • salt and pepper
  • olive oil


Heat a large pan with some olive oil. Add the chopped onion and fry for around 5 mins until soft and brown. Add the chopped garlic and fry for a further 2-3 minutes. Break up the minced meat and add this to the pan and fry until browned.

Once the meat is brown, add all the spices and season with salt and pepper. Stir until all the meat gets coated in the spices, then add the tin of tomatoes and two tins of beans. Leave to simmer for at least 20 mins or longer, the longer you leave it the thicker the sauce becomes and the tastier it is (in my opinion), sometimes I’ll leave the chilli cooking for an hour or more – depending on how hungry I am.

Alternatively, you can do this in a slow cooker as well. Go through all the steps to brown off the meat and add the spices in the pan. Then transfer to a slow cooker and add the tomatoes and beans. Switch the slow cooker to low and leave it on while you’re at work for the day and come home to an awesome tasting chilli and a house that smells amazing too!

The web bit

My chilli recipe is by no means the most complex, but it’s probably not the most simple either. The same applies to the way I build websites. I use Sass, gulp, and Git, and quite a few other tools, all which I’ve picked up in the time I’ve been a developer; gradually adding these tools and processes to my recipe. In my opinion, they make the websites I build easier to create and the output is something I’m very happy with. Many others will have a similar experience for their process, for the tools they choose, and for their recipe for building websites.

Web development at the moment is full of different tools. There’s about a hundred ways to write your CSS and about a thousand different JavaScript frameworks to build with. There’s so many build tools and combinatons of ways to build and transpile your code, and process your assets, that it likely gives Subway’s 6,442,450,944 combinations of sandwiches a run for it’s money. With this many options it’s no wonder we see lots of people using a different set of tools for their own projects.

However, there are two problems that stem from this plethora of options:

  1. People get overwhelmed by the amount there is to learn and come to the conclusion the web is overly complex.
  2. People who have their preferred method of doing things, preach that theirs is the correct way and that everyone should do things their way too.

Problem 1 has been covered a lot in recent years and I don’t think I could add much more to the discussion than I already have. For a good talk on this subject you should take a look at Wes’ talk from Full Frontal’s Sideview a couple of years ago.

Problem 2 I’ve been seeing crop up a lot more lately and with the continual increase in new tools that’s beginning to concern me. There are some people that whenever they talk about something they’re using believe that it is the one and only way forward and if you don’t use it you are in some way or another wrong. Now I’m not saying people shouldn’t be enthusiatic about what they do, or try to show others how amazing something is. But saying something is “the right way” or “definitely needed” doesn’t come across as the best way of sharing that message.

I think we should encourage people to explore new things; not by telling them what they’re doing is wrong, but by being enthusiastic about what we’ve learned from our experiences.

Just because everyone has their own recipe, it doesn’t mean they can’t make a great chilli – or website in as the case may be. I like my chilli my way, others like it theirs. That’s just like the web, everyone has their own preferred toolset but at the end of the day, the web is still the same core things.

At times I wish the web were a bit more like cooking, whenever I’m talking about it or hearing others talk, it’s always with an amount of interest and enthusiasm that I think is lacking on the web. It’s always about sharing new methods, teaching people how you could do something, rather than how you have to do it.