I used LabView in college and a couple of other visual programming schemes in my work that have since disappeared, and they all had the same drawbacks: If your needs fit tidily within the assumptions made by the designer, they can be very productive indeed. Once you step a little bit outside of that, they turn into a tortuous mess. Can't even count the number of times I wished I could just write a few lines of code instead of trying to figure out a byzantine way to hook up enough icons that I got my desired end result.