Q: What is/are your specialist tech area(s)?
Maxwell: I generally focus on backend web systems solving complex problems. This has been financial tech, AI, and disaster modelling.
Q: How did you become an author for Packt? Tell us about your journey. What was your motivation for writing this book?
Maxwell: I improved my programming through reading a range of Packt textbooks front to back in my spare time to improve my fundamentals. When it comes to Rust however, there wasn’t much out there. I read the mastering Rust, and functional programming Rust books and started using Rust in projects and web systems. However, a lot of the stuff I was doing was not formalised in a book leading me to conceptualise and design textbooks for Rust. My first textbook was on Rust web programming. However, I was also working on Python systems on the day job that were having scalability issues. However, injecting Rust into these systems required a lot of investment. It was then when I thought that we need a book that enables readers to inject Rust into their Python systems.
Q: What kind of research did you do, and how long did you spend researching before beginning the book?
Maxwell: Coming up with the idea and topics to cover took about just over a year. I built my first Python pip module coded in Rust at a hackathon when working at Monolithai. Monolithai was always pushing for innovation, and they set aside time for their engineers to experiment on different projects.
Q: Did you face any challenges during the writing process? How did you overcome them?
Maxwell: Having a job and writing a book can be tough. Thankfully I had come familiar with Cal Newport’s writings on deep work. It’s tempting to listen to something, check email, and browse social media. Instead, I had to turn off notifications and batch my processes working in silence for hours at a time. This was also helped my writing both of my books during the pandemic meaning that social obligations were kept to a minimum.
Q. What’s your take on the technologies discussed in the book? Where do you see these technologies heading in the future?
Maxwell: I honestly think that Rust is the future. It will completely revolutionise software engineering as we know it. I usually keep clear of such statements. The internet is full or articles saying X language is dead and y language is the future. However, Rust is slightly different. Docker was revolutionary because it fused deployment and production with software development. Rust fuses software development with systems programming. With Rust we can safely dive into lower-level programming. Fusing Rust with Python makes this fusion even easier.
Q: Why should readers choose this book over others already on the market? How would you differentiate your book from its competition?
Maxwell: At this point in time there is not any other book like this on the market apart from the PyO3 documentation. With this book it’s written for Python developers. They don’t have to know any Rust language before reading this book. The introduction to Rust is written for Python developers. It then slowly introduces the reader to concepts of packaging python. We then build on this to enable our rust code to work with Python. We then explore trade-offs and when to use Rust. Finally, we have a practical approach to fusing Rust into a Flask app with Celery and Postgres where they are all wrapped in docker. A Python developer can go from zero to fusing Rust into a range of Python projects with this book.
Q. What are the key takeaways you want readers to come away from the book with?
Maxwell: Rust from a Python background, when it’s appropriate to use Rust, how to package Rust code for Python code, and how to inject Rust into Python web apps in Docker are all possible with little upfront cost and no major structural change in your project.
Q. What advice would you give to readers learning tech? Do you have any top tips?
Maxwell: Read. This might seem bias as I’ve written a book. However, sitting down and taking time to work through a book really takes your coding to the next level.
Q. Do you have a blog that readers can follow?
Q. How would you describe your author journey with Packt? Would you recommend Packt to aspiring authors?
Maxwell: It’s faced-paced. But the structure is solid and the support from the team is also strong. I picked packt because I usually go for these books when learning a new area or technology so I would recommend Packt.
Q. Do you belong to any tech community groups?
Maxwell: I work for an open-source foundation called OasisLMF on disaster event modelling.
Q. What are your favorite tech journals? How do you keep yourself up to date on tech?
Maxwell: I use Feedly to check all the latest developments in the fields that I’m interested in. This includes google and news feeds. It’s surprising what shows up. Sometimes I get a lead from a Reddit post that was flagged up with Feedly.
Q. How did you organize, plan, and prioritize your work and write the book?
Maxwell: Keeping a deadline on the calendar and sticking to it. Cutting out a small time each day of uninterrupted time with no distraction. If you focus on each individual chapter at each time, it does fly by.
Q. What is that one writing tip that you found most crucial and would like to share with aspiring authors?
Maxwell: Practice coding and writing regularly. Over time writing and explaining the code will become more fluent.
You can find Maxwell ‘s book on Amazon by following this link: Please click here