Beginner here. I see C and Rust as this two hills. Both hills are worthy of climbing. C is everywhere. You have to be good at it to get a job and collaborate with others. It is a steep mountain IMO... you have to figure out 'best practices' on your own ; It is unsafe by default. The tooling around it is arcane and sparse. Rust is not everywhere... but it will be (hopefully). There are comparably less job openings... so you have to find your rust-buddies and work with them. Rust teaches you 'best practices' upfront. It doesn't assume that you are a dark-mage. Things like testing, performance, error handling, documentation, debugging are well explained. The tooling is well documented and tightly integrated to the Rust toolchain. The tools are not sparse, you do not have to solely depend on experience to be 'good' Two cross-roads for beginners. Both hills are tough. I think new-gens should learn Rust instead as their primary sword... and learn C just for the sake of being able to understand legacy codebases.
If you want to get an in-depth understanding of unsafe Rust, raw pointers, FFI, performance and memory optimizations, embedded Rust etc. knowledge of C and assembly is required.Therefore, learn Assembly, C and finally Rust.
👍 Rajath "The Fact that though Rust is systems language primarily focused on memory safety, other parts of system dev (Validation, Debugging etc) doesn't really focus on writing memory safe code" is really enlightening Please try to make a detail video on "Application Binary Interface" (may be ARM / RISC-V as reference)
Hey! I just came across your channel and its like a gem for me. I just graduated and joined NXP as firmware engineer and was highly interested in all the topics ranging from automations to embedded to assembly and found a single stop solution to it all here. Though the videos are very few, I am hoping you will deliver faster and if possible, answer some doubts in chat. Though it will be probably hard for you to take some time for it. All the best for the channel!!!
I am currently a swe with background in Information Technology degree. Is it possible to make a pivot to embedded systems/systems engineering. Do I need to have a formal degree in electronics, or only develop relevant skills for this field? Open for your suggestions!!!
@@inpyjama Like a basic need of Unit Testing, Overview of Unit Testing,What is the standard way to do it,How it is used in industries currently.What are the different ways to do it
kya bewkoof discussion hai The fact is that C is directly implemented in ASSEMBLY And C can be calculated from register to register where as rust is the above C rust is taking time more than C
What are you trying to say, "C is directly into assembly"? This even not make any sense. C is compiled to assembly lang for different architecture x86, arm, amd64 etc. same goes for rust it's also get complied to assembly like C lang. Unlike C, rust imposes some rules like borrow checker, borrowing, ownership etc. for memory management. It also makes memory safer then c/c++. Other then that rust's speed are comparative to the speed of c program implementation.
@@vishwanathpoddar001 Can you program 8051 Microcontroller with Rust if you can do it then use Rust I don't have problem . And C code are to be seen directly into assembly means we can see all the code and logics of assembly in C where in rust it get dissapear if you want to move register you can rewrite usign __asm("MOV",R1,A) ; like that but in rust it get fail for damn sure
@@travelphotovlog3243 it shows you know nothing about Rust. I'm using rust for past 3 years we able to write code for microcontroller. If you don't know about Rust then leave it don't blabber.
Beginner here.
I see C and Rust as this two hills. Both hills are worthy of climbing.
C is everywhere. You have to be good at it to get a job and collaborate with others.
It is a steep mountain IMO... you have to figure out 'best practices' on your own ; It is unsafe by default.
The tooling around it is arcane and sparse.
Rust is not everywhere... but it will be (hopefully).
There are comparably less job openings... so you have to find your rust-buddies and work with them.
Rust teaches you 'best practices' upfront. It doesn't assume that you are a dark-mage. Things like testing, performance, error handling, documentation, debugging are well explained.
The tooling is well documented and tightly integrated to the Rust toolchain. The tools are not sparse, you do not have to solely depend on experience to be 'good'
Two cross-roads for beginners. Both hills are tough.
I think new-gens should learn Rust instead as their primary sword... and learn C just for the sake of being able to understand legacy codebases.
If you want to get an in-depth understanding of unsafe Rust, raw pointers, FFI, performance and memory optimizations, embedded Rust etc. knowledge of C and assembly is required.Therefore, learn Assembly, C and finally Rust.
Excellent inputs and observationas from Rajat and conclusion by Piyush. Thank you.
👍 Rajath "The Fact that though Rust is systems language primarily focused on memory safety, other parts of system dev (Validation, Debugging etc) doesn't really focus on writing memory safe code" is really enlightening
Please try to make a detail video on "Application Binary Interface" (may be ARM / RISC-V as reference)
Hey! I just came across your channel and its like a gem for me. I just graduated and joined NXP as firmware engineer and was highly interested in all the topics ranging from automations to embedded to assembly and found a single stop solution to it all here. Though the videos are very few, I am hoping you will deliver faster and if possible, answer some doubts in chat. Though it will be probably hard for you to take some time for it. All the best for the channel!!!
we want more videos on these kind of topic ( like - industry standards , about c ) etc ...thanks for your efforts sir
Thank you for making such wonderful content
I am currently a swe with background in Information Technology degree. Is it possible to make a pivot to embedded systems/systems engineering. Do I need to have a formal degree in electronics, or only develop relevant skills for this field? Open for your suggestions!!!
Hey can you discuss about modbus, and communication between multiple slaves in your upcoming videos.
Great video guys
Hey Thanks for such a good content. Guys, Please can you make videos on Embedded System Unit Testing
Sure, we can. Any specific topics you would suggest?
@@inpyjama Like a basic need of Unit Testing, Overview of Unit Testing,What is the standard way to do it,How it is used in industries currently.What are the different ways to do it
kya bewkoof discussion hai The fact is that C is directly implemented in ASSEMBLY And C can be calculated from register to register where as rust is the above C rust is taking time more than C
What are you trying to say, "C is directly into assembly"? This even not make any sense. C is compiled to assembly lang for different architecture x86, arm, amd64 etc. same goes for rust it's also get complied to assembly like C lang. Unlike C, rust imposes some rules like borrow checker, borrowing, ownership etc. for memory management. It also makes memory safer then c/c++.
Other then that rust's speed are comparative to the speed of c program implementation.
@@vishwanathpoddar001 Can you program 8051 Microcontroller with Rust if you can do it then use Rust I don't have problem . And C code are to be seen directly into assembly means we can see all the code and logics of assembly in C where in rust it get dissapear if you want to move register you can rewrite usign __asm("MOV",R1,A) ; like that but in rust it get fail for damn sure
I m using C from past 10 year and I don't have any problem and I don't want to change also C is love of many embedded engineer do not put in pyjama
@@travelphotovlog3243 it shows you know nothing about Rust. I'm using rust for past 3 years we able to write code for microcontroller. If you don't know about Rust then leave it don't blabber.
I don’t think so. You should definitely search for core::arch::asm.
Rust is not so different or difficult to code once you get a hang of it.
Hey can you discuss about modbus, and communication between multiple slaves in your upcoming videos.