And to answer your question, probably for the same reason why people have moved on from Assembler to C to managed memory languages to JS and to today's JS frameworks, they want to avoid the "rough" parts by adding another layer of abstraction. For some people constantly going back to the terminal looks "rough", I guess.