DEV Community

Discussion on: Swift vs. Rust -- an Overview of Swift from a Rusty Perspective

Collapse
 
tlingit profile image
Tom Pittman

Great job. I appreciate how hard you tried to keep the article objective, but I equally appreciate that you made a section for your opinions — and that you clearly delineated the sections. Very readable.

As someone who is unfamiliar with both Swift and Rust, I would say that the essay would be improved if you explicitly clarified before the heading "The Basics" that the left side of the em dash is Swift, and the RIGHT side is Rust.

You almost say that (but not quite), so I had to look up the syntax of both languages for your first few examples, just to make sure. 🙂

Question: in your opinion what would be the best learning path for an absolute beginner to programming to learn Rust?

All resources seem to assume that learners are coming to Rust from another language.

It's frustrating because I KNOW I want to work in Rust, and I am not at all interested in learning another language so I can throw it away and use it as a scaffold to let me switch to Rust.

At any rate, since I'm unable to find resources for absolute beginners, and since there are abundant resources for learning Javascript, Python, and Swift...

Would you recommend learning Swift first then sliding over to Rust?

Or would you recommend some other learning path?

Collapse
 
snawaz profile image
Sarfaraz Nawaz • Edited

Question: in your opinion what would be the best learning path for an absolute beginner to programming to learn Rust?
Would you recommend learning Swift first then sliding over to Rust?

Tom, you didn't ask me but still I'm giving my opinion here. An absolute beginner can learn Rust directly. It'd be difficult for sure, but then for an absolute beginner, any language would be difficult (not the same level of difficulty though). But learning one language first, then Rust ... is a more difficult path, as Rust changes the way one thinks about resources (memory, file, lock, etc).

When I started learning Rust almost 7 years back, I knew several languages including C++ (which I'm most comfortable with). Programmers who know C++ have one advantage over others, when they start learning Rust ... and it is because Rust attempts to solve the issues which are common in C++. It's designed from C++'s problems perspective. So a C++ programmer quickly understands why a certain Rust's feature is designed in a specific way. They know the context! At least that is what I felt when I came to Rust.