Secondly, I applaud the style/premise of the book. Cats especially are aiming at an underserved demographic that would absolutely be interested in programming but do not have the same number of and level of quality of 'ins' (ways of getting into programming) as other demographics. Along the same lines I would love to see 'scripting for Sims 4 builders' or 'Love Calculator and other scriots for your next sleepover'.
Thirdly, I really like the way that this is pitched. I feel like so few tutorials give a high level overview of programming rather than diving into specifics of languages. I can only think of "Hello Ruby" as being analogous, although I'm sure others exist.
Finally, I love the art style. Not much more to be said than that.
I can't really think of anything critical to add.
Why Cats Paint - A theory of feline aesthetics
A few folks have already vented that they don't like it. Don't care too much about it. A good bunch of people might love a book like this.
Buying it either way but it might be a means to finally kindling an interest into it in my spouse. :P
So, a hodgepodge of bash, basic, Python, JavaScript and some C. Or Java if it happens to be just on top in some menu. And NIH: obviously theyr own ZiggyLang or ZazaScript.
Java has so little syntax—and yet what little syntax it has is C-ish—that it's mutually intelligible to everybody from programmers who only know C, to programmers who only know Haskell. (Maybe not to programmers who only ever learned 6502 assembler, but they have their own humor books published 40 years ago.)
(Is there a term for this in linguistics? A measure of the eigenvector of mutual intelligibility a language has to all other spoken/written languages?)
Java doesn't seem a bad choice because if one sticks to the basics probably everybody can figure out what a simple program does. Smalltalk, I wonder how many people here ever read a Smalltalk source file [1]. Lisp, maybe more, at least to look once at all those funny parentheses (disclaimer, I wrote my fair share of Lisp but I know the effect it does on most people.)
[1] One random Smalltalk project from the list of trending Smalltalk repositories on GitHub https://github.com/svenvc/zinc
I don't really know Java. But I know C, and Java looks enough like C that I can get what Java code is trying to do.
Personally, I've never learned any language with similar-enough syntax to BASIC, to understand what a (real, non-trivial) BASIC program is trying to do. Would I recognize a BASIC subroutine if I saw one? Probably not.
And it's not about a language having "less" syntax, either, but rather about it having very few syntactic features that're unfamiliar. Smalltalk is a rather large novelty the first time you see it. (`ifTrue`? You mean I've got to use closures to branch?)