fridgefreezer wrote:One of the things that stopped me learning coding much earlier than I did was the entry barrier of working out how to use the (command line) tools to arrive at a working executable.
What got me into coding by a roundabout route was when HTML turned up - when you can type something in a text editor and hit "refresh" and the result is there on screen without all the faffing about in hyperspace in between.
Was that because you could not get your head around the edit-compile-execute cycle, or was it that you were trying to produce a windows (small w) program? Starting from a GUI I can imagine that it gets complex. You edit a file, and then you start up a command prompt, and you've got to find the file you edited and the directories look different even if the CD command made sense. Then you have to type a strange command. Then you have to start up explorer, find a file with a subtly different name from the one you edited, and double-click it. All that on top of windows programming not being simple at the best of times. So I can understand if you found that overwhelming. On the other hand, from the command line it's just three commands: edit, compile, execute. They are a bit magic, but only a bit. So I would be interested if that tripped you up, because if it tripped you up it will trip up others.
The guy who designs the car does not design the nuts & bolts used, nor does he design the spanner. It does not make him any better or worse at designing cars, nor does it affect the quality of the car. Some people are great at designing cars, some people are great and designing nuts and bolts.
But it would affect the quality of the design if he did not understand nuts and bolts; how big they must be for a given load for example. Similarly he might put a nut in a tight corner where no spanner that will fit can torque the nut tight enough. He doesn't have to be able to design a bolt or a spanner, but he should be acquainted with the issues involved. Up until the age of 14 or so, we are not training children to enter industry as programmers; we are giving them an introduction to the issues involved. I imagine that your car designer, when he was in college, was taught about bolt and spanner design in some rudimentary way. Maybe there was some homework involving tensile strength and depth and pitch of threads. Maybe his friend was really into that and those few lessons made him take up a career designing bolts. How else do bolt designers find out about the subject?
I don't think we are going to convince the kids not to go into X; they are used to a windowed environment. I just hope that whatever IDE they get taught, it eases them into understanding the edit-compile-execute cycle, so that when they finally have to use the command line, it is not entirely unexpected.
As the boss says, real programmers use 8 toggle switches and a "store" button.
Tell him that without "Load-Address" and "Execute" buttons, he wont get very far.