Why use blueprints? Redundant for C++ programmers?

The other thing to remember is that making full games with Blueprint happened by accident, it wasn’t what they were originally designed for - they’ve just ended up that way (but that’s no bad thing).

Even with the converter there are often cases where a good C++ programmer will be able to write something that runs faster and/or uses less memory. There are for example lots of types that aren’t exposed to BP at all, you can only use int32, no doubles, no quaternions, no Matrices etc, no real concept of ‘const’ either (which I use wherever possible). The Blueprint converter essentially does a lot of copy-pasta - which can result in lots of unnecessary function calls too. Not something you’d notice until you start doing lots of things over and over, but it’s still there!

C++ can also me considerably faster and more convenient for things like UI too, even if you’re not using slate. Regardless of how good Blueprint gets, it’s still always going to be worth learning C++.