Пікірлер
@jojo00733
@jojo00733 7 сағат бұрын
Thank you!
@i.t.9015
@i.t.9015 19 сағат бұрын
Is there any framework to create multi platform front end applications only with rust, withour JS or TS?
@letoan285
@letoan285 Күн бұрын
Great Video, could you continue with next videos on this content, jwt authen for example?
@Semicolon10
@Semicolon10 Күн бұрын
@@letoan285 Thats the plan.
@batyrmuhadov3469
@batyrmuhadov3469 Күн бұрын
I've tried but I keep getting errors in the template.rs, miss matching types waited T got a Result<_,_> in the impl
@Semicolon10
@Semicolon10 Күн бұрын
try this : github.com/semicolon-10/assets/blob/main/code_share_io_template.rs
@pvlzh
@pvlzh 2 күн бұрын
Thanks for the video! It turns out that the trait of the UserRepository, which is located at the domain layer, depends on the newUser structure, which is declared at the presentation layer? Doesn't this violate the order of dependencies in a clean architecture? 🤔
@Semicolon10
@Semicolon10 2 күн бұрын
Thanks for the feedback! Yes, by definition, you're correct. However, when following patterns, there isn't always a one-size-fits-all approach. The best method is whatever works best for your specific situation. While introducing mappers and DTOs adheres to clean architecture principles, it also comes with additional maintenance costs. For straightforward use cases like this one, where the models are simple and relational fetching is minimal, it might be more practical to use domain objects directly.
@DeepakKumar-uz4xy
@DeepakKumar-uz4xy 2 күн бұрын
Hi can you please talk about rust job market as backend developer. Which framework is mostly in used is it axum,actix or rocket?
@Semicolon10
@Semicolon10 2 күн бұрын
Surely, I will create a video on the job market. As far as frameworks go, Axum, Actix, and Rocket are all easy and straightforward to use. Each has its strengths that i will discuss in an upcoming video.
@os365
@os365 2 күн бұрын
Excellent, I am currently using DDD with Rust, but I have a question at minute 6:45, you call in the Queryable and Serializable domain. In that case wouldn't you be contaminating the domain with the infrastructure?
@Semicolon10
@Semicolon10 2 күн бұрын
Thanks for the feedback, Actually, there is no definitive right or wrong way when it comes to models in Domain-Driven Design (DDD). My approach is as follows: Use domain objects directly for GET requests when they match your data needs, as this simplifies your design and maintains consistency across your application. This approach is particularly effective for read-heavy operations, where performance benefits from avoiding unnecessary transformations and keeping the codebase straightforward.
@os365
@os365 2 күн бұрын
@@Semicolon10 of course, thank you
@0x72F
@0x72F 2 күн бұрын
youre the best, mr colon! love your channel
@nhwhn
@nhwhn 5 күн бұрын
thank you, first of all, great content! have a suggestion, it wouldve been even better if you explained a bit more on the implications of having dependency injections, comparisons
@TheHellishFrog
@TheHellishFrog 6 күн бұрын
This approach doesn't work on Windows - the code compiling, no errors, but no logs either.
@Semicolon10
@Semicolon10 Күн бұрын
Are you blocked still?
@TheHellishFrog
@TheHellishFrog Күн бұрын
​@@Semicolon10 Thank You very much for your attention and attitude. Regarding Logging Tutorial - yes, it is in a same state - I plan to check is it on my Linux machine soon.
@Semicolon10
@Semicolon10 Күн бұрын
@@TheHellishFrog Sorry i missed out on your comment earlier. Ideally it should work as it is on a windows machine too. But did you try passing the env variable from CLI instead?
@Semicolon10
@Semicolon10 Күн бұрын
@@TheHellishFrog Also do give this solution a try github.com/rust-lang/log/issues/39
@xosnrdev
@xosnrdev 6 күн бұрын
Please what’s the name of the code editor you coding on ?
@Semicolon10
@Semicolon10 6 күн бұрын
@@xosnrdev RustRover, SignUp for Community Edition and Enjoy for free
@tathk4716
@tathk4716 7 күн бұрын
I was going insane with other setup for rust, yours is truly the only one who use docker compose and it did not scream at me. AND IT WORKS! thank you so much for the video.
@asdasdaa7063
@asdasdaa7063 7 күн бұрын
can you make a more full example with nextjs and Tauri? Maybe creating a dashboard or something like that.
@Semicolon10
@Semicolon10 7 күн бұрын
@@asdasdaa7063 Yes on my todo already.
@os365
@os365 8 күн бұрын
First
@abhayupadhyay9287
@abhayupadhyay9287 10 күн бұрын
What ide are you using?
@Semicolon10
@Semicolon10 10 күн бұрын
RustRover
@BobAYouTube
@BobAYouTube 11 күн бұрын
Thank you for this - I've been working in Rust and trying to choose between iced-rs and Tauri, and this helps a lot with the getting started bit for Tauri.
@Eren0x00
@Eren0x00 11 күн бұрын
Hello, I run into problem with tracing-opteltmetry. Could you send me a copy of you code?
@Semicolon10
@Semicolon10 11 күн бұрын
github.com/semicolon-10/opentelemtry-rust-setup
@riigel
@riigel 12 күн бұрын
Hey thanks for this man!!!
@letoan285
@letoan285 14 күн бұрын
do you have solution for expired token, i dont think it works this way.
@Semicolon10
@Semicolon10 13 күн бұрын
This is just a introductory video, Majorly covering the token generation part. I will add a separate on for token management & expiry
@SanjayB-vy4gx
@SanjayB-vy4gx 14 күн бұрын
bro is there any other ui library to build Desktop apps in rust any native library ?
@Semicolon10
@Semicolon10 14 күн бұрын
Yes, I have a video on that too kzbin.info/www/bejne/i2nPkKl9i9h8aMU
@meherabhossain7378
@meherabhossain7378 15 күн бұрын
subscribed done
@ukpehmichael7420
@ukpehmichael7420 16 күн бұрын
Please can we get github links to the code?
@Semicolon10
@Semicolon10 12 күн бұрын
Sure : github.com/semicolon-10/tauri-rust
@riigel
@riigel 16 күн бұрын
can you do a svelte version of this?
@Semicolon10
@Semicolon10 16 күн бұрын
@@riigel Surely, Thats already on my todo!
@riigel
@riigel 16 күн бұрын
thanks man!
@adamvarga6750
@adamvarga6750 16 күн бұрын
Great video, thank you Semicolon! I'm doing a streaming exercise atm and this helped a lot. Can You please share the code? At the Stream type part the autocomplete pushed the text out of view and I'm stuck at that point. 😅
@Semicolon10
@Semicolon10 16 күн бұрын
Sure : github.com/semicolon-10/grpc-stream-rust
@adamvarga6750
@adamvarga6750 16 күн бұрын
@@Semicolon10 ❤
@TheHellishFrog
@TheHellishFrog 19 күн бұрын
Thank You for a good, easy to follow tutorial - I recreated it by hand - everything works like a magic.
@Anton_Zh
@Anton_Zh 21 күн бұрын
Hello. I'm Russian and sorry for my English from the translator))) I'm a beginner programmer and I liked Rust. Are there few vacancies in Rust? Can I start with Rust? I worked in user support for 10 years.
@Semicolon10
@Semicolon10 21 күн бұрын
Здравствуйте, Да, многие крупные компании начали использовать Rust, и тенденция к принятию новых языков часто начинается с этих крупных организаций. Десять лет назад .NET был популярным выбором для бэкенд-разработки, но сейчас индустрия сместилась в сторону Go и Kotlin. С 2022 года наблюдается растущий интерес к Rust. У него теперь одна из самых больших сообществ на Reddit и поддержка практически для всего. Так что, да, спрос на Rust высок, и в ближайшие год-два вы, вероятно, увидите больше вакансий для разработчиков Rust. Поэтому сейчас идеальное время для изучения Rust. Если у вас нет опыта в программировании, Rust может показаться немного сложным для начала, но все равно стоит попробовать. Он похож на такие языки, как C++, с которых вы могли начать изучение основ. Так что лучше начните с Rust. Удачи!
@TheHellishFrog
@TheHellishFrog 22 күн бұрын
Could you share source code for this tutorial? I am getting errors trying to recreate your code "use crate::server" could not be resolved - and ""tonic::include_proto!("helloworld")" complains like this: `OUT_DIR` not set, enable "build scripts" to fix...
@Semicolon10
@Semicolon10 22 күн бұрын
github.com/semicolon-10/grpc_rust
@TheHellishFrog
@TheHellishFrog 22 күн бұрын
@@Semicolon10 Thank You!
@pooryabarkati2388
@pooryabarkati2388 23 күн бұрын
Great content . learned a lot 👌👍. but in this video the volume is too low
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 25 күн бұрын
Cover Something like Tauri or dioxus in upcoming videos ... Your short videos are good to watch...
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 25 күн бұрын
i have better approach , First cargo add Musl linux target ,,, And Compile Executable in Dev environment by specifying target = musl linux ,, and Use that Executable inside docker container of whatever distro like debian , alpine or ubuntu ,,,, ,,, Container is heavy because of target directory inside docker container ,...
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 25 күн бұрын
Till now i used tracing and tracing_subscriber.. What do you think about it ? 🤔
@Semicolon10
@Semicolon10 Күн бұрын
Choose tracing for advanced, structured logging with spans and events, and env_logger for simple and quick logging needs with configuration via environment variables. (Sorry for late response, I missed your comment)
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 25 күн бұрын
" cargo watch -c -q -w src/ -x run " i do this every time. it cleans terminal in every reload when we do ctrl + s ( save ) , it watches whole files inside src directory and runs in every changes when we do save... Suggestion :- don't enable autosave in ide.. otherwise it will just try to compile your project on Every letter , Character you type...
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 25 күн бұрын
i have been using Axum , Sqlite , Rusqlite from Past 2-3 months are loving it .. Rusqlite is such a simple yet powerful library 💛
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 25 күн бұрын
Hey mate , i have a Question , is Using Arc Mutex to export db connection a Good practice ? i used to Make a function and Return Db connection and Call That function whenever i need to interact with database. What is the Standard Practice ?
@Semicolon10
@Semicolon10 25 күн бұрын
You only need Arc Mutex If you want to share objects across threads.
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 26 күн бұрын
Just do/execute " cargo fmt " command to Format Whole Project.
@midrala
@midrala 26 күн бұрын
Thank you for such an informative lesson, but you use tokio in almost every video and paint it the same way, so that's why your dependency entry looks exactly like this and not just with the version indication?
@Semicolon10
@Semicolon10 26 күн бұрын
Thanks for your feedback but i don't get your query. If you mean why tokio? Tokio is just a util dependency to work with futures. If not tokio then probably some other dependency. I use tokio because its very popular among rust community and easy to understand and use. Most rust programming in industry is done using Tokio for async. Hence i prefer so audience learn what is the best. Also its pretty straightforward hence you feel i paint it in same way. But it gets the job done and everyone understands it. But i will definitely look into using other similar deps in future vids. Thanks
@riigel
@riigel 26 күн бұрын
Thank you for sharing this!!
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 26 күн бұрын
Please make a video on How to Do unit testings / Api Testings on Big Axum Project ,,,
@riigel
@riigel 29 күн бұрын
you sir are the best, please don't stop!
@ranitbiswas6278
@ranitbiswas6278 29 күн бұрын
why RUN apk add --no-cache musl-dev command is used?
@Semicolon10
@Semicolon10 29 күн бұрын
Its essential for installing the development files for musl, which are required for compiling Rust programs that depend on musl. In this context, it ensures that the necessary libraries and headers are available for the Rust compiler to build the project successfully.
@Ndjdjsjrjjfjr
@Ndjdjsjrjjfjr 25 күн бұрын
i just Learned About Musl yesterday using chatgpt... And got to know that musl is way better than regular glibc .... Gpt result. -> Static Linking vs. Dynamic Linking: musl: Supports static linking, which means all dependencies can be included in the final binary. This makes the binary self-contained and ensures it runs on any Linux system without needing external shared libraries. glibc: Typically used with dynamic linking, meaning the binary depends on shared libraries that must be present on the target system. This can lead to compatibility issues if the target system has different versions of these libraries. Binary Size: musl: Produces smaller binaries due to its lightweight nature. This is advantageous for embedded systems and containerized environments where minimizing resource usage is important. glibc: Binaries can be larger and may include additional overhead from shared libraries. Compatibility: musl: Ensures compatibility by including all necessary libraries in the binary. This is especially useful for deploying binaries to different Linux distributions. glibc: Compatibility can be an issue if the target system has a different version of glibc, leading to potential runtime errors. Performance: musl: Designed for efficiency and simplicity, which can result in performance benefits for certain applications. glibc: Known for comprehensive support of Linux features and wide compatibility but may introduce more overhead. Why Use musl? Portability: A statically linked musl binary is self-contained and can run on any Linux system regardless of the glibc version or the presence of other shared libraries. This is crucial for distributing binaries in a consistent manner across diverse environments. Simplicity: With musl, you avoid dependency hell and the complexities associated with dynamic linking and shared library versions. This leads to more predictable and reliable deployments. Security: Static linking with musl reduces the attack surface since there are no external shared libraries that can be replaced or modified. This can be beneficial for security-sensitive applications. Size and Performance: Musl's lightweight nature can result in smaller and faster binaries, which is advantageous for resource-constrained environments like embedded systems and containers.
@thatonesnowboarde
@thatonesnowboarde Ай бұрын
Could you make a CRUD video on SurrealDB+GOLANG??
@Semicolon10
@Semicolon10 Ай бұрын
Surely
@thatonesnowboarde
@thatonesnowboarde Ай бұрын
Your amazing keep up the great work
@thatonesnowboarde
@thatonesnowboarde Ай бұрын
May I ask where are you from.
@Semicolon10
@Semicolon10 Ай бұрын
Singapore
@yasin5058
@yasin5058 Ай бұрын
Keep up the good work! 🎉
@os365
@os365 Ай бұрын
Could you make a video using diesel or sqlx with postgres including migrations ?
@Semicolon10
@Semicolon10 Ай бұрын
I just made a video of using diesel with MySQL with migrations and diesel cli.
@os365
@os365 Ай бұрын
@@Semicolon10 perfect, but using testcontainers?
@Semicolon10
@Semicolon10 Ай бұрын
@@os365 Surely added on my Todo.. Will soon release one.
@midrala
@midrala Ай бұрын
Thanks for the cool tutorials, however, I have only 1 question left. I see you are using the IDE from Jetbrains and you have auto-imports working normally, however, this does not happen during my development, could you give advice or tell me in more detail what you use when creating projects. I probably don't fully understand how imports work in rust and face the same problem many times.
@Semicolon10
@Semicolon10 Ай бұрын
Thanks 🙏🏻, If you are using VsCode or anyother Ide you can install rust analyzer plugin. If you need free rust dev with Jetbrains toolkit you can install rust rover Ide and signup for community version everything comes default setup in that ide including auto imports and you don't have to pay a cent (Highly Recommended). If you are using Intellij you need to buy rust plugin as in latest Intellij Rust plugin is paid and installing it will set auto import by default. If all this doesn't work then you can go in Intellij Setting and search for auto imports and check it. Hope this helps..!
@os365
@os365 Ай бұрын
I just happened to be watching Friday about testcontainer on Rust, excellent input.
@isuruprasad7167
@isuruprasad7167 Ай бұрын
very useful video
@riigel
@riigel Ай бұрын
thanks for this man
@MidSeasonGroup
@MidSeasonGroup Ай бұрын
This is a great video man. Great work. I’m curious how you would implement this as a waspi2 component to make it reusable anywhere.
@jahsoulfa
@jahsoulfa Ай бұрын
Would you mind sharing a github link so that one can learn from it. Thanks
@Semicolon10
@Semicolon10 Ай бұрын
github.com/semicolon-10?tab=repositories
@jahsoulfa
@jahsoulfa Ай бұрын
@@Semicolon10 much appreciated buddy.
@dalu_
@dalu_ Ай бұрын
TOO QUIET SPEAK LOUDER and get some proper microphone and clean English