DEV Community

Dumb Down Demistifying Dev
Dumb Down Demistifying Dev

Posted on

Learning Rust Coming From a JavaScript Developer's Background

Learning Rust Coming From a JavaScript Developer's Background


About Myself

Background 📖

I have studied Computer Engineering from 17 to 19 (3 years) and then Electrical and Electronics Engineering in University (which I did really badly) for another 3 years.

After graduation, I've been working as a Software Engineer for 2 years mainly working on JavaScript stack and framework, which are AngularJS and NodeJS

I've been mostly self-taught for programming, relying mostly on my past learning experiences many MANY years back during the days of Computer Engineering studies.

I've been mostly self-taught for programming...

Learning 🤔

I am really interested in web development and delivering fast, effecient, and readable short clean code.

After entering into this industry I've become addicted to speed of execution (no UI jank, 60 fps, fast load time, etc..) and readable code that's short and sweet.

JavaScript in my opinion is a really great first language to start learning or getting back into programming. However, due to lack of experience and understanding of the language itself, it is also possible to produce fast prototypes on the expense of janky UI and/or terrible code structure that is hard to read.

JavaScript in my opinion is a really great first language to start learning or getting back into programming.

Why Rust? ⚙️

Recently, I got to know of an emerging language that has extremely strong and safe typing system which can be used for small, fast, and memory effecient development. Which in turn also means the compiler can be super naggy to tell you that you have errors or unused variables, etc.

While that might sound like a turn off to dynamic-language programmers, it actually is a really good thing! The JavaScript community has already started to take note or gravitate towards TypeScript, which promotes a typing system for JavaScript that compiles back to JavaScript to be ran on the Web.

This goes to show the importance of a good foundation for our software/web development that could shape our mindset towards writing better softwares!

Also, it could add to a lower level programming language (Rust) into my toolbelt of languages that I am comfortable working with. 😬

... importance of a good foundation for our software/web development that could shape our mindset towards writing a better web/software!

The Tough Part

Learning JavaScript was really fun especially when the language is so forgiving and provide quick and dirty methods of writing software prototypes.

Rust has a higher learning curve with concepts such as Borrowing, Ownership, Lifetimes, etc. as compared to dynamic languages which does most of the mental-boilerplating for us through the compiler itself.

References 🔗

In my posts, I may reference a lot to JavaScript as mentioned earlier that I am most familiar with. These posts are to provide a journal of my progress in learning Rust and for those who are interested to join in this journey of learning with me. 😁

Top comments (0)