News for hackers. Stuff that matters.
Re:Visual Programming – Why It’s a Bad Idea by topkai22 on Tuesday November 20, 2018 @12:55PM (#18495897)
Visual programming languages will only take you so far, but often that is far enough. What the author misses is that we as professional programmers miss the success stories, because we only get called in when the boundaries have been reached.

In my career I’ve often been asked to rewrite Access DBs, InfoPath forms, or SharePoint sites developed by amateurs into something more usable. My early reactions where along the lines of “what insane person tried to do this in Access.” I realized at some point that was the wrong approach in my thinking. These systems are working software delivering value. I now say “wow, congrats on doing so much on your own. Let me help you take this further.”

Re:Visual Programming – Why It’s a Bad Idea by enobrev on Tuesday November 20, 2018 @02:20PM (#18496795)
Back when I was doing tech-work in the financial districts of Chicago and NYC (late 90s, early 00s), some of my very favorite people were salesmen and analysts who had built these intricate and complex applications on top of Excel or Access or FoxPro or whatever.

I was just starting out as a programmer (professionally) myself, and once I was finished doing whatever I was sent to their office to accomplish, they would pull me to the side and show me their applications and pick my brain about ideas and ways to improve them or if it made sense to try a "more serious" programming language.

I was always completely floored by how much they had accomplished with every-day tools that people generally slog through out of necessity. Some of these guys were selling their applications for a solid slice of monthly income and support as well. "Normal" people building real, and truly useful applications with real domain knowledge are an absolute inspiration for me.

It reminds me a lot of web development, actually. Because everyone in their potential client-base had Excel, just as we all have browsers now. So building in Excel made perfect sense. I see the same thing happen with Wordpress or Shopify these days. Building these amazing applications that extend far beyond the purpose of the underlying application.

My early interactions with those people them helped me immensely when I went on my own full time, where I would walk into a small business and see this complicated app built upon - something - by an overworked "tech person of the office", who was clearly a bit sad that their creation was about to be replaced by some stranger. That was the person I was going to get to know and work with daily to get the application right, and I made sure they were part of every conversation.

Most of my projects are greenfield these days, but I still hold those programmers - in the truest sense - in the utmost highest regard. I still love to discuss their projects with them in the rare cases that I get the opportunity.

Re:Visual Programming – Why It’s a Bad Idea by AnIdiotOnTheNet on Tuesday November 20, 2018 @01:38PM (#18496384)
Indeed. I once thought as the author did, and as I'm sure many programmers do, that things like VB and Flash and Excel macros were a blight upon the world. But a lot of useful work got done with VB, careers were launched from humble beginnings on Newgrounds, and Excel is one of, if not the most, popular tools in all of business.

I think John Ohno does a good job of articulating what's so great about these tools in his article "Big and small computing" [0].

[0] https://hackernoon.com/big-and-small-computing-73dc49901b9a

Re:Visual Programming – Why It’s a Bad Idea by maxxxxx on Tuesday November 20, 2018 @01:46PM (#18496483)
VB and Excel have the advantage of having full blown programming language behind them so you can implement very complex things. I compare this to Labview where everything is visual and things get out of control pretty quickly.
Re:Visual Programming – Why It’s a Bad Idea by blbviviv on Wednesday November 21, 2018 @01:21PM (#18504777)
Labview has m-script (which is matlab like)
Re:Visual Programming – Why It’s a Bad Idea by maxxxxx on Wednesday November 21, 2018 @01:24PM (#18504809)
How does this relate to the visual programming stuff? Can you go back and forth or is it a separate thing?
Re:Visual Programming – Why It’s a Bad Idea by posterboy on Saturday November 24, 2018 @08:22AM (#18521876)
It is used to write additional components to be used in the visual editor. A code block, like a custom macro in spreadsheets.
Re:Visual Programming – Why It’s a Bad Idea by lozaning on Tuesday November 20, 2018 @02:30PM (#18496884)
As a non professional programmer I much prefer the way you think about this than the author.

Rarely ever do I find myself programing for the sake of programming, it's always to serve some goal, to make some thing, fix some problem. If I write the worst code, in the worst way, and it still makes the light flash or the robot arm move, etc, then i succeeded.

I make heavy usage of the MIT Android app maker thing in my arduino and esp32 projects, and I'll be the first to admit that I use it so heavily because I have some minimal grasp of it and I've wrapped my head around most of its paradigms.

I'll admit that because I've only got a hammer, every problem is a nail, but taking away my hammer because im using it wrong just means I cant build anything.

Re:Visual Programming – Why It’s a Bad Idea by PavlovsCat on Tuesday November 20, 2018 @03:13PM (#18497272)
If it doesn't itch, don't scratch. If it itches and scratching with your finger makes it go away, you may not not need a "professional scratching device".

Also, if people can build computers in Minecraft that don't achieve anything and get praise for it, people who solve real problems with creative (ab)use of something really should get kudos, too. You're not even using anything "wrong".

Re:Visual Programming – Why It’s a Bad Idea by barberousse on Tuesday November 20, 2018 @01:04PM (#18496001)
I think the broader, opposing point you bring out is that visual programming is perfectly suitable for specific scopes of computational modeling, and that's just because they're DSLs, and we already know DSLs are the right choice for a number of problems. I'd like to know who the author things they're engaging with on the points they're making.
Re:Visual Programming – Why It’s a Bad Idea by kpil on Tuesday November 20, 2018 @01:31PM (#18496313)
I disagree that DSLs are the right choice unless it's an extension to the suitably flexible implementation language itself.

Actually, the perceived need for "dumb" DSLs is sprung from the same misconceptions as mentioned in the article and the end result is inevitably that simple problems are made somewhat simpler and complex problems turn into impossible problems.

A proper DSL extension in an unobtrusive host language is another thing but also hard to find. If a Lisp syntax is acceptable then that's the canonical example.

I don't want to get depressed overe all misconcieved excuses for test automation languages, process automation, configuration templating systems, etc, so I'll just stop here.

Re:Visual Programming – Why It’s a Bad Idea by jakelazaroff on Tuesday November 20, 2018 @01:49PM (#18496506)
Obviously these are sweeping statements, but the problem with this generalization is that successful DSLs become invisible because we take them for granted. Regular expressions are a DSL. SQL is a DSL. LaTeX is a DSL. The Wikipedia page on domain-specific languages even lists HTML as an example: https://en.wikipedia.org/wiki/Domain-specific_language#Examp...

With regard to LaTeX or HTML, you could even argue that their goals could be better accomplished with some sort of graphical interface, which sounds a lot like… visual programming!

Re:Visual Programming – Why It’s a Bad Idea by henrikeh on Tuesday November 20, 2018 @03:03PM (#18497164)
Geometric constraint solvers are essentially graphical, declarative domain-specific languages for mechanical/physical design. As an example: http://solvespace.com/index.pl
Re:Visual Programming – Why It’s a Bad Idea by kpil on Wednesday November 21, 2018 @02:56PM (#18505518)
I would argue that perhaps with the exception of regex, the examples you mentioned are excellent ideas that are awsome despite their suboptimal DSLs, and they would have been even better if their DSLs had been implemented as extensions in a Lisp-like language.
Re:Visual Programming – Why It’s a Bad Idea by DonHopkins on Tuesday November 20, 2018 @01:52PM (#18496538)
I agree that it's good for a DSL to give not just unfiltered but well integrated access to the underlying implementation language, instead of trying to replace it with a dumbed down domain specific language.

It should be possible for implementation language programmers to create new primitives, that visual language programmers can easily use without learning the implementation language.

And that extension interface should be part of the visual programming language from day one, good enough for the visual language to use itself for most of its built-in primitives, not an afterthought nailed onto the side.

Re:Visual Programming – Why It’s a Bad Idea by baldfat on Tuesday November 20, 2018 @02:11PM (#18496721)
I think the future is General Purpose Languages that make DSL. Right now we have Racket and that is such a powerful thing to create DSL simply.
Re:Visual Programming – Why It’s a Bad Idea by topkai22 on Tuesday November 20, 2018 @11:34PM (#18500164)
I don’t want to beat the author up too much- the over application of CASE tools in the 90s was a real thing, and I have less than fond memories of being forced to use a VPL when it really wasn’t the appropriate solution.

A good professional programmer will feel (and in fact be) constrained and slower by a VPL. That’s frustrating and likely a misuse of resources. I just think the author missed the point that VPLs generally aren’t for “us”, they are for people who something else for a living.

Re:Visual Programming – Why It’s a Bad Idea by mmsimanga on Tuesday November 20, 2018 @02:25PM (#18496837)
To add, can you imagine if IT had to develop every single application the business thought up? They would never cope. I think Access, InfoPath and CMS systems like Drupal allow business to create prototypes. Once the application has been validated and becomes business critical then IT can take over and develop a "proper" application.

It makes sense to use a visual programming language to create basic CRUD applications. A central task list with fields that are specific to the business process can go a long way in improving operational efficiency in a business unit. Beats an excel spreadsheet.

Re:Visual Programming – Why It’s a Bad Idea by sigsergv on Tuesday November 20, 2018 @10:02PM (#18499860)
Prototype is not enough. Prototype is backed by some analytics that usually hidden or omitted. And “decoding” prototype app to create “real” app may take a lot of time.
Re:Visual Programming – Why It’s a Bad Idea by mmsimanga on Wednesday November 21, 2018 @02:51AM (#18500899)
In my experience, people have more ideas than we have developers to implement every idea. It is very hard to work out if an idea is a good idea or not before you implement it.

You cannot implement a system for every idea because you will not have enough developers and you will waste time implementing ideas that sound good but are useless. Visual Programming applications like Access allow less technical users to implement their ideas. Some of these ideas will go nowhere. This is fine because you will not have wasted developer resources. Some of these Access applications will solve genuine business problems. It may be difficult to decipher them but it is no more difficult than trying to figure out what users want. At least in this instance, you have an application you can test against.

Re:Visual Programming – Why It’s a Bad Idea by jfolkins on Tuesday November 20, 2018 @12:59PM (#18495937)
That is a awesome attitude to have.
Re:Visual Programming – Why It’s a Bad Idea by wdanilo on Tuesday November 20, 2018 @03:52PM (#18497595)
Topkai22, I love your attitude. This is exactly how we should look at visual programming languages. They allow people to create something, which was so far not accessible for them. In surprisingly many cases, it's completely enough!

I also understand why people dislike this idea. In many cases, it's really hard to extend something created by non-professional-programmers. I'm one of the founders of Luna ( http://luna-lang.org ), which is a visual programming language blending the boundaries between visual data-flow designing and conventional textual programming.

As a contrast to the mentioned article in this topic, I'd encourage people to also read our blog post about why visual programming could actually be very useful: https://medium.com/@luna_language/luna-the-visual-way-to-cre...