Rust in Intro to CS?

By: Mustafif Khan | 06.25.2021
In highschool common languages to be taught are Python and Java, and that is understandable to a certain point. Python has been increasingly in demand, and has found itself in various fields, however is it wise for either it or Java to be a first language? For those who aren't aware I am quite found of the Rust programming langauge and have it circulate through my whole projects, and to discuss it's place in a public education standpoint requires views on both sides of the table.

Python is easier to read

Even if I am fond of Rust, I cannot deny that Python is as readable as languages can be, and other students won't share the same view on it as I. Python is a good choice for beginners to gain confidence in programming, however it does not teach great at things like static typing, compiling, or the fact that OOP isn't commonly touched. However this is why Python is taught in Grade 10, so it provides a confidence boost for the two other years in which Java takes over, and sets us up for the next point...

Java or Rust?

Java is a nuisance to write with it's long type structure, and is actively being replaced by Kotlin in fields such as Android development. It is used to introduce students to static typing, object oriented programming, however if those are the important factors then Rust is a viable option right? Rust can teach students about borrowing and memory safety, it has a great community, and lastly systems programming is a good learn overall.

Here's the current problem with our plan:

Here's the pros for teaching it:

Conclusion

With all jokes aside, I strongly believe that Rust can be a viable option to teach in Highschool ICS. For this to work factors such as Rust's popularity, prospect and curriculum are to be considered. I stil do think that in due time it can be seen, however on my end I will try to make as much resources for Rust, as one of the sources of the already multitude of resources available.