Let Joe Average Help You Code
ploose writes "Apache co-founder and CollabNet CTO Brian Behlendorf says that programming should be opened out to non-developers. Bring them into a development community with proper feedback forums and bad code will get flamed anyway, so it doesn't matter what they write. From the interview: 'Mashups are really Excel macros 2.0 - with the rise of Web services, the more vehicles that are out there that expose data through programmable APIs, with Office 12.0 and Firefox with AJAX, the more people you'll see create applications. The line between hardcore developers and the average Joe will start to get very fuzzy.'"
Anyone remember back when every PC owner was expected to know at least a little BASIC? Back then computers were used for custom programs just about as much as they were used for shrink-wrapped applications. And if you didn't have the skills to write your processing program in BASIC, you could always hire someone to do it quickly and cheaply. (Program requirements weren't exactly high back then, so finishing a program in a day or two was quite common.) The question is, what happened to those days?
I suppose part of it was that shrink wrapped software got better. Where as you originally might have had trouble finding the software you needed, today you can get software for just about anything! The other part of the problem was that programming became far more complex of a task. Instead of just taking data in and spitting out a report, it now has to provide a cool GOOEY interface (MMmmm... chocolate), and real-time interactivity. These types of features are not so easily grasped by the average person, and require training to master. Thus programming has been squarly placed in the hands of experts.
If Brian Behlendorf wants non-developers to write code, he's better have another BASIC up his sleeve. (AJAX BASIC? Hmmm... I might have code like that lying around...) Because I don't think I could possibly take another round of Fourth Generation Languages.
P.S. Excel VBA was a lousy attempt at getting non-coders to program. Don't do that to us again. Please. Make it truly home and SOHO focused like BASIC was.
Javascript + Nintendo DSi = DSiCade
This is a fantastic way to achieve negative productivity. I know, let's put a thousand monkeys in a room with a thousand IDEs - that ought to get us some code! Most non-programmers are simply not trained to think in a rigorous way. Hell, most programmers aren't trained to think rigorously. That's why it's so hard to find good ones.
Our organization currently has a headache when non-developers make an Access database, get their department relying on it, and then leaving the organization. When things break, the developers get sucked into having to maintain this monstrosity.
We're trying hard to disavow them completely, but it's hard to say no when the customer insists its part of a vital healthcare function. For those, we've sometimes rewritten them using a real SQL back-end, web browser client, and code we can support and maintain.
Making tools to let non-developers do things isn't necessarily bad, it's just that there has to be clear expectations as to support. Writing web applications isn't the same as typing up a Word document or making an Excel spreadsheet with a couple macros. It's easy for non-developers to quickly get in over their heads.