Slashdot Mirror


Ask Slashdot: Is There a Way To Write Working Code By Drawing Flow Charts?

Slashdot reader dryriver writes: There appear to be two main ways to write code today. One is with text-based languages ranging from BASIC to Python to C++. The other is to use a flow-based or dataflow programming-based visual programming language where you connect boxes or nodes with lines. What I have never (personally) come across is a way to program by drawing classical vertical (top to bottom) flow charts. Is there a programming environment that lets you do this...?

There are software tools that can turn, say, C code into a visual flow chart representation of said C code. Is there any way to do the opposite -- draw a flowchart, and have that flowchart turn into working C code?

Leave your best answers in the comments.

264 comments

  1. Is this a joke? by __aaclcg7560 · · Score: 2, Insightful

    I probably still have my flowchart template from Introduction to Computers in 1993. Used it for that one class and never used it again. Not even when I later went back to school to learn computer programming a decade later.

    1. Re:Is this a joke? by Nutria · · Score: 2

      I probably still have my flowchart template from Introduction to Computers in 1993

      They had me do it in 1983, and I know that flowcharts were around in 1963...

      I also remember 4GL flow chart code generators in the mid-1980s, and their promise of "programs without paying programmers". What a joke that was.

      --
      "I don't know, therefore Aliens" Wafflebox1
    2. Re: Is this a joke? by Anonymous Coward · · Score: 0

      When I was in the 2nd hrade we used a program called Turtle which basically was what the summary describes.

    3. Re:Is this a joke? by Anonymous Coward · · Score: 0

      I'm surprised you didn't eat it.

    4. Re:Is this a joke? by EETech1 · · Score: 2

      Someone is posting as you, with very closely spelled names, and 4980000+ uid's

    5. Re:Is this a joke? by Dutch+Gun · · Score: 4, Interesting

      Yes, you absolutely can write code using flowcharts, and I've got two practical examples from my career in videogames. Obviously, both were in specialized sub-domains, as the bulk of our general work is in C++.

      First example: I worked at a place that allowed artists to wire up nodes in Maya using a circuit-like logic system. For input, they'd use timers, triggers, environmental sources (time of day), etc. Then they'd connect those inputs to various logic gate nodes (AND, OR, math, branching, delays, etc), and then to various output nodes that would affect the game world in various ways, such as triggering animations, environments, music/sound effects, and so on. This gave artists an incredible amount of power to shape the world if they were clever enough with their wiring skills, and all without programmer support. It was telling, though, that we eventually added a "Lua Script" node, because sometimes complex logic is really hard to do with circuit-type wiring.

      Second example: In widespread use today, many game developers generate HLSL shader code using visual tools. Again, the same sort of logical wiring occurs. The connections represents an RGBA color source, or maybe a vector, while the nodes represent methods to transform that data. To blend two color sources together, for example, you pick a particular blending operation node, then just visually connect the sources and output. The visual programming paradigm means that technical artists can use this system rather than programmers, allowing them to tune their materials exactly how they'd like.

      This sort of visual programming works really well when dealing with data flow in a fairly constrained environment. Other real-world examples include creation of sophisticated virtual musical instruments using visual programming techniques. Native Instruments has some products that work this way, like Reaktor. Example: https://www.native-instruments...

      --
      Irony: Agile development has too much intertia to be abandoned now.
    6. Re:Is this a joke? by portwojc · · Score: 1

      Perhaps... From the hacker test... http://www.mit.edu/people/mjbauer/Purity/hackpure.html

      00B4 Do you have a flowchart template?
      00B5 ... Is it unused?

    7. Re:Is this a joke? by K.+S.+Kyosuke · · Score: 4, Interesting

      It was telling, though, that we eventually added a "Lua Script" node, because sometimes complex logic is really hard to do with circuit-type wiring.

      There's a nice quote by Alan Perlis: "A picture is worth 10K words - but only those to describe the picture. Hardly any sets of 10K words can be adequately described with pictures."

      --
      Ezekiel 23:20
    8. Re:Is this a joke? by drinkypoo · · Score: 1

      Someone is posting as you, with very closely spelled names, and 4980000+ uid's

      creimer apparently has a troll that is up in the middle of the night. I get up earlier than most of Slashdot in spite of being on the left coast and I have been seeing his trolls in low-comment-volume stories in the mornings. By midday they tend to be buried in higher-value comments, because his troll is not very good.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    9. Re:Is this a joke? by Anonymous Coward · · Score: 0

      Sadly, not a joke.
      Back in the early 90's (pre '93), I had occasion to use an IBM XT clone for occasional HC11 and 68K assembly work (METAi Assembler, hardware dongled, permanently fixed to that box..), idly trawling the hard disk I found a DOS package which did indeed take in a flowchart and spew out code in a number of languages, BASIC, Pascal, FORTRAN, C and, I think Modula-2 (there may have been others).

      I can remember trying out the BASIC, Pascal, C and FORTRAN code it produced for what would now be called 'shits and giggles', yes, it worked, yes, the code was bloody awful.

      Don't ask me what this thing was called, it was the only time I used it and it wasn't of any real interest to me, we had all sorts of weird commercial experimental shit like this installed on a lot of the Lab machines, back in a time of more money than sense..
       

    10. Re: Is this a joke? by Anonymous Coward · · Score: 0

      As you said. Constrained environment. A piece of your program. Wrappers to more complex bits.

      I've been in the visual automation game for 10+ years. It doesn't pan out. Ever. At least so far.

    11. Re: Is this a joke? by dnaumov · · Score: 1

      Why would that be a joke? We live in an age where AI software is coding AI software. Why would a less-automated system be outlandish?

    12. Re: Is this a joke? by __aaclcg7560 · · Score: 1

      Why would a less-automated system be outlandish?

      Because every decade we get something that promises to remove the programmer from creating the program, allowing corporations to save a ton of money or the layman to create programs at the press of a button. Those efforts never finds widespread appeal.

    13. Re:Is this a joke? by __aaclcg7560 · · Score: 1

      Someone is posting as you, with very closely spelled names, and 4980000+ uid's

      Casey Neistat has a video that defined success as people wanting to be like you. I'm not surprise that someone wants to post like me on Slashdot.

      https://www.youtube.com/watch?v=3iQ8BGw13So

    14. Re:Is this a joke? by __aaclcg7560 · · Score: 2

      [...] his troll is not very good.

      My troll is an asshat turned n00b who can post only so many comments before the mods down vote them into oblivion and the account gets restricted to two comments per day. This troll has three accounts that I'm aware of.

    15. Re:Is this a joke? by Anonymous Coward · · Score: 0

      No, you somehow managed to convince Slashdot that you deserved to get control "cdreimer" even though your fat useless brain didn't think to sign up your precious pen name for ten years.

      ... still crying from the butthurt that creimer gave you, i thought you enjoyed it ...

    16. Re:Is this a joke? by __aaclcg7560 · · Score: 2

      No, you somehow managed to convince Slashdot that you deserved to get control "cdreimer" even though your fat useless brain didn't think to sign up your precious pen name for ten years.

      You created a user account for the expressed purpose of harassing another user on Slashdot. I asked for the account to be disabled or deleted. Management deleted the account, putting cdreimer back into play and I signed up the account. You got pwned.

      "criemer" is doing a great job of deflating your useless posts and showing the world what an utterly delusional Slashdotter you are.

      Other users are starting to complain about "criemer" and "creinner". I wouldn't be surprised if those accounts go away in the near future.

      And no one reads your stupid ebooks, just reading the titles made me almost swear off literacy.

      Maybe not. But my ebooks do sell. Selling is the only metric that counts.

    17. Re:Is this a joke? by __aaclcg7560 · · Score: 1

      I simply had the insight that reimer was too fucking dullwitted to sign up his pen name. For someone who pretends to know so much, not registering his own stupid name was just too fucking funny.

      Re-read my answer. Maybe you're bright enough to learn something. Or maybe not.

      https://slashdot.org/comments.pl?sid=10693023&cid=54537015

    18. Re:Is this a joke? by __aaclcg7560 · · Score: 1

      And then you had to embellish your dimwitted story with these $$$ you claim you're making.

      I'm referring to the last three months that got started when an asshat falsely accused me of threatening to shoot him. Who knew that controversy was good for business?

      https://www.kickingthebitbucket.com/2017/03/21/have-i-threatened-to-shoot-you-today/

      I had "cdreimer" for a total of barely 4 days over the long weekend. I made 9 posts. There's no one anywhere who was curious about what a "cdreimer" was, and you didn't sell a single of your demented ebooks over that time.

      You got pwned. Suck it up.

    19. Re:Is this a joke? by RabidReindeer · · Score: 1

      The idea of taking a graphical app design and converting it automatically to code goes back a long, long ways. It was supposed to eliminate the need for programmers.

      Variations on this include decision-table based code generators and other similar things - it was just flowcharts. In one sense, Apple's HyperCard also was a player in that space.

      It has never worked. As with every other automated code-generation system and 4GL that was supposed to render programmers obsolete, getting a flashy demo start-up app was easy. Then the ugly troll-fist of real-world problems smashed it flat. Auto-generated code always seems to encounter critical cases where the code generator had no idea of what to generate. The code quality usually inefficient, outside of the optimized stock core modules.

      It's rather ironic. We're looking at automating driving, financial and other decision-making jobs, factories, and just about any human endeavor you can think of, but automating the automators themselves has steadfastly proven to be an insoluble challenge.

      I'm not big on the "Every time before. "X" happened, so surely "X" will happen next time as well" (or in this case, "X" failed, so "X" will continue to fail.) Once, compilers generated crap machine code, but these days, automated code generation is so good that it's simply not economical to try and hand-optimize any system of any significant scale. So, likely one day, the high-level automation problem may ultimately fall once we've built enough tools and learned how to combine them properly.

      In the mean time, however, flowcharts serve mostly as documentation aids. And at that, the necessity of flowcharts plummeted once programming languages became kitted out for Structured Programming. Flowcharts were most useful when everything was spaghetti code. Structured programs are generally better represented by decision tables.

    20. Re:Is this a joke? by RabidReindeer · · Score: 1

      it was not just flowcharts.

      Sorry.

    21. Re:Is this a joke? by __aaclcg7560 · · Score: 1

      Maybe I got "pwned", but my reward is: I'm not you!

      Says the asshat who signed up to be "cdreimer" for four days.

    22. Re:Is this a joke? by __aaclcg7560 · · Score: 1

      Finally, you at least admit it had nothing to do with the DMCA, you sad, lonely, friendless loser.

      I sent a DMCA takedown notice and got an immediate response the next business. As to why management deleted the account, I wasn't told.

      Yeah, you'll retire on that 81 cents a year some sucker mistakenly sends your way.

      I use 89 cents for planning purposes. This number represent the royalty of one ebook sold on Amazon and one ebook sold on Smashwords. However, 90% of my ebook sales are through Smashwords. I'm going have to come up with a new number for planning the next fiscal year.

    23. Re:Is this a joke? by __aaclcg7560 · · Score: 1

      Does that tiny blob sitting on top of your brain-stem register that?

      You pretended to me for four days. What part of identity theft that you don't understand?

    24. Re:Is this a joke? by Anonymous Coward · · Score: 0

      Running? More like waddling.
      --
      roomin_mar

    25. Re: Is this a joke? by Hognoxious · · Score: 1

      Seconded. I wouldn't call that programming, more like a very specialised & specific GUI.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    26. Re:Is this a joke? by Anonymous Coward · · Score: 0

      LOL keep complaining asshat. It's funny TO me how you keep writing to me. And RESPONDING to me. And write like you are me. It would see you want to be me! That is what DMCA is for. You will never be me. Going to Junior College to get my Dean's List, they told me there are TWO of everybody! There is the me and there is the OTHER ME! And you are not the OTHER ME, because TIME never changes! Hey...maybe I am the other me!

    27. Re:Is this a joke? by Anonymous Coward · · Score: 0

      I never use my old flow chart template for programming. But it is handy for writing patents -- the examiners eat that shit up.

    28. Re: Is this a joke? by Anonymous Coward · · Score: 1

      Long long ago, newbies wrote spaghetti code using many goto statements. Flow charts were necessary to help debug the spaghetti code. Commercial computers ran in batch environments with very scarce compute time per programmer. Desk checking of code was the norm with the aid of flow charts.

    29. Re: Is this a joke? by Anonymous Coward · · Score: 0

      Yes, a bunch of GoTo commands is exactly what the description was talking about.

      You nailed it!

    30. Re:Is this a joke? by Stud+McPeckChest · · Score: 1

      Cynically speaking, it is kind of a joke.

      A long time ago I worked with an application called Octane -- a customizable CRM software package. It's IDE was Visio and its programming was via flowcharts. They advertised their system as a self-documenting language.

      I thought it was a neat idea but, once you really started programming in it, you realized it wasn't a very good one. Flowcharts allow you to gloss over some of the finer details of implementation. Programming requires those implementations be spelled out which makes that section of code/documentation awful to look at. Eventually, any decent-sized chunk of code/documentation resulted in a huge flowchart that you couldn't take in in one viewing.

      It really didn't help that Octane screwed up their implementation of the "language" with numerous bugs. I spent all night trying to figure out why XML wouldn't load. Any node could be in any order but I eventually discovered that one node for some reason had to be in a particular order. The rest? Throw those anywhere. This one node in the center of the XML had to be right here.

      By far the bigger problem was exception handling and IF statements. There simply was no exception handling whatsoever. Simply don't make mistakes. Unfortunately, the flow of IF statements in their accursed pile of junk software worked so that, if an IF statement evaluated to True, it would follow one path. If it evaluated to False it would throw an uncatchable exception (no exception handling) which ended the application.

      The silver lining was that they allowed calls to outside DLLs. After I figured out all these gotchas in the code, it was decided that every single flowchart would consist of one object: a call to an outside DLL written in a real language with real features. By that point I was put on another project to figure out how that damned thing worked.

      It is my understanding that Octane changed their name and engine with the next release and became a better software company. Still, based on that experience, I don't think a flowcharting "language" is a good idea at all. I would prefer my diagrams be able to gloss over certain details if need be.

    31. Re:Is this a joke? by mmdurrant · · Score: 1

      This is almost precisely how the logic aspects of the very modular Doom level editor work.

      --
      I see my shadow changing, stretching up and over me...
  2. Congratulations, you just invented... by Anonymous Coward · · Score: 1

    ...you just invented pseudocode!

    1. Re:Congratulations, you just invented... by Z00L00K · · Score: 1

      Congratulations, you just invented Simulink.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    2. Re:Congratulations, you just invented... by TheRaven64 · · Score: 4, Informative

      He seems to want to take a dataflow programming language and generate C from it. This is trivial and there have been a bunch of tools that do it. The problem is, it's entirely pointless. If your code is better represented as a flow chart, then use a dataflow programming language and don't bother with C as an intermediate representation. The only reason to turn it into C is if some parts of it are easier to edit as C code (typically, bits with complex flow control, because even nested loops in graphical dataflow languages are pretty hideous). Then the problem that you actually want to solve is turning a flow chart into C, editing it, and then turning it back again while preserving the original structure. This is much harder, but typically dataflow languages let you call out to C for complex operations and that's generally a better solution.

      --
      I am TheRaven on Soylent News
    3. Re:Congratulations, you just invented... by unixisc · · Score: 1

      Wouldn't portability be an issue as well - namely, that the dataflow language may have compilers in one platform, whereas C is pretty much universal? Therefore, converting something from a flow chart to C would help target all platforms the programmer is interested in.

    4. Re:Congratulations, you just invented... by TheRaven64 · · Score: 1

      Depends. If you can generate C from your language, generating LLVM IR is almost always easier. The portability problems usually come from things like assuming word sizes, non-portable runtime library functions (either making non-portable assumptions, or relying on OS functionality that's not widely available) and so on.

      --
      I am TheRaven on Soylent News
  3. IBM Rational Rhapsody by Anonymous Coward · · Score: 1

    Rhapsody can do this, and has been around for about two decades. It was previously owned by I-Logix, and then Telelogic.

    1. Re:IBM Rational Rhapsody by PolygamousRanchKid+ · · Score: 1

      Speaking of IBM . . . take a look at Node-RED ( https://nodered.org/ ) :

      Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways. It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click.

      Think of it as creating node.js code from flows you define with a graphical editor.

      DISCLAIMER: I use it a lot, and had the pleasure of meeting one of its creators, Nick O'Leary, who works for IBM. He is a bit of a geek's geek . . . a technical genius, but very humble about it.

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
  4. Does seem a bit 80's... by Giant+Electronic+Bra · · Score: 4, Interesting

    I mean, we have had UML now for going on 15 years. You can CERTAINLY generate code and other artifacts from some types of UML diagrams. None of these is all that much like a flowchart, and frankly flowcharts are essentially dead AFAIK. They really only ever worked well, if they ever did, on fairly straightforward procedural code. Back in the bad old days before Structured Programming and then OOP it wasn't all that uncommon to see people using them, but that was mainly because even fairly straightforward linear code was hard to understand when it was written in FORTRAN or COBOL. Such charts have little relevance in modern OO/functional coding where linear control flow is really not an issue.

    --
    "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
    1. Re:Does seem a bit 80's... by Z00L00K · · Score: 3, Insightful

      Simulink is a variation of flowchart programming, but maintainability is hard when it comes to flowchart programming. You need a football field or two to try to make sense of it and any large system will have cross-dependency graphs that are extremely hard to follow.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    2. Re:Does seem a bit 80's... by Anonymous Coward · · Score: 0

      Don't leave out Labview. Whoever posted this needs to Google Nth generation programming language where n>3.

    3. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      No results found for "Nth generation programming language where n>3".

    4. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      Flow charts are still common for business process description, e.g. BPMN2.

    5. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      And you can, in theory execute it

    6. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      Asshole

    7. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      I wish they would.

    8. Re:Does seem a bit 80's... by jellomizer · · Score: 4, Informative

      UML and other Flowcharting method are better on paper. But rarely can scale to a full application.
      1. They are based on the idea that the business owners know what they want. UML and flowchart are based on the idea if you have enough meetings and talk to the right people that you will get all the info needed. This isn't true. What they say they want vs what they need are actually very different.
      2. Like objects often will evolve into two different species. UML wants to make a Person class that can be inherited into Users, customers, execs, administrators... however as time goes on under real use you may find that you may have users who are just another program or dealing with customers who are business which has data elements that just don't fit in the model of a person. This makes either bad data entry to get it to work. Or crazy workarounds.
      3. UML and flowchart are about understanding the info not building it. That one box that says save data could be a complex piece of code, factoring in silly things like security performance and the face that this data is being used by many people at the same time. Building a flowchart for all parts will just be more cumbersome and make the process way too officiated.

      They are flowchart and UML based converts and languages. But they are marketed as workflow management systems, which are fine and good for what they are. But don't expect these to be on the top programming language board. As they are usually under tight controls of the consulting companies and the development companies.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    9. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      It is.

    10. Re:Does seem a bit 80's... by Anonymous Coward · · Score: 1

      1. They are based on the idea that the business owners know what they want. UML and flowchart are based on the idea if you have enough meetings and talk to the right people that you will get all the info needed. This isn't true. What they say they want vs what they need are actually very different.

      That's equally true whether you use visual languages or not. UML and flowcharts are just used to represent some parts of a model, not the thing being modeled. Just notation plus some semantic rules for well-formedness. Your comment addresses software engineering process, not requirements representation.

      2. Like objects often will evolve into two different species. UML wants to make a Person class that can be inherited into Users, customers, execs, administrators... however as time goes on under real use you may find that you may have users who are just another program or dealing with customers who are business which has data elements that just don't fit in the model of a person. This makes either bad data entry to get it to work. Or crazy workarounds

      "UML wants"?! What about what C++ wants, or what SQL wants, or what Lua wants? Ever think about them?

      Of course not. Your comment really addresses software design methodology, not design representation.

      3. UML and flowchart are about understanding the info not building it. That one box that says save data could be a complex piece of code, factoring in silly things like security performance and the face that this data is being used by many people at the same time. Building a flowchart for all parts will just be more cumbersome and make the process way too officiated.

      About understanding the info, not building it, except in the sense that you're building a model, to whatever degree of fidelity you deem sufficient and useful. It's about communicating in a way that highlights whatever aspects of that model you choose. Building a flowchart for all parts is not helpful, but it may facilitate understanding of some parts and their interactions.

    11. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      Labview has the same problems the GP said of simulink. It is great for throwing together a quick GUI and gluing together some closed loop control system component. But any nontrivial sized program becomes a nightmare to maintain. Even with code that was extremely tidy and with numerous notes, finding simple bugs took a lot of time for anyone but the original author. Too many projects resort to just having a single Labview guy to keep it organized, but then becomes a bottleneck or a critical failure point if they are not around.

    12. Re:Does seem a bit 80's... by thsths · · Score: 2

      Yes, both MATLAB/Simulink and NI LabView come to mind. But both are graphical representations of data flow, and not control flow. You can abuse them to represent control flow, but that is neither efficient nor pretty.

      As said above, since the demise of GOTO, control flow charts are really much less useful than they used to be.

      There was a variation for block oriented programming that was derived from Pascal, containing a table like layout and graphical symbols for IF/THEN/ELSE, WHILE and FOR loops. Lego Mindstorm V1 did something similar - and I thought it was quite beautiful. But little has happened since.

    13. Re:Does seem a bit 80's... by Anonymous Coward · · Score: 0

      Your an idiot if you don't flowchart complex functions. I'm not talking about each fucking functional call, routine, or statement. But if you do not map out your application before building it, it will fail either technically or commercially

    14. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      Hey. At coding boot camp we just make the boxes and i get the pass grade. You think you know more then the highly qualified teachers at Crazy Bobs Discount Code Bootcamp?

    15. Re: Does seem a bit 80's... by ShanghaiBill · · Score: 2

      Back in the 1980s I worked for a defense contractor, and we were required to have flowcharts for all our code. In theory, we were supposed to design the algorithms using flowcharts, and then write the code. But that is stupid, and no one ever did it that way. Instead, we had a program to generate the flowcharts from the code, and then we printed them on a plotter.

      One page of code generated about ten pages of flowcharts, so we went through a lot of paper. Each time the shelves filled up with flowcharts, we would stuff them all in boxes, put them on a pallet, and have them moved to a warehouse.

      AFAIK nobody ever looked at them. Other than as carbon sequestration, flowcharts are useless.

    16. Re: Does seem a bit 80's... by Bengie · · Score: 1

      Parent is Goatse.cx. Please down vote.

    17. Re:Does seem a bit 80's... by thinkwaitfast · · Score: 1

      I remember using UML in the early 90's, so maybe closer to 25 years. That or I could be having a massive stroke right now.

    18. Re:Does seem a bit 80's... by thinkwaitfast · · Score: 2

      Everything is hard when you have limited experience.

    19. Re: Does seem a bit 80's... by Anonymous Coward · · Score: 0

      You can write and test a program in a fraction of the time it takes to write a detailed, accurate flow chart.

      Either you need to develop your program in a non-procedural language, or you need to use an IDE to boost your productivity.

      If you're using Assembly language on an embedded device, then perhaps you do need to write a flow chart.

    20. Re:Does seem a bit 80's... by jellomizer · · Score: 1

      Ummm. The point of the article is the person wants a flow chart based language so you would need to flow chart each function.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  5. EditorDavid seems to be nearing his end-term exams by Anonymous Coward · · Score: 0

    ...or a deadline. Only the lack of experience and combined with the pressure of time can make people ask such stupid questions.

  6. You just described Simulink. by Anonymous Coward · · Score: 4, Informative

    Plus Simulink coder.

    1. Re:You just described Simulink. by Anonymous Coward · · Score: 0

      More like Stateflow...

    2. Re:You just described Simulink. by giampy · · Score: 1

      You can also go the other way around:

      http://www.ensoftcorp.com/mode...

      --
      We learn from history that we learn nothing from history - Tom Veneziano
  7. Kind of by atari2600a · · Score: 1

    Google Scratch. 2.0 makes it turing-complete but it's not exactly API compatible

  8. SCADE by Anonymous Coward · · Score: 0

    SCADE from Esterel Technologies does exactly that.

  9. Scratch by roskakori · · Score: 2

    Scratch uses an approach similar to flow charts. If you're not to picky about the notation, it might be what you are looking for.

    1. Re:Scratch by K.+S.+Kyosuke · · Score: 1

      Not quite. Scratch is basically a structured editor with visual representation of its data isomorphic to a certain language's syntax. It's not what any sane person would describe as a flowchart, seeing how informal flowcharts were and how strict structured editors are.

      --
      Ezekiel 23:20
    2. Re:Scratch by Anonymous Coward · · Score: 0

      Scratch requires obsolete and insecure software (Flash). It also doesn't have an IDE that can be run locally nor does it have a compiler. It is about as far away from what was asked for as you can get.

  10. Why? by Tablizer · · Score: 2

    Why? Even if it could technically be done, it's probably not good code from a human-readability standpoint and will have to be heavily reworked, such as variable re-naming, splitting into functions/modules, etc.

    1. Re:Why? by TuringTest · · Score: 1

      That depends on the flow chart language you use. The DRAKON language was designed to create extremely easy-to-read and highly modular flow charts.

      --
      Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
    2. Re:Why? by angel'o'sphere · · Score: 1

      And the logic is easy to describe with graphics :D

      Anyway, drawing flow charts and converting them to code is out of fashion because now we have super power full IDEs.

      If you had only a lame text editor, it would be a challenge to write code instead of drawing a flow chart.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    3. Re:Why? by allo · · Score: 1

      The point is, when you implement non-trivial logic, the flow chart isn't easy anymore. It will look complicated and be hard to read even for the expert. Just because your keywords are inside circles it doesn't make the logic easier to understand.

    4. Re:Why? by angel'o'sphere · · Score: 1

      That is only true for an extreme minority of programmers.
      And you have no keywords in the flowchart anyway, the symbols are the keywords.
      Most people understand a graphic 10 to 100 times faster than code/text. That is the prime reason why they are en vogue in some circles.

      In UML you would use an activity diagram, btw. I use them mainly to capture business requirements (Use Cases) or for Rule Processing Engines. For ordinary code I did not use flow charts since 20 years I think. But some case tools can auto generate them from source code, that is often helpful.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    5. Re:Why? by allo · · Score: 1

      You still have a logic to implement and that's the real problem. There are hundreds of programming language syntaxes, often trying to be easy. But the real problem is to understand the algorithm. Or to invent some algorithm.

  11. Educational kits by AHuxley · · Score: 2

    Look at the US educational products that let users do things with a gui and even a robot kit.
    They often have a very simple gui system of getting input and presenting an output.
    I am not sure how much of the US educational product would allow for options other than following a set course structure.
    Often used so the whole class in a US educational setting can feel they are been educated about computers.
    A slow pace of education, not much maths, all about the gui and getting something done in a short time.
    Of historical interest might be some aspects of a card in Hypercard https://en.wikipedia.org/wiki/... from Apple.

    Most people who are smart find some programming language they can use e.g. Basic, Ada, Pascal or something Apple, todays apps or Windows supports.
    People who are not smart then just use what other people create for them.
    If a person needs C, take the time to learn C. If a person can present a flow chart, work with a smart person to turn that into C.

    If this is a marketing test to see what exists and what is needed, consider the many marketing lessons of Hypercard. What it did, what was done with it and why people now just use the maths and code for their Apple, MS or app needs.
    Circuit board design tools might be a starting point to replace the circuit board part with more of a gui, chart feel.

    --
    Domestic spying is now "Benign Information Gathering"
  12. NodeRED by Anonymous Coward · · Score: 0

    Node red... drag & drop programming in a web browser.
    https://youtu.be/fV78MQks6BI

  13. Pega by Anonymous Coward · · Score: 0

    Pega software from Pegasystems does that - although it writes code in java.

    1. Re:Pega by jellomizer · · Score: 1

      Technology Pega is a Business Process Management system.
      Good for the scope that it is in. But would get cumbersome when things get too complex where you need to edit the Java code for the stuff that is out of its bounds.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    2. Re: Pega by Anonymous Coward · · Score: 0

      Right tool for right job. No different than anything else.

    3. Re: Pega by Anonymous Coward · · Score: 0

      It's more like an intermediate step. Notably, it didn't just dump a bunch of .java files for you to manually edit and separately manage in a VCS.

    4. Re: Pega by jellomizer · · Score: 1

      They are specialized tools and then they are generalized tools. Programming language are general tools like a hammer, screwdrivers, a knife. Where most all problems can be solved with them, but it may take time. Specialized tools say a wood lathe can do a lot less things but what the do the do very well. However always having the right tool for the right job can get expensive. And from the sound of the article the poster wants a general purpose development language designed with flowcharting.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  14. AmigaVISION? Labview? by 50000BTU_barbecue · · Score: 1

    There's a reason people don't .... It's terrible. LabView is a mess, and AmigaVISION was charming ... 25 years ago.

    --
    Mostly random stuff.
  15. Automate by Dialecticus · · Score: 2

    My favorite is called Automate by LlamaLab.

  16. Wikipedia has a category 'Visual programming by Anonymous Coward · · Score: 2, Informative
    1. Re:Wikipedia has a category 'Visual programming by michael.karl.coleman · · Score: 1

      These were noble experiments, but none are useful for practical programming, AFAIK.

    2. Re:Wikipedia has a category 'Visual programming by Anonymous Coward · · Score: 0

      Pure Data comes preinstalled on lots of pro audio hardware, they write all sorts of filters with it

  17. BPMN by Anonymous Coward · · Score: 0

    Yes, BPMN is basically a flowchart framework for Business Processes. Note that since the top level steps are very general steps, there is also the ability to plug in more specific code to handle the details of such a step.

    There have been many efforts; however, most of these efforts to make pictorial code executable are hampered by the inefficiency of creating and maintaining the pictorial code. Apparently people are better at writing in text than dragging around boxes in a GUI editor. I believe this is due to the presentation of the text being easier to read in bulk, even if it is less visually appealing. Others may have other opinions. Mine is based on anecdotal evidence, as I can get three or for functions on the screen at the same time easily, while I can only get a few dozen nodes of a flowchart (which might be half a function) on the screen at once.

    Scratch (or the improvement BYOB, Bring Your Own Blocks) does pictorial programming; however, they use an improved visual language, as compared to the traditional flow chart. I've used it for some just beyond trivial toys that I share with my daughter. I can say that it is easier to start writing something in Scratch, but after you have more than four functions, it is harder to verify your program is what you desired overall.

    1. Re: BPMN by Anonymous Coward · · Score: 0

      How do you do a diff, code reviews, or keep a git-commit history of a flow-chart. Textual coding will always be king.

  18. Absolutely, but by phrobot · · Score: 1

    For trivial academic problems that nobody really cares about, yes. For hard problems in real world situations that real people care about paying money for, no. UML and its kind are good for documenting a simplified slice of a complex system so engineers can understand the requirements and start writing real code. But to be precise enough to generate code, well, you might as well just write code.

    1. Re:Absolutely, but by Z00L00K · · Score: 2

      UML is useful to identify which objects you are working with in the code but it's not good to describe the information flow in a system.

      The worst problem with UML is that it also can tie together objects with each other - or even worse, create objects - that from a superficial glance seems to be related but when you look at the information flow you see that the only thing they have in common is that they are related from a very specific perspective, much like two stars that looks close to each other from the viewpoint we have here but in reality they are many lightyears apart.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    2. Re:Absolutely, but by rudi.angela · · Score: 1

      Well, FYI, I've used Prograph to tackle real world problems exactly twenty years ago. In those days I wrote a web application framework, comparable to PHP, but with advanced features like thread pooling, database connection pooling. Unlike PHP, the modules were compiled. This was all running on MacOS and Windows. Though this was cutting edge in those days, there was nothing academic to it as it was purely driven by business needs. Though I'm still actively developing server side web applications (now in Java) I consider that the best development experience I ever had.

  19. TIBCO BusinessWorks by Anonymous Coward · · Score: 0

    And there have been other attempts...most I can't remember now.

    The problem is never the "writing of the code", imo. The trouble is that most people don't/can't critically think and aren't disiplined enough to debug.

    1. Re:TIBCO BusinessWorks by Z00L00K · · Score: 1

      Which leads to the case that people have a hard time to break down a problem into components that are easy to maintain and test.

      But in many solutions there's also the problem that those that codes don't even understand or know the environment the system is going to be used in. Like the fact that there's sometimes icy roads - explain that to a person in Bangalore where the only place you see ice is in drinks.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  20. PureData by jblues · · Score: 1

    They're not flow-charts, but the PureData programming language is provides executable diagrams. Pure Data (or just 'Pd') is an open source visual programming language for multimedia. Its main distribution (aka 'Pd Vanilla') is developed by Miller Puckette. Pd-L2ork/Purr-Data is an alternative distribution (originally based on the now unmaintained Pd-Extended project), with a revamped GUI and many included external libraries.

    --
    If it acquires resources on instantiation like a duck, then its a shared_ptr<Duck>
    1. Re:PureData by mkendall · · Score: 2

      I think pd, like LabVIEW, primarily shows the flow of data, not execution. They are data-flow diagrams, not flow charts in the traditional sense.

  21. That's how they teach programming.. by Anonymous Coward · · Score: 0

    In liberal schools.

    Draw a line between 2 boxes. Score 100% and a science degree from Evergreen College!

    1. Re:That's how they teach programming.. by Anonymous Coward · · Score: 0

      How about conservative schools that teach environmental science...

      Draw a line between a lobbyist and a politician. Score 100% in diverting public money to private coffers!

    2. Re:That's how they teach programming.. by lucm · · Score: 1, Troll

      If you think conservatives are the best at selling out, you probably need to learn more about Bill and Hillary Clinton.

      --
      lucm, indeed.
    3. Re:That's how they teach programming.. by dbIII · · Score: 2

      If you think they were not conservatives then you have a lot to learn about politics.
      What Christopher Hitchens wrote about Bill Clinton is a good start.

    4. Re: That's how they teach programming.. by Anonymous Coward · · Score: 0

      An effort was made!

      But that's equivocation: You are not using "conservative" in the same sense that the earlier commenter did.

    5. Re: That's how they teach programming.. by dbIII · · Score: 1

      But that's equivocation: You are not using "conservative" in the same sense that the earlier commenter did.

      Incorrect. Spectacularly so. There is hardly anything less conservative than a family that has made politics it's profession of choice for more than a century.

  22. Time marches on by Waffle+Iron · · Score: 4, Insightful

    When I was first taught to code in FORTRAN, we were told that we really needed to create a flow chart detailing every statement before writing any code. We also needed to start every line in column 8, and variable types were determined by the first letter of their name.

    Those days are long gone, and we now have languages with features that allow us to directly transcribe our ideas without intermediate formats (yes, LISP always allowed that from day 1, yada yada).

    I find that flow charts still have some usefulness on occasion, but only as a high-level planning tool. I will sometimes write up a flow chart with a dozen boxes to define the rough flow of a complex algorithm, but it might take a thousand lines of code to actually complete the final implementation. A flow chart that had enough detail to mechanically translate to code would look like an incomprehensible pile of spaghetti; not very useful compared to well-formated code.

    1. Re:Time marches on by 93+Escort+Wagon · · Score: 2

      When I was first taught to code in FORTRAN, we were told that we really needed to create a flow chart detailing every statement before writing any code. We also needed to start every line in column 8, and variable types were determined by the first letter of their name.

      1) They said that, but no one I knew actually did it.

      2) Column 7, not 8.

      --
      #DeleteChrome
    2. Re:Time marches on by Waffle+Iron · · Score: 1

      Well, it seems that decades of controversy over 4 vs 8 spaces for indents has completely overridden my memory on that point.

    3. Re:Time marches on by dbIII · · Score: 1

      Yes, it's a teaching tool.
      You only use those methods when they kount :)

    4. Re:Time marches on by 93+Escort+Wagon · · Score: 1

      It's possible I was just a bad coder, but it was not particularly uncommon for at least one line in my Fortran programs to need more than 65 characters. So I got really familiar with columns 6 and 7.

      For those who aren't old - column 6 was used as a continuation flag. If there was something in column six, what followed was a continuation of the previous line. I *think* the convention was to use numbers in there which basically indicated how many lines that particular statement used.

      --
      #DeleteChrome
    5. Re:Time marches on by Nutria · · Score: 1

      When I was first taught to code in FORTRAN, we were told that we really needed to create a flow chart detailing every statement before writing any code.

      Well, flowcharts are useful -- damned useful, in fact -- when you have to type punch cards!

      Those days are long gone, and we now have languages with features that allow us to directly transcribe our ideas without intermediate formats

      Because of languages which developed at the same time that VDTs became common.

      --
      "I don't know, therefore Aliens" Wafflebox1
    6. Re:Time marches on by Anonymous Coward · · Score: 0

      Flow charts were good for explaining things...
      But even in the first Fortran... they were pretty useless for anything else.

    7. Re:Time marches on by sootman · · Score: 1

      > When I was first taught to code in FORTRAN, we were
      > told that we really needed to create a flow chart detailing
      > every statement before writing any code.

      My dad started programming in the late 60s. Back then, programmer time was cheap and machine time was expensive. :-)

      (Also, punch cards had a bit of latency compared to today's save-build-run.)

      --
      Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
    8. Re:Time marches on by david_thornley · · Score: 1

      IIRC, the first five columns were for line numbers (targets of GOTO statements), the next column was the continuation column (anything meant a continuation but increasing digits were strongly encouraged), 7-72 were program text, and 73-80 were for sequence numbers in case somebody dropped a deck.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    9. Re:Time marches on by 93+Escort+Wagon · · Score: 1

      Column 1 also denoted a comment if there was a "C" in it.

      I will always count myself as blessed in that I came to the language as card decks were on their way out. I never had to punch cards... the two universities I initially learned FORTRAN at both had Recently purchased I nteractive DEC terminals where we could directly enter our programs. My friends at some other places weren't as lucky.

      --
      #DeleteChrome
    10. Re:Time marches on by david_thornley · · Score: 1

      Thank you for the addition.

      I've punched far too many cards in my time, starting with FORTRAN as an undergraduate. My only objection to not punching cards any more is that the boxes, when emptied, were useful.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  23. Also by Reverend+Green · · Score: 2

    Does anyone know of a tool that will allow me to write a novel by scribbling with crayons in a coloring book?

    1. Re:Also by Anonymous Coward · · Score: 0

      Sure, creimer makes 81 cents a year with his ebooks!

    2. Re: Also by Anonymous Coward · · Score: 0

      Wow - he makes enough money on his ebooks to buy your mom's pussy - twice!

  24. Code Desiigner by Anonymous Coward · · Score: 0

    There are a few. https://sourceforge.net/projec... has good results

  25. Somewhat by udachny · · Score: 1

    Don't ask me how I know about this, but weblogic (now oracle) process integration ide allows some code to be generated from flowcharts. It is horrendous code and the usefulness of what it can do is very low, but it can do some of it.

  26. Isn't that circuits? by RyanFenton · · Score: 1

    All higher level logic ends up having side effects, just in order to be convenient, and relevant the way we use analogies/language.

    You'd end up with even bigger problems with flow charts, because the labels you'd add would end up confounding your expectations as you build more and more.

    The only way to avoid that is using very simple concepts in your flow chart. At that points, you're just creating circuits, which are not just below regular code, but below even assembly code in terms of the layers of abstraction you have to mentally juggle in order to build any complex logical relationships.

    You could follow this same path by saying "couldn't we just ask a series of yes/no questions and create programs with that?" ... and eventually, you'd find you're just coding in a difficult kind of binary.

    And yeah, with development, you could make rather sophisticated programs easier with either method mentioned - but to build a culture around such methodologies, you'd not only have to spend far more resources, but also ignore the very reasoning that lead us to bypass these approaches when they've come up before. And also, you ignore why those approaches always seem to lose out to building on modifications of what works most flexibly, rather than what you'd imagine is most natural.

    Ryan Fenton

    1. Re:Isn't that circuits? by gtall · · Score: 1

      To some extent, what you say might be true. But I am not convinced that it is theoretically impossible to have a decent graphical language that does have higher order logical concepts. I don't believe functional programmers care or have the necessary subtlety in their thinking to accept diagrams for their stuff. That also one of the hurdles they have in pushing their religion. In a somewhat heretical book, Graham Hutton's Programming in Haskell does resort to diagrams to get his points across.

      Marten (used to be Prograph), it is an object-oriented dataflow language. http://www.andescotia.com/. It is Mac based. I grant that many higher level concepts are hidden behind icons, but the dataflow has a natural feel to it. There are other "control" arrows to force computation ordering if necessary because dataflow is inherently parallel in concept.

  27. I know this one by Anonymous Coward · · Score: 1

    I know FreeDFD to convert from flow chart to code, but it was just the project of a young student. It isn't maintained. Her a video in Spanish

    I know PSeInt to convert from pseudocode to code, but it is also a small project the project of a young student. It is still maintained.

    If somebody have to program a utility like that, it would be nice to be based or included in the project Dia2Code that actually generates code from uml DIA diagrams.

    Excuse my poor English

  28. That's not what you want by Kohath · · Score: 1

    Flow charts are no more expensive than code. They just layer a visual syntax on top of the underlying forms instead of a textual syntax.

    You should be asking for tools to command the underlying forms that don't require you to input all the syntax; tools where you can describe how you want something to work in broader terms and let the software write the syntax, handle the scheduling optimization, prevent the bugs and security holes, and make sure all the corner cases and failure modes are covered.

    Where's that tool?

    1. Re:That's not what you want by Kohath · · Score: 1

      Also needed: an autocorrect that won't change "expressive" into "expensive".

    2. Re:That's not what you want by aaarrrgggh · · Score: 1

      I might be a PHB and all, but visual expression is much easier for me to follow than code; done properly, it can quickly help me see the parts of interest at a point in time, and ignore the rest.

      That said, flowcharts are only effective in that end for a small set of conditionals.

      Can't we just stick to ladder logic diagrams?

  29. EasyFlow from HavenTree by mnemotronic · · Score: 3, Interesting

    I'm a visually oriented person. For big-picture I can digest flowcharts and data diagrams easier than textual representations. I routinely use Visio. In the MSDOS days I used Interactive EasyFlow from HavenTree of Canada. The copyright notice / license agreement was worth the price of admission.

    --
    The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
    1. Re:EasyFlow from HavenTree by turp182 · · Score: 1

      I bet you pirated EasyFlow and have the missing hand from their attack shark to prove it....

      --
      BlameBillCosby.com
  30. Unreal engine - Blueprint Visual Scripting by Anonymous Coward · · Score: 0

    I was pleasantly surprised at how easy it is to use Unreal's Blueprint Visual Scripting. You can essentially program an entire video game using flow charts. And it's very simplified since it is context-aware, so you only see functions / variables that are applicable

    1. Re: Unreal engine - Blueprint Visual Scripting by Anonymous Coward · · Score: 0

      You can program an entire BEHAVIOUR of video game WITHIN the unreal engine.

      I'm not saying that isn't a wide swath and fantastic - but it is what it is.

  31. LEGO Mindstorms/LabVIEW by Roger+W+Moore · · Score: 5, Informative

    It's no joke. LEGO Mindstorms comes with a graphical flowchart-like language using LabVIEW to write programs. Of course, the system is hideously slow and inefficient compared to text and with EV3 the brick runs Linux so you can easily dump it for Python, C++ or whatever you like.

    LabVIEW itself is also used for instrumental programming in some labs although I expect it is rather slow so its applications will be somewhat limited. I've never used it myself in particle physics but I believe some of my condensed matter colleagues use it as a slow control system for commercial instruments.

    1. Re:LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 0

      LabVIEW is great for people who are not programmers, it is great way to learn without feeling out of your depth (I think) however I have tried to edit some code and write some code with it and I just figured out how to put in a text defined function (It may have been in C or similar) then I could write stuff.
      It has some great libraries for visual displays (graphing data etc)
      Of course when you need to stick a few lines of code in the middle of a busy screen you have spend an hour moving everything around if you want to keep things looking neat.

    2. Re:LEGO Mindstorms/LabVIEW by sjames · · Score: 1

      It's not a joke but it is EXTREMELY limited. So much so that I'm not convinced it can ever be used for anything but programs just slightly more complex than hello world.

      Sometimes, that may be good enough for example, LabVIEW for handling tabletop experiments.

    3. Re:LEGO Mindstorms/LabVIEW by dbIII · · Score: 1

      Yes, but it doesn't scale.
      In LabVIEW you get stuff crossing over and under all over the place unless you decide to have the complete opposite of a modular approach and end up with a time consuming verbose thing.
      The choice for anything other than an utterly trivial project is too complex for another to understand easily or too much code for them to bother looking at it.
      IMHO it's a teaching tool gone wrong. I think it's supposed to inspire people to go up to the next step and think of large modules the way they would think of individual elements in LabVIEW.

    4. Re:LEGO Mindstorms/LabVIEW by thegarbz · · Score: 2

      With limited power comes limited opportunity to screw things up. "programming" by bolting together functional blocks with lines are the preferred ways of programming safety systems for this reason, and the IEC standards put very different requirements on programs written this way compared to those written in freeform code.

    5. Re:LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 1

      I have been using LabVIEW for ~15 years for projects ranging from simple data acquisition to large scale (and very complicated) embedded design. It is an extremely potent programming tool but it does require you to re-think how you approach a programming problem. Disorganized thinking can result in a program in which lots of wires cross over each other and create "spaghetti code", but then again you can do the same in a text based language as well.
      The data-flow approach also inherently exposes parallelism in your code, and the LabVIEW run-time engine does an amazing job of exploiting multi-core cpu's and is also perfect for programming FPGA's. I have found that deployed run-times are very efficient in terms of code space and execution speeds - comparable to many text based approaches. LabVIEW produces C++ as an intermediate stage of the diagram compilation process and then compiles that into machine code.
      Learning a new programming language well, whether text-based or visual is not an easy task, especially if one has been programming in a "tried and true" environment for a long time. I believe that too many programmers get stuck in a groove and simply want more bells and whistles in their existing environment. As we move to ever larger and more demanding systems, we will need to work at higher levels of abstraction in order to manage complexity and I expect that visual systems of programming will eventually supplant text-based ones except at the very lowest levels.
      BTW, I do not work for NI nor am I a paid endorser!

    6. Re:LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 1

      Yes, but it doesn't scale.
      In LabVIEW you get stuff crossing over and under all over the place unless you decide to have the complete opposite of a modular approach and end up with a time consuming verbose thing.
      The choice for anything other than an utterly trivial project is too complex for another to understand easily or too much code for them to bother looking at it.
      IMHO it's a teaching tool gone wrong. I think it's supposed to inspire people to go up to the next step and think of large modules the way they would think of individual elements in LabVIEW.

      Labview can scale, to a point. Usually you end up at some point making sub vis that take in clusters which are strict type definitions (struct basically). Then your larger code ends up basically making larger structs out of smaller structs and you just carry around this wire that is basically a bit of everything, and then take stuff out of it and put it back. Labview has the bonus of being multithreaded by design, but so far its only useful in edge cases since splitting tasks up means copying one of those uber wires all over the place which destroys performance. Now you can create multiple threads like any other programming language. That works.

      At any rate if you need something done quickly, and only need to maintain it for say a year or so, then quite often labview just does the job, particularly if you can largely reuse fundamental blocks. If you need something built by a team, and can divide the labor, it can also work, but as you scale up you do run into problems of efficiency and maintainability. To the plus Labview has the absolute best debugging environment I've seen.

      Some of Labview's scaling issues can be gotten around with C/C++. Basically if you are just using the UI but doing the heavy lifting in a DLL, it does work. Then again, if the next poor soul to look at your code doesn't happen to be well versed in both, you may not have made a friend.

    7. Re: LEGO Mindstorms/LabVIEW by SETY · · Score: 1

      Yes it is great for controlling instruments. It's not really slow per se. It really depends what you are trying to do. The biggest issue is it is very easy to write a mess with anything half complicated. But these same PhD's write FORTRAN and Matlab code with zero functions too.

    8. Re:LEGO Mindstorms/LabVIEW by Megane · · Score: 1

      The worst thing about labview is that it's basically impossible to use source code control with it. That's fine for throwaway toy programs, but not for anything that has to be maintained.

      --
      #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
    9. Re:LEGO Mindstorms/LabVIEW by dbIII · · Score: 2

      I have been using LabVIEW for ~15 years

      That's starting five years after I stopped showing it to students because it was teaching them bad habits.
      I'm not just guessing here.

      It's a throwback to analogue computers without the careful mathematical optimisation that was usually employed before plugging in the cables.

    10. Re: LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 0

      Oh, I've seen LabView used for control software in capital equipment. I promise you there are plenty of opportunities to duck things up, and troubleshooting is painful. Checking if the math is correct for part registration.... Nightmares

    11. Re: LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 0

      Labview is far from perfect for programming FPGAs. It looks like it should be nice and parallel, but on multiple projects we had some serious bugs where changing one section of code would break something completely independent. For some NI fpga controllers, Labview ran things sequentially, not in parallel, which not only defeated the point of such a system, but consumed a lot of developer time with weird race condition bugs.

      After spending a lot of time to put in carefully timed delays on code to fix some of the bad timing issues, more than one group switched to just using straight vhdl. Development time shortened a lot and bugs and debugging time dropped by an order of magnitude. At the very least, frustration reduced when it took 10 minutes to rebuild and deploy a change instead of 4 hours.

      NI makes some nice, if expensive, hardware. But a lot of projects outgrow Labview and end up using python, c, or vhdl depending on the nature of the equipment.

    12. Re:LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 2, Informative

      LabVIEW has it's faults, but "limited" is not one of them.It is currently used to control the LHC at CERN, SpaceX uses it for its rocket launches, and it is in use by several companies for 5G wireless standards research. LabVIEW can be used in everything from simple data acquisition and instrument control, to motion and vision control systems, to HIL and simulation testing, to FPGA programing, and to testing MIMO communications systems. I have even seen LabVIEW FPGA used to program a National Instruments board that uses a Xilinx FPGA to perform laser cataract surgery.

      The same LabVIEW engine that does all of the above tasks is the same one that is running the Lego Mindstorms brick. LabVIEW does a lot more than just "tabletop experiments".

      Here are a few articles on LabVIEW being used in some of the applications I mentioned above. National Instruments has plenty more information on their site regarding the various places LabVIEW is used.

      https://www.forbes.com/sites/alexknapp/2011/10/12/national-instruments-is-leading-a-quiet-technological-revolution/2/#1d796142d6da
      https://www.forbes.com/sites/patrickmoorhead/2014/06/30/national-instruments-stepping-ahead-of-agilent-technologies-with-new-5g-wireless-design-tools/#7fac3aa67cd3
      https://www.evaluationengineering.com/fpgas-make-retinal-disease-treatment-faster-and-safer

      I'm not saying LabVIEW is the greatest language ever and will replace everything else, but it has its advantages in many applications. It is quite capable of scaling from a Lego robot in a grade school project to controlling some of the largest complex systems created, as well as providing top research scientists with tools to create new technologies.

    13. Re:LEGO Mindstorms/LabVIEW by irp · · Score: 1

      LabVIEW is a compiled language. It is fast. If you do it right, easily as fast as C. Faster if you are doing e.g. machine vision (due to highly optimized libraries). Do not be fooled by the graphical interface!

      Its applications are, as with any language, unlimited. But where LabVIEW excels is in rapid prototyping and data acquisition. What it lacks is flexibility in GUI: You have what you got.

      I've been using LabVIEW (and C#/Python) more than 15 years. Many people do not like it for some reason or another. But whenever I've asked them to clarify, it is always because they've (utterly) missed the point or are doing it wrong. (there is an old but still popular blog post somewhere, ranting along the lines of "why I hate and despite LabVIEW", which have exactly one valid point (that you essentially need a state-of-the-art gaming mouse) the rest just exposes the writes lack of knowledge/skill.)

      Don't get me wrong, I have a *long* list of complains/annoyances regarding LabVIEW. It is just that whenever I hear someone saying something against LabVIEW, it is usually just some minor detail they've missed (the #1: "it is slow"... No it is most certainly not :-).

    14. Re:LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 0

      Labview makes ostensibly "real time" systems as well, at substantial additional cost. Still would never choose to use their stuff willingly. Flow chart paradigm breaks down quickly and Labview's "portability" is way over hyped. Learned by experience here. Overpriced toys, but mostly just overpriced.

    15. Re:LEGO Mindstorms/LabVIEW by Roger+W+Moore · · Score: 1

      LabVIEW is a compiled language. It is fast. If you do it right, easily as fast as C.

      Not when you include the time it takes to write the program as well as run it!

    16. Re: LEGO Mindstorms/LabVIEW by Anonymous Coward · · Score: 0

      Why is it impossible to use source code control with it?

      Source control has been integrated for a long time. I think at least as far back as LabVIEW 5 (1998) though those versions only supported Perforce and Visual Source Safe. I regularly use it with Perforce, and have occasionally used it with both Git and tortoiseSVN. You need to configure your provider to use the LabVIEW diff tool (relatively recent ~5-10 years), and the data storage of your scc is less efficient since it needs to save the full VI each time rather than a text diff.

    17. Re:LEGO Mindstorms/LabVIEW by sjames · · Score: 1

      I was speaking of complexity, you are speaking of scale. Yes, it can be useful. It can be used for important things.

    18. Re:LEGO Mindstorms/LabVIEW by orgelspieler · · Score: 1

      The notion of using Mindstorms for all my plant safety equipment just popped into my head. Bwahahahahaa!!!! I love it! Don't think HSE will go for it.

  32. Prograph by TGS Systems by rthille · · Score: 1
    --
    Awesome furniture, accessories and cabinetry in Santa Rosa, CA: http://humanity-home.com/
  33. ArxCru by Anonymous Coward · · Score: 0

    Pips can do the flowchart thing for you: http://pips4u.org/copy_of_getting-pips

  34. Diff by romiz · · Score: 1

    A critical requirement when programming is the ability to compare different versions of the same code. This is quite easy to do with text. With diagrams, it becomes much harder to do.

  35. Blueprints for unreal engine by Anonymous Coward · · Score: 0

    Depending on what you are building you might want to check out Blueprint for Unreal Engine. I have made a working VR demo with this visual scripting tool, best of all its free!

  36. Siemens' MCC by Anonymous Coward · · Score: 0

    Siemens' simotion mechatronics computers could be programmed by drawing flow charts, ow writing "STL" which was based on Pascal.
    The idea behind the flow charts was that electrical engineers could understand them, and thus program PLC's.
    To their credit, this worked somewhat.
    To their discredit, once said engineers were introduced to the concept of objects, they lost their shit and got completely confused because of how ill suited it was for OOP.

  37. Look up Raptor by Anonymous Coward · · Score: 0

    Raptor is a teaching system using flowcharts to create programs. You are welcome to use it, I'm sure. However,
    with 50 years of computing experience behind me, my personal feeling is that you are barking up the wrong
    tree. As a teaching system, I have found Raptor less than useless. For nontrivial programming, I have found
    flowcharts less than useless. I have found flowcharts of some use in dealing with very small segments of difficult code,
    or overall system structures. YMMV.

  38. DRAKON Editor is exactly what you asked by TuringTest · · Score: 2

    The open source DRAKON Editor allows you to draw classic flow charts and generate template code in various target languages that follow the defined flow.

    It comes with the additional advantage of having been engineered around ergonomic practices, which makes it avoid the classic pitfalls of using flow charts. A flow diagram typically becomes a tangled mess, but DRAKON layout guidelines provide a structure to build diagrams in any scale.

    The DRAKON language was created by people in the Russian space program as a way to avoid errors in defined procedures, and it was crafted and refined following the Russian school of Human-computer interaction. The flow diagrams built following their easy-to-learn layout guidelines are the most easy to read that I've ever seen.

    --
    Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
    1. Re:DRAKON Editor is exactly what you asked by Anonymous Coward · · Score: 0

      There is also SCADE, used for safety-critical stuff such as avionics.

    2. Re:DRAKON Editor is exactly what you asked by ZigaS · · Score: 1

      Upvote: Had came the third time to this tool(DRAKON & editor) and now it's time to start using it:)

  39. Flow charts and Fortran coding forms ... by perpenso · · Score: 1

    When I was first taught to code in FORTRAN, we were told that we really needed to create a flow chart detailing every statement before writing any code. We also needed to start every line in column 8, and variable types were determined by the first letter of their name.

    1) They said that, but no one I knew actually did it.

    Well there was that first programming assignment in CS 101 Introduction to Computer Science where one did a flow chart (neatly using a plastic template), then wrote (as in pencil on paper) code on a Fortran Coding Form (graph paper like showing the important columns), and then after manually stepping through the code (simulating it) to debug it one typed the code on the punch card machine, submitted the punched card deck, and waited for a printout to be delivered to see if it compiled and ran and generated output. Repeat as necessary.

    After this first assignment and the posers dropping the class they handed out the interactive accounts for the terminals. And the coding forms were then used as ad hoc graph paper and the punch cards as bookmarks; the plastic flow chart template going into the drawer with the slide rule my dad gave me many years earlier.

  40. Scratch by Anonymous Coward · · Score: 0

    Scratch is a language to learn programming, that's does by ... *wait for it*... drawing flowcharts.

  41. There are such solutions for PLC programming by Anonymous Coward · · Score: 1

    IEC 61131-3 defines several graphical programming languages for PLC.

    https://en.wikipedia.org/wiki/...

    General purpose graphical programming language would be a major PITA. I cannot imagine anybody using it to write complex software.

    1. Re:There are such solutions for PLC programming by orgelspieler · · Score: 1

      Ladder logic, flow charts, and "normal" programming all serve a different purpose. But they can almost always be used in place of the other, if you have somebody talented at the helm. I have seen ladder logic used to run $25MM power plants (very high uptime). I have seen graphical LabView-style programming run a manufacturing line (not very well). I have seen people use a microcontroller for something most sane people would have assigned to a PLC (smaller and cheaper, but more easily damaged). it really depends on your situation, and what tradeoffs you need to make. I wouldn't attempt to make a database in PLC ladder logic. But I wouldn't attempt to control an automation line with a Windows computer, either.

  42. For a limited value of code by Anonymous Coward · · Score: 0

    http://www.khoral.com/

    For image processing.

  43. VisionMachine by Anonymous Coward · · Score: 0

    VisionMachine, a visual programming environment with gesture recognition and an LLVM backend: https://www.youtube.com/watch?v=RV4xUTmgHBU

    Making space invaders: https://www.youtube.com/watch?v=TZ3Fqm5koOY
    Audio synthesis: https://www.youtube.com/watch?v=0HhX1rctz9Y
    Gesture recognition: https://www.youtube.com/watch?v=FEmE4LeTqPU

    Just a prototype for now. Will start a Kickstarter/Patreon if there's enough interest.

    1. Re:VisionMachine by Anonymous Coward · · Score: 0

      Looks interesting.

  44. Yes!!! BPMN and/or BPEL by Anonymous Coward · · Score: 1

    I was in a project several years ago where we implemented the main workflow as runnable diagrams, so the domain experts could collaborate with us directly without knowing how to code. In that case we used BPEL as the underlying language, autogenerated by the ActiveVOS tool (no manual code editing needed). Today's BPMN 2 includes workflow primitives (it used to be diagram-only), so it could be used instead of BPEL (skipping the code generation step). Our diagram-based program was easy to explain, easy to debug, easy to test, and had a nice audit trail that showed us where in the diagram errors happened (including relevant data).

    Obviously under the covers we also needed some normal coding (lots of Java to handle DB transactions, and we also had a rules engine). But having the top-level program that had the details the customer cared about run directly based on the diagrams saved a ton of time, and years later the person that took over that system told how easy it was for him to maintain.

    In an earlier job we did something similar for the US Air Force, where our diagrams were directly runnable (allowing a commander to diagram a battlefield scenario to test and compare software). We created a custom runtime and diagram editing toolkit, since no standard or tools existed yet. Today, it's better to use a supported standard, since you can find tools cheap or free.

    1. Re: Yes!!! BPMN and/or BPEL by Anonymous Coward · · Score: 0

      That works great until you have to implement something that the underlying software (the service endpoints that the workflow engine talks to) does not support. At that point you need someone with actual coding skills.

      Besides people generally have a misconception about the difficulty of coding. It's not the typing that's difficult, it's knowing what to type, i.e. to come up with the algorithm. Same thing for drawing flowcharts. Once you have that, drawing is just about the most ineffective say to input an algorithm into a computer. Also the information density in a diagram is so much lower compared to text. If that were not so slashdot would be all grapgics instead of the (crapy) text interface it does.

  45. BluePrint and BPMN by SendBot · · Score: 1

    First of all, Unreal Engine's blueprint system is quite excellent, but is also specific to its domain of being a game engine. But you can make your own blueprint modules in C++, so no reason you couldn't make boring business software with it.

    But there's already a great tool for boring business workflow, and that's BPMN. I've recently discovered it and it's so much better than endless meetings where no one knows or can agree about what is fully going on. I only have experience using it to model software at a high level, but there are advanced instances of using it to control actual systems. Plus, it's open source. You could do all kinds of crazy stuff for better or otherwise, like putting an animated Nyan cat in your workflow or having a task switch the lights on. Check out http://bpmn.io/ (open source!) and their associated commercial entity, Camunda.

  46. Flowcode for Microcontrollers by Vapula · · Score: 1

    There is a Developper engine called "Flowcode" which allows to do programs for microcontrollers (PIC, AVR, ARM) using flowcharts. It's quite expensive (given that PIC/AVR dev tools are free).

    Basically, you've some "macro" blocks for more high level functions (like displaying on an LCD screen), rest is flowcharts.

  47. OpenDX by Anonymous Coward · · Score: 0

    There is a program, originally developed at IBM, that does exactly this. In its present form, after IBM open-sourced the code, it's called OpenDX. However, it is used in a very specific environment. The treatment of data into graphical images. It's less than trivial to understand how it works, and the code is pretty outdated (e.g. no parallelization). However, it's good at what it does and I used it in several scientific publications.

  48. Please don't by Anonymous Coward · · Score: 0

    In the good old days of mainframes and 8 bit computers yes, you could plan your entire program in your head and from a flowchart before a single card was punched. Toda'ys software is too complicated for that though. Want an example of a graphical flowchart design tool like you describe? LEGO MINDWORKS for their robotics kits. Yes it works but it's as painful as an arrow in your liver. I don't even think it's good for teaching kids because they very quickly outgrow it. Give me a text editor any day... and fortunately now there are text editor equivalents for LEGO MINDWORKS too.

  49. Back in the days of paper tape and punched cards by Anonymous Coward · · Score: 0

    I wrote part of a system for "programming" using flowcharts back in 1975 as my diploma dissertation. I didn't bother to try completing it afterwards, because it became obvious there are two problems:
    1) A flowchart for a useful program, with legible annotations, needs a big canvas. Simple loops and if clauses are fine, but as the program logic increases, it's hard to lay it out as a pretty picture. Source code is much more succinct and easy to comprehend. A big chart ends up with lots of parallel lines, and it's quite difficult to see what's connected to what.
    2) Flowcharts aren't really that much use for describing complex systems. Think of drawing a chart for say an HTML renderer for a Javascript component. It's going to be messy.

    FWIW, AFAIR I proved that a goto-less program was equivalent to a flowchart without crossing lines. Of course, back in those days there was no need for exception handling ;-)

  50. Authorware was like this by Camembert · · Score: 1

    Early in my career, 1992 onwards, I made multimedia (when that was still a cool new thing!) training and presentations in Macromedia Authorware which largely followed a flowchart metaphor - the idea being that it would help non-programmer content specialists to make multimedia training. There was some bigger power under the hood since you could add pascal like scripts to the icons. Very unfortunately the scripting language didn't support functions and procedures, you had to go to the icons flow for that.
    Still I made some pretty nice for the time multimedia training and reference programs, helped by a graphical designer for a slick look. In addition we recorded professional voice overs, and even had fullscreen video, these required Realmagic moeg-1 overlay cards.
    Macromedia was bought by Adobe, mainly for Flash, and eventually Authorware was discontinued. A pity that it wasn't open-sourced, the product / environment still had good promise.

    1. Re:Authorware was like this by Anonymous Coward · · Score: 0

      Wow, kindred spirit here. I worked on training and development stuff for the army using 12" laser discs and a couple of packages: Creatavision (DOS based) and Icon Author (Windows 3).

      How far we've come...

    2. Re:Authorware was like this by Anonymous Coward · · Score: 0

      I had exactly the same experience with Authorware. I went on to the standard stack of programming languages but I've always missed Authorware. Thanks for this old memory.

  51. node-red by Anonymous Coward · · Score: 0

    Node-Red is a flowchart based IDE backed by IBM and based on Node JS. It can produce pretty usable programs.

  52. Yes. But regular code is often easyer. by Qbertino · · Score: 1

    Yes there is. It's called CASE* and/or BPM* and/or DMI*. (Computer Aided System Engineering / Business Process Modelling / Direct Manipulation Interface).

    The Problem with many of these Systems is that writing code often is quicker and easyer. There are special scenarios where the tool mentioned above can be used and are extremely effective (well-built cleanroom ERP setups, cleanroom UI toolkits (end-to-end Visual Basic (guess why it's called visual), Glade, QTCreator, JBoss BPM, Flash IDE, Squeak, etc.). Systems like these can speed up development by orders of magnitude, but they have their own learning curve and are very often sneered at because they aren't "real development". Flash being a very good example of this.

    The biggest problem with these systems is, that you have to be very good at OOAD and abstraction before you can go back to drawing neat pictures and most people skip that step, drawing up shit and giving these systems a bad reputation.

    Bottom line: Yes, these systems exist, but they haven't really gone mainstream yet. Maybe when the web decrappyfies and AI an VR take of they will. But even then a good PL will be a good competition still. I can type a model faster in YAML than I can draw it, thats a plain and simple fact.

    --
    We suffer more in our imagination than in reality. - Seneca
  53. PWCT by Anonymous Coward · · Score: 0

    I guess you may find something interesting in PWCT wich stands for programming without code technology. I did not really used it, but its creator said that it can output code in c and python and some other languages. And that it is usable for advanced systems (e.g compilers)!

  54. Why? by allo · · Score: 1

    When you finally have the language, you will realize that the hard part is not the syntax, but the logic. And that dragging boxes is way slower than writing keywords.

  55. Submitter is clearly 12 years old by Hognoxious · · Score: 1

    This stuff has been around since the 1990s if not before. I didn't use it but around that time some of the guys in my office used Excelerator. They didn't like it much.

    Clarification: are you asking if something does it, or if something does it better than a monkey could code it longhand?

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  56. Try Scratch by Anonymous Coward · · Score: 0

    it's similar to flowcharts, and it's adapted for Americans, so anyone 10 years of age can pick it up pretty much.

  57. That was over 30 years ago. by Anonymous Coward · · Score: 0

    As AI and computer science continues to improve, we or our grandkids will see the day when we will look back on the way computers are programmed today the way we look back now on when computers were programmed with patch cables or punched cards.

    One day people will interact with machines like we do with other people. Computers won't be programmed, but trained - and that'll include the low level stuff too.

    The days of compilers and linkers are closer to their end then most here realize.

    1. Re: That was over 30 years ago. by Anonymous Coward · · Score: 0

      Siri, call me an ambulance.

      OK. From now on I will call you "An Ambulance"

    2. Re: That was over 30 years ago. by skids · · Score: 1

      "Ah, If only I had a nickel for every time a slashdotter said AI would never be reliable..."

      "OK, ordering 384,243 nickels from coins-r-us. Warning. Your account will be overdrawn after paying rent at the end of the month. Please replenish funds."

    3. Re:That was over 30 years ago. by Bengie · · Score: 1

      They'll still be programmed. Programming is the breakdown of a problem into it's logical ornithological pieces. Coding is what will go away, and I can't wait. Even if you get rid of coding, you will still have the problem that most people can't program. Training is statistical in nature. Great when you want statistical results. You still have the issue of being able to determine if the data you have is actually representative of the results you want.

      I've worked enough with customers, and a lot of other programmers, and people typically can't clearly describe what they want done. They will have all kinds of contradictory or logically impossible requirements.

    4. Re: That was over 30 years ago. by Anonymous Coward · · Score: 0

      ornithological? as in, pertaining to the study of birds?

  58. Yes... But why? by Anonymous Coward · · Score: 0

    It can be done... but the process is rather complex internally (tracking connections, blocks of code, conditions)...

    But why? Entering the graphics is complex (the editing), and inherently slow (having to use mouse/trackpad/touchscreen, then type the text for the blocks...)

    Text entry is much faster.

    Flowcharts can be useful for EXPLAINING code to someone not knowledgeable in programming. But not much else.

  59. There is a reason it did not catch on by Gabest · · Score: 1

    I don't know the reason, but there is one, and it must be a pretty good one. That is enough proof for me.

    1. Re:There is a reason it did not catch on by Anonymous Coward · · Score: 0

      Flowcharts and graphs quickly become so busy as to become useless, the opposite of what you want for source code. Along with sequence diagrams for message-flow, they are useful for the highest overview stuff, but not so much the nitty gritty details. As for working code the details can make up a huge chunk of the value, yet is the very same complexity you want to hide from the people using the software.

  60. Huh? by Brett+Buck · · Score: 1

    Only for the last 30 years. And far more complex items than simple logic, fiendishly complex systems can be quickly generated from controls block diagrams using packages like SIMULINK, Many times, its too fiendishly complex to use in an end-item but certainly for simuations it can be very effective, It also has endless frustrating bugs, but that's not inherent in the concept.

  61. Simulink/LabView, but dragons be there by Anonymous Coward · · Score: 1

    (Posting AC due to the rant nature of this post, but it hits a bit too close to home.)

    A note on graphical programming environments and large-scale projects.

    I work in the automotive industry. The fact that departments that write software for the electric control units still filed under "Electronics" rather than "Software" says a lot about heritage: until quite recently, engineers developing "code" for cars and other vehicles were control/mechatronics or electronic engineers.

    In the 1990s software began to make its way into cars (often due to increased demands on emission restrictions). Automotive companies noticed that neither the control/mechatronics nor electronics engineers on the market and within their organizations seemed to be able to produce programs that were maintainable -- i.e. spaghetti code, non-existent version control, testing, etc. Salesmen pounced on the opportunity, and we got Simulink.

    Simulink's promise is that "well, your engineers might not be able to program using code, but hey, they all know circuit diagrams -- let's let the program using those! Software is simple anyway: if you are able to express yourselves in circuit diagrams, you can do anything. And its graphical! Shiny!!"

    And yes, in toy examples or in trivial lab control scenarios, Simulink and LabView work. In behemoth software projects, they do not, but after a few years (and big efforts by Mathworks and LabView to push their products into universities) we now had a large workforce that had

    1. automotive experience
    2. Simulink experience
    3. swallowed the Kool-aid and used their one known tool like the hammer to end all nails (and these people have moved on to leading positions within the company by now)

    So Simulink grows. Simultaneously, the software stacks in the industry grow exponentially (in terms of compiled code size, we have about three orders of magnitude more code today than 15 years ago, and no sign of slowing down).

    Problems occur -- problems with scaling that the software industry have solved in the 1980s (and again in the 1990s, and again in the 2000s). How do you reasonably version control Simulink models? They are in practice binary blobs that compile down to less-than readable C/C++ code. How do you diff a graphical giant model? How do you even collaborate within the same project if there is no reasonable concept of branching and merging? How do you write sufficient tests for graphical programs? In another graphical program that generates code over which you lack control?

    Those are unsolved questions, or at least not solved in an acceptable way. When asking Mathworks engineers regarding this, the response behind the lines is often "Why oh why do you write such giant projects in Simulink?", and indeed, why? A workable diffing tool has been vaporware for at least a decade by now. There are third-party solutions -- let's just say that they are not that useful (expensive, though).

    Imagine developing the Linux kernel

    • without version control apart from "this is what the compiler gave me yesterday, this is what it gave me today"
    • without ability to generate clear patches for code review
    • without ability to diff to arbitrary versions
    • without ability to auto-merge branches
    • without ability to write tests in any reasonable straight-forward ways (if you saw the size of some of our Simulink models, the amount of people trying to collaborate on them and the complete lack of test suites...)

    and then you have the world of graphical programming in large-scale projects.

    My company is starting to feel the pain in a very real way, and there is a surge to move towards writing C again, hiring software engineers this time. Turning a ship with tens of thousands of engineers who have made their careers using Simulink since they left school is a very painful experience, but either we absorb the pain, or we accept exponentially growing software issues in cars in the wild and the costs that entail.

    1. Re:Simulink/LabView, but dragons be there by Anonymous Coward · · Score: 0

      Just be thankful they are not still programming in ladder logic.
      All of your concerns (and many more) apply to ladder logic development.
      It is amazing how much of our core industrial, military and infrastructure automation is still programmed in ladder logic.

    2. Re:Simulink/LabView, but dragons be there by Anonymous Coward · · Score: 0

      The world you describe is grim, even more so than various legacy-laden COBOL shops of legend (mostly banks). I sorely wish I hadn't burnt all my mod points on a different article.

  62. Yes. MacOS Automator, Xcode, and most game engines by TheOuterLinux · · Score: 1

    It's a drag and drop environment with lots of options and the more software installed, the more options. So, that technically means you can't make an "automation" without hoping that the other person has the same applications. But, as long as you use what comes with a Mac by default, you'd be alright. Xcode developed software can be all drag and drop. There are some other "drag and drop" related software that are game engine related like Game Maker (Game Editor for open source clone), Unity3D, and Unreal Engjne. Matter of fact, Blender's Game engine is unique in that it's written in Python, so you could use its chart-like style (they're obsessed with nodes) to create something.

  63. Agilent VEE by AndyKron · · Score: 1

    Agilent VEE is pretty close to top-down flow charts. I've used it for years. Mainly used for test and measurement like Labview

    1. Re:Agilent VEE by ArhcAngel · · Score: 1

      You mean HP...err Agilent...err Keysight VEE (Visual Engineering Environment)? I used HP VEE and National Instruments LabVIEW 25 years ago and I agree. They are very flowchart oriented. I'm not sure what the actual question is. While both of these are geared toward instrumentation control they are very versatile.

      --
      "A person is smart. People are dumb, panicky dangerous animals and you know it." - K
  64. Oh look, CASE tools are back by Anonymous Coward · · Score: 0

    And you whipper snappers wonder why we old guys are grouchy? Because you keep re-inventing the wheel thinking that you are smarter than everyone else.

    Enter the CASE tools -> https://en.wikipedia.org/wiki/Computer-aided_software_engineering ...from 1968

  65. OutSystems does this by Anonymous Coward · · Score: 0

    Take a look at www.outsystems.com

    The C# code is generated from a visual model which is a flowchart.

    e.g. https://www.outsystems.com/platform/

  66. Flowgorithm may be an option by Anonymous Coward · · Score: 0

    Try Flowgorithm

    http://www.flowgorithm.org/

  67. for kids: SCRATCH, on the grey suit world: SAP by aod7br7932 · · Score: 1

    scratch: https://scratch.mit.edu/ I once saw a person designing a SAP (https://www.sap.com/index.html) system connecting modules with graphical arrows, you only needed to write code if specific details were needed.

  68. JBoss Tools Integration Stack by NetFusion · · Score: 2

    There are quite a few JBoss based tools that will let you do this and then auto deploy the app on tomcat etc

    https://tools.jboss.org/featur...
    https://tools.jboss.org/featur...
    https://tools.jboss.org/featur...
    https://tools.jboss.org/featur...
    https://tools.jboss.org/featur...
    etc

    I use JBoss rules visual flowcharts editors for tweaking and testing a prek-12 vaccine compliance engine.

  69. Scratch? by MMC+Monster · · Score: 1

    I think scratch is a flow chart-y language. Certainly is colorful.

    Of course, I wouldn't do anything serious in it. It's just a nice way to introduce a pre-teen to flow control and language basics.

    --
    Help! I'm a slashdot refugee.
  70. working code from flowcharts by Anonymous Coward · · Score: 0

    Flowcharts have been used to generate working code for at least 50 years. I did some in 1965. Totally useless, does not work well, never will. If you want to code, learn the language. Learn how to program. Get some training and peer review. Above all, find something wirthwhile to spend your time on. The fact is, most people can't code very well, and they never will be able to, just as most can't sing operatic arias, or play pro basketball. This is not anyone's fault. This is just the way it is, and there is nothing anyone can (ever) do to change. it.

  71. Re:Yes. MacOS Automator, Xcode, and most game engi by TheOuterLinux · · Score: 1

    Scratch from MIT might be what you're looking for too. https://scratch.mit.edu/

  72. Re:Is this a joke? Yes but on who? by fygment · · Score: 0

    Must be. Why i've not seen anyone use a flowchart since they were forced to in school. No sir, the _best_ way to code is just sit down with an idea and start banging out code. 'cause that's just the best way and everyone can do it. Yup, bang away run the code look at the errors correct them bang away run look ... repeat until you get something that works as hoped once. Thinking about your code before coding? For absolute ninnies, not even noobs. And if you doubt the quality of the product well my friend you just have a browse through github or through the reams of quality apps in the app stores.

    Besides you're hinting at something like turning documentation into code and that's just frickin' heresy. Ain't nobody got time for documentation if you're following the preceding coding process properly. Documentation is for the next sucker who looks at your code and who cares about them? Dumb question, dumb idea, now shut up with the questions and bang out some code loser.

    --
    "Consensus" in science is _always_ a political construct.
  73. Feith System's Workflow by Anonymous Coward · · Score: 0

    The popular one in the DoD and Intelligence Community is Feith System's Workflow IQ

  74. Re:Is this a joke? Yes but on who? by __aaclcg7560 · · Score: 1

    Besides you're hinting at something like turning documentation into code and that's just frickin' heresy.

    Python doctest allows you to write example code in the documentation and then execute the example code as test cases. Useful for simple functions but a bit hairy for complex functions and classes.

  75. BPEL environments by laughingskeptic · · Score: 2

    There are many flow chart based Business Process Execution Language (BPEL) coding environments, including multiple open source options: http://orchestra.ow2.org/xwiki... , https://eclipse.org/bpel/ .

  76. Ah, remembering STP by BeerMilkshake · · Score: 1

    It meant "Software Through Pictures" but we knew it affectionately as "Software Through Pain"
    https://en.wikipedia.org/wiki/...

  77. Re:Is this a joke? Yes but on who? by Anonymous Coward · · Score: 0

    Do you know what a function or a class is?

  78. There's Flowgarithm by Anonymous Coward · · Score: 0

    http://flowgorithm.org/

    It converts flowcharts to C#, C++, Delphi/Pascal, Java, JavaScript, Lua, Perl, Python, QBasic, Ruby, Swift 2, Visual Basic .NET, and Visual Basic for Applications (used in Office).

  79. A lazy manager's dream by SpaghettiPattern · · Score: 1

    A lazy manager's dream; Disneyfication of complex stuff and let minions graft away.

    Visual programming works well until tedious stuff like exception handling and complex transaction processing kick in.

    Once I observed a well spoken, nice and bright guy implementing a relatively easy web service in something called TadeXpress. Every issue that could have come up did. Performance, exception handling, inability to easily link to stuff I wrote. Eventually TadeXpress was kicked out and good old programming was reinstated.

    As with anything, the devil is in the details. Visual programming still isn't done well. If it were most of us would actually be using it.

    --

    I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
  80. Visualization? by thogard · · Score: 1

    If you can't visualize the code, you can't write it. I don't care how you see it, but you must see it.

    1. Re:Visualization? by iggymanz · · Score: 1

      eh, exactly what visual things do you imagine? I don't visualize anything when coding.

    2. Re:Visualization? by raftpeople · · Score: 1

      I think the parent is assuming all people think the same way which doesn't appear to be true, at least based on my own personal discussions with others about how they think.

      Having acknowledged that, I will say that I do visualize when coding/problem solving, I can "see" things that represent the structure of data/objects and flow. What I can't say is whether that is just a side effect of how my brain works, or whether it is actually a mechanism that is adding value.

    3. Re:Visualization? by Bengie · · Score: 2

      People with strong abstract reasoning make use of nearly all parts of their brain at the same time and the different parts are more highly connected to each other that people with lower abstract reasoning. It was difficult to see this with older brain scans because high levels of abstract reasoning cause larger neural-activity bursts but of shorter duration. One of the first parts of the brain to connect to the frontal lobe is the visual cortex. It is not far fetched to think that people visualizing logical problems is probably a side effect of the visual cortex helping with the processing of the logic. Below a certain threshold, the different brain regions are quite isolated. Once this inflection point is reached, it snowballs very quickly, reinforcing itself.

      Most of this is from research in the past few years from advancements with brain scans. There has been a large surge in research in relation to abstract reasoning and meta-cognition, which is starting to look like a power curve with a long tail. To make matters worse, there seems to be no way to teach someone else abstract reasoning. Learning abstract reasoning above the norm seems to be a self taught. Most people haphazardly acquire some abstract reasoning skills, but above a certain meta-cognition level, people can purposefully exercise abstract reasoning entirely by reflecting on their own thoughts. Some propose that reflecting on thoughts increases the interconnections among the brain regions, allowing for better pattern matching from the different regions working in unison instead of individually.

      There have been some experiments that showed certain mental exercises could increase one's ability to score higher on a particular abstract reasoning test, but the benefit did not transfer to other abstract reasoning tests, meaning the mental exercise made the person more efficient that particular test, but not actually better at abstract reasoning. Like I said, no known way to increase abstract reasoning except introspection.

  81. I've actually tried such a tool. by hey! · · Score: 1

    Granted that was twenty some years ago, granted, but it was enough to give me insight into the concept.

    Basically, it sucks.

    A picture may be worth a thousand words, but that doesn't make pictures a substitute for language, as anyone who's tried to deal with a stroke victim will attest. Flow charts may have their uses, particularly to describe complex and somewhat arbitrarily constructed processes, but they're a lousy way to describe algorithms and calculations. That's why most people don't use them anymore.

    Diagrams of various sorts are useful tools in communicating with other people and in noodling about processes. But that doesn't make a diagram a practical, comprehensive solution. And invariably somebody adds code generation capabilities to things like UML diagramming software. The labor saved is never very significant, because it automates a process that's easy for a competent programmer.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  82. Development Tool in the 1990s by Anonymous Coward · · Score: 0

    I recall back in the day of paper magazines seeing ads for a tool that claimed you drew flowcharts with decisions and it created a program. Long time ago...back when you had Dr. Dobbs, Programmers Paradise, etc. I always wondered what happened to that tool and the oodles of others that seemed to be unique for programmers.

  83. Scratch/AppInventor/Hour of code by iamacat · · Score: 1

    How do you think kids learn programming these days.

  84. Mindstorm, I remember that... by Giant+Electronic+Bra · · Score: 1

    Yeah, now I remember that Mindstorm programming thing. It was kind of interesting, but again you couldn't push it too far. You could write maybe a modest sized program that way, at best. For the intended purpose it was reasonably well-suited, but I'd note that people quickly outgrew it as well. The other thing to note with Mindstorm was that is was purely a single-threaded and very linear kind of a thing. That put some pretty heavy constraints on what you could actually do with it.

    --
    "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
    1. Re: Mindstorm, I remember that... by Anonymous Coward · · Score: 0

      The first thing to do after buying mindstorm (well... second, after opening the package) is to flash LeJOS. You then have a decent toy.

  85. Take a look to Node-Red by paredeso3903 · · Score: 1

    If you are fluent in JavaScript then take a look to NodeJS based NODE_RED.

  86. Flowcharts are not as expressive as text. by Anonymous Coward · · Score: 0

    Show me a tool that can take a relatively complex text-based program, render it as a flow chart, and then only using the flow-chart, convert it back to the same textual program - I won't hold my breath.

    Flowcharts are high level abstractions that leave out far too much detail. A program written in text has all the details.

    Things done in a single line of code would be represented in the most complex fashion in a flow-chart, if at all (like closures, list comprehensive, Elvis operator assignments, etc.).

  87. Scratch and eToys seem to fit the description by HiThere · · Score: 1

    I would note that both of those are interfaces to Smalltalk, though it's not clear to me that they need to be.

    OTOH, I remember back long ago trying to program in Prograf, and there was an MSWind database system that was also programmed only graphically. YUCK!!! It wasn't that the logic was any harder, it was that you couldn't see nearly enough of the program to write anything sensible. Text can be a lot more compact, so you can see an entire function at once. Graphics takes up hugely more room, so you can't. And somehow when you collapse a portion of a graphics system it isn't as meaningful as when you collapse a function with a sensible name.

    --

    I think we've pushed this "anyone can grow up to be president" thing too far.
  88. Yes, but... by Anonymous Coward · · Score: 0

    Yes, you can write C using a flow chart. Unfortunately the flowchart requires at least 193 spatial dimensions.

  89. LabView by Sir+Holo · · Score: 1

    Take a look at LabView. It is drag-and-drop, but you still have to know what you're doing. It's oriented to automating experiments in the lab, but is a true programming language. And, although I haven't tried it, am told that it can compile programs (which typically run inside the LabView environment) into binaries.

    One of my students made an accounting, inventory, and customer database program for his business, for example, in LabView.

  90. Historical: MacOS Classic Tools by cmholm · · Score: 1

    To add a historical reference for a couple of software dev tools I thought were cool in the early '90s:

    Mainstay Software released VIP Basic and C (Visual Interactive Programming) for the classic MacOS. You drew the flowcharts, they cranked out the source code. I have no idea what the quality of the code was, but for budding Mac devs, I'd guess it gave them a starting point.

    --
    Luke, help me take this mask off ... Just for once, let me butterfly kiss you with my own eyes.
  91. LightSwitch by Anonymous Coward · · Score: 0

    This has been done numerous times by various companies and none of them ever achieve main stream success. SSIS might be the most successful for it's specific purpose.

    A decade ago MS LightSwitch was a thing: https://msdn.microsoft.com/en-us/library/ff851953.aspx... It might still be a thing I just haven't kept an eye on it.

  92. Flowgorithm! by irp · · Score: 1

    As far as I can see, no one have mentioned http://www.flowgorithm.org/ - which as far as I can tell is the exact answer to your question!

    Well at least the last part: "draw a flowchart, and have that flowchart turn into working C code"

    In Flowgorithm you draw a flowchart, which can be executed! And turned into source-code from whatever language you desire (well, most, it supports C#, C++, Delphi/Pascal, Java, JavaScript, Lua, Perl, Python, QBasic, Ruby, Swift 2 and Visual Basic.)

    As many other have commented; flowcharts was never *that* useful when developing. But I've often used flowgorithm when I need to quickly make a diagram explaining a particular behavior. Much faster than Visio (at the cost of you can not change the layout/position). I find the UI very well made.

  93. Tensorflow by Anonymous Coward · · Score: 0

    In many machine learning frameworks, the programming effort is to create a computation graph which can be efficiently implemented on a GPU. The Tensorflow API says "TensorFlow computation graphs are powerful but complicated. The graph visualization can help you understand and debug them".

    It is a pity they provide no direct visual way to manipulate the graph, as well as view it.
    It is strange to have to write code to put other code into a graph for later execution.

  94. Yes there is. by Anonymous Coward · · Score: 0

    The language is called Blockly, and it translates into other languages with a click. While not exactly a flow chart, Blockly appears to be puzzle pieces.

  95. Yes - webMethods by sonamchauhan · · Score: 1

    Yes - the proprietary webMethods Flow language has a visual editor where you use flowcharts to program. Note, programs don't exactly look like flowcharts - just rectangles with lines between them. Programs are stored as XML files on disk. At runtime, the XML is mapped to Java operations.

  96. Could be... by Giant+Electronic+Bra · · Score: 1

    I remember using fairly early UML modeling tools back in the early 2000's, but there were earlier incarnations of the concept. TBH I never found UML all that compelling. It has some uses, but truthfully a well-written description of some software and API documentation is far handier than any amount of UML.

    --
    "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
  97. Borland ObjectVision in 1992 by Tony+Isaac · · Score: 1

    ObjectVision was designed to build working code just by drawing flow charts. For the very small subset of things it could do, it worked fine. But for anything else (like renaming a file, for example), you had to write "normal" DLL entry points, which you could call from ObjectVision.

    It was a perfect illustration of why you DON'T want to write code this way.

  98. LabVIEW by Anonymous Coward · · Score: 0

    You mean like LabVIEW?

  99. An Idea Whose Time Has Come ... and Gone. by bobmunck3990 · · Score: 1

    We had a grad student who did his thesis on flowchart programming at Brown U. -- in 1966. You drew flowcharts on the IBM 2250 display and the underlying code could be FORTRAN, PL/I, or System/360 Assembler.

    I did a system for the Navy in the early 80s that let you code sonar systems for the AN/UYS-2 in dataflow diagrams. It's still in use.

    1. Re:An Idea Whose Time Has Come ... and Gone. by mtmiller100 · · Score: 1

      Like all good ideas (or even "bad, but intriguing" ideas), it has resurfaced several times, and will continue to do so.

  100. Microsoft VPL by Anonymous Coward · · Score: 0

    https://msdn.microsoft.com/en-us/library/bb483088.aspx

  101. Yes, Bendix Orthogonal Graphics Systems by Anonymous Coward · · Score: 0

    I was on a digital turbine engine controls team (jet engines!) and we needed to translate a graphics control system illustration into working realtime control software at Bendix, now part of Allied Signal / United Technologies I think.

    We developed an amazing ASCII Art-like graphical design interface to program it. In that each control point in the reference diagram had a corresponding computer graphic control point. Some control points allowed inline assembly, but all in a visually easy to inspect manner.

    The goal was to be able to quickly and unambiguously show exactly what code corresponded to reference design specification, critical for customer and flight worthiness approval.

    Most web development needs to execute 1000 times faster than critical engine control software development that CAN NOT fail or easily be fixed after release. So I'm not sure contemporary web developers would necessarily be more productive with graphical programming, but I can say that it made defects and inconsistent code much easier to review and inspect.

  102. Yes, visual languages by purplie · · Score: 1

    Yes, for example this: http://www.andescotia.com/prod... which is a modern implementation of Prograph.

  103. SSIS is pretty close by mtmiller100 · · Score: 1

    Kinda. For very simple data-flows, SSIS can do that from drag-and-drop chart building that resembles UML. For more complex things, you will still need to write some basic SQL in SSIS.

  104. Yes you can do this by MooseMiester · · Score: 1

    https://www.youtube.com/watch?...

    This is exactly what you are asking for. Had a small hand in this product's creation it's very slick.

    --
    Murphy was an optimist
  105. FINITE STATE MACHINE (FSM) Diagrams! by Anonymous Coward · · Score: 0

    Finite state machines are "box and line" drawings much like flowcharts, but are much, much more powerful -- like flowcharts on steroids. FSM's are visual representations of logic and they are also executable models which can be directly transformed into production code in model-driven development / architecture. Anything that has logic to it can be modeled with FSM's, so it's possible for example, to model a business workflow using an FSM and then use that FSM of the business process to begin the software development process. FSM's are graphical mathematics, so there is a direct way to apply mathematical concepts to your code structure based off the graphical FSM diagram. UML does have statecharts (based off Harel statecharts), which are FSM's with the concepts of Venn diagrams added. I personally prefer Moore models of FSM's for modeling website behavior. Mealy models of FSM's are also available. Petri nets are closely related, but slightly different, and can be used to model concurrency along with UML statecharts. A truth table format also describes the same logic. The three graphical FSM notations (UML / Harel statecharts, Moore models, and Mealy models) as well as Petri nets can all describe the same things in different ways. I just released a class on Udemy about engineering models for software & web developers that lays the groundwork for these concepts and places them in relationship with all the other engineering models software & web developers can use. My name is Ken Krauss and the class name is "Intro to Engineering Models for Software & Web Developers" on Udemy dot com. Use code "SLASHDOT" for more than 50% off regular price. I have more classes planned on the topic as well.

  106. Yes by Anonymous Coward · · Score: 0

    The answer is yes, its called BizTalk.

  107. I have 2 examples by Anonymous Coward · · Score: 0

    I have used 2 systems that were based on flowcharts. The first one was called Octane that used Visio flowchart elements to develop sections of code we used for middleware. Problem was it was so damn slow and we had to go to tons of training just to do simple things. I hacked thru the system and could see it was just generating javascript on the backend. So I just wrote the javascript directly. Funny thing is that the parser would then auto generate all the flowcharts for me. The second is DirectShow for video on Windows. The GraphEdit program lets you visually draw the flowchart of media objects (files, streams, encoders, decoders, effects, etc) and just connect them. You can then use to chart to generate code.

  108. Re:Is this a joke? Yes but on who? by david_thornley · · Score: 1

    Flowcharts, as I was taught them, are almost completely useless. They suck at design, documentation, and every other use I've seen. There are times when some sort of box diagram is useful for design and/or documentation (it's normally useful to keep the design notes around), but actual flow charts? I haven't seen a good use for them in well over forty years.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  109. Velocio PLCs use Flowcharts for Programming by Anonymous Coward · · Score: 0

    http://velocio.net/ace/

  110. Oh really? by gatkinso · · Score: 1

    Try explaining H.264 encoding without a flow chart.

    --
    I am very small, utmostly microscopic.
    1. Re:Oh really? by Giant+Electronic+Bra · · Score: 1

      lol, how would a flow chart add to that effort? A DFD might, a sequence diagram perhaps, but flow charts just aren't that good at describing, well, anything really. If its complex stateful logic, then generally you end up with a massive and unreadable mess. If there is any parallel anything going on then its utterly useless. There's a very limited sweet spot for flow charts, but at this point structured/oo/functional language constructs have largely obviated the pressing need to describe limited chunks of control flow. Its really just easier to code it and see it.

      --
      "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
  111. Sure! by Anonymous Coward · · Score: 0

    For trivial applications. I suppose non-trivial apps are possible too, at least in principle, however the amount of work you'll do defining your app in pictures probably isn't worth it.

    If you program with crayons, you get crayon-worthy output.

  112. Authorware, then ZebraZapps by gdaigle · · Score: 1

    As Camembert mentioned, Authorware was one of the first to let e-learning developers build flows and then publish the code. Though it was really easy to use it was pre-www and a Flash-like plugin was required to have it stream. Low bandwidths at the time also meant it was really only useful for intranet applications. Since then, the founder of Authorware created ZebraZapps, which is a SaaS tool using a more robust flow charting to output code either as .ipa or .apk apps or as Flash. They're working on an HTML5 player version so that people won't be forced to distribute to desktops via Flash, but authoring still requires the plugin.

  113. Yes, it was called Gello by scott6885 · · Score: 1

    I once worked on a project that did exactly that - you drew a flow chart by dragging flowchart elements into a grid, and then connecting arrows between them to indicate flow. A rounded start bar was required to indicate the beginning of the program, and after that it could go through any number of rectangular or diamond blocks. You can give each block a name, then double click it to "zoom in" to that block and develop the code within it. Once drilled in a new blank grid would appear, and you could drag in different operations -- read a value, write a value, add, subtract, etc. So for example you could read a counter value, send that the a plus operation along with a constant of 1, and send the output of that to a write counter value. The contents of a diamond block used a special return operation that would set the true/false direction of the program. You could even do parallel programming, after a fashion, by using a double horizontal line to spawn multiple "threads" that would execute simultaneously (actually cooperatively). It was actually a fully featured language, and except for setting labels you didn't even need to use the keyboard at all to code. The target of this was embedded controllers like PLC's, and this was back in. And this was back in the early 90s.

  114. IBM Plantworks SCADA software by Anonymous Coward · · Score: 0

    I had to use this software called Plantworks which used a graphical flowchart programming environment.

    It was awful. Run away from any programming language like that.