Can't try on an Android right now, did watch the YouTube and looked at the examples.
First, it looks awesome. You should do a Show HN sooner than later.
Having a few decades of experience under my belt, I'm sure I'm blind to some things newcomers/starters would see, but what I did notice:
- Camel case is bad for mobile typing, and bad for non-coders in my experience; underscore is better for the latter but not for mobile typing, so that's not really a solution unless you can add an underscore or some other character (non-minus-dash? center-dot?) that can be pressed directly.
- Case sensitivity in general is best avoided in beginner languages, which if adopted might make the above point moot.
- I personally find the pairing of "end" and ":" confusing, possibly because of years of "begin/end", "{/}" and "indent: dedent" experience. Most people seem to have a better intuitive grasp of the indent/dedent than any other block scoping, but for mobile I guess ":/end" is acceptable although "{/}" might be better.
- What is the distinction between "let" and "variable" ?
- The "#number" syntax is not intuitive - I goess it's a replacement for function names or line numbers, for refernece purposes?
- One of the conceptual problems that some people have is with the "=" sign for assignment, as it conflicts with its use in mathematics. All overcome it sooner or later, but when I've shown APL ( where assigment of 3 to a is written A <- 3 ) or Pascal ( A := 3 ) to non-programmers, this confusion never comes up. I would recommend keeping = for comparison, and using another symbol for assignments.
- Consider adding a variable value display. I've used PythonTutor[1] to teach basic JavaScript and Python non-programmers with great success. A complete value trace is likely beyond the scope of codechat, but a variable display might be very useful.
All in all, I think it's awesome. Are you familiar with Atari VCS 2600 BASIC[0]? That's what it reminded me of.
[0] http://boston.conman.org/2015/06/16.1
[1] http://www.pythontutor.com/