Regarding the cryptic error messages, there is a handy little helper in the form of the axum::debug_handler macro which can help there. Not sure about the particular case discussed in the video. Great content!
If I remember correctly, tokio is utilising tower to build services that are stackable. It already had some helper functions to quickly make services. My hunch is that make_service thing is related to that. There is probably a trait somewhere in tokio, that can be implemented to make your handler into a service in tower, that is stackable. Hence "into make service", which will then has blanker implementation of "into service".