Are Rust jobs Rusty, or will they Shine?

Поделиться
HTML-код
  • Опубликовано: 18 сен 2024

Комментарии • 97

  • @letsgetrusty
    @letsgetrusty Год назад +64

    In Rust we trust 🦀

  • @pizzanachos2323
    @pizzanachos2323 Год назад +28

    Hey Stefan! I appreciate the insight into rust, I think as freelance webdevs it doesn't make much sense as other languages (php, js, python) are much quicker and more efficient for us but for companies like google and amazon the scale of their programs really starts to matter (hence using rust). I also think an under rated part of the rust language is how much more reliable and correct the programs you write with it are (Basically zero run time bugs, no undefined behavior, impossible to have a null pointer). And the time you put into learning rust is really just time you put into becoming a better developer.

    •  9 месяцев назад

      No language has zero nor basically zero runtime bugs. Rust has near zero memory and race bugs (they can still occur in unsafe blocks).
      The underrated part is how well made the language is overall.

  • @hacktor_92
    @hacktor_92 Год назад +22

    more than a year ago, i wrote in rust an internal service after struggling with undefined behaviors in the initial php implementation. once the rust version got deployed, i rarely updated the code since (just the usual: some better error handling here and there, some improved logging, and stuff like this). it's also pretty fast in what it does, and that's consuming an sqs queue, download and optimize a given image, and update the database. since i'm using async and tokio runtime, it scales on all of cpu's cores without any concurrency issues (this comes by default).
    and here's some rough stats from observing the input and counting the logs: given 10k images in queue, containing 1000x1000 jpeg files from same image server, with a scale factor of 1 (that is, 1 instance running in docker) on a 16 core ec2 instance, the queue empties in ~10 minutes, which is ~1 image / sec. of course, we've also got heavy loads, such as 100k messages in queue, which got processed in 6 hours running with scale factor 6. this totally increased the trust in rust as a language, even if we mostly code in php and typescript + nodejs.
    recently, i re-wrote that rust service from scratch but with cleaner code and targeting aws lambda directly. i was stunned. not only it took 6 hours to complete it, but i could also leave the workplace earlier to solve some personal issues. that's the actual "rust is fast", not only in it's runtime performance, but in dev's perception of writing it as well (ofc, once you know how the borrow checker and lifetimes work, it's simple).

    • @maxwellflitton3973
      @maxwellflitton3973 Год назад +2

      I’m the author of the rust web programming Packt textbook. I completely agree with what you’re saying. I’m actually
      More productive in Rust than I was in python. A lot of people find the learning curve or rust too steep and then make up that it’s not a productive language when really if they stuck with it they would be able to crank out code that’s more reliable at a quicker rate

  • @jonnyso1
    @jonnyso1 Год назад +5

    I think that's the wrong take. What sets rust apart isn't its performance or its efficiency, if that was the only reason then people should just wirte everything in C. The great thing about Rust is that it achieves System Programing language performance but offering the comfort of a modern high level language with next to no penalty to performance. It's harder to learn at first, you need to keep things in mind that you aren't used to, but its not as hard as some make it to be. The type system is great, its functional features are great, the way it handles interfaces, there's a LOT more to it than performance.

  • @andersondamasceno1356
    @andersondamasceno1356 Год назад +19

    My interest in Rust is simple: I want to learn more about low-level programming. It is not about getting a job, for that i am studying C#.

    • @ohwow2074
      @ohwow2074 Год назад +5

      If you really want to learn about low level then you better start with C since it's really more low level than Rust and C++. And it's far easier to learn than Rust. It's a very simple language. And it's used heavily in embedded systems unlike Rust.

    • @the-bgrspot6997
      @the-bgrspot6997 Год назад

      @@ohwow2074 its 2022

    • @orter4030
      @orter4030 Год назад +5

      @@the-bgrspot6997 So ? There are still people writing COBOL lol.

    • @the-bgrspot6997
      @the-bgrspot6997 Год назад +3

      @@orter4030 they can be making 8bit CPUs by hand with mosfets but thats not really a sane way to do anything these days, is it ?
      I don't believe that you have to go through the "C stage" before learning Rust
      in fact, maybe learning Rust before C can be more beneficial, would save you from having to forget bad practices

    • @mgjulesdev
      @mgjulesdev Год назад +2

      Go straight to Rust but study the market in your region or where you want to work. Aim at the language in the market you enjoy most as your starting point in your career and the rest will fall into place.

  • @pif5023
    @pif5023 Год назад +4

    Rust is a long time investment right now. JS/TS is underrated imo, it gives you insane productivity! You can build web fullstack, native and desktop apps from a single code base and rather quickly with it. That is insane value!

  • @ogpurpledaddy
    @ogpurpledaddy Год назад +5

    I learned some C++ when I was young (~25 years ago). I started getting into school recently after my military life and decided to give computer science a shot since it's my passion. I guess the niche I want to get into is VR development and pushing it as hard as it can. I'll be keeping an eye out on Rust though, as after I feel I'm proficient at Python (school's first language) and C/C# I'd like to take a crack at it. Thanks for the info!

  • @aneesahthequeen
    @aneesahthequeen Год назад +2

    😍❤️❤️💙💙😍Heyyy Stef! Pray all is well! Thanks for always giving us the info! ❤️

  • @sam_mitschiro
    @sam_mitschiro Год назад +10

    Rust is difficult, it's a system programming language. Started learning it but stopped as i have really nothing to apply it to.
    Learning Rust only makes sense if you want to go down that route in your career or privat. Cause you won't get anything done with Rust if you do not regularly work with it, since it's so complicated.
    That being said, Rust will 100% replace C/C++ except for maybe some edge cases. If only for the fact that Rust is secure by default while being within the same performance bracket.
    Windows is being slowly rewritten in Rust, Azure too. Linux is starting too on the kernel. Amazon, etc pp. It's just a matter of time.

    • @perc-ai
      @perc-ai Год назад +5

      I am a web developer and I am using Rust on a regular basis for this... you dont need to be a systems programmer to use Rust lmao. Its a general purpose language not just a system programs language...

    • @adamodimattia
      @adamodimattia Год назад

      @@perc-ai I agree, you don't have to make too much use of low level Rust features. It is difficult, but the more difficult parts can be taken in slowly, one at a time while enjoying more humane Rust features, its clarity etc. It is the first language that I started to use solely on the basis that I like it so much :)

    • @perc-ai
      @perc-ai Год назад

      @@adamodimattia rust influence in 2023 is gonna be ridiculous there’s so many industry disrupting software that’s being made with it

  • @Kristoph-69-69
    @Kristoph-69-69 Год назад +9

    Thanks for inspiring me to learn ruby. I got some freelance gig. 2 years learning JavaScript and 10 days learning ruby I'm finally making some money from this

  • @ccgarciab
    @ccgarciab Год назад +2

    Going by the title, I was expecting this video to be much more about the job market

  • @DavidAlsh
    @DavidAlsh 3 месяца назад

    I write Rust professionally. I hated it initially but now I can't imagine using anything else. I love being able to use multi threading in a context that is impossible to get wrong.
    You can still write wrong code, Rust doesn't make you a better software engineer, but i need to review much less code during code reviews and I'm much less concerned about contributions from less experienced engineers.
    It took me about a week to get okay at Rust and a month to become productive. Perplexingly, I'm more productive in Rust than Go (because of the constant incidental race conditions you get in Go). I have to review less code too so my team can move faster
    It's a great language. I could imagine a "Rust lite" language that reduces the syntax complexity to be similar to typescript but brings along the borrow checker and multi threading.
    Love it, highly recommend

  • @neilclay5835
    @neilclay5835 Год назад +14

    I've been learning Rust on and off for a couple of years and I really think it's ground breaking and I'm a Rustacian for sure. When it comes to using it outside systems programming (for which it is rapidly becoming the obvious choice) I do think it will struggle to gain purchase though. Developer speed is slower. There are almost certainly time savings to be had later in the software life-cycle due to the safety methods baked into the language (you're not going to get so many midnight calls that the production server is down as you would with other languages) but the problem is that companies don't look at these cost savings so much, they just look at developer speed. Go will wipe the floor in many of these other non-system dev scenarios I think. Anyway, anything but JS is good in my book (long live Ruby xD).

    • @andersondamasceno1356
      @andersondamasceno1356 Год назад +2

      In Brazil, where I am from, there is only 500 jobs for golang, and the majority for experienced devs like seniors. So why every body says golang will take over? There is no jobs for people starting programming.

    • @user-zv9um9pb6w
      @user-zv9um9pb6w Год назад

      Probably a hard sell for some cases but there are lots of interesting use cases. Imagine if Apache spark was written in rust?? Also writing a slower language lib in rust is a very useful solution

    • @stephendelacruzone
      @stephendelacruzone Год назад

      You might have a point... 🤔

    • @stephendelacruzone
      @stephendelacruzone Год назад +2

      Golang as a C-like, general purpose language is solid.
      But it's main feature is it's speed of development + speed of compilation is fast. Plus it's simple, easy to use & readableAF!
      It should be be used on Backend, Cloud Development, DevOps, etc.
      But big corporations are idiots. They like to do everything on Java or C++.
      Golang is... not as popular. Still heavily underrated. 😔

    • @dmitriidemenev5258
      @dmitriidemenev5258 Год назад +4

      @@stephendelacruzone Big companies are not idiots. They have proprietary tools and libraries that make the choice of Java and C++ much more solid. Writing the code is a long-term investment for them. If the language dies, they are screwed. In addition, literally every uni teaches C++ and Java, which simplifies the hiring process and allows to tap into the broader selection of applicants.

  • @RobertoOrtis
    @RobertoOrtis Год назад +1

    Rust is indeed hard but I always love to challenge myself. I am still learning it but it is an amazing language and it enforces writing good code.

  • @lostphysicist
    @lostphysicist Год назад +5

    Rust is hard. No question there, but as an expert C++ engineer who learned rust, it's much harder to fix undefined behavior and multithreading issues in C and C++. Rust saves time there.
    Stef, you're right about your concerns about the singular points you mentioned. It takes time to learn it. It's difficult. It costs much less to do Python and php. However, it all depends on your goals. If you're writing applications that require reliability, security and performance (blockchain, cryptography, encoding, wasm, large scale backends, etc), then rust is the answer. If, on the other hand, you're writing an application for some esoteric company with 10000 users... then rust makes no sense.
    The real difference is, easy languages make it easy to spit something out that initially works, but maintaining that will be a nightmare when scaled up, and that's why rewrites happen. While in rust, starting is a nightmare if you're not experienced, but maintenance is easy once you understand why the borrow checker is fighting you, because the rust compiler mostly forces you to do things right.

    • @AllemandInstable
      @AllemandInstable Год назад

      nicely explained

    • @lewessays
      @lewessays Год назад

      Is it right that c++ is harder than rust and rust has a an intial steep learning curve but gets easier but JS and python initally have easier learning curve when starting but, get tougher later on........

  • @pioneer_1148
    @pioneer_1148 Год назад +4

    While rust is a great language none of the points you bring up here really highlight it's strengths. You mostly focus on the performance of rust and some stuff about energy efficiency (which as you point out is pretty irrelevant for most applications). The big advantages of rust is not it's speed, it's blazingly fast but we've had languages as fast as it for 50 years; it is it's ability to have that speed while maintaining memory safety and bringing features more typically seen in high level languages (such as python-like print statements and an excellent package manager) along for the ride. Additionally, the design choices which ensure memory safety also allow rust to run concurrently very easily and with no risk of data races and the compiler is superb. Basically it's just a far better (bar the maturity of libraries) version of C/C++.
    TLDR talking about rust replacing high level languages is nonsense, it's an amazing language but way too difficult for most purposes and in many cases (where you aren't doing any heavy computation) performance isn't massively important anyway. However, it does have massive advantages over stuff like C/C++ and is easy enough that you can consider it in place of some of the more complex languages like Java/C# where library support allows.

  • @PaulSebastianM
    @PaulSebastianM Год назад +2

    Programming languages are just tools. We use the best tool for the job. When we don't, we set ourselves up for failure.
    With that said, I think Rust has the potential to take everything out there and make it its own. Think how C++ tried to do everything, but more ergonomic programming languages took its place. Rust though seems to be already doing everything from systems programming to generic app programming, including web apps, native desktop apps, mobile apps, etc.
    Rust is like C++, only that it can actually do a lot of general programming very ergonomically (once you understand Rust lifetimes).
    C++ failed at generic programming, Rust simply doesn't, IMO. There's a catch though, it's harder to get started with because of the borrow checker and lifetimes.
    Where C++ frustrates the beginner with runtime errors, segfaults, use after free, unsafe concurrent access, undefined behavior, etc., Rust frustrates the beginner with borrows and the different smart pointers it has.

  • @realsong-fake
    @realsong-fake Год назад +5

    Rust being hard to learn with high entry cost is an illusion. If you take a look at anywhere Rust is discussed you would notice a trend that there is a good portion of high level languages users interested in or even learning it so of course you would hear more voices suggesting it hard. But in real Rust makes getting into system language easier than ever before.

    • @redpillsatori3020
      @redpillsatori3020 Год назад +2

      Definitely much easier than C++ which I why I started learning it, and it can do almost anything that C++ can do, and almost as fast (I heard faster in some cases)

    •  9 месяцев назад

      The part that is somewhat hard is lifetimes. The rest is easy. The problem is that the compiler errors are not very good for lifetime errors. Many times you have to decode what they actually mean.

  • @israeldavidvm
    @israeldavidvm Год назад +3

    Could you add the subtitles? I don't understand much English, postscript I love your videos, greetings from Venezuela

  • @victortruong1524
    @victortruong1524 Год назад

    Real Deal as always :)) !!!
    I like how your style when thinking about learning new thing !!!
    Your whole mindset rely on CashFlow.
    You always consider how fast it can build and learn first
    Then later talk about other affect such as Performance or energy consumption.
    We youngster need more man like you, CashFlow and Time Build is the things younger people would not have a wise choice.
    You always consider and stress complex stuff like Rust for later learn in their career.

  • @pif5023
    @pif5023 Год назад +1

    Stefan has a soft spot for PHP

  • @lucaslopes1260
    @lucaslopes1260 Год назад +2

    The syntax is a bit weird for those of us who are more used to JavaScript or Python (though Python is weird in its own way). But the tutorial at their website is quite good. Very detailed, while also not holding your hand.

    • @jonnyso1
      @jonnyso1 Год назад +2

      That's what I've come to appretiate the most with most learning resources for rust so far. No hand holding, but not unreasonable either. It's basically: "This is how its done in Rust and here's the reason its implemented this way".

  • @jaroslavruzicka5681
    @jaroslavruzicka5681 Год назад +2

    The difference between JavaScript and TypeScript is interesting as TypeScript transpiles to JavaScript. Do they want to say that TypeScript produces suboptimal JavaScript code?

  • @driversteve9345
    @driversteve9345 Год назад

    You know what would be the most energy efficient? Computers chips that work off of a light source. So instead of using electrons passing thru the circuitry inside a chip, you could have light passing thru a non-electrical black-box that would control another light source much like our transistors work in a cpu. Then we could see dramatic reduction in powering computers while also having computers that run at light speed, literally!

  • @asdqwe4427
    @asdqwe4427 Год назад

    I think it has some really cool ideas Wort learning about regardless if you get to work with it or not. It will probably make you a better programmer.
    I intend to build some things with it at home to see if it could work as a general purpose language or not.

  • @kenneth_romero
    @kenneth_romero Год назад +2

    actually decided against learning c++ to learn rust instead. coming from a java background, i wanted to learn something i could do a lot with and rust just seemed like the perfect fit. it's pretty tough to get into, mostly with the compiler not letting you do unsafe coding practices. fun language, but you'll probably find yourself banging your head a bit from time to time.

    • @fusion9619
      @fusion9619 Год назад +1

      I think that's what I'm doing right now - deciding to learn Rust instead of c++. I knew enough c++ as a kid to make a little game, but that was 25 years ago and I'm starting from scratch now.

    • @ccgarciab
      @ccgarciab Год назад +3

      @@fusion9619 C++ has become a whole different beast since 2011. It's like a new language!

  • @rod6722
    @rod6722 Год назад +2

    5:48 I'm surprised that the gap between JavaScript and languages like Python, Ruby, and even PHP is much larger than the gap between JavaScript and Rust.

  • @Soulis98
    @Soulis98 Год назад +2

    Hail Rust

  • @charlie64x2
    @charlie64x2 Год назад +2

    Ruby outperforming Python in the benchmarks... lmao!

  • @mentalmarvin
    @mentalmarvin Год назад

    Save the environment, use rust!

  • @Anhar001
    @Anhar001 Год назад +1

    Two points, (1) Energy costs A LOT especially given the current global oil and gas crisis, the COST of running a data centre, the electricity bill is a big chunk of that running expense, so anything that can lower that turns into massive cost savings. So it's NOT really a climate green argument, it's all about the $$$$
    (2) Learning curve for Rust can be steep however it depends on each developer, some can learn it as fast as a couple weeks/months and others may take 6+ months or even longer. In terms of productivity, I would argue this is were Rust does shine (source: I'm a Rust developer), given its high level languages features many of which have been inspired by ML and Haskell, such as ADTs, Type Classes, Pattern Matching, etc means that the "Total Cost of Ownership" in terms of running a software lifecycle is dramatically shorter because the compiler removes so many classes of bugs that would normally be seen in other low level languages (and even some higher level languages). Basically Rust in production is "boring", because once it compiles, it just keeps working. You have to keep in mind that software maintenance and bug fixing is where most of the time is spent on most codebases, under Rust the bug fixing and maintenance phase is dramatically reduced. So while some may be able to argue that one could develop something faster and get it into production, that's only the starting line, however in those other languages a significant amount of time will be wasted fixing bugs after the fact.

  • @learning_rust
    @learning_rust Год назад +1

    Rust could also have a future with Bitcoin...there is a growing number of projects...

  • @adrianalanbennett
    @adrianalanbennett Год назад

    What do you think? - when AI can rewrite code to make it the most efficient and safe, then code could be written in the coders preferred language ad then translated by the AI?

  • @kobruh9642
    @kobruh9642 Год назад

    they will shine in rust!

  • @missionpupa
    @missionpupa Год назад +1

    Rust is also growing in crypto because of its speed and security, much more popular than solidity.

  • @oyewodayo
    @oyewodayo Год назад

    Rust will blow up from 2023.

  • @guilherme5094
    @guilherme5094 Год назад +2

    👍

  • @ehsankhorasani_
    @ehsankhorasani_ Год назад

    Typescript is not a runtime language, I'm curious to know how it consumes energy.

    • @LeChuck.x17
      @LeChuck.x17 Год назад

      Maybe the transpilation process in AWS? AnyWays Deno supports both JavaScript and TypeScript as first class languages at runtime...

  • @mmmar7317
    @mmmar7317 8 месяцев назад

    How about showing us some code? Something smells

  • @stephendelacruzone
    @stephendelacruzone Год назад

    C & Rust are efficient... cool. 🤔

  • @stephendelacruzone
    @stephendelacruzone Год назад

    Every experienced devs tell how kinda hard developing in Rust.
    Rust is powerful... and fast.
    I just don't like how kinda hard to learn and how kinda slow the speed of Rust development is.

    • @dmitriidemenev5258
      @dmitriidemenev5258 Год назад

      The speed of Rust development is reasonably good, provided you've reached some maturity in the language. I'm at the Middle level right now and my speed is just good. As a senior developer, you can develop extremely fast. Rust gives you lots of fine tools, which work well together. You're given choices. If you know what you need, you can get it with little effort.

  • @oyewodayo
    @oyewodayo Год назад

    Rust is long term.

  • @sukapow
    @sukapow Год назад +1

    Lol let's go Rust Community

  • @fusion9619
    @fusion9619 Год назад

    F the job, I'm here for robots.

  • @ZettaiKatsu2013
    @ZettaiKatsu2013 Год назад

    Let us come back in 2032. What does the future hold for us ? :>

  • @pioneer_1148
    @pioneer_1148 Год назад

    Talking about making the world more sustainable using rust is nonesense. I adore rust as a language but it's more difficult to develop than most of the high level stuff and developers are expensive. If you want to fight climate change just use the extra money you would spend on programmers to build some solar.
    Also in my experience when people can use resources more efficiently they use that to do more with the same, not to do the same with less. The Ford Model T did 21 mpg, because it was light basic and had few frills. Despite way more efficient engines most modern Trucks don't do much better for fuel efficiency despite vastly more efficient engines. The reason? People decided they would rather have a big car, with a big engine and air-con that guzzled fuel than a small basic car that was efficient. European and Japanese cars are better but still sacrifice fuel efficiency for creature comforts.

    • @dmitriidemenev5258
      @dmitriidemenev5258 Год назад +1

      It is not difficult to develop in Rust. It is difficult to learn (mostly due to learning resources only maturing and high essential complexity of the domain). I've programmed in Rust for the past three years and it's pure joy and breeze to code in Rust. It becomes quite terse and you can express a lot with little, while remaining clear. Rust is productive not due to fast initial delivery but due to quick maintenance of the code. I can return to the old code, understand it perfectly, and modify without breaking what shouldn't have been broken. The code of others is understandable as well. Just like JavaScript, Rust can be used both on server-side and on client-side. And it provides macros, which allow to remove boilerplate.
      Even if Rust itself doesn't become very popular (despite more the doubling of its community size for the past two years), it still can be in the foundation for Python, JavaScript, TypeScript, Java, C# and Go libraries.

    • @realsong-fake
      @realsong-fake Год назад

      In general anything written in Rust seriously takes a fraction of the cost to operate/maintain than your typical high level languages.

  • @kanethemessiah5603
    @kanethemessiah5603 Год назад +6

    Rust is for troons only, real men use C++ and not this meme, forced language.

    • @emdeization
      @emdeization Год назад +2

      You're wrong kid.

    • @dmitriidemenev5258
      @dmitriidemenev5258 Год назад

      Please tell me this was sarcastic.

    • @kanethemessiah5603
      @kanethemessiah5603 Год назад

      @@emdeization You will never be a woman.

    • @emdeization
      @emdeization Год назад

      @@kanethemessiah5603 I see this is a sensitive topic for you. Keep your issue with your gender to yourself.

    • @kanethemessiah5603
      @kanethemessiah5603 Год назад

      @@emdeization >I see this is a sensi-ACK!