I’m Go Dev who has been flirting with Rust for years. Love this presentation. I’m horrible at GUI programming in general and this was a good introduction
Good video, thank you. I've been learning Rust lately as a hobby (I'm a Java dev), and this video, that I've stumbled randomly into, by minute 10 managed to push me to play with *curses 👍🏼 Since you asked for feedback: For me personally it's easier to follow code being written naturally than going through copy-pasted code. With copy-pasted code, I need to pause, read whole code, then listen to commentary. That said, this isn't a very big deal, especially if it noticeably saves effort for you.
Hey Alex 👋 Thank you for the feedback - I genuinely really appreciate it! Currently, I decided that I'll probably stick to the copy-and-paste strategy for longer videos (as to not make them even longer) and try to type the whole thing for the shorter ones. I hope you stick around for upcoming-hopefully-fully-typed videos ;D
Thanks, learned quite a bit! Please don't stop posting videos Edit: Had to mention this after reading another comment and feeling the same way. Please write the code line by line even if the video gets over an hour. It helps the audience much more than copy pasting. Cheers!
I played around with Cursive over a year ago and that's what I noted to self: "As of 2019-06-21, pancurses seems to be the best, easiest and most functional Cursive backend on Windows." BearLib was too involved, crossterm exhibited blinking cursor/layer display issues - but pancurses gives you a nice application window including font settings within the system menu. As a bonus pancurses seems to be available on all major platforms (Linux/Mac/Windows).
Thank for the video. It was a pleasant piece to watch. My €0.20 of feedback is that the opening screen could have had the production year and month on it. While that info is available at other places, having it shown early in the actual video is common and very convenient. I spent the first couple of minutes wondering whether what I watched was obsolete, or indeed as current and relevant as it actually was. Please consider it for your upcoming videos and keep up the good work!
Heyo, Johnny ~ I really appreciate your feedback! Just to clarify, do you mean that, for convenience, I should add the date below the video's title (i.e., i.imgur.com/PGkFTU5.jpg) at the start of the video as well? Thanks ;D
@@danlogs Exactly, inside of the actual video. Please assume that's all the viewer will see without effort. I seldom leave the fullscreen view when using the youtube app on my tablet, and I assume there are other devices where switching out of the video is even more of a break in the normal flow of use.
These libraries look really well written! Do they use _unsafe_ quite liberally? I have this unreasonable fear that efficient libraries in Rust often contain a lot of _unsafe_ .
Hey~ Sorry to keep you waiting this long for a reply 😅 The criteria for choosing libraries for this video series was: - Maturity (the GTK+-based library was chosen for this reason), and - Popularity. While popularity isn't a criteria that directly guarantees that the library is "unsafe free", I've found that, most often than not, these two qualities walk hand-in-hand. For example, take a look at actix-web - as soon as it started topping performance benchmarks, this happened: github.com/actix/actix-web/pull/968. If you scroll down on the thread, you'll see the maintainer was not receptive to removing unsafe code and the backlash from that was enormous (which even led the maintainer to eventually quit). Anyway, to answer your question: - cursive: has few uses of unsafe. - gio: considering this crate is just Rust bindings and wrappers for the GIO part of the GTK C library, it does use unsafe. However, for what it's worth, the gtk-rs website (source: gtk-rs.org/) does say they are "safe bindings" 🤣.
Hey Dan, I got a question for you. What is the proper way to run cursive with the crossterm backend? I don't find any good examples for that. Thanks a bunch! I like your videos by the way, very instructive and good pace. Don't worry about the copy/paste, it is easy to follow since you go through all the code. Cheers!
Hey Pascal ~ Unfortunately, I haven't used cursive and crossterm together before so I'm afraid I can't comment much on that. Regardless, I'd recommend you join the Rust and/or the danlogs Discord servers and ask people there -- I'm sure there will be someone that can help you out! Also, thanks for the feedback. I really appreciate it ;D danlogs Discord server: discord.gg/fSWE49H Rust Discord server: discord.gg/NjCCCAwARe
@@danlogs Hey Dan, thanks a lot for the answer. I managed to make it work but given my little experience I am sure I will soon be facing another problem that I will need to share in the recommended places 😅. Ciao!
I’m Go Dev who has been flirting with Rust for years. Love this presentation. I’m horrible at GUI programming in general and this was a good introduction
Good video, thank you.
I've been learning Rust lately as a hobby (I'm a Java dev), and this video, that I've stumbled randomly into, by minute 10 managed to push me to play with *curses 👍🏼
Since you asked for feedback:
For me personally it's easier to follow code being written naturally than going through copy-pasted code.
With copy-pasted code, I need to pause, read whole code, then listen to commentary.
That said, this isn't a very big deal, especially if it noticeably saves effort for you.
Hey Alex 👋
Thank you for the feedback - I genuinely really appreciate it! Currently, I decided that I'll probably stick to the copy-and-paste strategy for longer videos (as to not make them even longer) and try to type the whole thing for the shorter ones. I hope you stick around for upcoming-hopefully-fully-typed videos ;D
Thanks, learned quite a bit! Please don't stop posting videos
Edit: Had to mention this after reading another comment and feeling the same way.
Please write the code line by line even if the video gets over an hour. It helps the audience much more than copy pasting. Cheers!
I played around with Cursive over a year ago and that's what I noted to self: "As of 2019-06-21, pancurses seems to be the best, easiest and most functional
Cursive backend on Windows."
BearLib was too involved, crossterm exhibited blinking cursor/layer display issues - but pancurses gives you a nice application window including font settings within the system menu. As a bonus pancurses seems to be available on all major platforms (Linux/Mac/Windows).
Thank for the video. It was a pleasant piece to watch. My €0.20 of feedback is that the opening screen could have had the production year and month on it. While that info is available at other places, having it shown early in the actual video is common and very convenient. I spent the first couple of minutes wondering whether what I watched was obsolete, or indeed as current and relevant as it actually was. Please consider it for your upcoming videos and keep up the good work!
Heyo, Johnny ~ I really appreciate your feedback! Just to clarify, do you mean that, for convenience, I should add the date below the video's title (i.e., i.imgur.com/PGkFTU5.jpg) at the start of the video as well? Thanks ;D
@@danlogs Exactly, inside of the actual video. Please assume that's all the viewer will see without effort. I seldom leave the fullscreen view when using the youtube app on my tablet, and I assume there are other devices where switching out of the video is even more of a break in the normal flow of use.
@@johnnydough3684 ~ that makes sense. Thanks again for the feedback - I'll try to remember to add the production date to my upcoming videos ;D
pop! os!!!! thats what i use very cool
Ooo, nice! Pop!_OS is great 😎
@@danlogs btw I use arch
These libraries look really well written! Do they use _unsafe_ quite liberally? I have this unreasonable fear that efficient libraries in Rust often contain a lot of _unsafe_ .
Same lol
Same lol
Hey~ Sorry to keep you waiting this long for a reply 😅
The criteria for choosing libraries for this video series was:
- Maturity (the GTK+-based library was chosen for this reason), and
- Popularity.
While popularity isn't a criteria that directly guarantees that the library is "unsafe free", I've found that, most often than not, these two qualities walk hand-in-hand. For example, take a look at actix-web - as soon as it started topping performance benchmarks, this happened: github.com/actix/actix-web/pull/968. If you scroll down on the thread, you'll see the maintainer was not receptive to removing unsafe code and the backlash from that was enormous (which even led the maintainer to eventually quit).
Anyway, to answer your question:
- cursive: has few uses of unsafe.
- gio: considering this crate is just Rust bindings and wrappers for the GIO part of the GTK C library, it does use unsafe. However, for what it's worth, the gtk-rs website (source: gtk-rs.org/) does say they are "safe bindings" 🤣.
Hey Dan, I got a question for you. What is the proper way to run cursive with the crossterm backend? I don't find any good examples for that. Thanks a bunch!
I like your videos by the way, very instructive and good pace. Don't worry about the copy/paste, it is easy to follow since you go through all the code. Cheers!
Hey Pascal ~ Unfortunately, I haven't used cursive and crossterm together before so I'm afraid I can't comment much on that. Regardless, I'd recommend you join the Rust and/or the danlogs Discord servers and ask people there -- I'm sure there will be someone that can help you out!
Also, thanks for the feedback. I really appreciate it ;D
danlogs Discord server: discord.gg/fSWE49H
Rust Discord server: discord.gg/NjCCCAwARe
@@danlogs Hey Dan, thanks a lot for the answer. I managed to make it work but given my little experience I am sure I will soon be facing another problem that I will need to share in the recommended places 😅. Ciao!
Looks interesting -_-
nice video :)
Am i your 1000th subscriber ?! Nice
Woah ~ you are! Thank you so much ;D