JHipster Q&A: Guiding Developers on the Journey to Building Complex Apps
If you’re reading this blog, there’s a good chance you’re well versed in developing applications on Java. There’s also a pretty decent chance that you’re at least familiar with JHipster, one of the most popular open source development platforms for generating, developing, and deploying complex applications using Angular/React and the Spring Framework.
In just a few short years, JHipster has become immensely popular in the Java community for easing some of the complexities of building full stack applications with Spring and Angular.
Two of our developers at XebiaLabs are active participants in the JHipster community. Deepu Kesavapilla Sasidharan, Senior Product Developer, is the co-lead of the project, and Sendil Kumar, Full Stack Developer, is a core member of the JHipster team. Having recognized that getting started with JHipster can be a daunting task, Deepu and Sendil set out to give the open source community some guidance.
Full Stack Development with JHipster is the definitive book for guiding developers on their journey to quickly building modern, complex applications with JHipster. With the release of JHipster 5 upon us, we asked Sendil and Deepu to tell us what motivated them to write the book and how it changed their views on software development.
Who is the book for and why does it matter to them?
Sendil: With the wide spectrum of options that JHipster provides, it is difficult for users to understand how to effectively use it. With this book, we tried to help readers embark on a journey, starting with a simple monolith application and driving towards building more complex microservices applications. Deepu: A lot of developers will benefit from reading the book. Actually, anyone with a basic understanding of building Java web applications and a basic exposure to Spring and Angular/React will find it helpful because it shows people how to use JHipster for cutting-edge full stack development. For example, this book will be helpful for a full stack developer who wants to reduce the amount of boilerplate they write, especially for greenfield projects. It will also help a back-end developer who wants to learn full stack development with Angular or React or a full stack developer who wants to learn microservice development. And it will help a developer who wants to quickly prototype web applications or microservices.
What prompted you to write the book?
Deepu: I had been toying with the idea of writing a book for quite some time and was waiting for the right opportunity. I have been part of the JHipster team since its inception and have seen JHipster growing exponentially over the years. I took the lead role so that I could better manage the growing community and serve the growing demands of the Java community. The project is only few years old but already has over a million installations, 200+ companies using it, 400+ contributors, and 10,000 Github stars — quite impressive for a project in the Java community. But beyond the documentation, unofficial guides, courses, and so on, there is a lack of proper educational materials. There is a great mini book by Matt Raible (The JHipster Mini-Book 4.5), but it doesn't show all the capabilities of the platform. So, when Packt contacted me about authoring a book, I knew that it was the perfect opportunity. I teamed up with Sendil to write a full-fledged book on full stack development with JHipster so that more developers can benefit from this awesome platform. Sendil: I would like to quote George Orwell here; "Writing a book is a horrible, exhausting struggle. Like a long bout with some painful illness. One would never undertake such a thing if one were not driven on by some demon whom one can neither resist nor understand.” The “demon” for me is the awesome community that I am proud to be part of. With all of the amazing work that happens in JHipster, you always learn new things and re-learn things to perfection. I’m hoping that this book will ignite that passion in readers.
What are the biggest pain points/limitations with JHipster that the book addresses?
Deepu: With this book we hope to ease some of the major challenges faced by JHipster users. JHipster provides a huge range of technology options while creating new projects. It also provides many different architecture choices for monolithic and microservice application development. This is quite overwhelming to new users due to the complexities involved with the different technologies. The book breaks down and explains the myriad options available and guides readers towards the appropriate architecture choices. JHipster users also face other challenges around the visibility of available options in the framework and a lack of guides and best practices in certain areas. In the book, we address these challenges by providing examples of best practices for driving continued development, CI/CD, and deployment with applications developed in JHipster. Sendil: As Deepu said, this book addresses the various JHipster options. We use an example application, which evolves through the chapters, as way to simplify JHipster and make it easier for developers to understand. In our opinion, a sample application is worth a thousand pages of code.
How does XebiaLabs support JHipster?
Deepu: When I joined XebiaLabs, I immediately noticed how friendly the company was towards open source. Not only do we use a lot of open source software like Spring and Akka, the company also encourages developers to contribute to the OSS community. This attitude helped me to continue leading JHipster irrespective of the busy work schedule. XebiaLabs has also been instrumental in the React support that has been added to JHipster. In fact, the addition of React support was the result of some of the product development work that happened at XebiaLabs. XebiaLabs also supports the JHipster community by sponsoring our attendance at various conferences and events to talk about JHipster, including the JHipster Conference happening in Paris this June. Sendil: Adding to that, I feel that for any open source project to be successful it needs an awesome community. Reaching out to the community via conferences is vital. Thanks to XebiaLabs’ participation in these conferences we get to spread some JHipster love.
- Giving Back to the Open Source Community
- Stack Overflow Developer Survey 2018: The DevOps Findings
- Continuous Delivery for Developers
- Why Continuous Delivery is Key for Developer Career Success