I recently finished reading the book JavaScript for Data Science by Maya Gans, Toby Hodges, and Greg Wilson. Since I first heard about this book on Twitter about a year ago (don’t remember from who), I haven’t heard much more about it. So I thought I would write a review in the hopes that it might help anyone who is curious.
If you haven’t heard of this book, it’s just what it sounds like: an introduction to web development for data science types. The focus is on JavaScript but it does cover HTML and CSS so don’t worry if you aren’t familiar with them. In fact, the book doesn’t assume you have any web programming knowledge. But it does assume you have some programming knowledge. If you have never used a programming language before, you will probably struggle with this book. As for data science knowledge, I would say as long as you know about standard concepts like basic statistics, data frames, and data visualization, you should be fine.
Before I get into reviewing the content, I would like to point out two things. First, all royalties from book sales are being donated to R-Ladies, which I think is fantastic. Second, the authors are very open to accepting contributions from readers. I found a couple of issues and they were very helpful with getting these resolved and pointing me in the right direction to do so. OK, now to the actual content of the book.
Overall, I was really happy with this book. I think it does an excellent job at keeping things short and sweet. It focuses on the core ideas and forgoes unnecessary details that would bog things down. The book is also organized well as the chapters build upon each other and everything flows nicely. It starts with the fundamental features of JavaScript, adds HTML and CSS, shows how all three work together, then moves on to server side JavaScript and data science topics like data visualization and data management. When a new feature is needed (e.g. promises) it is introduced at an appropriate place. I really appreciate how it adds things when necessary and doesn’t try to shove everything that might be needed later at the beginning. I was also grateful that it uses modern JavaScript (e.g. ES6, React) so you aren’t stuck using things that are out of date.
So to summarize, I was really happy that the book
- is concise
- is well organized
- uses modern JavaScript
- covers both front end and back end
- has some humor to help make things fun
That being said, there are a couple of things I think can be improved. Specifically, I would have liked to see more
- CSS
- resources for deployment
- exercise solutions
I realize these are all big topics and a bit outside the scope of this book. And I don’t expect full treatments on these, but I felt a bit wanting for more content and/or resources. For example, I think CSS could be incorporated more throughout the rest of the book. Maybe through exercises where we have to do some styling on certain components? As far as deployment, there is a supplemental chapter on using Glitch. But I think it would be nice if there was at least a link to the capstone project on Glitch. I spent a significant amount of time trying to get it working but came up empty handed. For the exercise solutions, there is an open issue on GitHub so they are thinking about it.
To be clear, my complaints are minor. They should definitely not be viewed as reasons for not reading the book. As I said before, it was an excellent book that delivers on it’s title. Anyway, if this review was helpful or you want to talk about JavaScript for Data Science please let me know.