Тёмный
Jeremy Chone
Jeremy Chone
Jeremy Chone
Подписаться
Channel focused on production coding with Rust, software engineering, and building next-gen applications.

- Rust programming language Tutorials and Courses
- Rust Language Full Coding sessions, for a cloud app, but fun game dev as well
- Rust Language Code Design and example for big app, small team cloud application development.

Our three key principles:

1) Simple Scales Better
2) Runtimes over frameworks
3) Code-Design First

britesnow.com/ (Building Next-Gen Cloud App - Architect & Dev services)
(Cloud Dev Company I have been running for over a decade)

Help support this channel: patreon.com/jeremychone

#RustLang #RustProgramming #LearnWhatMatters
Is AI Overhyped?
4:02
Месяц назад
5 Steps to Learn Rust Programming
25:06
Месяц назад
Rust genai - Multi-AI Providers Client
12:34
3 месяца назад
UI to HI - Next-Gen App Opportunities
8:04
4 месяца назад
Rust Error Handling - Best Practices
21:33
5 месяцев назад
UUID v7 vs. v4 + Rust Programming Examples
19:41
5 месяцев назад
Rust RPC Router - Axum/Tower/Bevy Style (E05)
10:15
9 месяцев назад
Rust - spawn_block optimization for Argon 2
3:11
9 месяцев назад
Axum 0.6 to 0.7 in 5 quick steps
6:15
10 месяцев назад
Комментарии
@snr407
@snr407 2 дня назад
Very good video! almost, such as good this video is not in japan. Appreciate!
@funnynews341
@funnynews341 4 дня назад
I really like your videos, but I'm really new and still very confused. I try to watch it over and over again to get acquainted and understand better. It would be great if there were more detailed real projects for axum. Can you do real projects like whatsapp clone, netflix clone,...?
@UjjwalChauhan-e2k
@UjjwalChauhan-e2k 6 дней назад
lets say my key in the s3 bucket is files/myfile.csv now i want to download this myfile.csv in my local file directory lets say src/test-data i don't want to create a subfolder with the name files, so how will i do that . eventually i want my filepath to be like src/test-data/myfile.csv
@Middlew
@Middlew 6 дней назад
Hi Jeremy, love your videos. I have some problems where I have two structures that is communicating with each other. A battle prompts the user for an action, and the user ai uses the context of a battle to determine an action. Sometimes, the user might request something from the battle that might fail. However, implementing from for both error types results in the infinite recursion error (obviously). Do you have a way you prefered to solve this problem? Some type or pointer or avoid the situation altogether? Thanks again for the video and keep up the good work!
@JeremyChone
@JeremyChone 5 дней назад
@@Middlew can you show me some pseudo code to illustrate the issue. We can write From A for B, and From B for A. So, I think you are referring to something else.
@Middlew
@Middlew 5 дней назад
​/error[dot]rs in battle folder: pub enum Error { ... #[from] User(error::User), ... } /error[dot]rs in user folder pub enum Error { ... #[from] Battle(error::Battle), ... } I used something similar in your axum course if I remember correctly, where you converted from different error types. That might have been for a better reason though, I dont quite remember.
@Middlew
@Middlew 3 дня назад
@@JeremyChone Hi sorry, I'm not sure you got my previous message so I'm trying again 😅
@gabrielkwong1878
@gabrielkwong1878 7 дней назад
This is an interesting workflow or DX with AI, amazing! I like how i don't have to chat with anything to cause it to hallucinate just keep adjusting the promt till we get the result. You should make a short demoing this like using Devai to automate documentation, I think it will be a hit. Cant wait for the next demo you mentioned. Awesome content and keep it up!
@JeremyChone
@JeremyChone 7 дней назад
@@gabrielkwong1878 thanks for the great feedback. When you mean for documentation, you mean the Rust code documentation? To general from scratch?
@gabrielkwong1878
@gabrielkwong1878 7 дней назад
@@JeremyChone well it seems you can do both with this devai. But I was thinking more like docs to onboard people on the design of the code base or a summaru .md file to edicate people how to use a project like in open source. I can also see devai being able to generate reust doc for functions and types but similar to design of a project but more in detail with rust doc. You can do seperate short videos for different use case if you want. But in terms of shorts format you can follow the looping style editing people are using or the "this is how I blah blah blah" and leave out the details explain the steps fast and let viewers see the results fast ifs irs not shorts but video format. Do a this is how I automate documentation with AI, using devai. Show them how the tool is used and link them to this video for technical details for those who are interested. Hope what I am saying makes sense.
@idcashflow
@idcashflow 7 дней назад
wowww, its awesome, thank you Jeremy!!
@sampathsris
@sampathsris 7 дней назад
One problem you might face if you decide to implement login in a different route (e.g. "/auth/login" instead of "/api/login"): Make sure to set the auth cookie's path to "/".
@JeremyChone
@JeremyChone 7 дней назад
@@sampathsris yes, very important to set the path to /. Something I forgot to mention in this video.
@Steponlyone
@Steponlyone 8 дней назад
Loving it. The possibilities are endless
@JustinGray1
@JustinGray1 8 дней назад
I'm going to check this out. Thanks.
@funkdefied1
@funkdefied1 8 дней назад
Can we use environment variables to set which model we want to use?
@JeremyChone
@JeremyChone 8 дней назад
That's a good requirement. I will add a `DEVAI_MODEL` environment variable. It will be the last fallback, but will also allow `model = {env_name = "..."}` to instruct taking it from the environment. This way, both options are supported.
@funkdefied1
@funkdefied1 8 дней назад
I hope this gets huge
@funkdefied1
@funkdefied1 8 дней назад
I LOVE this.
@diggajupadhyay
@diggajupadhyay 8 дней назад
Thanks m8
@Boronesss
@Boronesss 8 дней назад
as always, thank you!
@JeremyChone
@JeremyChone 9 дней назад
If you have the patience to learn Rust and even to decipher my accent, you are part of the good developers-developers who simply like good code. Junior or senior doesn't matter, as long as we appreciate good code and understand that it's a continuous learning curve. We are awesome, and we will use AI the smart way. Happy coding!
@DidierProphete
@DidierProphete 9 дней назад
Once again, some high quality content by Jeremy. What a goldmine these videos are...
@FedericoGambassi-s2r
@FedericoGambassi-s2r 10 дней назад
Awesome! A solid, no-nonsense approach to learn the craft, like a renaissance artist !
@JeremyChone
@JeremyChone 9 дней назад
Thanks for the feedback!
@a46475
@a46475 12 дней назад
This is faith healing. Only this time, the malady too requires faith.
@malbo6085
@malbo6085 13 дней назад
Do you have your VSCode plugins public somewhere?
@JeremyChone
@JeremyChone 13 дней назад
you mean, the rust10x, yes, it's available on VSCode extension.
@malbo6085
@malbo6085 12 дней назад
@@JeremyChone Thanks for the quick answer, but I actually meant all your Plugins you are using for Rust development. I think your setup looks pretty neat.
@malbo6085
@malbo6085 13 дней назад
Does he have his VSCode Plugins puplic somewhere?
@DidierProphete
@DidierProphete 14 дней назад
This is a fantastic video Jeremy. Thanks for the high quality content.
@d46512
@d46512 14 дней назад
OO is worse than goto. At least we admit goto is dangerous.
@KevinJones-x8r
@KevinJones-x8r 14 дней назад
Garnett Crossroad
@marcopaolovaleriovezzoli5776
@marcopaolovaleriovezzoli5776 16 дней назад
Very interesting
@azzamsya
@azzamsya 16 дней назад
Wow. Amazing tutorial! Nicely presented.
@jakobsylvester7449
@jakobsylvester7449 21 день назад
Fucking horrible language
@ThéoTurletti-q9c
@ThéoTurletti-q9c 22 дня назад
Awesome ! Thank You !
@DonaldWilliams-b3y
@DonaldWilliams-b3y 22 дня назад
Kamille Views
@PaulTaylor-k9h
@PaulTaylor-k9h 23 дня назад
Hackett Forges
@SvenBrettschneider
@SvenBrettschneider 24 дня назад
Why not async on local IO? During my studies I learned disk IO was so slow, it was worth it to take an async approach. The OS also provides interrupts for disk usage. Is my knowledge dated (fast ssd's?)? I expect it's not, right? Language like dart don't have async variants for file IO api's for no reason?
@JeremyChone
@JeremyChone 23 дня назад
Yes, I am not 100% sure about this. It's very hard to determine without doing some tests, and even then, it's very OS-dependent. From my understanding, on Linux, the local file NIO does not offer many benefits, so we might conclude that using async might not provide a huge advantage. Now, Tokio async local file uses their mio layer, which might add some more value, though I'm not sure. For example, even if we don't save time on the NIO side on Linux, there might be some value in having logic yield periodically. I'm not an expert in this area and haven't done a deep dive. From the little I looked at, it was definitely not clear-cut that NIO provides significant benefits on Linux, and since that's my production environment, my approach is to keep things simple. However, there might be some good reasons to use async for local files. Thanks for your comment, it's a great one!
@ThéoTurletti-q9c
@ThéoTurletti-q9c 25 дней назад
Does this sqlb crate prevents SQL Injection ? Sqlx prevents it automatically by using prepared statements associated with the bind() method. The statement .and_where("data", "=", user_data) scare me a lot.
@JeremyChone
@JeremyChone 25 дней назад
so, if you look at the code, all use prepared statements. now, look at the future episode, I moved to sea-query and modql. There is a full video for that.
@jpp855
@jpp855 25 дней назад
Hey, one thing, imagine, that it will be one open source project, and you intend to publish your crates... this case we should change where is lib-auth, to somenthing like uniquename-auth, uniquename-core ?
@JeremyChone
@JeremyChone 25 дней назад
Then, it becomes a normal crate with whatever name this crate should have. I would not start with lib- because it would be confusing with our "in-system lib crates."
@jpp855
@jpp855 25 дней назад
How do you put this icons in vscode? Thanks
@JeremyChone
@JeremyChone 25 дней назад
So, it's google materials icons, and then, you can have your own, in .vscode/extensions/my-icons, and then, refer them. It's a little trick to find the relative path. Like three ../../../ I think. "material-icon-theme.folders.associations": { "css": "../../../../icons/folder-css", // those are custom icons in .vscode/extensions/icons "src": "../../../../icons/folder-src", "store": "../../../icons/folder-database", // remapping of name to a existing icon only 3 ../
@liamwoodleigh
@liamwoodleigh 27 дней назад
Awesome stuff Jeremy! Would you be able to showcase the process of how you deserialise the json response from the AI into a structure in rust? Would be great for learning how to work with this lib!
@JeremyChone
@JeremyChone 27 дней назад
@@liamwoodleigh the streaming version or regular request.
@liamwoodleigh
@liamwoodleigh 27 дней назад
@@JeremyChone love that you’re open to the idea, thank you! 🙏 Both streaming and regular would be ideal! But I think non-streaming would be simpler so maybe it’s better to start with that?
@liamwoodleigh
@liamwoodleigh 26 дней назад
​ @JeremyChone I am also wondering if you can use a crate to automatically create a JSON schema from a struct and if there's a way to give that into the ChatOptions or something? I think in the genai video about adding Json support with OpenAI you mentioned a crate related to this maybe?
@adamadam123-d4j
@adamadam123-d4j 27 дней назад
keep it up
@Cryptopunkstar
@Cryptopunkstar 27 дней назад
Gemini secure random AI algorithme 🎉
@maxali6591
@maxali6591 29 дней назад
Another underrated RU-vid channel 😊
@morgomi
@morgomi 29 дней назад
niceee
@irlshrek
@irlshrek 29 дней назад
Love this!
@adeptusnoobus
@adeptusnoobus 29 дней назад
Best. Rust. Content. Period.
@blazingazong
@blazingazong Месяц назад
Closer matching of program structure and algorithm structure simplifies programming. from a modeling problem and a program inheritance hierarchy, down to modeling a problem and appeasing the rust compiler. The rust compiler does know best, so at a certain scale, the compiler complexity grows slower than the inheritance complexity. Therefore, rust abstractions are less complex- to a meaningful degree- at suitably sized and for appropriate types of programs. A conditional win for rust.
@craigcook9715
@craigcook9715 Месяц назад
I'm new to learning Rust. Does Axum translate well into having a GraphQL (not REST) backend? I definitely strongly prefer GraphQL backends.
@JeremyChone
@JeremyChone Месяц назад
Axum is one level below the given protocol. You can use REST, JSON-RPC, GraphQL, or even gRPC with Tonic. This is the approach I prefer: a web framework that does not try to do too much and stays at its level. Axum is awesome.
@warriorblood92
@warriorblood92 Месяц назад
Thank you for your such videos. Does boost newbies to rust. @anyone want to create plugin for Neovim of 10x ?
@gabrielkwong1878
@gabrielkwong1878 Месяц назад
Love the content, keep it up. I think you can get more views if you make your titles more click baity like Rust Live Coding - Fixing my problem that I have with JsonValue Ext trait blah blah blah or writing my own library to solve this problem(s), just examples, not the best, but maybe an idea. Idk if its a good direction, up to you to decide that but just giving ideas that might attract more audiences and more views. The main idea is that why am I watching this and JsonValue Extension trait is maybe too vague? idk maybe not, not sure. The title is good and clear for the video as a whole and I guess I am talking about the "gaining viewershipness and clicks" aspect of it and maybe there is a best of both worlds here maybe?
@JeremyChone
@JeremyChone Месяц назад
@@gabrielkwong1878 Awesome feedback. I think you are right. Thanks for the comment, I will think about it.
@jackscalibur
@jackscalibur Месяц назад
Which theme are you using here? I like it.
@JeremyChone
@JeremyChone Месяц назад
I start with the default Dark Modern. Plus Google Material Icons (I customize some), and then I change some colors: "workbench.colorCustomizations": { "editor.background": "#000", // before: #1a1a1a default: #1F1F1F "sideBar.background": "#0f0f0f", "terminal.background": "#000", "editor.selectionBackground": "#004973af", // "#33669999", // "#ffDDFF00" "editor.inactiveSelectionBackground": "#33669999", // "#00DDFF21" "editorLineNumber.activeForeground": "#444", "editorLineNumber.foreground": "#444", } I change them once in a while. The funny thing is that I went pure black on the background because the way RU-vid encodes the video makes the code background flicker. So, black is simpler, and actually, I prefer it that way.
@jackscalibur
@jackscalibur Месяц назад
@@JeremyChone Thanks!
@Boronesss
@Boronesss Месяц назад
your videos are all useful. thanks again
@Duall999
@Duall999 Месяц назад
derive_more came out of beta a short time ago
@TarasShabatin
@TarasShabatin Месяц назад
Thank you 🤗 Please, continue with the similar 🙏