4 ms·
I took a break from teaching for a year, to be a 3D graphic artist, using Cinema 4D. The software had a drag and drop, node based, coding environment called Xpr
by MarcScott 9y ago
I took a break from teaching for a year, to be a 3D graphic artist, using Cinema 4D. The software had a drag and drop, node based, coding environment called Xpresso, that I became quite adept at using. I can remember showing it to my programmer brother, and he told me if I liked using Xpresso I should try a proper language. I dismissed him, saying that typing text held no appeal for me.
A couple of years later, and I was back teaching ICT and the curriculum was being axed, in favour of Computer Science, so I decided to teach myself a little Python, and ended up being a secondary CS teacher in a fairly elite school.
What strikes me now, is at no point did I make a connection between the graphical language I was using back then and the text based languages I would go on to use later. In hindsight it seems obvious that if I enjoyed controlling pixels on a screen with blocks, I would probably enjoy doing it with text. It's anecdotal, but it has turned out to be true.
In my professional capacity as an educator, I have seen how engaged young students can be with graphical languages such as Scratch, and how those same students eventually want the power and control of more powerful languages. These types of games don't teach everyone how to code, but they do awaken a desire to control and manipulate computers, in people who might otherwise never have realised this ambition.
For people who say that the hard part of programming is "not in the text", watch a seven year old try to control a turtle in Scratch and then watch them try to do the same thing in Python. Typing speed is a major factor, as is understanding the importance of case and white space. Not to mention the symbol nightmare of commas, full stops, colons, semi-colons, single and double quotes, hyphens, underscores, equals and double-equals, square braces, curly braces, angle braces, and parenthesis.
- gasbag 9y agoYou might be interested in the Luna programming language/dev environment. It's designed to have a 1:1 correspondence between the visual, node-based environment and the written forms of the code. I haven't been able to try it yet since it's still in closed alpha, but it looks very intriguing! Given your experience with a similar visual language and later interest in more conventional programming, you could make a good case for getting into the alpha. There's a signup form on their site (one for the alpha and one for their newsletter, depending on your level of interest). http://www.luna-lang.org/ http://www.luna-lang.org/ Last HN discussion: https://news.ycombinator.com/item?id=14612680 https://news.ycombinator.com/item?id=14612680