A Reason To Code

My son is just getting to the age that puts him in the crosshairs of all of the learn-to-code toys. And admittedly, we’ve been looking at some of those Logo-like toys where you can instruct a turtle-bot to make a few moves, and then to repeat them. After all, if breaking down a problem into sub-problems and automating the repetition isn’t the essence of programming, I don’t know what is.

But here’s the deal: I think drawing ‘bots are cooler than he does. If you ask a kid “hey, do you want a car that can draw?” that’s actually pretty low on the robot list. I’m not saying he won’t get into it once he’s got a little bit more coding under his belt and he can start to make it do fun things, but by itself, drawing just isn’t all that impressive. He can draw just fine, thank-you-very-much.

Meanwhile, I was making a robot arm. Or rather, I started up on yet another never-to-be-completed robot arm. (Frankly, I don’t know what I would do with a robot arm.) But at least I started with the gripper and wrist. Now that’s pretty cool for a kid, but the programming is waaaay too complicated. So I pulled the brains out and hooked up the servos to an RC plane remote. Just wiggling the thing around, duct-taped to the table, got him hooked. And this weekend, we’re building a remote controlled cherry-picker arm to put on a pole, because cherries are in season. His idea!

So no coding. He’s a little too young anyway, IMO. But silly little projects like these, stored deep in his subconscious, will give him a reason to program in the future, will make it plainly obvious that knowing how to program is useful. Now all I need is a reason to finish up a robot arm project…

48 thoughts on “A Reason To Code

  1. When I was a kid, you had to know BASIC to get your home computer to do ANYTHING. We all became programmers out of necessity, because if we wanted to play a computer game, there was a good chance we had to make it ourselves or at least transcribe the code out of a magazine (anyone else remember copying code out of BYTE magazine?).
    These days that limitation is long gone. Anything a kid wants to do on a computer has either already been made by someone else, or is way to complex a task for a kid to even consider (imagine a child trying to program something like Skyrim, for example). This, sadly, is a huge barrier to getting kids interested in programming, in my opinion. Robotics, as pointed out in this article, might just be the ticket to getting kids interested in programming again.

    1. You have a point… the only reason I learned BASIC at 13yrs old was to be able to installed some crappy text-based RPGs into my TI-81, BY MANUALLY TYPING IN THE CODE! These days you just need a USB cable to upload full blown Mario to a modern TI calculator, no programming needed.

      If I didn’t have a massive desire to slack off in Math class on the TI-81, I probably never would’ve learned coding so early.

    2. Heh, probably exactly how I never get in very deep. I go “I need a utility to do X, that would make a good programming project.” hit up google to learn more about the problem… discover there are already 6 popular utilities to do X… figure I’ll road test them to see where they can be improved upon… some months later when I’ve been using one of them for the thing… “Doh yeah, I was looking for a programming project… well this works fine for me… maybe I could use a utility to do Y though..” repeat.

    3. ” is way to complex a task for a kid to even consider ”

      This is 100% totally wrong, where is your head? The options for novice programming have never been better. There are about a dozen different language interpreters available for Ubuntu, Many of them come with REPLs and with many of them you can make windows and draw pictures and animate them with just a few lines of code.

      The “huge barrier” is gone, the age of “folklore” about “undocumented” hacks on the Apple II and the Commodore 64 is thankfully over, now we have standard interfaces and good documentation so novices can actually learn how to program instead of “reading the poorly documented source code” as the only source of information.

      1. “The “huge barrier” is gone, […] now we have standard interfaces and good documentation so novices can actually learn how to program instead of “reading the poorly documented source code” as the only source of information.”

        But then again, we have Arduino and its IDE.

    4. It’s a barrier for adults too. Maybe once a month at most, usually less, I’ll have a quick script to write that I can do in a few hours. Most of the time, there’s not much I want to do with a computer that takes less than a week to have something I’d consider using, even with a ton of libraries.

      2D games are pretty easy, but actually making them be fun takes effort.

      I’m sure lots of songs I enjoy were written in a few hours, only the mostly-already-done low level components are usually done that way with computers.

    5. I kinda agree. I learned on the Tandy Color Computer, and the raw accessability of 10 print hello 20 goto 10 on the command line is pretty sweet. Doing graphics was a matter of poking funny values into funny locations, but even that had its own logic, and for me as a kid was like a puzzle or secret code. My dad didn’t know how to do any of that.

      But some of the graphical / games languages like Scratch and co. that kids can use today are pretty cool too. You definitely get the feeling that everything is pre-packaged for you, which undoes some of the puzzle/riddle fascination, but then you can make significantly cooler games.

  2. There’s nothing wrong with learning some mechanical engineering, too. It doesn’t have to all be software.
    My motivation for learning software was principally because I felt I was ‘writing’ electronic parts, rather than selecting and soldering them. Eventually I found the-world-entirely-within-a-box limiting, and started making interfaces to external stuff.
    I guess my rambling is to just let him do what he finds interesting, and if it comes back to software (maybe to do more sophisticated arm stuff) then he’ll have found his own motivation.

    1. – I’d put a plug in for VEX-IQ toys… (no affiliation) – they have some annoyances, but by far the best programming-friendly robotics/building/construction toy I’ve come across so far – sturdy assemblies – with a huge ‘range of difficulty’.
      – You can do basic RC control of simple toys (tank/etc type build), or use the RC(4-axis, 8?button) as inputs to programs, or no remote at all program execution. ‘Brain’ is 16-channel – simple RJ11(iirc) for each channel, all I/o with ‘smarts’ (RGB blocks, touch sensors, encoded motors…). bock-style programming, or ‘c’, or somewhere in between options. The ‘smart’ motors are pretty slick – encoded motors with programming controls for torque/angle/rpm/etc, so can use servo-style with infinite rotation & torque control, general drive motor, or some hybrid.
      – Keep it simple with the kids, or interesting enough for parents with programming backgrounds to go further with and/or ‘fancy up’ the kids build, or for kids to grow with. Little pricy, but you can find them used occasionally, and play nice with the small ‘Vex’ sets you find in the big box stores.

    1. In Munich. But you’d better hurry, it’s almost over.

      Cherry report: it’s super awkward to hold the pole with the (tiny) gripper on the end of it steady enough to get the father/son coordination just right. And the wind blows the tree/cherries around to boot. We got like 20 cherries but we had a good time.

      We printed up a more cherry-friendly gripper, but that only helped a little bit. The fundamental limitation is the wiggly cherries. A ladder with a kid on the end of it might actually be the correct tool.

      Gimbal + webcam + openCV + serious servos could also work, but that’s a few years down the road.

      The real point of the project was cobbling something silly together that he dreamed up. And getting a couple cherries. So, success?

      1. When I was that age, I figured you could jam a blade from a pencil sharpener through the hole of a 2x lego technic piece, so I put two blades on a lego motor and made a “paper shredder”. A cherry picker is an infinitely better idea in retrospect.

  3. So what you are saying is that I should finally start my project of building some robot (either walking or maybe a gripper arm), which can be programmed with scratch or any other toy language like that? That’s in my head for quite some time now. It’s not like building the fundamentals is hard enough, but then building the abstraction above it to control it with such a simple language, but it would be fucking cool…

  4. These days where software engineers are frequently layed off and replaced with low-cost “guest workers” or offshored entirely, the attraction of “learning to code” rings hollow. In the 80s and 90s coders were a rare valuable asset that demanded a premium. Today, with schools around the globe pressing out coders faster than cheap smartphones combined with hyper-managed corporate “agile methodologies”, coding one of the most uninspiring disposable careers there is. If you live in a country with extremely low cost labour, learning to code may prove beneficial in the short term. But for the rest, “learning to code” is the equivalent to “learning to read”. A necessary skill with rapidly decreasing commercial value.

    1. While I agree with you regarding the current state of the software industry, I think “learning to code” doesn’t mean you necessarily have to become a programmer. First of all it teaches you to think logically, which is handy in most everyday situations regardless of your occupation ; and secondly programming in itself can prove useful in lots of job, when you can save time by putting together some tools to help you (even if it’s just some Excel macro to manage your budget, a Python script to parse some data, or anything else). Definitely something every child should learn in school, just like math or physics.

      1. “Learning to code” doesn’t actually mean anything. What usually happens is, kids learn some particular scripting language and go through a few examples, and they have nothing they could extrapolate to other problems. How do you pull off an Excel macro if you’ve learned some Logo in a specialized programming environment? “I don’t know – what’s a macro?”

      2. But we are failing to teach math and physics so much that tons of adults think that those are “just theories with no use in real life”. Tesla’s supersonic saucer, flat earth or missing dollar riddle “never solved by math” are just tip of the iceberg of nonsense that no one with very basic knowledge should ever believe.

        Although I do agree that programming is handy in many jobs (well described in “Automating boring stuff with Python” preface) but I would leave it to children to choose rather than stuffing this in educational “must know” bag.

        1. There is no such thing as “learning to code”. The various programming languages and paradigms, and their application environments are sufficiently different that learning Python in school is like teaching the kids Italian with the expectation that they’ll be able to use it on a trip to Iceland.

          The second point is that teaching kids to “code” doesn’t actually teach them to program. That’s because the exercises are based on regurgitating examples – because the teachers aren’t programmers themselves. The material has to be made so that a random substitute teacher can do it. This is the CS equivalent to coloring by numbers in art class – it doesn’t teach you art, it just keeps you busy and provides the illusion of education.

          Let’s see if the third time is the charm to get through HaD pre-censorship.

          1. By teaching one language you familiarize children with concepts of programming. Not everyone needs to be programmer but ability to code (even on a very basic level) can bring profit (read story behind “Automating boring stuff with Python”). I am not enthusiast of teaching coding at school – I would personnly prefer to teach them basic tools like spreadsheets, word processors and fast typing.

            Real purpose for coloring by numbers is to practice “small motorics” (don’t know proper term – just translated it directly from my language). This includes proper tool handling and control – this is part of preparation to more complex things like writing. It also teach to understand and follow instructions.

            If you teach children italian there is a fair chance that they will use it abroad to communicate with people who speak portugese (have seen that for a year in brasil) and they will most likely communicate with Croatians as well (have seen that for past 10 years). Should we not teach them any forign language because we don’t know which will they find usefull?

          2. >By teaching one language you familiarize children with concepts of programming.

            Even teaching them one language properly would require the kids to understand so many advanced concepts that it’s practically impossible. Simply knowing the syntax of the basic if-then and for-loop statements doesn’t mean you know the language, or that you know anything important about programming. That stuff is just trivial.

            > Should we not teach them any forign language

            That’s different. The analogy breaks down soon with human language, because even a little goes far. People don’t demand you to use proper grammar or even get the words entirely correct to ask where’s the toilet. Often they too understand a word or two of your language in return, so you can do a sort of pidgin with each other or speak with your hands, draw a picture, etc.

            In comparison, the computer just throws syntax errors at you, if you even get to that point. It might be that you simply don’t know how to make it do anything because the programming environment or interface is not familiar to you. After all, you learned your Python on the web in a special environment running in a browser. How do you even start writing C, or Java, or whatever? Do you know that they exist, or does programming to you just mean, “Go to this particular website.”?

            The latter effect is actually very common with “coders” who insist on importing the whole development environment into the product they’re building because they don’t know how to write closer to the hardware or use more appropriate tools for the task. See the case of EyeFi and the SD card with an SoC running Linux and Apache. What obviously happened there, the HR department asked, “Can you code?”, “Well, I’ve done PHP and Java…”, “Great, You’re hired!”.

            So you see why it’s not necessarily useful, and might even be harmful to teach kids some stock version of “coding”?

          3. Root of this problem is sloppy recruitment process and have nothing to do with education.
            Please read about meaning of early exposure to the subject and how it is related to learning process in future. You confuse different types of education and assign them wrong purposes to finally relate this to HR dept. that fails to do it’s job.

          4. The HR department reference was just a side note.

            >Please read about meaning of early exposure to the subject and how it is related to learning process in future.

            It’s mostly BS. Human memory retention for arbitrary and trivial facts that they’re not using for anything is really poor. 10 years later when the kids would need the programming experience, if they haven’t done it in the mean while, it’s completely lost. Since they were not taught the context or theory behind the programing, only the very basic syntax and at most the concept of a loop through a couple examples, they really are in no better position to a complete novice. Anyone with half a brain can pick the same information up in an afternoon.

            If you wanted to make a difference, you’d have programming as an entire subject like chemistry or art, that continues through the K12 years so there would be enough repetition that people would actually remember anything of it – but that would be overloading the kids with yet more “early exposure” while they’re failing to learn most of what we’re trying to teach them as it is. Tell me, how’s your multiplication tables? What did they teach you in fourth grade history? Can you still name all the plants you had to collect into a folder in biology in the 6th grade? Remember long division?

      3. ” First of all it teaches you to think logically, which is handy in most everyday situations regardless of your occupation ; and secondly programming in itself can prove useful in lots of job, when you can save time by putting together some tools to help you (even if it’s just some Excel macro to manage your budget, a Python script to parse some data, or anything else).”

        Playing Satisfactory, which is training me to be a logistics engineer. Playing Operation™ in order to be a doctor and Phoenix Wright: Ace Attorney to be a lawyer. :-D

    2. There is no such thing as “learning to code” any more than learning to speak means you could understand all the languages in the world. Every programming language and environment has a slightly different paradigm, syntax, feature set, and the thing you’re “coding” is usually a specialized solution that hasn’t got a textbook answer and requires you to understand the fundamental problem before you can implement a program that effects a solution.

      The only thing that a generic “coder” can really do is learn the stuff faster than a random neophyte pulled off of the streets, because they’ve done something vaguely -similar- before. For example, if you’re coming from learning textbook examples in Python, and somebody tells you to support a PLC program written in Structured Text, you’re going to be in a heap of trouble. It’s gonna take you a bit of brain-bending to even understand what’s happening because the ST program is not object oriented and so there are certain crucial differences such as in variable assignments. You never actually learned to “code”, you just learned a bit of Python.

      1. I don’t see it that way. It’s not about becoming an expert programmer, it’s about learning the general principles (variables, functions, sequential and conditional execution, …) in order to have an idea of what’s possible, and be able to do some basic stuff yourself; it’s about, like I said, learning the logical thinking associated with programming (which you can also find behind math for example). If it doesn’t serve you in life, it’s alright, at least you are aware that this tool exist.
        Think of it like learning some basic DIY stuff. I wouldn’t be able to build a house from scratch, but I know how to use a drill and a saw, and if I need to put a closet together or install a new outlet in a room, I don’t need to call an electrician, I have the basic knowledge to do it myself. And if I suddenly need to use a more specialized tool, I have enough general knowledge in the area to learn it quickly enough.
        Most of all, I don’t agree with the argument “we teach it badly so we should stop teaching it”, IMO it only means we should teach it better.

        1. Yes, but even the “general principles” can be vastly different. For example, the concept of a “variable” is very much different whether you’re writing in Python, ST, or if you happen to be writing some lower level language which only has registers and accumulators. The meaning and function of “X = Y” can vary. In Python it means you assign an identity, in C it means you’re assigning a value.

          > the argument “we teach it badly so we should stop teaching it”,

          Not quite. It’s “It’s too much stuff to teach children of that age – we can’t get enough information in to make it useful for them.”

          If you were actually teaching kids to program, you’d be teaching them a bit of computer history starting from Jaquard looms to Turing machines and then some basics about computer architectures… then onto the basic programming paradigms: functional, declarative, data driven… etc. because THAT is the GENERAL principles. But it also requires that you understand a whole bunch of other concepts that aren’t taught at K12 level, and it would be about as boring as math because it doesn’t mean anything on its own and you don’t get to do anything. That’s why the schools have to pick a very narrow view to programming and restrict the content to a few token examples that CAN be taught to most children, which are woefully insufficient for actually teaching them much anything about programming in general – in a way they could transfer to other programming contexts.

          These are the realities that we as adult tech nerds often forget, because it’s trivial to us. Programming is such a vast field that the kids will simply learn too little anyways, and have to start all over again when it actually becomes topical for them. For the kids who are interested and motivated, sure, have clubs and elective courses – but to teach programming to all kids is just as futile as trying to teach them Calculus at 6th grade.

          1. I understand your point, but I think you are overthinking it a bit. By the “general principles” I mean the basic stuff, not the theory behind it (forget about Turing machines, functional programming, OOP, affectation by reference, and so on); the same way that you can teach a child additions and subtractions by having them count on their fingers without teaching them the “general principles” of vector spaces and what additions mean in the general sense of abstract algebra. The majority will never need much more than basic algebra, but would struggle in life if they didn’t learn what an addition and multiplication are and how you use them to calculate quantities, prices, distances, and such everyday stuff.

            What we seem to disagree on is wether there is a point in teaching kids some “superficial” knowledge of the field, just enough for simple applications, without a global bottom-to-top understanding of the field; I argue that there is : since it is almost impossible to live a life without touching a computer nowadays, learning at least the first thing about how they work will never be completely lost. It’s one of those things that, even if you don’t use it as-is, will help “shape your brain” and give you general culture about the world. Of course, there would be the need for a debate about what would be considered “basic core knowledge” and what would be reserved in optional classes at a later age for those interested in the subject (just like math or physics).

            Also, I’m not sure we are talking about the same age here. Of course I’m not talking about starting to teach programming to 4-year-olds, I agree that would be pointless (I’m not in the US or UK so I’m not familiar with this teaching system, I don’t know what age is a typical 6th grader). But around 10 years old seems appropriate. Not complicated stuff and not at a heavy pace, just some Hello World’s or blinking LEDs on an Arduino, but it should start to plant the seed in their minds.

          2. >the same way that you can teach a child additions and subtractions by having them count on their fingers

            Again, that’s where the analogy breaks down. The programming equivalent of counting with your fingers is not useful because it’s not practical. It doesn’t extrapolate beyond its immediate context, and is quickly forgotten.

            I know people even at college level who have gone through these “coding” courses and have not learned anything useful. They can complete the assignments but they essentially can’t program: they don’t understand the programming paradigms or concepts both because they were explained only superficially, and they didn’t have the required background information to put it into context, and because they don’t actually need to know them to complete the assignments. Detailed examples are given, and it’s enough to copy them from memory to pass.

            When the students don’t understand the concepts but still need to pass the course or just to complete the exercise so they can go out and play, rote learning is employed; unfortunately human memory for arbitrary facts has a rather short half-life. Information crammed in the final week lasts just days^ – just long enough to pass the final exam or complete the project. That’s what makes the difference here. For doing sums, at least your fingers don’t drop off after you stop counting with them, so you can pick up where you left.

            ^See: http://www.wranx.com/wp-content/uploads/2016/04/ebbinghaus-diagram.png

          3. What I’m saying is, it’s pointless to teach coding to everyone until they’re at least old enough that you can also teach them the paradigms and context behind the code.

            In order to explain why you do it that way and what it means, they have to be able to understand the reason – that you have these different ways of programming to solve different practical questions like how to better simulate physics, or how to do industrial logic, or how to optimize the speed or the memory use, what’s a state machine, what’s a stack… etc.

            If you don’t also explain this background, then all you’re doing is teaching magic rituals that make LEDs blink.

    3. The process at my recently former job (a Fortune-500 company) starts with the product people. They say what they want. Input from others? No. It goes to the systems people. They write requirements. We have a schedule. Shovel it out fast. Safety, reliability, validation against actual customer needs? Too expensive. Requirements go to scrum master. Bite-sized (or byte-sized) tidbits go to the code monkeys. No design. No architecture. Inadequate documentation. No computer scientists, few software engineers, rarely programmers, mostly code monkeys. 75% are offshore. Write little chunks which get pasted into a huge codebase with a mix of obsolete, undocumented, unreliable code using expired and unsupported toolsets. Yes, still using Win95 for some things. 10% of codebase gets compiled with obscure compile-time options. Product is ‘tested’ with uncalibrated unreliable fixtures. Fail? Reboot until it passes. Ship it. It’s all safety critical. No problem. They have more lawyers than engineers. Yes, the ‘process’ is ISO and CMMI audited. Enough to fake out the customers. You show them a couple certificates.

      You want to train your kid to be a programmer? Interesting hobby. Lousy career.

        1. This is the real world. Your managers are geriatric. Structured programming? Whoa, youngster, not so fast! They still have dialup service at home and use flip-phones. Profit margin and capital investment overrides theory. Software people come and go like popcorn. Programmers are a commodity. Buy a couple bushels, use them, flush them, buy some cheaper ones. A race to the bottom. Pick a career you can be proud of. Plumbing, maybe.

  5. love it – its all about keeping it at a level kids interact with.

    My 4 year old loves robots – we have mindstorms and other stuff but what works realy well is recreating a robot from a tv show. We build the body out of cardboard and paint it to suit and they are loosely based on the original and stick it onto the chassis of a toy RC car. From an adults perspective they are crap but it resembles the original enough to a 4 year old it works.

    And HE gest to do most of the work – the cutting is not straight the paint is a bit all over the shop but its good enough to get started. I try an do as little as possible just guiding the process to completion.

    The beauty with cardboard is once he novelty has worn off and the younger kids have stepped on it one to many times the body goes in the bin and we start to build a new one

    1. This is totally true. Around about when my son was 4, there was a “build a robot” thing at a local museum, where kids could glue all sorts of junk and cardboard and electro-trash together with a couple LEDs and a battery into a “robot”.

      His name is Robbie, and he’s still in my son’s room, two years later. He doesn’t move, heck, he doesn’t even blink his LEDs unless you open and close the clothespin switch yourself, but he’s important.

  6. When I was around your son’s age, I was captured by some basic electric “lab” units that you wired up to achieve some basic goals, like… light a lightbulb, or make a buzzer buzz. I thought I had the world by the tail when I was able to wire a D cell to a lightbulb without using the kit, and it lit.

    This led to wired Morse code communication with my neighbour, adding reversing switches to motorized toys, messing with crystal radios, electric trains, 50-in-1 electronic lab kit, poring over all the electronic project books in the school library… and, a little bit later… a career.

    Not intending to downplay coding, but just pointing out how much learning and fun there is in the electrical basics, when you’re a kid. Let a kid enjoy those discoveries, and the opportunities for introducing coding will come up by themselves.

    1. +10 – and a decent understanding of electronics can put you a long ways ahead on the programming side, be it gaining logic / logical understanding of things, to what is under the hood of your micro or PC that makes that LED turn on when your program tells it to. So many things are abstracted away to ‘make it easy’ in development and other related areas these days – knowing some electronics seems it might pique the interest to ‘what is under the hood’ and digging into how things work. And having a knowledge (intuition or otherwise from experience) can go a long way in helping you solve problems in an efficient way – having a good idea what physical limitations and bottlenecks may exist under the abstraction.

      1. That’s the thing. People say programming teaches logic – no – LOGIC teaches logic. You take a bunch of switches and LEDs and you make logic gates immediately obvious in a way that you can actually play with.

        When I was around 10, I was playing around a tiny stream – a little meltwater puddle – and I was thinking about making a little flood gate that runs up and down by a lego motor. I started thinking about how I would arrange float switches so the gate keeps the water level between two set points. Later on I understood that what I was designing in my head was exactly boolean logic arranged into a state machine – programming concepts – I just didn’t have the words for it.

  7. The Raspberry PI foundation work with Debian/Linux OS, Lego Mindstorms, Arduino, and Minecraft are all excellent low-risk artifacts for students.
    The mere idea of manipulating what kids choose as a career is a rather unsettling concept that will certainly have a long-term negative impact on people’s interest in science and math. Just as musicians eventually choose what instruments they enjoy playing… one cannot predict the outcome of independent creative thinkers ( although Malcolm Gladwell does make some convincing observations).

    Lets be honest here, there is no shortage of intelligent STEM people around, but they are usually not interested in having their kids indentured to some cost-optimization scheme dumped on our elected officials.

    ‘A strange game. The only winning move is not to play. How about a nice game of chess? ‘ ( WOPR )

    We recently 3D printed The Royal Game of Ur, and have enjoyed the old board-game a lot.
    …like a lot more than some corporate wiener’s lack of compassion or philosophical foresight.

  8. 3D printer gives an actual purpose to using the computer.
    Use Openscad to design with instead of a graphical tool.

    It is a proper programming language where you can learn to use subroutines, loops, comments, etc etc.

    As importantly it dovetails into a lot of maths : geometry, transforms, sets/logic (intersections/unions/differences

    It also develops the mental ability to do transforms i.e rotating, scaling, as well as a sense of size and scale. These are important design skills, and important to mechatronic machione design and control too.

  9. I wanna have fun with my kid (he’s 2.5). I’m passionate about electronics and embedded software, so there is a high chance that he’ll pick up some of that passion and have fun with it, at some point, and I can’t wait share it with him.
    Who knows what he’ll do as a career.
    Don’t they say that most of the jobs of tomorrow weren’t even thought of when you were born.
    I think it’s about teaching how to think, be open minded, curious and flexible to change, certainly my life was not a straight line.

  10. Just my lookback-opinion: everybody should be wetted a bit with coding or programming. If it is not for a computer, it may be useful for oneself at organising some upcoming action sequences. On a longer perspective: organising some upcoming action sequences for someone else. Right: directing coworkers/employees aka writing useable instructions.
    Not every person, neither as a kid nor as an adult, is able to perform the appropriate type AND amount of “mind bending” (at the same age/development stage as all others). The ones who do early become HaD audence :-)

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.