I unfortunately have some doubts about the authenticity of the claims made. I know other people have already shared a similar opinion but I'd like to candidly provide my own in the event a beginner, intermediate, or even aspiring programmer happens to read this.

I often teach programming. Not formally in school, but to friends and family who come to me to learn. When any of them begin to learn, there are always, always trivial roadblocks that the student seems to hit.

My brother, who is a very smart person, was beginning to learn Python, and going through Codecademy. He must have spent at least tens of hours on it. The simplest things he just didn't grok immediately. For example, the different between variables, strings, and symbols. He would type, for example:

print hello world

or

name = john
message = my name is + john

That's only the beginning. The idea of data types, the concept that "truth" and "falsity" could be encapsulated in a manipulable piece of data called a "boolean" (which he would pronounce Boe Lean) were definitely not within arm's reach. Functions were even more troublesome.

It wasn't just my brother. I was explaining to a friend, who is a very competent hardware guy, what a lambda function is. The idea that functions can be seen as data themselves. He eventually got it, but it took lots of explaining. And even after that, the small programs he wrote employing his newly found knowledge were riddled with bugs, formatting issues, style issues, and so on.

It wasn't just my students, it was me as well. My first programs were something like

10 REM MY FIRST PROGRAM
20 PRINT "WHAT IS YOUR NAME?"
30 INPUT N
40 PRINT "HELLO ", N
50 GOTO 10

In fact, this program didn't even work in whatever BASIC implementation I was using. I just didn't get why. It turns out I needed to add the '$' sign to my variables to denote that they're strings.

When I was writing code for doing arbitrary precision arithmetic, I was representing the numbers as strings of digits: "12345". I was translating between digit characters and decimal value using the CHR and VAL functions of the language. When I was first introduced to ALLOCATE, typed arrays, etc. it simply did not click and took a while. Pointers, the heap, the stack, BYREF, BYVAL, FREE?

If I haven't made the point clear, there are a lot of things even we professional programmers take for granted, and things that we have long forgotten were hard, which those starting out with programming have major issues with, and almost deny the possibility of making something substantial in even a single day. Since I regularly teach programming, I am constantly reminded of them.

While I suppose it's possible to achieve the amazing feat that Jennifer claims on her own and without personal instruction, it just seems unlikely. If it's true, it's great for self-promotion of course, but I don't want it to give the aspiring programmer the idea that they should be able to reasonably accomplish the same things she did. What she accomplished wasn't just picking up programming, it was:

* programming in multiple languages & paradigms
* understanding how they relate to each other
* setting up programming environments
* setting up and understanding 3rd party frameworks and libraries
* being able to effectively communicate with programmers
* understanding source control and deployment

and then a lot more application specific things. That is a really tall order.

If the work was genuinely done by an artist with no technical background with little outside help, then I would consider achievement incredibly brilliant. If it was not—which is how I feel—then I think the audience deserves a bit of honesty.