Father of Wiki Speaks on Collaborative Development 55
An anonymous reader writes "eWeek is reporting that Ward Cunningham, creator of the wiki, has predicted an encouraging future for open source and collaborative development. From the article: "Cunningham, who is director of committer community development at the Eclipse Foundation, said open-source software will continue to grow and thrive because it enables user innovation. '[...] No end user wants to be a programmer; they just want to get their jobs done,' he said. But more and more people with powerful tools and powerful languages will be able to work together to build better systems, he said."
No end user wants to be a programmer? (Score:5, Insightful)
We're long-past the dark ages of IT (Score:5, Insightful)
Under this definition, anyone who writes anything of any complexity in a modern wordprocessor is a programmer. Modern WP packages can be regarded as shells in which the operator enters instructions (literal formatting commands, such as right-justify, or bold), decisions (floating tables, grammar/spellcheck), loops/recursion (automatic table of contents, automatic indexing), etc. On WP's like Wordperfect, you could actually make all of the commands visible. It frightened users to do that, because it showed just how much coding they were actually doing.
The power of high-level tools, then, is not to help the user avoid programming, it is to help the user avoid seeing what they're programming. It isn't to do the user's work for them, it is to allow the user to sidestep their phobias long enough to get the work done.
One of the follies of fourth- and fifth-generation programming languages was the assumption that programmers wanted their programming hidden from them as well. It is certainly true that software designers need to have a high level of abstraction, as they don't need to know the details (and shouldn't). It is also true that there are special cases in programming where you need minor scripting changes to have a big impact on the end result. In these cases, high level programming is entirely correct. The rest of the time, when details are everything, you don't want any more abstraction than you can possibly get away with.
For end-users, though, applications really need to be extremely high-level programming languages and very little more. That is why Word (which is essentially a scripting engine with a bunch of macros pre-programmed in) is useful to end-users, even though AmiPro is technically superior and Ventura Publisher is much more impressive. Word is a programming tool that can do anything Visual Basic can do, whereas the others are only applications. The user may claim to hate programming, but they can claim it all they like. The fact remains that they pick the programming tool over the "pure" application - when it is disguised cleverly enough.
Re:We're long-past the dark ages of IT (Score:3, Insightful)
The fallicies of 4th, 5th generation programming (hmm, reminds me of that big 5th generation japanese flop), were the same fallacies of COBOL - that every joe middle-level business manager would be willing and able to hack code, even if it was in some 1960s interpretation of natural langauge programming. My contention is that you don't need to dumb down the language to allow higher-level constructs or even visual programming. Smalltalk/Squeak (yeah, i'm being fanboy lately) can allow that and also allow you dive down into the bowels of the kernel to do whatever you want.
Its not all good (Score:3, Insightful)
We're long-past the dark ages of Generalizing (Score:2, Insightful)
No, the point of high-level tools is to allow the user to focus on the domain their problem lies in, while avoiding extraneous material. That's why you'll be seeing more DSL's and other tools.
Re:Its not all good (Score:2, Insightful)
Users... or useless? (Score:3, Insightful)
I don't know how many times I've clicked on the "documentation" link in a project only to be greeted with "Coming Soon!". Never mind design documents.
I think we're going to need a much higher level of abstraction for code before we reach a tipping point where projects can survive and grow without their lead creator.
--Rob
Re:Talking out of both sides of his mouth (Score:3, Insightful)
...Are you saying that, all these times I've modded goatse posts down, I was really blocking the ability of artists to express themselves?
Oh, God! What have I done?
nothing new here.. (Score:2, Insightful)