|Unreal Engine 4|
In the past, I've been pretty skeptical of teaching visual programming methods to students. Teaching a specific visual scripting tool always felt like we were locking students to that toolkit, versus learning how to code in C# or Lua or JS, which is a generalized language useful across multiple engines and multiple industries. Visual programming was considered a relatively niche practice, where you might mock-up an art installation in MaxMSP but not much else, and even Unreal used to confine visual programming to its Kismet level scripting system. (The precursor to Blueprint.)
However, that criticism of visual programming is gradually losing its power as this type of practice becomes more common in the game industry. Many Unreal Engine 4 devs (as well as Epic themselves) make heavy use of Blueprint for making games, a lot of Unity devs rely on the third-party Playmaker plug-in, and even upstart engines like Godot support a visual programming workflow. AAA texture generating darling Substance Designer also has a heavy node-based workflow. It's everywhere!
- Working with text is hard: indenting things, maintaining white space and cases, fighting with the auto-correct when you forget to close scopes, etc. are often frustrating and annoying for beginners. Imagine trying to learn the logic behind defining a computational procedure while wrestling with spelling "transform" correctly ("no, not Transform, but transform!")
- Complexity is still overwhelming, and now it's definitely your fault. If you visually program spaghetti code, your node networks will literally resemble spaghetti. It'll literally be difficult to read and parse what is going where. Which is funny. But still not great. This isn't really a problem for beginners, who would likely scope their projects to be small, but learning how to arrange your networks to be legible is like another separate skill you have to develop when doing visual programming. It's almost like you need to be a good graphic designer in order to visually code any larger projects.
- Can't copy and paste / difficult to search. There's no easy way to google a problem on StackOverflow or whatever, because there's no easy way to copy and paste snippets of BP. Instead, people usually post screenshots of their BP networks from the editor, and you have to methodically recreate everything yourself. There's a free third-party service BlueprintUE.com that lets you visualize BPs in a web browser and copy / paste, but it's not supported by Epic and it's unclear how many people actually use this / how long the service will exist.