1
$\begingroup$

What advantages do block programming environments like App Inventor have over high level programming languages like Python or Java?

$\endgroup$
  • 1
    $\begingroup$ What do you think? What aspects of these styles of language have you considered? What aspects of programming langauges have you covered in your classes that might be advantages or disadvantages of these particular styles of languages? Might an advantage in one context might be a disadvantage in other contexts? $\endgroup$ – David Richerby Apr 27 '15 at 20:17
  • $\begingroup$ For those not familiar with the UK education system, GCSEs are national exams taken at age 16. Students typically study about ten subjects to age 16, before specializing in about three subjects from 16-18. $\endgroup$ – David Richerby Apr 27 '15 at 20:18
  • $\begingroup$ All I know that they are easier to learn and understand but I can't write an essay on that. $\endgroup$ – user31103 Apr 27 '15 at 20:21
  • $\begingroup$ Could I talk about the fact that the graphics are already presented? $\endgroup$ – user31103 Apr 27 '15 at 20:22
  • 1
    $\begingroup$ Easier to learn and understand is a good place to start. What makes them that way? What makes other languages harder to learn and/or understand? Why is easier to learn an advantage? (Brain surgery is very advantageous but very difficult to learn, for example. But riding a bike is fairly easy to learn and also advantageous.) Are there examples of disadvantages of traditional languages that you can turn into advantages of block programming environments? $\endgroup$ – David Richerby Apr 27 '15 at 20:32
1
$\begingroup$

Developing complex software is completely different from writing small programs.

Complex individual systems are usually elements of complex ecosystems of software and hardware platforms, interfaces, languages, and even extra-computational factors. In creating those kinds of systems the choice of languages that use visual metaphors would probably be detrimental, not beneficial, and that is why professional software developers are happy that the languages they use are "spartan".

On the other hand, if your intention is to reduce the learning curve for begginers that are not going to be professional developers of any kind, then you can begin to talk about the benefits of those "soft" languages.

$\endgroup$
  • $\begingroup$ Two additional observations: is it possible that an amateur programmer, using some Scratch-like environment, creates a killer app? Of course it is, but that will always be the exception, not the rule. Does that mean that I personally disdain playful programming environments? Definitely not, as long as we take them for what they truly are. $\endgroup$ – André Souza Lemos May 1 '15 at 18:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.