Have you ever thought that computer science should include more dragons and wizards? Computational Fairy Tales introduces principles of computational thinking, illustrating high-level computer science concepts, the motivation behind them, and their application in a non-computer—fairy tale—domain. The goal of this book is not to provide comprehensive coverage of each topic, but rather to provide a high level overview of the breadth and excitement of computer science. It’s a quest that will take you from learning the basics of programming in a blacksmith’s forge to fighting curses with recursion.Fifteen seers delivered the same prophecy, without so much as a single minstrel to lighten the an unknown darkness threatens the kingdom. Suddenly, Princess Ann finds herself sent forth alone to save the kingdom. Leaving behind her home, family, and pet turtle Fido, Princess Ann must face goblin attacks, magical curses, arrogant scholars, an unpleasant oracle, and rude Boolean waiters. Along the way she must build a war chest of computational knowledge to survive the coming challenge.
Computational Fairy Tales effortlessly merges the enchanting world of fairy tales with the complexities of computer science, creating a unique and enjoyable narrative. The book cleverly intertwines high-level concepts with a whimsical story, surprising readers with unexpected connections.
The fairy tale imparts valuable life lessons, emphasizing the importance of practice, experimentation, and facing ongoing challenges.
Princess Ann, the relatable heroine, embarks on a journey that mirrors the learning process of computational thinking. The writing style is engaging, suitable for readers of all ages, with occasional humor adding a delightful touch. Though the ending is somewhat rushed, it reflects the reader's reluctance to leave the enchanting world crafted by the author.
In summary, Computational Fairy Tales is a charming exploration of computational thinking, offering a fresh perspective through the lens of fairy tales. Whether you're a seasoned computer scientist or someone curious about the magical world of algorithms, this book promises an enchanting journey filled with both wisdom and whimsy.
An interesting introduction to computational thinking, programming, and algorithms (especially graph algorithms). While the style throughout is engaging, I wonder if it might be a bit too brief on some topics without any pointers to followup for the reader. Some chapters did seem out of place. Not sure if that was the characters not being attached directly to the main quest story or if they just felt superflous.
I love this book, and we're only part of the way through it! My 10 year old and 6 year old are really enjoying the stories, and each story helps them learn another aspect of programming. It goes slow enough to not overwhelm, but fast enough to keep their attention.
A cute little story, explaining both the very foundations of computer science, and the data structures and algorithms that our understanding of the world relies on.
Personally, I couldn't stop reading it. I found the introductory chapters beautifully short and sweet, introducing concepts and building on previous ones, whilst seemlessly integrating it all into this fantasy world.
The final section through G'Raph, with the introduction of P and NP-Hard problems was my personal favourite - I've never heard of those classifications before, and I'll definitely be looking more into it!
A beautiful (relatively) light read for both experienced computer scientists looking to broaden their horizons, and non-computer scientists, who want to understand what exactly a programmer does when they're not typing at a computer all day.
I really like how this book gives you a way to explain computational concepts in a fairy tale setting. I was surprised how well the concepts and the story fit each other. Sometimes the link between the story and the concept was really unexpected.
Since I am familiar with the concepts I understood everything. However, I am not sure whether people who are unfamiliar with it would understand the story or maybe find it difficult.
"Computational Fairy Tales" is the kind of book I would like to be able to write, one day, merging (efficiently, I hope) my love for reading and my passion for Informatics, Computer Science and Mathematics. As all fairytales, also this book has some morals to be learnt: - "Some things have to be learned through practice and application. It is not enough to read about the concept of quests; you must go out and apply them."; - "You must experiment with techniques through trial and error."; - "There would always be more challenges to face." And Princess Ann, the main character, is well defined according to these principles: through her adventures and journey, she learns new tools, several known life-changing algorithms, how to collaborate with others and, mostly, how to face problems. She is for sure the heroine of the story, but also as normal as any students. The style is direct, captivating, suitable for readers of all ages, novices or experts in the field. Just this aspect would be worthy the five stars, because even if it may seem easy, while reading the tales, it is definitely not an easy task to do (it is at least in NP). Some parts have been really hilarious and funny (e.g., the graffiti about dynamic programming or brute force algorithms). If I have to find a defect, I would say that I have found the ending quite hurried, but probably it is because I didn't want the book to finish already. The stories and how they are organized could be ideal for a course about the main concepts of Algorithms and Data Structures in middle schools, but also in upper schools, introducing the main subjects of a course and then deepening with the teacher's support. I can't look forward to read the next book in the series.
This was given to my 9yo but while she (and I) thoroughly enjoyed it, it's not really a kids' book. It *is* a very fun way to explore computing concepts, and she learned a lot from it, but I suspect won't retain much at this point. To be revisited as and when she delves deeper into computing, and recommended for anyone looking to understand the concepts, without necessarily applying them in practice.
Very enjoyable read and especially valuable in my career as a Cybersecurity Professional frequently relying on being able to explain complicated Computer Science concepts in every day analogies. Reminded me of Dolphin explaining binary in the book Code: The Hidden Language of Computer Hardware and Software.
Meant for readers who are already familiar with introductory concepts in programming. Book contains very short chapters, each illustrating a concept mashed in a fairy tale background. Interesting mash up.
A great introduction to computational thinking and algorithms, perfect for anyone thinking of starting with computer science however I think some things could have more detailed explanations (prim's algorithm felt a bit too brief)
I didn’t understand all of it. But I understood most, thanks to the author. Well done. Applicable concepts for middle school all the way up to university.
Very fun read! Explains new concepts very well, recommended to any computer science students or just people who like logical thinking and problem solving :)
A little disjointed in places, but surprisingly coherent given the scope of what's covered! Made a lot of concepts very accessible, even to a very non-sciency person like me.
As a researcher into the interaction between brain science and artificial intelligence, I'm interested in books that explain algorithms in an engaging and accessible style. So, I read this book, especially because I loved the author's other book "𝘛𝘩𝘦 𝘊𝘚 𝘋𝘦𝘵𝘦𝘤𝘵𝘪𝘷𝘦". This book illustrates and explains high-level computational concepts through stories that follow the quest of princess Ann who is sent to save the kingdom from “the darkness”. The computational concepts covered in the book are divided into 5 parts and include Introductory Programming, Data Structures, Algorithms, Graphs, and Computational Thinking. I highly applaud the author's creativity in delivering computational concepts through stories and quest narratives in both of his books; 𝘛𝘩𝘦 𝘊𝘚 𝘋𝘦𝘵𝘦𝘤𝘵𝘪𝘷𝘦 and 𝘊𝘰𝘮𝘱𝘶𝘵𝘢𝘵𝘪𝘰𝘯𝘢𝘭 𝘍𝘢𝘪𝘳𝘺 𝘛𝘢𝘭𝘦𝘴. However, this book has a few flaws and is not as good as the CS Detective (which I rated 5 stars). The storyline, although moderately entertaining, felt a bit too simple (or maybe childish) and disjointed. In addition, some of the computational concepts were explained in a confusing manner and others were weakly relevant to the narrative of the stories. Despite these few limitations and my preference for the author's other book, I do recommend this book to anyone interested in learning about algorithms using a narrative approach (as opposed to a mathematical one).
Firstly there is no real explanation of classes / models or interaces. While I've no specific ideas how one might handle these concepts within this book I feel they are core concepts that must be covered - going into detail about specific algorithms without covering these concepts strikes me as a little confusing.
The last issue is one of narrative. The book is set in a medieval-esque time but there are some mentions of things that ignored that setting such as the mention of cars and golf. This would be very easy to ammend such as changing cars to carts and golf to something like fencing / some medieval sport. Honestly it only mildly annoyed me primarily because it would have been so easy to change...but the whole book is talking about computational thinking within this medieval-esque time so I'm probably just nit picking.
I'd be quite interested to see what a total beginner finds of this book as I've been programming for a few years now so none of the concepts introduced were new to me, as such it was very easy to follow.
This book is intended for a specialized audience. It certainly will not appeal to everyone, or even most people. My high rating should be interpreted with this in mind (and I don't give a lot of 5-star ratings). I have seen a variety of books that attempt to present mathematical or scientific topics in story form, and most of those I have not liked. But this one works. For someone who is just beginning to develop a serious interest in computers, this book will hopefully be a lot of fun while teaching something.
Computational Fairy Tales describes (in a simple, non-technical way) some basic concepts of computer science (not just programming), presented in the form of "fairy tale" stories. It is hardly great literature, though the stories have a naive charm and are amusing if you give them a chance. They are intended for people (especially at middle school level or beyond) who are either just starting their first programming course or who are starting to get interested enough to want to know what this computer stuff is all about. This is a key point: A young reader presented with this book before they start thinking that they might want to know about computers probably will not appreciate it. I was fortunate to come across this book just as my daughter had decided to take an intro programming course in the following year, and I think the timing was perfect. The book will also interest computer professionals (especially teachers) who want to broaden their repertoire of ways to explain computer concepts to non-computer people.
This book is organized as a series of short stories that are roughly (but not tightly) connected together to tell the story of a girl on a quest to save her people. Each short story begins with a paragraph or so that explains the computing concept for that story. Frankly, those intros are generally not well done. They are written in a rather awkward, formal way, and they often simplify the concept to the point of inaccuracy. The book would probably be better without them. Each story then makes use of the chapter theme in ways that work surprisingly well.
If you know someone who is just starting to take an interest in how computers work, and especially in how programming is done, this book is not going to satisfy their curiosity in a deep way. But they should find it fun, and it should be a helpful step toward fitting together some of the pieces of the complex puzzle that is computer science.
I really liked this book. In a quirky, odd fashion it took me back through the computer science curriculum without the need for a parade of drab lectures. The stories are snippets really and while some attempt to bind them together occurs (mostly through character repetition) there's not quite enough to bind these together as a cohesive whole. Having said that I did care about the resolution of the overriding plot line and some of the characters were charming.
As the author notes in the book this isn't going to push you through the minutiae of topics like big O notation. Nor should it, however I would have liked to have seen some pointers to further study. Particularly the graph discussion felt like it needed a longer treatment (a separate book perhaps?).
Overall, use it as a refresher for deeper material, then use it to discuss the topics with a teenager, you should have lot of fun.
I just finished a week-long class centered around this book, and it's probably the easiest credit I'm ever going to get in college. I definitely learned a lot (and I'm not quite done with the homework yet), but this book and the professor made the concepts easy to understand, and they also made this class so much fun that I can't believe it's already over.
If you want to learn about the ideas behind computer programming without actually sitting in front of a screen and typing code, this is the book for you. I'll admit that it has its flaws - a few of the analogies are a bit off, and there's a few things that it just kind of brushes over - but it's a fantastic resource. And look at the first sentence on the back of the book: "Have you ever thought that computer science should include more dragons and wizards?" Of course! Who hasn't?
I am very impressed with Mr. Kubicka's ability to come up with a a story that presents puzzles for a fairytale princess to solve, which are actually CS problems in disguise. The descriptions of the algorithms in very concrete terms seems like they would be understandable to a young reader.
I think this book would be a good tool for encouraging curiosity on the part of young readers into learning more about computer science. Also, I enjoyed reading it myself and I'm an adult professional software developer, so maybe a parent reading this book at the same time might learn something too. :)
If you have a young reader who likes puzzles and fantasy stories, they might really enjoy this book.
This book was okay. Personally, I found reading the chapter summary and skipping to the next story was enough for me. Reading the whole explanation was pointless and long. This is definitely a book for kids just starting to learn about computational thinking. But if you're looking for more in-depth stuff I would search around a bit more.
I'm glad that I read it but it's reputation is a little over blown. It is as expected aimed at the able beginner but I suspect that it is more suited to those would-be programmers that enjoy a narrative approach rather than a mathematical entry to programming. Both routes are valid and the former is often lacking in books for the autodidact seeking insight into the science of computing.
Explains quite a few basic(secondary school level) computer science concepts, mostly algorithm based all fundamental knowledge presented in a relatively interesting way. The stories weren't all that but it gave some enjoyment and showed that the best algorithm is based on the situation.
Intressant upplägg för att på lätt sätt förstå programmering, men inte riktigt min grej. Berättelsen/berättelserna var rätt så tillkonstlade, så man skall mer se det som en något mer underhållande faktabok. Lämpar sig nog bättre för tonåringar.
Much still went right over my head, but I learned a few things; e.g., algorithms I use in daily life. This weekend, I'll use several as I spend the day sorting and rearranging my books. Luddite programming one might say.