My pedagogy around teaching any computer language is to have the target language e.g. Python on the front burner but then compare and contrast with one or more back burner languages e.g. Julia, Clojure...
Replit makes it easy to walk my talk in this respect.
I'm eager to demonstrate starting a new Jupyter Notebook and having a choice among languages. Ju for Julia, Pyt for Python, Er for R.
The focus is ball packing: triangular and square numbers (figurate on a plain (plane)); tetrahedral and cuboctahedral (= icosahedral) in space.
A student is co-developing a lexical skill (coding language) with a graphical skill (visualizing balls packing in space).
This way we get an algebra-geometry bridge before (independently of) a coordinate system (which comes next).