Slashdot Mirror


Google Blockly — a Language With a Difference

mikejuk writes "There are aspects of Google that increasingly don't make sense. First they dump App Inventor — a graphical language for Android apps — in a fit of spring cleaning and closures — and now they have launched another Scratch-like graphical language, Blockly. However Blockly is different. It works like Scratch or App inventor but it is written in JavaScript. This means it can be included in any web page or web app very easily. This, in turn, means that it can be used for education, getting people to learn to program, or as an easy-to-use script generator for the app. The FAQ gives the example of automating GMail filters and management. The additional difference is that Blockly can compile its programs to JavaScript, Dart or Python so you can take the script and develop it further. This is a really good idea. As long as Google doesn't throw this one out in a fit of reorganization and spring cleaning, it's a welcome new language."

10 of 141 comments (clear)

  1. reinventing the wheel by Thud457 · · Score: 5, Funny

    I thought Minecraft had comprehensively solved the problem of creating a Turing-complete graphical programming language. It's redstone all the way down.

    --

    the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff

  2. That's a good one! by Megane · · Score: 5, Funny

    As long as Google doesn't throw this one out in a fit of reorganization and spring cleaning, it's a welcome new language.

    If the sun doesn't come up in the morning, I can sleep all day!

    --
    #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
  3. Re:Tired of Google's lack of product maintenance by Anonymous Coward · · Score: 5, Funny

    You should totally post this on Google Wave.

  4. Re:Tired of Google's lack of product maintenance by Anonymous Coward · · Score: 5, Insightful

    Many of the projects Google kills are ones that I only hear about when Slashdot announces they've been killed. That's a failure on Google's part unrelated to the people responsible for making the project. You can't call a project a failure in popularity if it never was given a legitimate chance.
     
    Even though these killed projects have very few users, I hear about so damn many projects of Google's that get killed that I don't wouldn't want to risk relying on them to maintain anything beyond mail. Why bother investing your time in a new Google service when it's probably going to be killed soon anyways? You're going to end up shit out of luck with wasted effort, and you knew it was coming before you even started.

  5. Re:At the risk of sounding elitist... by arose · · Score: 5, Insightful

    So how fluent exactly are you in machine language these days? Wouldn't want to rely on assembler or anything...

    --
    Analogies don't equal equalities, they are merely somewhat analogous.
  6. As a teacher, I'd put my money on "no" by Anonymous Coward · · Score: 5, Insightful

    I've taught quite a few courses ranging from traditional programming to tools such as Adobe Flash (which allows you to use any combination of the graphical tools and ActionScript, the latter being a full-fledged object-oriented programming language, with GC and all the other modern niceties). I've drawn boxes around variables to symbolize how they contain the values, I've given assignments to write pseudo-code, I've demonstrated the concept of algorithms by asking students to give me clear instructions on how to order a stack of documents alphabetically, when I only know how to access them by index and compare two documents... and I'm not sure if any of that has been worth the time.

    I don't think I've ever run into a student, who would have been able to actually grasp the concept but would then have stumbled because the code part is difficult. There are people who can grasp the concepts and who then have no real trouble with the code and then there are people who don't really understand having one loop inside another, no matter whether you allow them to write down code, draw flowcharts or whatever.

  7. Yes by spike2131 · · Score: 5, Interesting

    Also, is there any evidence whatsoever that these "graphical" languages are easier for people to learn?

    My kid is 5, and he spends hours writing little programs in Scratch. The click and drag aspect of the graphical language makes it much easier for him. If he had to rely on his nascent typing skills to write code, he'd be stuck in the frustration of Syntax Error Hell, as I was for years when I first started pounding out Basic code on the Apple II.

    --
    SpyDock: Scientific Python in a Docker container
  8. Not elitist, but you're missing the point. by jeffb+(2.718) · · Score: 5, Insightful

    You're quibbling over symbology, while missing the important distinctions.

    At the most trivial level, just about all programming is "graphical". Characters are symbols. A two-dimensional array of symbols is a graphic. You don't think of it as a graphic, but there it is, right there on your display.

    If you've got a graphical language that lets you drag colorful boxes around, snap them together, and watch them twinkle contentedly as the program executes, how exactly is that different from using text? If it's "less rich" -- if there are constructs available in a "conventional language" that aren't available in the graphical language -- then we can discuss the graphical language's particular deficits, and perhaps correct them.

  9. Re:At the risk of sounding elitist... by gtbritishskull · · Score: 5, Insightful

    That is actually how civilization advances. People specialize. I drive to work every day. I use a car (a tool) that was created by people who have spent most of their career becoming better, through education and experience, at making that tool (the car) better. It makes me A LOT more efficient at my job because I can drive 20min each way instead of walking for 3 hours each way. I, on the other hand, make other tools (computer programs) that they can use in their everyday life to be more efficient. An example of this analogy is g-code. The car specialist can quickly mill out a part to test on a CNC machine without having to do it by hand and without worrying about how the processor interprets the code, or how the mechanical linkages of the mill work, or the energy characteristics of the milling motors. Because he is using a tool, not trying to understand the underlying process.

  10. Re:Instead of relying on Google..... by BenLeeImp · · Score: 5, Informative

    Its released under an Apache license. Anyone can run with it if they want to.