Category Archives: review

Book Review: “Vaetra Unveiled” by @DanielRMarvello

VaetraUnveiledCover_tnI just finished Vaetra Unveiled by Daniel Marvello. It was a delightful read! I wanted to write up my reactions to it.

Vaetra Unveiled is a classic swords-and-sorcery novel. There is action, suspense, and charm amongst the characters. Daniel does a great job at world building in the sense that I could imagine everywhere the story took me without getting bogged down in it.

For the record, I have also read The Hobbit and Lord of the Rings, paragons of high fantasy. Sometimes Tolkien’s world building, or rather culture/history/mythology building would overload me, causing me to sometimes skip over songs and other material.

I enjoyed seeing how magic was presented. Daniel’s take on magic is quite interesting. I promise not to give anything away. The main character, Jaylan Forester, in his various pursuits, begins to encounter magic, something he isn’t used to dealing with. He doesn’t understand it, let alone how it works. As he tries to solve the problem at hand, he discovers his own gifts in that arena. I won’t say more than that, but it was fun adventuring along with Jaylan as he tries to figure out the rules of vaetra.

Having read Doctor Strange comic books for years, I rather enjoyed seeing that vaetra isn’t just made up on a whim. Instead, vaetra appears to have a real set of rules that empower and constrain who can do what. No one has infinite power, and the various characters have to work together to free some innocent “mundanes”.

Which leads me to another good point. I enjoyed that there was real plot as well. As George Lucas stated, the point is to tell a story, not show off the set that was built. There were a couple moments along the way where I felt Jaylan was a bit dimwitted and I thought not “getting it” as fast as I thought he would. But it was only a couple. For what turns out to NOT be a 500-page tome of fantasy, it was nice that I could read it with the Kindle app on my iPhone in about five days. It certainly whets my appetite to the read the rest of the series.

The only con I can think of is that sometimes Jaylan feels a bit simplistic. Perhaps a bit too much of the good side. This may be my own bias after having read the first ten Jack Reacher novels, where when Reacher sees something wrong, he dispenses hard core justice. Jaylan is nothing of the kind. Perhaps a little more nitty gritty and some tougher decisions would strengthen Jaylan’s character. But at the end of the day, his character was believable.

About Daniel Marvello

Daniel has been of great assistance to me. I discovered his blog while working on Python Testing Cookbook. My desire to pick up and write the fictional novel i had started 20 years ago was rekindled as I helped my wife polish her trade novel. Googling about structure and tips, I found Daniel’s article on the details of a beat sheet. Suffice it to say, I wooed him to beta read Darklight. As a beta reader, I felt like he provided me top quality feedback in grammar, diction, and POV.

The side effect is that I developed a desire to read his own craft. A) I enjoy a good story. B) Could he really write fiction analogous to the critique he provided me? C) For a Kindle book, it only cost $3. D) Since my cheapskate days are behind me, I honestly like to support other people that seem to deserve it. I’m glad I did!

Book review: “Just Spring”

I finished reading “Just Spring” by Madhusudhan Konda over the weekend.

The author states in the preface,

If you wish to get introduced to Spring quickly and precisely, or would like to refresh your knowledge on Spring in couple of hours, or have only a weekend to learn Spring before you start working on it on Monday, this is the book that you should choose.

“Just Spring” definitely lives up to that goal. I was able to read through the book in a few hours, reading probably 90% of the code, and feeling like it hit home with the basics.

I am an experienced Java developer with a strong familiarity with Spring. This may sound like I was able to whisk through the book based on my experience, but that is not the case. I have read several Spring books and can say with complete confidence that the author was very good at making it a light read. The code samples are simple and easy to follow. He didn’t dig into the more complex functionality of Spring, but instead stayed on target with covering the core parts.

Three of the five chapters focus on Spring, Spring Beans, and the Spring Container. They do a great job of introducing dependency injection (DI) as well as Spring’s battle tested container. It shows the benefits of DI along with configuring things using XML and annotations. The author also gives pros and cons of XML vs. annotations. I really appreciated that after discussing this, he took a stand on his own preference and why.

In the fourth chapter, Madhusudhan discusses the essentials of Spring JMS and its powerful JmsTemplate. This includes a 2-minute intro to JMS for the unfamiliar. In ten pages, the author does a good job of showing how to create message driven POJOs. He is also good at pointing out some of the limitations of JmsTemplate, especially its synchronous nature, and how to receive messages asynchronously.

In the fifth chapter, the author wraps things up by introducing Spring Data. In about eight pages, he shows how to use both the JdbcTemplate and the HibernateTemplate. These two powerful utilities were some of the biggest tools that helped empower the Java industry. Some have even said that Spring and Hibernate go together like peanut butter and chocolate, and Madhusudhan does a good job at showing how to set up and use these tools without getting bogged down in unnecessary code.

While reading the chapter on Spring JMS, I debated in my mind whether I would have included this in “Just Spring” were I to write it myself. That is probably because I don’t write heavily message-oriented systems. I would have preferred a chapter about Spring AOP (aspect oriented programming). Perhaps that would have the book too big to read over the weekend. Since the author is already working on another “Just Spring” book, perhaps he will eventually write one that focused on AOP.

I also felt like the Spring Data section was a little out of date when it delved into the HibernateTemplate. In its earlier days, Spring greatly simplified the Hibernate API, but since then, Hibernate has greatly improved their API. Similar things can be said for JDO and iBatis (which aren’t part of the book). The point is, Spring 3 documentation now currently recommends coding against plain Hibernate, JPA, and JDO APIs. But if you are joining a team that uses classic ORM, this section will be of immense value.

Nonetheless, the light writing and easy-to-follow code samples definitely makes it easy to pick up the concepts of core Spring. I would recommend it to anyone who is getting started with Spring or joining a new Spring-based team and wants to catch up quickly.

Disclosure: I was provided a free copy of the book.