Rust throws around some buzz words in its docs, but they are not just marketing buzz, they actually mean it with full sincerity and they actually matter a lot and are indeed the biggest selling points of Rust. So here, I’ll touch upon some important high-level stuff that I didn’t mention in the previous post. Some of them even more so after using Rust full-fledged and gaining more experience in it. So I love everything I originally liked about Rust. If you haven’t read my previous post on the topic, I encourage you to read it for better context. I’ll try not to be biased as much as possible and wear my polyglot hat for comparisons. Along the way, I’ll share my thoughts on why I think Rust is the future for general-purpose languages and how it is taking over the software engineering world. So now that I have set the context, I feel it’s time to revisit points from my first impression and see if they still hold true. After few weeks, I rarely get compiler errors for new code (also thanks to rust-analyzer) and I have started to polish existing code to make it better or to write better abstractions. But I started getting better at thinking in the Rust way and within a week I was having fewer compiler errors and Clippy warnings. I struggled the first few days to put together a basic structure and was constantly battling the compiler thanks to my habits from other languages I work with. While, I have implemented similar architectures in Go, Java, and JavaScript, doing it in Rust was quite challenging. I’ll write another blog with more details about the architecture choices and inspirations. I used channels to pass events across threads and the application state was shared using an ARC smart pointer and a Mutex lock. It’s fully event-driven, concurrent, and asynchronous with different threads to handle drawing of the UI, doing network requests, streaming logs, and running commands. With Rust, I knew that I didn’t have to worry about the speed part. Kind of inspired by K9s, which is built with Go. So it’s a pretty UI on the terminal that shows different resource data and utilization metrics for Kubernetes clusters. Please try it out and provide me feedback also any contribution is welcome #rust #Kubernetes #oss /NYkQHQwBc2- Deepu K Sasidharan | ദീപു | தீபு | दीपू April 16, 2021 Introducing KDash - A simple terminal dashboard built with a WIP but here is an MVP I built over the last few weeks.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |