Email the Author
You can use this page to email Ravikanth Chaganti about Go and Rust.
About the Book
Modern applications require modern technologies. Web-scale and cloud-native architectures changed how we looked at application development and infrastructure. Modern applications must be secure, highly scalable, interoperable, portable, and performant. Implementing these architectural characteristics is as much an infrastructure problem as a software development problem. The programming language we choose should be capable of meeting the demands of these modern applications. While there are many programming languages that developers across the globe have been using, two languages stand out.
Go programming language, born at Google, has been central to developing distributed applications, command-line tools, and backend services. Go is simple to learn. It is a statically typed language that has a strong standard library. Go was designed with concurrency in mind, which makes it well-suited for building concurrent and parallel applications. The cross-platform support in Go makes it great for developing CLI tools.
Rust started as a personal project at Mozilla and evolved into one of the most powerful systems programming languages. It is a statically typed language, not garbage-collected like Go. Rust has a relatively steep learning curve compared to Go. Rust's ownership system makes it memory-safe. The ownership system and its concurrency model ensure safe parallelism without sacrificing performance. The near-native performance that Rust offers makes it most suitable for embedded systems. Rust is used extensively in operating systems, games, and security-critical software development.
As a modern application developer, gaining expertise in these languages is important. This is not a Rust or Go conversation. Rather, it is about both these languages. The choice of a language depends on the features and functionality you need in an application. This book gives you a head start in both these languages. It guides you toward understanding the language features, compares how each language implements them, and demonstrates the language capabilities through several examples.
About the Author
Ravikanth is a Distinguished Engineer and an architect in the APEX Cloud Platform engineering at Dell Technologies. He is a multi-year recipient of the Microsoft Most Valuable Professional (MVP) award in Cloud and Data Center Management and Azure Cloud Native. Ravikanth is the author of Windows PowerShell Desired State Configuration Revealed (Apress) and Pro PowerShell Desired State Configuration. He can be seen speaking regularly at local user group events and conferences in India and abroad.