6 ms·
Wow, cool - the 'block editor' looks a lot like Scratch. Is it Scratch? I'm having trouble finding many details about the technical side of it. I think 'visual
by leggomylibro 9y ago
Wow, cool - the 'block editor' looks a lot like Scratch. Is it Scratch? I'm having trouble finding many details about the technical side of it.
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.
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?
I'm starting to worry that it's just more cynical grant-grabbing as the projects pile up and the results don't seem to. I hope it isn't, I just worry that this is all starting to sound a little 'magic solution'-y.
The Arduino came out about 15 years ago, for perspective.
- deleted 9y ago[deleted]
- abchatra 9y agoThere is a toggle between blocks and javascript in MakeCode. You can write code in blocks and switch to javascript or vice versa. This dual modality hopefully helps students to make the jump from blocks to javascript on a long term. Blocks editor is based on the fork of google blockly(https://developers.google.com/blockly/ https://developers.google.com/blockly/).
- leggomylibro 9y agoCool, thanks for the information!
- matthewwiese 9y agoScratch 3.0 uses Google's Blockly in their new software, for those curious about the similarities. The tech is widely used in many different applications, as evidenced by Microsoft's use of it in MakeCode. Though I'm not a part of the team and so can't provide much more information beyond an interested outsider, unfortunately. :)
- Anm 9y agoBlocky team member, here. Microsoft and MIT/Scratch have been amazing partners and contributors. We're really excited about Scratch 3.0 and the efforts on Scratch Blocks.
- ssalazar 9y agoMax/MSP and TouchDesigner are used heavily in creative industry, especially related to large-scale "experiences" that marketing agencies throw in urban spaces. Max/MSP is interesting because it was originally created under the auspices of a publicly funded French organization (IRCAM) before being commercialized.
- SyneRyder 9y agoMax/MSP has been around for a long time too. I've got a magazine article from 1997 about how U2 used Max to drive everything on their PopMart & Zoo TV tours. Not just the lighting & video screens, but also controlling the synthesizers & the effects pedals routing on The Edge's guitar for different songs. The whole show was run from a single Macintosh Quadra 650 running Max (though they kept a second Quadra 650 booted in case the first one crashed during the show). [The article was "U2 Live! The computers behind PopMart" by John Krogh, in the Nov/Dec 1997 issue of Music & Computers.]
- anonytrary 9y ago> I'm sort of losing hope that it isn't a gimmick or fad Visual coding is huge among people who aren't technical. I first got into "programming" when I was 9, through lego robots, they had a visual control flow thingy, basically visual coding. I think that must have helped me understand programming and its implications much faster when I got into college. Visual programming is not ergonomic enough to justify never writing code again. It will remain a paramount educational tool, and a great tool for designers and game developers. I believe people do use visual programming for Unreal projects (Unity, maybe?), textures, effects, etc. I don't think it is aesthetic enough right now to get the masses into it. Visual programming will eventually be important in getting people to do more complex things on the web (think IFTTT).
- seanmcdirmid 9y agoJust a correction: you are writing code with visual programming, its just visual code instead of textual code. You haven't gotten rid of code. VPLs are great for people who aren't programmers and don't wan to be programmers; e.g. Facebook designers using Quartz Composer or Orgami, game designers using Unreal blueprints, Blender, and so on.
- anonytrary 9y agoTo be very pedantic, the context makes it clear I'm using "code" as shorthand to refer only to written programs. True, visual code may well be a first class citizen in programming. As of today, there are still programs people would not write visually. It's a tool for simple procedural work, which could change as the ergonomics get even better.
- seanmcdirmid 9y agoThere are codeless visual programming methods, like Pygmalion and Sketchpad, among others. So we shouldn't get confused with them.
- anonytrary 9y ago
- agar 9y agoOnly a single data point, but Scratch has definitely sparked an interest in programming in my 12 year-old daughter. Though still early days, she has taken her first steps into learning Python. The concepts of loops, variables, counters, and even objects has definitely carried over from Scratch. She still spends most of her time in Scratch though, sometimes creating her own games or drawing programs, sometimes playing others' creations, sometimes looking behind the curtain to see how her favorite games work and doing light remixing. Will this turn her into a career programmer? Probably not, but she has told me that she now really appreciates what makes programs work, and every time she sees a new app she can't help but think about how it might be structured. Overall, I think that's a pretty good argument for early exposure to visual editors.
- glaberficken 9y agoExactly my view =) I have a 7yo daughter and she has just tried some block based programming challenges and she loved tinkering and predicting what the program would do, and then fixing the bugs. Gave her a real sense of accomplishment. I also don't think it will automatically send her on to a career as a programmer. But I think it is important for everyone nowadays to have at least an notion of how software works, given that there is software is almost everything we use these days...
- agar 9y ago> I think it is important for everyone nowadays to have at least an notion of how software works, given that there is software is almost everything we use these days... I couldn't agree more. Education isn't just learning facts, it's providing tools so kids can contextualize the world around them. When the world is powered by software, even a passing familiarity with the basics of programming will be as important as learning history, literature, or basic science.
- leggomylibro 9y agoWell, that is great to hear - with any luck I'm just being too cynical. But what I'm saying is, it sounds like your daughter has a nurturing environment, easy access to these tools, and a healthy amount of encouragement. Are these new tools any better at reaching the marginalized people who the projects profess a desire to educate? That's where the real impact would be, in people who wouldn't otherwise have the opportunity/environment to learn about these concepts. But...most of this stuff is fairly expensive, and doesn't seem to be gaining any traction in any sort of national-scale programs. Maybe I'm just not paying enough attention.
- pixie_ 9y agoVisual programming is also very popular among engineers. All kinds of test, automation, are monitoring systems are built using LabVIEW.
- TeMPOraL 9y agoI wonder at this point whether the causality isn't reversed. I.e. it's not LabVIEW that's popular because visual programming works for engineering; it's engineers doing visual programming because LabVIEW is the industry-standard fad, stuck in the self-reinforcing loop of universities teaching it because companies use it, and companies using it because potential candidates all know it.
- Karnickel 9y agoAs a software architect (current title, but I had a technical education, "electrical/mechanical", incl. technical drawing, lab work, metal work, decades ago, before studying CS), who prefers text most of the time I still can see the appeal of something like this (All links lead to pictures): - http://forums.ni.com/legacyfs/online/202594_Hololens_LabVIEW_simple_example.png http://forums.ni.com/legacyfs/online/202594_Hololens_LabVIEW... - http://sine.ni.com/cms/images/casestudies/a14_02.jpg?size http://sine.ni.com/cms/images/casestudies/a14_02.jpg?size - https://m.eet.com/content/images/edn/LabVIEW-NXG_editor_1920x1200_1496071228.jpg https://m.eet.com/content/images/edn/LabVIEW-NXG_editor_1920... Even this is not any worse than a complex text-based software project, you can zoom to the part that you want to look at in detail, just like you navigate between modules/classes/code files: - http://www.ni.com/cms/images/devzone/pub/nrjsxmfm912163998723206173.jpg http://www.ni.com/cms/images/devzone/pub/nrjsxmfm91216399872... Also beneficial for a visual approach is that that is how electrical circuits are visualized. It's been a long time, maybe they describe more electrical circuits in text (I know VHDL but that is not for all kinds of circuits, nor does it concentrate on the electrical aspects), AFAIK it's still mostly diagrams. Another point is that unlike software, where you deal with abstract things in any case (even registers, if you program in assembler, are pretty abstract). What you design in LabView is made of actual physical components, and you really physically run wires from one to the next. What is shown as an enclosing box with "gates" between inside and outside as in this diagram really looks like this, LabView is a simulation of a physical system: - http://www.egr.msu.edu/classes/me451/me451_labs/robot/LabVIEW%20Code.png http://www.egr.msu.edu/classes/me451/me451_labs/robot/LabVIE... I have done quite a few courses (edX, Coursera) over the last few years, and when there were LabView portions I had no difficulty and actually found it quite appealing. I would not say the same for software, where I still prefer text.
- 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.
- nojvek 9y agoThe blocky part of scratch got open sourced. This is what it’s built upon. So to answer your question. Yes very similar to scratch. In fact it transpiles to a JavaScript like language as well.
- Anm 9y agoThere is a lot of research surround this transition, and solid evidence that is does help novice programmers (not just kids) transition: http://www.jite.org/documents/Vol16/JITEv16ResearchP209-226Saito3387.pdf http://www.jite.org/documents/Vol16/JITEv16ResearchP209-226S... Our goal is to reduce barriers surrounding syntax and discoverability, so that they reach computational skills (sequences, conditions, functions, lists and other data structures) faster and with higher confidence and motivation. With the motivation (e.g., "I already built this") and a solid foundation, text programming can feel more achievable to the student.