Creating a Wolfenstein-style engine is a great programming project if you're learning a new language or graphics library.
You can smash out a flat shaded version in an afternoon, or go crazy adding all kinds of features and take it as far as you want to go.
Ceiling and floor casting is tricky, and pretty expensive at times. Getting vertical panning to work too is tricky but well worth it.
Love 3DSage’s videos! Wish he’d do a part 3 on his doom-ish engine, though.