4 ms·
> I think 'visual programming' has a lot of promise for education, but...jeez, after looking into it for awhile I'm sort of losing hope that it isn't a gimmick
by crispinb 9y ago
> I think 'visual programming' has a lot of promise for education, but...jeez, after looking into it for awhile I'm sort of losing hope that it isn't a gimmick or fad
This comment strikes me as slightly oxymoronic. If it does fulfil its promise for education, how can it just be a fad? Is education of no value?
Even in narrow instrumental terms, it has value in providing a pleasurable and accessible approach for kids to try out programming. But beyond that, I wonder if the platforms that provide both block and text representations of a program might help programmers at an early stage to gain a more abstract view of what programs are? A mental model in which (eg.) javascript syntax is just one representation of an algorithm, isomorphic with one using 'mere' visual blocks, is pretty easy to come by with these platforms. That might have real educational value (at least for some learners), completely regardless of whether or not visual programming extends to professional uses.
Much of the educational material using these platforms that I've seen does seem pretty poor though, persisting far too long in providing students complete screenshots of the final program. Learning activities then become little more than a rote pattern-matching exercise.
- TeMPOraL 9y ago[citation needed], as the very next paragraph of GP's asks: > Has anyone actually made a complex project with these initiatives, and had it spark an interest in computing/electronics that didn't already exist? Have they managed to make the jump from visual interfaces to lines-of-code? Is there any evidence that these programs REALLY help when it comes to engaging a wider group of people? -- Personally, I'm not sure if "visual programming" itself is introducing anything useful to make education easier. The difficult thing in getting started in writing code isn't writing, it's all the bullshit you have to do to set things up (installing a compiler, editor / IDE, creating projects, generating boilerplate code, deploying, etc.). Make that simple, and learning to code becomes simpler too. About the only case where I can imagine "visual programming" being better than writing code is if you're trying to teach 3-5 y.o.
- maruhan2 9y agoExcept there are html, css, javascript. Everyone already uses a browser so nothing to set up. Just code and open it in your browser.
- TeMPOraL 9y ago> Except there are html, css, javascript. Everyone already uses a browser so nothing to set up. You haven't seen the current JS ecosystem, have you? Now if you opt to ignore the entire modern JS scene - all that Babel, Webpack, NPM stuff - and just write plain old JS in a text editor to execute directly, then yes. And with browser dev tools having a half-decent REPL, I'd say this is a pretty good way to introduce someone to programming. Browsers have powerful features for UI and graphics built in, so even the "hello world" programs won't be boring. (Also: technically, there is something to set up; you won't be able to run everything through file:// because $security, so you need a minimal local HTTP server to serve your files for you.)
- Whitestrake 9y agoIs writing "plain old JS in a text editor" really that rare nowadays? Honest question - I've only done a few websites, some with basic JS functionality and a few more advanced (for a website, that is) Go apps now - but never really felt the urge or need to reach for the "modern JS scene", so I'm unsure just how prevalent that kind of setup is.
- brucephillips 9y agoIt is for modern commercial products, yes. And while there's some fragmentation and hacks that justify derision, it's not that bad. Any complex software component needs a package manager and a build system.
- codeulike 9y agoI don't think anything could scare a child away from programming faster than the three headed hydra that is html, css and javascript. I mean, I know how we got to where we are and it makes sense - "thing works, use thing more". But with html+js+css the amount of bullshit about angle brackets and ids and names and escape characters and css quirks and floating divs and lambdas and selector syntax that you need to get through before you can make a rudimentary game or interactive page is very unfriendly.
- pjmlp 9y ago> About the only case where I can imagine "visual programming" being better than writing code is if you're trying to teach 3-5 y.o. Visual programming is the way most people work in electronics and game industry. I really enjoyed designing my own circuits, making parts into usable components for my toolbox and visually simulate its behavior. Just like doing shaders is way more productive to visualize the intended effect doing it graphically than typing GLSL/HLSL code.
- crispinb 9y ago> Personally, I'm not sure if "visual programming" itself is introducing anything useful to make education easier. The difficult thing in getting started in writing code isn't writing, I worked with a 6 year old child yesterday, who was exposed to Scratch for the first time. Within the class hour she had several animations running, all controlled from the keyboard. It was all her own work -- I just showed her the ropes and checked in with her from time to time whilst rotating amongst a bunch of kids. What the 'visual' syntax offers in this instance is a discoverable palette of things to play with, and visual cues for what fits with what. That's far harder with a linguistic syntax, particularly for young kids, as you suggest. I'm quite new to teaching programming, so don't have much to go on. I'd say the main problem with Scratch is making a transition from dragging blocks to writing code. I'll be interested to see if the MakeCode/code.org approach is helpful