Place pork shoulder, hanger steak, and pork fat on a large plate in the freezer for 30 minutes. Place the meat grinder attachment in the freezer to make grinding easier.
Cut pork shoulder, hanger steak, and pork fat into cubes. Pass through the cold meat grinder fitted with a medium plate.
Combine ground meat mixture with beer, salt, garlic, red pepper flakes, pepper, caraway seeds, marjoram, nutmeg, allspice, and ginger in a large bowl. Mix with your hands until the mixture starts to congeal, 2 to 3 minutes.
Cover mixture with plastic wrap and chill for 1 hour, or up to overnight.
Soak hog casing in cold water for 30 minutes. Place the wide end of a sausage-stuffing funnel up against the kitchen faucet and run cold water through the inside of the casing.
Thread the casing onto the funnel using the medium sausage-stuffing funnel attachment. Pass the pork mixture through the funnel, stopping as it starts to come out the other end. Tie the casing into a knot at the end. Pass remaining meat mixture through the funnel, supporting the sausage with your other hand. Tie the other end of the casing into a knot.
Twist the casing at regular intervals to create individual links, alternating between clockwise and counterclockwise twists.
Poke 2 or 3 small holes in each sausage with a metal skewer to allow air to escape during cooking.
Heat a skillet over medium heat; cook bratwurst, turning occasionally, until cooked all the way through, 10 to 15 minutes.
Hanger steak is also known by its French name, onglet, and is a flavorful cut of beef that comes from near the diaphragm. It's sometimes called "butcher's steak," as it was often the cut that the butchers would reserve for themselves. If you can't find it, skirt steak would be a suitable substitute.
Chill the uncooked bratwurst in the fridge up to 3 days, or freeze for up to 3 months.
Per Serving: 395 calories;35 g fat;
2.3 g carbohydrates;
15.9 g protein;
69 mg cholesterol;
912 mg sodium.