I have some doubts on teaching methodology

I follow the topics on Scientific Computing on Python and I have to say that I have some objections on the teaching approach based on my experience at least.
Specifically, by instructing someone to follow blindly steps that doesn’t make fluent in a language and certainly not in programming in general.
Not to mention that the “whys” of how the algorithm magically succeeds as in the shortest path algorithm are nowhere to be found.
Another example is about the instructions on recursion:

  • no reference on the internals behind the lines of code
    Reader should understand the order of execution of function body in this piled repetitive calls of the same function; is first executed first or last? what is the order of execution of code before the call and what the order of code after the call? and so on…
  • no reference of execution space which is isolated between different executions otherwise a body variable on the 2nd call will overwrite the same variable from the 1st call (resulting in increasing memory space of course)
  • no reference on how variables are passed (are they passed by reference or by value?)
    These topics are not minor but major issues if we want someone to understand internals of code execution!
    But above all I fear the confidence/arrogance especially of young when they take a certificate which will make them believe that they learned how to program as I see it in every part of this industry!
    Also, no Python is NOT a great language compare it with C par example, what makes people believe that I wonder…
    We at the tech industry we’re not politicians to follow the fashion and I believe we should say things as really they are!
    Just, some thoughts I wanted to share with the learners.

The Python material will be augmented in the same way as HTML and JavaScript has already been done in the Certified Full Stack Developer Curriculum, there will be much more explanations, and practice for the learners

I generally don’t recommend C to learners even though I use it professionally, as it’s a special case language these days.

You can’t learn everything all at once and you need to start somewhere.

To learn more about how certain algorithms work you may need to do some research and reading outside of fCC. There is a lot to learn and many other resources which can be used in parallel.

Python is widely used, easy to begin learning and very useful for many things. I think that makes it great.