Add the diced guanciale to a large non-stick frying pan and set over a medium heat. Dry fry for 4-5 minutes, agitating the pan every now and then, until the fat has rendered out and it is crispy all over. Remove from the pan using a slotted spoon (leaving the fat behind) and place into a bowl. Set aside.
Add the olive oil to the pan with the onion and a generous pinch of salt. Cook over a low heat for about 10-12 minutes, stirring occasionally, until softened but not coloured. Add the chilli flakes and continue to cook for a further 2 minutes.
Pour in the tin of plum tomatoes (with their juices) then fill the can halfway with water (about 200ml), swirl gently to get as much of the tomato juices as possible, and add to the pan. Tip the crispy pancetta back into the pan, stir gently and bring to the boil. Reduce the heat and simmer gently for 15-20 minutes - or until thickened and reduced. Season to taste with salt and freshly ground black pepper.
Bring a large pan of generously salted water to the boil. Meanwhile, keep the amatriciana sauce over a low-medium heat to keep it warm.
Once the water is rapidly boiling, add the penne pasta. Cook for 8-9 minutes - or until al dente.
Remove the cooked penne pasta from the pan using a spider or slotted spoon and add directly to the sauce. Toss to coat in the sauce, adding a splash of water, if needed, to make it smooth and silky. Stir in the grated Parmesan.
Spoon into bowls and serve straight away with extra freshly grated Parmesan and plenty of freshly ground black pepper.