"If your work is not hard, you’re not doing great work." - that sums up German mentality :D
By avoiding or skipping over the boring problems i think you tend to miss a lot of the bottlenecks for actually making something valuable.
You mention machine learning and brilliant algorithms? Did you clean your data? Did you refine the parameters to the algorithm? Did you try different algorithms and compare? Machine learning is -boring-. Like, the things it enables are exciting, once it's working it's exciting, but the process is boring as hell. And I find that aspect every bit as 'hard' as understanding the underlying math.