Andrew McCright is the author of Practical Cloud-Native Java Development with MicroProfile, we got the chance to sit down with him and find out more about his experience of writing with Packt.
Q: What is/are your specialist tech area(s)?
Andrew: Java Development, RESTful Services, GraphQL
Q: How did you become an author for Packt? Tell us about your journey. What was your motivation for writing this book?
Andrew: It was a sort of “being in the right place at the right time” story. I have been involved with cloud native development in MicroProfile for a few years, and I had been speaking and blogging about this technology as well. My colleague and co-author, Emily Jiang had built a relationship with Packt publishers and asked if I’d be interested in joining her in writing this book. This was such an honor!
I’ve enjoyed writing ever since I was involved in Young Authors club back in elementary school. While I’ve certainly enjoyed writing blog posts (and will continue to do so!), I hadn’t expected to be involved in writing a book. This really has been quite an exciting process for me.
Q: What kind of research did you do, and how long did you spend researching before beginning the book?
Andrew: On the one hand, you could say that I haven’t done much research for this book. On the other hand, you could say that I’ve been researching for it for the last five years or so! As a Web Services Architect at IBM, I’ve been building many of the APIs that we discuss in this book and the implementation of those APIs in Open Liberty.
Emily wrote up most of the outline, which helped the rest of us to get started. I felt very comfortable with the REST, GraphQL and JSON components, but I did need to do a little research for the section on CDI. John Alcorn started us off with a great, real-world sample application that we could use as the premise for explaining MicroProfile technologies and how they can fit in the cloud. I tried to build my sample code in a similar way so as to show specific parts of the APIs and how they fit.
Q: Did you face any challenges during the writing process? How did you overcome them?
Andrew: Yes! I didn’t expect the first challenge – too much information! My first chapter was just way too long. It included full code samples, diagrams, console output, and too much text. Trimming that chapter down but not losing too much of the key content was a challenge. The Packt editors were very helpful – they provided me with a GitHub repository to place the full code samples. This allowed me to trim a lot of the code in the book, but still reference the full code in GitHub. The editors also helped with some word economy and formatting changes that ended up reducing the overall page count but without sacrificing readability or key content.
After completing my first chapter, the second challenge arrived: motivation to work on the second chapter! The initial excitement of a book deal provided ample motivation to complete the first chapter, but once it was finished, I needed a break! By that time, the initial motivation had worn off, and it was too easy to put off the next chapter. Eventually, it was those looming deadlines that made me realize I needed to get some work done! I had started writing some of the sample application code and then spent a long weekend working on the content.
Q: What’s your take on the technologies discussed in the book? Where do you see these technologies heading in the future?
Andrew: I believe that this technology will be relevant for years to come. Sure, the actual APIs will evolve over time but Java has been around for over 20 years, and continues to grow. Cloud computing is here to stay. MicroProfile and Jakarta are cornerstones of Java cloud development.
One cool thing about this book is that it offers choices. If you don’t like REST you can try GraphQL. You can use some of the fault tolerance mechanisms of Kubernetes or Istio if you’d rather not use MicroProfile Fault Tolerance. If you’re not sure why you might use one instead of the other, we discuss that too!
Q. Why should readers choose this book over others already on the market? How would you differentiate your book from its competition?
Andrew: There aren’t a lot of books on MicroProfile in the market yet. That said, this book is modern and comprehensive. No part of MicroProfile is missing. This book also uses a combination of simple and real-world examples. Sometimes you need those simple examples to get the hang of a difficult concept, but you also need the more complex, real-world examples to see how the different components can work together to form a robust application.
Q. What are the key takeaways you want readers to come away from the book with?
Andrew: Cloud native development is not easy. But it doesn’t have to be super hard either. MicroProfile and the underlying infrastructure like Open Liberty make readers’ jobs as micro service developers much simpler – and it offers them several services for free.
Q. What advice would you give to readers learning tech? Do you have any top tips?
Andrew: Ask questions, but be sure to give back. You know that you’ve learned something if you can help others – whether that is blogging about how you solved a problem or answering questions on sites like Stack Overflow, I’ve found that helping others forces me to learn even more. The same can be said for participating in open source projects. Of course, reading books like this one doesn’t hurt either!
Q. Do you have a blog that readers can follow?
Andrew: Yes, my blog is at http://andymc12.net/
Q. Can you share any blogs, websites and forums to help readers gain a holistic view of the tech they are learning?
MicroProfile is put together by several companies including IBM, RedHat, Tomitribe, Payara and others – so you can often find videos and forums on this subject at their websites or YouTube channels, etc.
Q. How would you describe your author journey with Packt? Would you recommend Packt to aspiring authors?
Andrew: Packt has been great. This is my first book writing experience, and the editorial staff has been great to work with. They provide easy-to-understand documentation on how to write book chapters and they have had a lot of experience with understanding what works well for the readers. They’ve been very friendly but have helped us to stay on track. I would certainly recommend Packt to aspiring authors.
Q. Do you belong to any tech community groups?
Andrew: I participate in several open source communities – primarily Open Liberty, MicroProfile and Jakarta REST.
Q. What are your favorite tech journals? How do you keep yourself up to date on tech?
Andrew: I subscribe to feeds from blog sites like dev.to, medium, DZone, etc. I read the articles that are most interesting or most relevant to my job and pass on the rest – it’s so easy to get overloaded with content!
Conferences are another great way to keep yourself up to date. During the pandemic, many conferences were virtual and some were even free to attend. This makes it very easy to learn about new technologies or dive deep into something you’re already somewhat familiar with.
Q. How did you organize, plan, and prioritize your work and write the book?
Andrew: Emily did a lot of the organizing and planning up front. The other authors and I divvied up the chapters based on our skill set. After that, we each started writing our own chapters. We shared drafts with each other before sending them to the editors. All of us have demanding day jobs outside of authoring, so we probably didn’t get to review each others’ work as much as we would have liked. Fortunately the editors and technical reviewers helped us out a lot – both with wording and with content.
Q. What is the one writing tip that you found most crucial and would like to share with aspiring authors?
Andrew: Just write! There were times where I was “in the zone” and just kept writing – way past bedtime! It’s a lot easier to go back and correct things than it is to create the initial content. For me, the biggest thing was to get to the point where I was putting words on the page.
You can find Andrew’s book on Amazon by following this link: Please click here