2 ms·
Note that cancelling Python is my thesis, and khinsen just provides the evidence to support it. He doesn't come out and say, "Don't use Python," but I am. Fro
by cxr 4y ago
Note that cancelling Python is my thesis, and khinsen just provides the evidence to support it. He doesn't come out and say, "Don't use Python," but I am. From my notes, here are (some? of) the posts I had in mind:
- <https://blog.khinsen.net/posts/2015/11/06/a-rant-about-software-deployment-in-2015/ https://blog.khinsen.net/posts/2015/11/06/a-rant-about-softw...>
- <https://blog.khinsen.net/posts/2017/11/16/a-plea-for-stability-in-the-scipy-ecosystem/ https://blog.khinsen.net/posts/2017/11/16/a-plea-for-stabili...>
- <https://blog.khinsen.net/posts/2017/01/13/sustainable-software-and-reproducible-research-dealing-with-software-collapse/ https://blog.khinsen.net/posts/2017/01/13/sustainable-softwa...>
- <https://blog.khinsen.net/posts/2017/11/22/stability-in-the-scipy-ecosystem-a-summary-of-the-discussion/ https://blog.khinsen.net/posts/2017/11/22/stability-in-the-s...>
- <https://blog.khinsen.net/posts/2019/02/11/the-computational-notebook-of-the-future/ https://blog.khinsen.net/posts/2019/02/11/the-computational-...>
- <https://blog.khinsen.net/posts/2019/05/09/the-computational-notebook-of-the-future-part-2/ https://blog.khinsen.net/posts/2019/05/09/the-computational-...>
---
> I don't like Python [...] but it's the language I'd reach for first if I was teaching someone how to code
Damn, that's crazy. Considering how many of those people would be coming from Windows and Python isn't actually[1] a batteries-included situation, I'd go with JS. I'd say, "Look: here's how you can get started right away making little programs that run in your browser right now even when you don't have WiFi," then at the point where other people might start introducing Node (or Deno), I'd say, "You should really learn Go." I'd preface the JS stuff by saying, "mostly ignore EVERYTHING that you come across telling you how tech influencers on the Internet think you should be writing JS. (For example, if at any point during this stage you find yourself pressing the key for the equals sign three times in a row, then you have already lost sight of the trail—and the plot.) Instead of listening to StackOverflow and GitHub, here's a copy of ECMA-262, 3rd edition (notice how it's still accurate, even though it's from 1887) and an offline copy of developer.mozilla.org for reference."
1. <https://news.ycombinator.com/item?id=34833619 https://news.ycombinator.com/item?id=34833619>
- tptacek 4y agoI think it's a stretch to call it "crazy", since starting with Python is one of the more common didactic strategies in programming, and the most common in scientific computing. I wouldn't start with Javascript, though reasonable people could. It's too malleable a language, and a bit of a moving target. Python wears its opinions on its sleeve, which is a good thing for this purpose. Remember, the point of a teaching language isn't that it's the last language you learn; it's the first.