Is Rust the New King of Data Science?

  Рет қаралды 131,558

Code to the Moon

Code to the Moon

Жыл бұрын

A gentle introduction to machine learning with Rust. No prior knowledge of Rust or machine learning is required.
In the video I mention the channel "No Boilerplate" - check it out! / noboilerplate
---
Stuff I use to make these videos - I absolutely love all of these products. Using these links is an easy way to support the channel, thank you so much if you do so!!!
Camera: Canon EOS R5 amzn.to/3CCrxzl
Monitor: Dell U4914DW 49in amzn.to/3MJV1jx
Lens: Sigma 24mm f/1.4 DG HSM Art for Canon EF amzn.to/3hZ10mz
SSD for Video Editing: VectoTech Rapid 8TB amzn.to/3hXz9TM
Microphone: Rode NT1-A amzn.to/3vWM4gL
Microphone Interface: Focusrite Clarett+ 2Pre amzn.to/3J5dy7S
Tripod: JOBY GorillaPod 5K amzn.to/3JaPxMA
Mouse: Razer DeathAdder amzn.to/3J9fYCf
Computer: 2021 Macbook Pro amzn.to/3J7FXtW
Caffeine: High Brew Cold Brew Coffee amzn.to/3hXyx0q
More Caffeine: Monster Energy Juice, Pipeline Punch amzn.to/3Czmfox
Building A Second Brain book: amzn.to/3cIShWf

Пікірлер: 367
@NoBoilerplate
@NoBoilerplate Жыл бұрын
This is what it's all about, clear, useful Rust tutorial that also features pizza. Wonderful! Thanks for the shout out, too! 🙂
@amjadiqbal478
@amjadiqbal478 Жыл бұрын
Nice to see your comments team No Boilerplate.🐯🙏🇵🇰
@codetothemoon
@codetothemoon Жыл бұрын
Tris - thanks for your support of the channel and all that you do for this fantastic CS KZbin community!
@NoBoilerplate
@NoBoilerplate Жыл бұрын
@@amjadiqbal478 Thank you! It's just me, Tris, though!
@NoBoilerplate
@NoBoilerplate Жыл бұрын
@@codetothemoon Right back at you, Ken, grand job you're doing here - thank you very much!
@amjadiqbal478
@amjadiqbal478 Жыл бұрын
Tris, Surprised. Actually your channel is among the top Rust rankings, so I thought there would be a team. But you turned out to be a one man army👌. Love you.
@heredento
@heredento Жыл бұрын
I love how you responded the video title just at the start and then proceded to elaborate, I've always wanted to see a channel do that
@codetothemoon
@codetothemoon Жыл бұрын
Thanks, glad you liked it! 😎
@justin3594
@justin3594 Жыл бұрын
The answer is always no when a video name asks a question.
@kennethbeal
@kennethbeal Жыл бұрын
@@justin3594 "Is the answer always no when a video name asks a question?", next video title. :)
@justin3594
@justin3594 Жыл бұрын
@@kennethbeal or “What is the answer? No.”
@Microphunktv-jb3kj
@Microphunktv-jb3kj Жыл бұрын
why he is saying tek? .. annoying.. its clearly TEX , not TEC or TEK.. is he dyslexic or smt?
@wtcxdm
@wtcxdm Жыл бұрын
I started my rust learning because of No Boilerplate!
@ahmadolukotun3884
@ahmadolukotun3884 Жыл бұрын
Me too...got me hooked
@adrianlazar1454
@adrianlazar1454 Жыл бұрын
same
@mpogrzebski
@mpogrzebski Жыл бұрын
Haha same
@codetothemoon
@codetothemoon Жыл бұрын
Nice!! I find it great how a video or channel can inspire and change the trajectory of one's journey. It's one of the many reasons I love this platform!
@Ma1ne2
@Ma1ne2 Жыл бұрын
Same here :D
@omaredumx
@omaredumx Жыл бұрын
"The short answer is... No" Loved that intro 😂
@codetothemoon
@codetothemoon Жыл бұрын
haha thanks, I like to cut to the chase 😎
@dhananjaysingh4945
@dhananjaysingh4945 Жыл бұрын
First time I heard the conclusion of title at the very start of video. That's a good content for me
@codetothemoon
@codetothemoon Жыл бұрын
Hah, thanks! Hopefully you found the long answer valuable too!
@dhananjaysingh4945
@dhananjaysingh4945 Жыл бұрын
@@codetothemoon Is there any series you have done?...from start to finish a rust project. I think people like me like to build something by looking and then reproduce it by modifications. Subbed for the upcoming content anyways😍
@Rabixter
@Rabixter 2 ай бұрын
Nice intro. I like the honesty and that you didn't beat around the bush lol.
@robmulla
@robmulla Жыл бұрын
Amazing video! I make data science content using python and was thinking about trying out Rust during a live stream. This video was a great starting guide. Subscribed!
@codetothemoon
@codetothemoon Жыл бұрын
Thanks so much Rob! I saw a bit of your live stream last night using Rust - fantastic work. I've subscribed to your channel as well!
@robmulla
@robmulla Жыл бұрын
@@codetothemoon Thanks! I quickly found out there is a steep learning curve with Rust from python, but I can see why people love it. Keep making great videos. Link to my stream in case anyone is interested: kzbin.info/www/bejne/lXyul4KrhM6dgLs
@Dominik-K
@Dominik-K Жыл бұрын
Decision trees are amazing, and I'm glad to see rust be able to calculate those. The best feature is actually it being based purely on statistics and the algorithm being immediately explainable. Random Forests and similar techniques building up on decision trees can help to predict outcomes in a human understandable way. Which can be good for some regulatory fields as well, where explainablity of conclusions is necessary
@codetothemoon
@codetothemoon Жыл бұрын
I agree with all of this! Neural networks seem to suck all of the mindshare away from other approaches - while it's the only game in town for the more ambitious use cases, they do have their downsides. I feel like Decision trees (and RF) are at a great cross section of performance and human understandability that can be a great fit for many applications.
@someonespotatohmm9513
@someonespotatohmm9513 Жыл бұрын
Neural networks is what you use when you don't know what to use anymore. There is a lot of problems we have no good solutions for. But also a lot of cases where ppl didn't think about ol' reliable.
@ScottBrown124
@ScottBrown124 Жыл бұрын
Random forests aren't particularly explainable at scale either. You *can* explain exactly how a decision was made, but that won't necessarily give you any insight into why the output space was partitioned the way it was in a way that means anything to a human.
@TAP7a
@TAP7a 7 ай бұрын
@@ScottBrown124 there are great ways to explain a random forest. SHAP values can help a little bit, but that's true of NNs, and they aren't great. Partial dependence plots can be useful if you're only looking at a single record. But RFs have a cool feature they share with decision trees which is the Gini impurity, or whichever other metric you're using to optimize your splits. In short, you can follow a record down each decision tree and aggregate the change to the impurity induced by splitting on each variable, so in the end you have the Conditional Feature Contributions, or the total impact of each feature on the decision. On its own, it won't be able to give you a scorecard model printout or something as easy as a logistic regression, but here's an example. If you were working on a tax fraud detection problem the CFCs might indicate that the income received from benefits in kind, capital gains, having a dependent, the total tax paid, and the submission date would contribute most to a positive identification, which would be passed on to the investigations team as starting points. They might then find that actually there had been some chicanery committed with the reporting of capital gains received on highly appreciating benefits in kind (I don't know tax evasion strategies) that resulted in underpayment, but the dependent and submission date were spurious correlations. You can even then aggregate CFCs to all training records in a given class or bin and identify what features were most frequently the drivers of, or had the largest sum of contributions towards, making a prediction that puts a record in that outcome On top of CFCs you have feature importance inherent to the calculation of a bootstrapped model, which provides a level of global interprability. There's even the nuclear option, applicable to any predictive model, where you just train a single decision tree on the output of the main model as a surrogate, which should explain the (likely simplified) relationships discovered by the main model. Anything more complicated than a single CART tree, subset of a GLM, or _maybe_ an ARIMA model if your customers are really technical, is not going to be able to confidently state that for a particular record the combination of features X, Y, and Z is exactly the driver of a decision. You've always got to compomise. For my taste, unless you're working on a very hard and very noisy problem like LLMs, recommendation algos or image processing, the compromise required to run an NN is too much. If your problem is a classification or regression on tabular data, a NN is probably a sledgehammer for your nut. But for me, the compromise offered by a Random Forest is actually very palatable
@rodolfoblasser3329
@rodolfoblasser3329 Жыл бұрын
I believe the value of Rust in DS is to actually build your own implementations (models, algorithms, etc.). At a low-level, you have the ability to understand core calculations and decide what architectures satisfies your needs.
@victorpinasarnault7910
@victorpinasarnault7910 Жыл бұрын
I was thinking in that point this week. Thank for your video.
@codetothemoon
@codetothemoon Жыл бұрын
thanks for watching!
@kodee2
@kodee2 Жыл бұрын
Sick video, also a big fan of no boilerplate. I think python has a place still as a high level language, but underlying libraries like pydantic used in FastAPI, to parse http requests, are already being rewritten in rust. Exciting to see it’s adoption
@codetothemoon
@codetothemoon Жыл бұрын
Thanks @kdodee2! I am excited as well!
@LtdJorge
@LtdJorge Жыл бұрын
All high performance Python libs are written in C/C++/Fortran, so Rust makes a good candidate 😊
@adsick_ua
@adsick_ua Жыл бұрын
I like your high contrast and minimalist VScode setup in the video.
@codetothemoon
@codetothemoon Жыл бұрын
Thanks!
@arkadiuszpaterak
@arkadiuszpaterak Жыл бұрын
What theme is it?
@jeffg4686
@jeffg4686 Жыл бұрын
@1:50 - 20 lines of code is genius for training. Love that style. When people go scrolling up and down, there's no way to keep track. Gotta keep it simple and tight. Have you made your way into building out a NN yet? Would love a video on that if you have experience with that. Would like to see uses outside of "object type identification" if you know of some interesting uses. Quite amazing what's being done out there with them.
@codetothemoon
@codetothemoon Жыл бұрын
Thanks Jeff!
@stanrock8015
@stanrock8015 8 ай бұрын
NoBoilerplate is a great channel as well. Lots of good Rust info out there.
@codetothemoon
@codetothemoon 8 ай бұрын
I agree he is fantastic!
@harshkumarmoroliya5272
@harshkumarmoroliya5272 Жыл бұрын
Hey tikz is an unknown key, how to fix that? I tried installing tikz from kde 'ktikz' package in arch repo, but still doesn't work. :/
@flogginga_dead_horse4022
@flogginga_dead_horse4022 Жыл бұрын
Thanks for the no boilerplate link too.
@codetothemoon
@codetothemoon Жыл бұрын
Glad you're checking it out!
@ARS-fi5dp
@ARS-fi5dp Жыл бұрын
Thank you for the Useful contents
@codetothemoon
@codetothemoon Жыл бұрын
Thanks for watching, glad to have you here!
@igormriegel
@igormriegel Жыл бұрын
Duuuudee, you're missing Polars, it is the Pandas for Rust.
@codetothemoon
@codetothemoon Жыл бұрын
Someone else pointed this out as well, I'm going to look into it! What's it like using Polars data frames as input for the various Rust ML crates?
@igormriegel
@igormriegel Жыл бұрын
@@codetothemoon They're poised to be the de facto standard, they implemented the Apache Arrow memory format, which came to guarantee compatibility among languages. Their implementation has Python bidings and Javascript(Node Js) bidings as well, they are awesome and truly performant
@tellezgerardoruben5202
@tellezgerardoruben5202 2 сағат бұрын
That was the only part I was missing.
@noabstruction
@noabstruction Жыл бұрын
I just loved the fast 20s of this video
@codetothemoon
@codetothemoon Жыл бұрын
Thanks, glad you liked it!
@user-tk1re2hd2y
@user-tk1re2hd2y Жыл бұрын
Thanks for the short answer at the beginning 👍
@codetothemoon
@codetothemoon Жыл бұрын
Of course, thanks for watching!
@vectoralphaAI
@vectoralphaAI Жыл бұрын
All Rust needs is really stable and useful standard libraries for wide industry use in AI, ML and Data Science as well as Computer Graphics/ Rendering and Game Development and i will use Rust as my main language. Hopefully one day.
@codetothemoon
@codetothemoon Жыл бұрын
I'm hoping for this as well!
@jeremykothe2847
@jeremykothe2847 Жыл бұрын
Python has too much traction, even *if* rust were a more approachable language for the kinds of people that work in ML. I've spent the last week playing with tch, a rust pytorch binding, and while I was impressed as hell at how well it worked and how easy it was to use, and of course how fast, memory efficient etc it was, python is something you can teach to a non-programmer in a very short while. Rust...
@jeremykothe2847
@jeremykothe2847 Жыл бұрын
But here's hoping! Remember for Data Science in general, R is actually more used than Python. It's only ML/nets where Python is the king.
@mariobroselli3642
@mariobroselli3642 2 ай бұрын
​@@jeremykothe2847 R sucks in Performance 😢
@jeremykothe2847
@jeremykothe2847 2 ай бұрын
@@mariobroselli3642 so true. And, frankly, it's an ugly language :D
@IanRiley915
@IanRiley915 Жыл бұрын
Another great thing to look at for rust in DS would be the Python FFI bindings. I think rust could have a huge impact on the DS community that way.
@TCMx3
@TCMx3 Жыл бұрын
you can easily generate them with pyo3 or unifii. There are others too, I'm sure.
@codetothemoon
@codetothemoon Жыл бұрын
I hadn't considered this!
@astronemir
@astronemir Жыл бұрын
@@codetothemoon re-write the decision tree algorithm in Rust, would be dope!
@arjanmarku3895
@arjanmarku3895 Жыл бұрын
I just love the sound of that keyboard. What model is that and what switches are you using?
@hnahapet
@hnahapet Жыл бұрын
Yes please
@Don-ix2ok
@Don-ix2ok Жыл бұрын
Sounds like brown tactile
@codetothemoon
@codetothemoon Жыл бұрын
Thanks! It's actually a Keebio Iris with Durock Shrimp Silent Tactile switches. Full disclosure - I struggled a bit typing during this video because I was still getting used to it 🙃 but it's a fantastic board.
@mageprometheus
@mageprometheus Жыл бұрын
Thanks. This looks great.
@codetothemoon
@codetothemoon Жыл бұрын
thanks for watching!
@ibrahim.3999
@ibrahim.3999 Жыл бұрын
good to see rust growing this fast 🦀 learn something new! anyway which theme you're using? thanks :)
@codetothemoon
@codetothemoon Жыл бұрын
glad you got something out of it! The theme is Sonokai, though it appears a bit more contrasty in the video because of the color grading. In any case it is currently my favorite theme 😎
@ibrahim.3999
@ibrahim.3999 Жыл бұрын
@@codetothemoon going to be my favourite too 😀
@dankotov1045
@dankotov1045 4 ай бұрын
I understand its not reasonable to expect you answering all debugging realted questions, however just on the off chance you reply to this. For the life of me, I can not figure out how to transform custom datatypes to be used with linfa. For example - I have a Vec
@hershreddy9154
@hershreddy9154 Жыл бұрын
What a great intro!
@codetothemoon
@codetothemoon Жыл бұрын
Thanks, glad you liked it!
@_hologram
@_hologram Жыл бұрын
Could I ask what keyboard are you using? Sounds great, bold and quiet :)
@codetothemoon
@codetothemoon Жыл бұрын
I believe for this video I was using a Keebio Iris (keeb.io/collections/iris-split-ergonomic-keyboard/products/iris-keyboard-pre-built) with Durock Shrimp switches. Lately I've been using a Corne keyboard with Gateron Red Pros (which are a bit louder)
@_hologram
@_hologram Жыл бұрын
Sorry, I realized later that you had already answered the same question, should have looked before in the comments. Thanks for answering
@AllOfMyWat
@AllOfMyWat Жыл бұрын
two of my favorite rust folks!
@codetothemoon
@codetothemoon Жыл бұрын
Thanks!! 😎
@HyperFocusMarshmallow
@HyperFocusMarshmallow Жыл бұрын
Rust is great when you want to impose lots of structure on your data and keep types under control. But it seems like in machine learning you kind of want to already format your data into being just an array of numbers so you can unleash maths libraries on it. That said, this seemed more convenient than I had expected. I’ve been staying in python land because I’ve felt forced to. I’ll probably still stay in python land for this kind of stuff, but what you showed here at least indicate that the option is there. Mostly seem like the main difference is that I’d have to add a few “to_owned()” and “unwrap()” though, but the functional chaining was very nice.
@ChronicTHX
@ChronicTHX Жыл бұрын
You can do both in rust. This is not Java.
@KirbyZhang
@KirbyZhang Жыл бұрын
I thought he'd at least try to use a Rust REPL or at least explain how usable it is or isn't.
@japrogramer
@japrogramer Жыл бұрын
How did you set up the auto complete and can the same complete be done on vim?
@katech6020
@katech6020 Жыл бұрын
you can use rust-analyser, treesitter and vim-lsp to get the complete rust IDE experience
@codetothemoon
@codetothemoon Жыл бұрын
This was VSCode so I just installed the rust-analyzer plugin. I use neovim normally which has a built-in LSP, I think for regular vim you need to use an LSP plugin
@NamasteProgramming
@NamasteProgramming Жыл бұрын
No boilerplate is amazing for explaining rust to others
@codetothemoon
@codetothemoon Жыл бұрын
I agree!
@dinophage
@dinophage Жыл бұрын
Love No Boilerplate and the algorithm knows it so now I am here too :) or maybe it's because I'm a data scientist
@codetothemoon
@codetothemoon Жыл бұрын
Nice, I am very happy to have more data science folks here!
@CaioMizerkowski
@CaioMizerkowski Жыл бұрын
Can you talk about Polars? I love to use it in Python in my projects.
@codetothemoon
@codetothemoon Жыл бұрын
I've put it on the todo list, I'll give it a spin at some point!
@Thekingslayer-ig5se
@Thekingslayer-ig5se 4 ай бұрын
Sir your tutorial is just brilliant. One small doubt sir. I am a data analyst I am well versed in python. Like I am good in it. And I am interested in rust. Will there be any future demand for rust ? In data science ? Can u explain
@holthuizenoemoet591
@holthuizenoemoet591 Жыл бұрын
the reasons i still pref Python for data-science are the following: ease of readability, useful for non CS scholars, and the ease of prototyping.
@codetothemoon
@codetothemoon Жыл бұрын
Very valid reasons!
@SolaireML
@SolaireML Жыл бұрын
great job
@codetothemoon
@codetothemoon Жыл бұрын
Thank you!
Жыл бұрын
will these crates implement alphatensor's new faster matrix multiplication algos?
Жыл бұрын
also there is a new number type called "posit", it would be great if you could showcase these new stuff
@codetothemoon
@codetothemoon Жыл бұрын
not sure!
Жыл бұрын
@@codetothemoon would be cool tho
@aligharaibeh3761
@aligharaibeh3761 2 ай бұрын
What prelude mean?
@anishbhanushali
@anishbhanushali Жыл бұрын
Until I see rust being used for CUDA or ROCm gpu natively as c++, I'll still be little skeptical about Rust's entry in ML domain. that being said, I would love to see more and more cpu intensive stuff ( looking at you dask !!) tobe ported in rust.
@codetothemoon
@codetothemoon Жыл бұрын
Yeah it seems like Rust GPU support is not great but is in the works, it will be interesting to see how things pan out
@katech6020
@katech6020 Жыл бұрын
You may want to take a look at rust-gpu library, it is still early
@anishbhanushali
@anishbhanushali Жыл бұрын
@@katech6020 thanks ... I'll take a look
@harleyspeedthrust4013
@harleyspeedthrust4013 Жыл бұрын
I have been using it for CUDA, there's a family of crates ("cust", "rustc_codegen_nvvm", "cuda_builder", "nvvm") that allow you to write and execute CUDA kernels all in rust.
@Lord2225
@Lord2225 Жыл бұрын
Rust have quite promising CUDA support. Overall cuda c/c++ is llvm based. Unfortunelty unofficial and not all features are avalible (like almost all librares are not ported, and even some basic instructions are still unsuported, but it is still quite an achivment cus C++ needs special compiler&syntax for it.
@akin242002
@akin242002 Жыл бұрын
I dought it. With GCP & Azure being the biggest data engineering software providers, they tend to use different programming languages. C# and Python for Azure's data factory. Java, Kotlin, Go, and Python for GCP Dataflow. Google will always support their languages first (Kotlin & Go).
@codetothemoon
@codetothemoon Жыл бұрын
Maybe you're right - it'll be interesting to see how things play out
@y1ink
@y1ink Жыл бұрын
❤️ for giving the answer in 5 secs rather than riding out for 10 mins
@codetothemoon
@codetothemoon Жыл бұрын
Thanks, ❤️ for watching!
@mmatongo
@mmatongo Жыл бұрын
What is that vscode theme?
@codetothemoon
@codetothemoon Жыл бұрын
Sonokai 😎
@gamcd
@gamcd Жыл бұрын
What font are you using?
@codetothemoon
@codetothemoon Жыл бұрын
I believe it is Menlo
@gamcd
@gamcd Жыл бұрын
@@codetothemoon thanks very much also keep up the good work w the vids
@codetothemoon
@codetothemoon Жыл бұрын
@@gamcd thanks will do!
@starlord0208
@starlord0208 Жыл бұрын
What is the name of this wonderful color theme?
@codetothemoon
@codetothemoon Жыл бұрын
Sonokai! 😎
@starlord0208
@starlord0208 Жыл бұрын
@@codetothemoon thanks!
@victorpinasarnault7910
@victorpinasarnault7910 Жыл бұрын
Python is still the preferable choice, but, with no doubt, Rust lang will play a important role in data science field in the near future.
@codetothemoon
@codetothemoon Жыл бұрын
I agree!
@jamespower5165
@jamespower5165 Жыл бұрын
The main reason Python is so big is because it is easy to program and so more people program on it and so it has an enormous library of resources you can just import. Rust is fast and an attempt has been made to make it easier to code with. But it won't really be as welcoming to programmers and so will struggle to build a library of the same size. So for anything that's not really hard-core computer science, which just uses computer science, like data science, Python will be hard to beat
@itellyouforfree7238
@itellyouforfree7238 Жыл бұрын
well no, actually Julia is the preferable choice
@thedatajanitor9537
@thedatajanitor9537 Жыл бұрын
@@jamespower5165 They don't really understand James. Most of these are kids who don't work in the real-world. The gold standard in applied machine learning is Python and that's not going to change. I wouldn't try to convince people who really have no clue... like almost everyone on this channel. I'm not sure if the channel owner allows links to other channels but if he does.. hear you go. This is my answers. kzbin.info/www/bejne/g2qliqV-otZ1mpI
@CripplingDuality
@CripplingDuality Жыл бұрын
I want it to be Elixir but it'd be nice to have some competition in this space generally
@codetothemoon
@codetothemoon Жыл бұрын
I hadn't heard of Elixir being a big contender in the DS space - do you think it's a good fit for that purpose?
@hidekxyz
@hidekxyz Жыл бұрын
@@codetothemoon You don't see elixir in general in regard to this purpose, since elixir's main utility is for highly concurrent web applications, however, elixir's creator Jose Valim is working on a series of tools and libs for DS, you can search numerical elixir (or nx)
@CripplingDuality
@CripplingDuality Жыл бұрын
@@hidekxyz I (and I think Jose too) would say Sean Moriarty is more the prime mover but yeah Nx is very promising, along with Livebook, Axon, and Explorer they represent a big push to try and compete in that space, though it's of course very early days.
@CripplingDuality
@CripplingDuality Жыл бұрын
@@codetothemoon I think as a language it has potential, as it doesn't suffer from many of Python's limitations. But the ecosystem, and and I don't just mean the ubiquity of libraries for ML operations, but the capabilities of Nx, are still behind in some regards. It's nonetheless catching up quickly, so hopefully we will see a real race happening soon enough :)
@miettoisdev
@miettoisdev 2 ай бұрын
how about a benchmark against same python implementations??
@BatmanFailedSociety
@BatmanFailedSociety Жыл бұрын
I really like short answer.
@codetothemoon
@codetothemoon Жыл бұрын
Nice, I like to get to the point quickly!
@juliansteden2980
@juliansteden2980 Жыл бұрын
no mention of polars? ;) its a great DataFrame library and an alternative to pandas and available in rust as well as python! :D
@codetothemoon
@codetothemoon Жыл бұрын
To be honest I hadn't heard of it! I'll put it on my list of stuff to check out. What is it like to use Polar data frames with Rust ML crates?
@igormriegel
@igormriegel Жыл бұрын
@@codetothemoon It is like working with pandas on Python
@anonymoustechiie
@anonymoustechiie Жыл бұрын
Liked for the answer in beginning
@codetothemoon
@codetothemoon Жыл бұрын
glad you liked it!
@robinmoussu
@robinmoussu Жыл бұрын
Thanks for making me discover @NoBoilerplate!
@amjadiqbal478
@amjadiqbal478 Жыл бұрын
It is really wonderfully stuffed on Rust.
@amjadiqbal478
@amjadiqbal478 Жыл бұрын
NoBoilerplate; derived from the progammatic terms.
@codetothemoon
@codetothemoon Жыл бұрын
You're welcome, glad you're checking it out!
@BatmanFailedSociety
@BatmanFailedSociety Жыл бұрын
Yes!
@codetothemoon
@codetothemoon Жыл бұрын
😎
@WearMySpankyPants
@WearMySpankyPants Жыл бұрын
I love the discovery that pizza is worth 250 lines of rust code in happiness
@codetothemoon
@codetothemoon Жыл бұрын
Hah that's true! I feel so fortunate to not have to choose between one or the other...
@analisamelojete1966
@analisamelojete1966 Жыл бұрын
Here because of No Boilerplate! Also, prepare for the amount of “Data Scientists” and “analysts” moving to rust 😂
@codetothemoon
@codetothemoon Жыл бұрын
Nice, really great to have you here!
@analisamelojete1966
@analisamelojete1966 Жыл бұрын
@@codetothemoon Thank you!
@analisamelojete1966
@analisamelojete1966 Жыл бұрын
@@codetothemoon Btw, Do you offer some online rust courses on platforms like Udemy? I’ve been trying to find a tutorial on how to build a simple CRUD Api with Warp, Mongo and Tokio. However Routing and how to keep a database connection has been complicated for me. Many tutorials out there are a clone of one another and have too much boilerplate.
@aoimiyamori9517
@aoimiyamori9517 Жыл бұрын
Why do you have to to_owned the features and labels? Shouldn't it work by reference? Even Python (with numpy) doesn't require you to copy the data when running a scikit-learn model on it.
@dev-rachid
@dev-rachid 6 ай бұрын
Great👍
@nicklam3594
@nicklam3594 Жыл бұрын
Sir please consider doing an introduction to ndarray and rust for numerics , cause it is realy beating my ass. eg Making a polynomial regression in rust.
@valdemarkjaer
@valdemarkjaer Жыл бұрын
Julia has better chances to make a difference in DS. Julia and Rust together can be unbeatable.
@codetothemoon
@codetothemoon Жыл бұрын
Julia seems great from what I've seen. But now Mojo seems like it might become a serious contender....
@ivandashkevich3398
@ivandashkevich3398 Жыл бұрын
Fun fact: on 0:37 there is green book to the left, which title translates from russian like "Troll tamer" Easter egg trolling
@codetothemoon
@codetothemoon Жыл бұрын
lol wow, I'd like to read that book (preferably an english translation)
@frazuppi4897
@frazuppi4897 Жыл бұрын
python is the king of DS cuz (most) DS people don't know how to code so they copy & paste stuff and create spaghetti code I am a ML engineer with strong SE background Love the content
@codetothemoon
@codetothemoon Жыл бұрын
Thanks for the kind words!
@_drakz13
@_drakz13 10 ай бұрын
Good video, the answer is just in first 3 seconds directly.
@codetothemoon
@codetothemoon 10 ай бұрын
thanks, I like to get to the point!
@ehsankhorasani_
@ehsankhorasani_ Жыл бұрын
the king of data science is Go!
@codetothemoon
@codetothemoon Жыл бұрын
interesting, i haven't tried using Go for it!
@tarasst6887
@tarasst6887 Жыл бұрын
R is a best Lang for DS!!
@codetothemoon
@codetothemoon Жыл бұрын
Seems like R still has a strong community!
@tarasst6887
@tarasst6887 Жыл бұрын
@@codetothemoon still???? Ahhaha
@LowestofheDead
@LowestofheDead Жыл бұрын
Rust is effective when you know exactly what to do, and need to do it as efficiently as possible. In Data Science you don't even know what you're doing, so you need prototyping - which is the main thing that Python is good at.
@codetothemoon
@codetothemoon Жыл бұрын
100% agree!
@TCMx3
@TCMx3 Жыл бұрын
Rust may be increasing in its representation, but this is 15 years too early to even challenge Python. And it's not because Rust isn't a great language, or Python is so great. Most new DS are scial and hard scientists, not CS majors. Trust me, Ive tried, but getting DS to even trying a "difficult" compiled language is like pulling teeth. Doesn't even matter if it's actually hard.
@codetothemoon
@codetothemoon Жыл бұрын
Maybe you're right! There's definitely something to be said for Python's simplicity, which - like you said - is especially great for folks without a CS background
@AhmedIsam
@AhmedIsam Жыл бұрын
@@codetothemoon @TCM I don't think Rust will ever get there. Use rust if you want a single binary that wraps everything. This is probably not what you want when you are constnantly experimenting with new ideas (which is what a scientist's life is all about, including data-scientist). That's why scripting languages are popular among them. They want the interactivity of the console. I can only imagine a niche application for Rust at production time, definitely not development time.
@someonespotatohmm9513
@someonespotatohmm9513 Жыл бұрын
@@AhmedIsam automation is probaply that "niche". A lot of ppl who learned coding while doing and need performance.
@qx-jd9mh
@qx-jd9mh Жыл бұрын
The long compile times of Rust make data science tasks inane. You want fast feedback loops. Just use Julia so you don't need to deal with the borrow checker.
@qx-jd9mh
@qx-jd9mh Жыл бұрын
@@AhmedIsam lol if all you have is a hammer, everything looks like a nail? There are plenty of ways to deploy data science code without Rust
@Naruto-oc6mi
@Naruto-oc6mi 3 ай бұрын
i think python for scientist computing is the best than rust, because the syntax is just beautiful, no complex rule, so you can focus on the algorithm you are building, and for the performance most of heavy task in python is written is c++ code (mostly), c, and cuda, for example the most popular machine learning framework in python: tensorflow and pytorch are written in c++ and cuda (for gpu programming), python is just binding with them (as the user interface for easy to use) and other library like numpy the core is written in c, and opencv the core is written in c++. well maybe there are still little time consumed when connecting the python frontend to the c++/c backend. when the model is build, it can be build to various format, eg : special format that can be used to reedited the architecture, final format aka binary code like .tflite and .onnx
@danielfm123
@danielfm123 Жыл бұрын
but no interactive console :(
@codetothemoon
@codetothemoon Жыл бұрын
There actually is one! Also I believe you can use Rust in Jupyter notebooks.
@atanjacket
@atanjacket Жыл бұрын
Lmao the immediate click bait turn around at the beginning is nice.
@codetothemoon
@codetothemoon Жыл бұрын
Thanks, glad you liked it!
@txkyle2013
@txkyle2013 Жыл бұрын
This font is nice, whatever it is
@codetothemoon
@codetothemoon Жыл бұрын
Thanks, I believe it is Menlo!
@spacelem
@spacelem 6 ай бұрын
Between R and Julia, I feel pretty covered for all my data science needs. Seeing data science done in a non-REPL language doesn't make me want to try it.
@31redorange08
@31redorange08 Жыл бұрын
The result is underwhelming. Why is there no "Ok" outcome in the left branch?
@codetothemoon
@codetothemoon Жыл бұрын
Sorry to disappoint! What do you think could have made it better? I think there was no "Ok" in the left branch because there was no (or not enough) data points leading to "Ok" results in cases where the left branch is taken.
@Zimi485
@Zimi485 Жыл бұрын
(Don't forget R)
@codetothemoon
@codetothemoon Жыл бұрын
I realize a lot of DS folks live in that world - I gave R a sincere try a few years ago but I personally didn't fully grasp what made it better than the more modern options like Python, Scala and now Rust. YMMV
@Zimi485
@Zimi485 Жыл бұрын
@@codetothemoon Just startet by Studies as a DS Engineer and most of the time Python is used for "in production" environments as a glue language, sometimes c,c++,rust or golang for compute things but R is the shiny kid on the block with decades of experience and polishing of graphs and plots. R ist just made for fancy graphics at this point, but a lot of banks still have their ml models in R
@oykunj3630
@oykunj3630 Жыл бұрын
Iz the gud vids, friend can u us the make vid for rust ml app? U know make full fir students have no money yas,
@codetothemoon
@codetothemoon Жыл бұрын
That's kind of what this one is! I have two other vids that you might be interested in - "Rust Artificial Intelligence" and "Rust OpenAI Integration"
@floriansalihovic3697
@floriansalihovic3697 Жыл бұрын
Your keyboard sounds interesting.
@codetothemoon
@codetothemoon Жыл бұрын
thank you! if you like the sound of the keyboard you'll definitely like the newest video 😎
@johnychinese
@johnychinese Жыл бұрын
Wait, for a second I thought I was watching No Boilerplate 😅
@codetothemoon
@codetothemoon Жыл бұрын
We're a little (ok, a lot) less refined here but we try to keep up with No Boilerplate!
@sazk4000
@sazk4000 Жыл бұрын
Python uses underlying C++ libs for the computational part. That is where Rust can be used..but it won't be replacing Python itself at the higher level.
@codetothemoon
@codetothemoon Жыл бұрын
I doubt Rust will replace Python for things like manual "offline" data exploration, but Rust definitely has some advantages over Python especially in situations where the DS/ML code is part of a business critical customer-facing product where failures would be very costly
@evalinor
@evalinor Жыл бұрын
we all know why ds use python, its all about simple syntax and ofc additional library(tensor, keras, etc..). For regular python enjoyer hard to switch to rust
@codetothemoon
@codetothemoon Жыл бұрын
I agree!
@marioschmidt1251
@marioschmidt1251 Жыл бұрын
You know you are a programmer when you need to train a machine learning model to know whether you are happy.
@yash1152
@yash1152 Жыл бұрын
0:53 will watch later
@MudroZvon
@MudroZvon Жыл бұрын
Rust is the King 👑 in Blockchain development
@codetothemoon
@codetothemoon Жыл бұрын
Yeah it seems to have some traction there, which makes sense the way it forces error handling...
@kleinesfilmroellchen
@kleinesfilmroellchen Жыл бұрын
I have never seen anyone pronounce "LAY-tek" or "TICK-z" so strangely
@codetothemoon
@codetothemoon Жыл бұрын
Hah sorry about that, I'm new to both. I thought I did my due diligence with Latex and gathered that there are multiple ways to pronounce it and the one I chose was one of the "acceptable" ways. Tikz is a different story - I'd recently talked about something completely unrelated called TiKV for which the "Ti" is pronounced "Tie" - so yeah I probably butchered it
@ApostropheErEpiphany
@ApostropheErEpiphany Жыл бұрын
@@codetothemoon I refer to your channel (and no boilerplate) often, but… to my pedantic, ADHD+OCD brain, repeatedly hearing ‘x’ pronounced ‘k’ was worse than fingernails on a chalkboard. 😵‍💫 I’m not trying to be a d*ck, but I couldn’t focus on anything else in the video. Anyway, I’m interested in Rust/DS so I’m gonna take my ADD meds, meditate, light a candle, vape some CBD, and try again! 🧘‍♂️ (P.S. still subscribed 👍)
@nostrorom
@nostrorom Жыл бұрын
@@ApostropheErEpiphany he's right on that point though. I can't vouch for 'ah' vs 'ay', but in the LaTeX world (academia, math, physics etc..) the "x" is actually pronounced "k" as the greek letter "khi". tex => tech
@rmvlvs5228
@rmvlvs5228 8 ай бұрын
A Monokai user like me :)
@codetothemoon
@codetothemoon 8 ай бұрын
yep Monokai ftw!
@sandworm9528
@sandworm9528 Жыл бұрын
Fuck! 2 seconds in, you got me
@codetothemoon
@codetothemoon Жыл бұрын
Very happy to have you!
@apstl7106
@apstl7106 Жыл бұрын
its not fast to write, when i need speed i use julia
@itellyouforfree7238
@itellyouforfree7238 Жыл бұрын
sure, like waiting a couple minutes every time you restart the kernel and execute `using Plots; using DifferentialEquations`...
@codetothemoon
@codetothemoon Жыл бұрын
Nice, I'm excited to take Julia for a spin
@NA-di3yy
@NA-di3yy Жыл бұрын
"Сон Бодлера" и "Эффект Люцифера", понятно
@codetothemoon
@codetothemoon Жыл бұрын
what does that mean?
@NA-di3yy
@NA-di3yy Жыл бұрын
@@codetothemoon you tell me, that's not my book shelf @ 0:37 =) those two titles sound most intriguing to me personally
@codetothemoon
@codetothemoon Жыл бұрын
@@NA-di3yy oh, that is stock footage, not my bookshelf hah. Mine is significantly less interesting
@spirit_x64
@spirit_x64 7 ай бұрын
Julia exists...
@codetothemoon
@codetothemoon 7 ай бұрын
it does indeed! 🙃
@olsuhvlad
@olsuhvlad Жыл бұрын
1 In the beginning was the Word, and the Word was with God, and the Word was God. 2 The same was in the beginning with God. 3 All things were made by him; and without him was not any thing made that was made. 4 In him was life; and the life was the light of men. 5 And the light shineth in darkness; and the darkness comprehended it not. (Jn.1:1-5) 9 That was the true Light, which lighteth every man that cometh into the world. 10 He was in the world, and the world was made by him, and the world knew him not. 11 He came unto his own, and his own received him not. 12 But as many as received him, to them gave he power to become the sons of God, even to them that believe on his name: 13 Which were born, not of blood, nor of the will of the flesh, nor of the will of man, but of God. 14 And the Word was made flesh, and dwelt among us, (and we beheld his glory, the glory as of the only begotten of the Father,) full of grace and truth. (Jn.1:9-14)
@codetothemoon
@codetothemoon Жыл бұрын
At some point ostensibly he created Rust and Data Science as well, for which I am very grateful!
@sammflynn6751
@sammflynn6751 Жыл бұрын
sorry to be blunt but what why?
@codetothemoon
@codetothemoon Жыл бұрын
no need to apologize, it's a great question! Some possible reasons are (1) the need for DS/ML in an existing project that is already written in Rust, and there is a desire for language isomorphism, (2) you'd like to learn Rust and are passionate about DS/ML, (3) your DS code is running in production and you'd like the extra safeguards that Rust provides
@varshard0
@varshard0 4 ай бұрын
So crates are linfra linfra-trees
@igordemetriusalencar5861
@igordemetriusalencar5861 Жыл бұрын
I think Julia programming language will be the default Data science language in the 5-10 years ahead.
@techpriest4787
@techpriest4787 Жыл бұрын
I think nobody is going to write any code in the future. AI will. Just like artists will use text-to-image/3D. Programmers will be using text-to-source if non-neuromorphic runtimes are needed.
@lopyus
@lopyus Жыл бұрын
After I trying Julia, I do all my DS projects using it. I like their autodiff and DataFrame library, such a relief from pytorch and pandas 😄
@Jeff-ih4rk
@Jeff-ih4rk Жыл бұрын
lookss good ! will try it !
@codetothemoon
@codetothemoon Жыл бұрын
Been meaning to check out Julia, I've moved it much higher on my todo list after all the great things folks are saying about it here...
@techpriest4787
@techpriest4787 Жыл бұрын
Why is that though? The only thing I know about Julia is that it is more math driven.
@geoffrygeorgemathew3505
@geoffrygeorgemathew3505 Жыл бұрын
* historical data ? 🤔 0:33
@codetothemoon
@codetothemoon Жыл бұрын
I see what you're saying - what I meant is that in the future you will have new data points that you need to perform inferences on. The way I worded it probably wasn't the best 🙃
@jorge1869
@jorge1869 Жыл бұрын
Rust is the king in data science and I'm Leonardo Di Caprio.
@codetothemoon
@codetothemoon Жыл бұрын
Which makes you the king of the world!! 👑
@amjadiqbal478
@amjadiqbal478 Жыл бұрын
Rust is not; but going to be the King🐯🙏🇵🇰
@NamasteProgramming
@NamasteProgramming Жыл бұрын
At least we can agree on something 🇮🇳
@amjadiqbal478
@amjadiqbal478 Жыл бұрын
Thanks dear for your respect and love 🙏 And nice having your comments and agreement. But we also agree on countless other things. I love and like India and Indian people. They are very nice. The Indian culture is deep rooted and wonderful. Vedic knowledge is really superb. The Rishi's/ munni's / sanyasi's were all great teachers, that was once the grandeur of this region. Alas, we lost such great gurus of antiquity and no one left in inheritence. Difference is only that of superficial or deep study and thereupon practice Why should we hate each other or anybody? I find no reason. Thanks
@codetothemoon
@codetothemoon Жыл бұрын
And perhaps also a peacemaker between nations! ❤️
@Indonesia_Emas_
@Indonesia_Emas_ 3 ай бұрын
if its easy to use then yes
@codetothemoon
@codetothemoon 3 ай бұрын
not sure if we're there quite yet!
@Indonesia_Emas_
@Indonesia_Emas_ 3 ай бұрын
@@codetothemoon yeah, I really want the east of use of rust in Machine Learning so we can train model faster and memori efficient and will have model that coded in pure rust so it will have better performance than model that coded in python. because I just have limited resource device that make it very slow when training model, i used google collab free gpu it still training slowly, so i really hope an efficient programming language implementation that fast dan efficient in memory like rust but also easy to use 😭😭😭😭😭
@Cathexis256
@Cathexis256 Жыл бұрын
could have stopped the video at 2 seconds in to get the answer lol
@codetothemoon
@codetothemoon Жыл бұрын
Many folks probably did just that! And that's perfectly fine 😎
@motbus3
@motbus3 Жыл бұрын
Bare necessities
@codetothemoon
@codetothemoon Жыл бұрын
Indeed!
@jamespeterson7979
@jamespeterson7979 Жыл бұрын
hu? AndyArray? ^^
@codetothemoon
@codetothemoon Жыл бұрын
Ndarray 😎
@houtamelocoding
@houtamelocoding Жыл бұрын
Unfortunately Rust is still too young on data science, there are no easy-to-setup/prototype libraries which is what make python appealing, and that sucks because I really dislike python and I'll be very happy when rust gets there :)
@codetothemoon
@codetothemoon Жыл бұрын
what do you mean by easy to setup / prototype in this context? Would Linfa qualify? Assuming a bit of Rust knowledge, I personally didn't find it any harder to get started with than something like scikit-learn
@houtamelocoding
@houtamelocoding Жыл бұрын
@@codetothemoon A few years ago I worked with a reinforcement learning package that in order to train your models this is all that was required: -Define your hyperparameters in a config file. -Set up your reward system. -Feed the observations to the package's code. Recently I tried looking for reinforcement learning in rust and I couldn't find a package that had a process like that.
@itellyouforfree7238
@itellyouforfree7238 Жыл бұрын
have you tried julia in the meanwhile? much better than python for scientific computing
@Cm0nd00d
@Cm0nd00d Жыл бұрын
what happened to petting cats?
@codetothemoon
@codetothemoon Жыл бұрын
The algorithm deemed it not heavily correlated enough with happiness to include it in the model!
@Cm0nd00d
@Cm0nd00d Жыл бұрын
oh interesting! thanks for following up!
Rust vs 7 Other Languages You Probably Haven't Tried
8:55
Code to the Moon
Рет қаралды 73 М.
Would you like a delicious big mooncake? #shorts#Mooncake #China #Chinesefood
00:30
Omega Boy Past 3 #funny #viral #comedy
00:22
CRAZY GREAPA
Рет қаралды 34 МЛН
rust runs on EVERYTHING (no operating system, just Rust)
18:10
Low Level Learning
Рет қаралды 344 М.
Rust Data Modelling Without Classes
11:25
No Boilerplate
Рет қаралды 159 М.
Why I Switched from Python to Rust for AI Deployment
9:57
Code In a Jiffy
Рет қаралды 15 М.
The Ultimate Tier Programming Tier List | Prime Reacts
26:57
ThePrimeTime
Рет қаралды 302 М.
Rust for Python data engineers - Karim Jedda
27:30
EuroPython Conference
Рет қаралды 4,8 М.
Why Rust is NOT a Passing Fad...
8:54
Travis Media
Рет қаралды 25 М.
How Rust rose to dominance (by accident)
11:01
Let's Get Rusty
Рет қаралды 32 М.
Make an AI using Rust! Matrices and Neural Networks Tutorial
1:16:40
Power up all cell phones.
0:17
JL FUNNY SHORTS
Рет қаралды 50 МЛН
Дени против умной колонки😁
0:40
Deni & Mani
Рет қаралды 9 МЛН
How To Unlock Your iphone With Your Voice
0:34
요루퐁 yorupong
Рет қаралды 17 МЛН
Pratik Cat6 kablo soyma
0:15
Elektrik-Elektronik
Рет қаралды 8 МЛН
Обзор игрового компьютера Макса 2в1
23:34