Bring a large pot of water to a boil. Use about 1 tablespoon of salt in the water to flavor the pasta as it cooks.
Melt the butter in the olive oil over medium heat in a large saute pan, then saute the onion and garlic until soft, being careful not to let it brown. Meanwhile, cut the tomatoes in half and poke out the seeds over the sink using your finger. Place a box grater inside a large bowl, and grate the tomatoes until you get to the skin, and discard the skin.
Add the tomatoes, oregano, olives, and pinch of sugar to the onions and garlic, and cook over medium heat, stirring occasionally, for 30 minutes. Partially cover with a lid if the tomatoes are splattering. They should be reduced and nicely thickened.
Add the pasta to the pot, and cook until just al dente (usually about 1-2 minutes before the recommended cooking time on the box). Carefully scoop out 1 cup of the pasta cooking water, then drain the pasta and immediately add it to the tomato sauce.
Add the shrimp to the pan with a few grinds of black pepper and ½ teaspoon salt. Stir until the shrimp are cooked through (this will depend on their size, usually 2-3 minutes for small shrimp and 4-5 for larger). Add some pasta cooking water to the pan if it seems too thick or is sticking. Taste for seasoning, and add more salt if needed.
Scoop into serving bowls, or one large serving bowl, and top with the crumbled feta, and parsley if desired. Serve immediately.