
Ask Slashdot: Is There a Way To Write Working Code By Drawing Flow Charts? 264
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.
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.
Is this a joke? (Score:2, Insightful)
Does seem a bit 80's... (Score:5, 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.
Re:Does seem a bit 80's... (Score:4, 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.
Re: (Score:3)
Re: (Score:3)
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 Minds
Mindstorm, I remember that... (Score:2)
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.
Re:Does seem a bit 80's... (Score:5, 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.
Re: (Score:3)
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,
Re: (Score:3)
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.
LEGO Mindstorms/LabVIEW (Score:5, Informative)
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.
Re: (Score:2)
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.
Re: (Score:3)
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.
Re: (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 bo
Re: (Score:2)
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 t
Re: (Score:3)
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.
Re: LEGO Mindstorms/LabVIEW (Score:2)
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.
Re: (Score:2)
Re: (Score:3)
Someone is posting as you, with very closely spelled names, and 4980000+ uid's
Re: (Score:2)
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.
Re: (Score:3)
[...] 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.
Re: (Score:3)
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.
Re: (Score:2)
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.
Re: (Score:2)
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 [slashdot.org]
Re: (Score:2)
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/ [kickingthebitbucket.com]
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.
Re: (Score:2)
Maybe I got "pwned", but my reward is: I'm not you!
Says the asshat who signed up to be "cdreimer" for four days.
Re: (Score:2)
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?
Re: (Score:2)
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 [youtube.com]
Re:Is this a joke? (Score:5, 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... [native-instruments.com]
Re:Is this a joke? (Score:5, 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."
Re: (Score:2)
Seconded. I wouldn't call that programming, more like a very specialised & specific GUI.
Re: (Score:2)
Perhaps... From the hacker test... http://www.mit.edu/people/mjbauer/Purity/hackpure.html
00B4 Do you have a flowchart template? ... Is it unused?
00B5
Re: Is this a joke? (Score:2)
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?
Re: (Score:2)
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.
Re: (Score:2)
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 w
Re: (Score:2)
it was not just flowcharts.
Sorry.
Re: (Score:2)
Besides you're hinting at something like turning documentation into code and that's just frickin' heresy.
Python doctest [python.org] 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.
You just described Simulink. (Score:4, Informative)
Plus Simulink coder.
Re: (Score:2)
You can also go the other way around:
http://www.ensoftcorp.com/mode... [ensoftcorp.com]
Kind of (Score:2)
Scratch (Score:3)
Why? (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.
Re: (Score:2)
That depends on the flow chart language you use. The DRAKON [wikipedia.org] language was designed to create extremely easy-to-read and highly modular flow charts.
Educational kits (Score:3)
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/... [wikipedia.org] 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.
AmigaVISION? Labview? (Score:2)
There's a reason people don't .... It's terrible. LabView is a mess, and AmigaVISION was charming ... 25 years ago.
Automate (Score:3)
Wikipedia has a category 'Visual programming (Score:2, Informative)
Category:Visual programming languages [wikipedia.org]
PureData (Score:2)
Re: (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.
Time marches on (Score:5, 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.
Re: (Score:3)
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.
Re: (Score:2)
Well, it seems that decades of controversy over 4 vs 8 spaces for indents has completely overridden my memory on that point.
Re: (Score:2)
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.
Flow charts and Fortran coding forms ... (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.
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
Re: (Score:2)
You only use those methods when they kount
Re: (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.
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.
Re: (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.
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.)
Also (Score:2)
Does anyone know of a tool that will allow me to write a novel by scribbling with crayons in a coloring book?
Isn't that circuits? (Score:2)
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 abstra
Re: (Score:2)
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 t
That's not what you want (Score:2)
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 th
Re: (Score:2)
Also needed: an autocorrect that won't change "expressive" into "expensive".
Re: (Score:2)
That said, flowcharts are only effective in that end for a small set of conditionals.
Can't we just stick to ladder logic diagrams?
EasyFlow from HavenTree (Score:4, Interesting)
Prograph by TGS Systems (Score:2)
https://en.m.wikipedia.org/wik... [wikipedia.org]
Diff (Score:2)
DRAKON Editor is exactly what you asked (Score:3)
The open source DRAKON Editor [sourceforge.net] 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 [wikipedia.org] 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.
BluePrint and BPMN (Score:2)
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
Flowcode for Microcontrollers (Score:2)
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.
Authorware was like this (Score:2)
Sti
Yes. But regular code is often easyer. (Score:2)
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.). Sy
Why? (Score:2)
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.
Re: (Score:2)
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.
Submitter is clearly 12 years old (Score:2)
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?
Huh? (Score:2)
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.
Yes. MacOS Automator, Xcode, and most game engines (Score:2)
Re: (Score:2)
Agilent VEE (Score:2)
JBoss Tools Integration Stack (Score:3)
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... [jboss.org]
https://tools.jboss.org/featur... [jboss.org]
https://tools.jboss.org/featur... [jboss.org]
https://tools.jboss.org/featur... [jboss.org]
https://tools.jboss.org/featur... [jboss.org]
etc
I use JBoss rules visual flowcharts editors for tweaking and testing a prek-12 vaccine compliance engine.
Scratch? (Score:2)
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.
BPEL environments (Score:3)
Ah, remembering STP (Score:2)
It meant "Software Through Pictures" but we knew it affectionately as "Software Through Pain"
https://en.wikipedia.org/wiki/... [wikipedia.org]
A lazy manager's dream (Score:2)
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 wa
Visualization? (Score:2)
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.
Re: (Score:2)
eh, exactly what visual things do you imagine? I don't visualize anything when coding.
Re: (Score:2)
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.
Re: (Score:3)
I've actually tried such a tool. (Score:2)
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
Scratch/AppInventor/Hour of code (Score:2)
How do you think kids learn programming these days.
Scratch and eToys seem to fit the description (Score:2)
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 ca
Re: (Score:2)
Congratulations, you just invented Simulink.
Re:Congratulations, you just invented... (Score:5, Informative)
Re: (Score:2)
Re: (Score:3)
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 th
Re: (Score:2)
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.
Re: (Score:2, Troll)
If you think conservatives are the best at selling out, you probably need to learn more about Bill and Hillary Clinton.
Re: (Score:3)
What Christopher Hitchens wrote about Bill Clinton is a good start.
Re: (Score:2)
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.
Re: (Score:2)
Speaking of IBM . . . take a look at Node-RED ( https://nodered.org/ [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.
Re: (Score:2)
Re: (Score:2)
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.