Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've met many non-programmers who are quite comfortable with SQL. There are many smallish scripting languages that should qualify as DSLs that allow lay access to domains that mystify normal people. Excel comes to mind. Mathematica used to be one of these before it became a real general-purpose programming language, if a somewhat limited one.

The author appears to be projecting their personal convictions onto everyone else.



SQL can bite back with the sometimes non-intuitive consequences of its version of three-valued logic. Unfortunately, some professional programmers have trouble with it. I once had to sort out a situation where the developers were blaming the users for not using the system correctly, when the problem was with the queries.

Spreadsheets are another good counter-example to the author's thesis. They, too, can be misused, but that is outweighed by the great many cases where they are used well by non-programmers.


Autohotkey is another one of those scripting languages. ::F4:: Send {Alt down}{F4}{Alt up} is so much simpler than whatever I would have to do with Java to remap keys. Same with stuff like WinActivate (window title) and MsgBox "hello world". It does get complicated like the OP says pretty quickly, with match modes and conditionals and stuff, but you can go years using it without getting any deeper.


I agree that DSLs can work for non-devs, and Excel is a good example of this.

SQL though, I'm less convinced about - while I've known business people to use it for basic queries, many devs struggle with anything more complex.


That many professional developers are worse at SQL than professional non-developers is an indictment of those developers, not SQL.


I would argue that SQL is an excellent language and the only issue is with the actual inherent complexity of what goes on behind the scenes. Writing the equivalent of even a modestly complex SQL query in any other language is much more tedious and error prone.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: