ALL code is ugly. Yours, mine, everyone's. Code Is Ugly.
I couldn't agree more. It's 2010 and we're using text files to describe rules. We're using text files to describe data.
My God. Everyone just stop what we're doing and look at your code. Look at it! It's worse than ugly; it's monstrously stupid. It's idiotic to a degree that beggars the mind. And here we are, in 2010, ignoring the elephant in the room: that code, the way we do it, is petulantly retarded.
Your comment is long on hyperbole, short on reasoning. What, specifically, is wrong with a textual representation? What alternatives do you suggest?
People have tried more sophisticated representations than text before. In my experience, they offer little benefit, while throwing away a rich ecosystem of tools that work with text. It seems to me the most promising advancements have been in tools that work intelligently on top of simple text files, rather than trying to replace them.
Yeah, it was a bit troll-y, I know. But sometimes the Diogenes in me comes out and really, we all need to be slapped in the face and asked, "This? Is it? This is what we've done?" Hardware doubles every eighteen months. If it was a stock it would blow the markets away. Software is a T-Bill. It barely covers inflation. Shame on us for "having tried more sophisticated representations than text before" and then giving up when it didn't immediately pan out.
Humans have been writing language as text for thousands of years. You're going to have a hard time changing it.
What would be worse is something like mathematical or musical notation, with non-trivial layout rules and endless ambiguities. Or a complex binary format that only a computer can decode. Text files are actually pretty damn perfect as a simple mapping from computer (raw data) to human (language).
Why in the world would we want to make raw data to language?
You use a spreadsheet for your budget. You use an accounting system at work. Yet you use a text file to describe the mission critical rules your business runs on.
This is the misconception we've run into: that we think we need to move programming languages to human languages, when human languages are bereft of concision and determinant qualities. We need to move in the opposite direction.
So let's assume we manage to tackle all the problems associated with non-textual formats (merging, compatibility, opacity, etc). What does this new way of programming do better?
I would say it the other way. When we can really free ourselves from text, we'll have made the main core changes that have been needed to make programming better.
Given that human ability to think with abstractions is likely connected to our ability to use language, I don't see why textual representation would be the fundamental problem in programming.
There are subproblems (e.g. state machines) in our craft that benefit enormously from different kind of (visual) representations, but in my opinion textual representations is the best basis for programming.
On the otherhand, you might just hate text files as a way to organize code and would instead use a more elaborate format. Maybe there is better ways, but I think simpler formats fare better when you need to communicate with other people and over organizational boundaries.
Regex? Really? Because that's exactly what I'm talking about. Regex is a quite simply the nadir of querying languages and challenges that we ever evolved up from monkeys.
Presumably "graphical" programming tools like labview and gedae. But I'm not a fan of them as they are very mouse-dominated which doesn't do my RSI any good.
I'm specifically not naming what I'm talking about because I didn't have it in 1996, when I started; I just had the anger and frustration. That's where you start.
You can't get a solution before you realize there's a problem.
I couldn't agree more. It's 2010 and we're using text files to describe rules. We're using text files to describe data.
My God. Everyone just stop what we're doing and look at your code. Look at it! It's worse than ugly; it's monstrously stupid. It's idiotic to a degree that beggars the mind. And here we are, in 2010, ignoring the elephant in the room: that code, the way we do it, is petulantly retarded.