I have often heard "ROS is hard". Turns out it is actually really easy to get started with it. The approach of this book dismisses all worry for beginners. I would recommend it to those with prior programming experience too.
It is handheld from the get-go, from setting up the environment all the way to the functional use of ROS. One can go through the book fairly fast as the explanations are brief and screenshots fill up the pages. I found the screenshots provided helpful- they are like waypoints, you immediately know whether you're on the right track. The sections on Linux commands, cpp and python are also a quick refresher for those who have worked with those.
I think certain ROS concepts can be better explored/explained, but again this is meant to be a light introduction to ROS. There are other books out there that delve into much more detail. A second edition with corrections plus online code will be great for future readers!