Wednesday, October 11, 2006

Coderless Apps? Don't think so.

I'm a really big fan of most things Guy Kawasaki has to say, and he obviously way more business savvy than I am. But I have to say, I think the latest idea that he's advising (and pushing?) of Coderless Web Applications is a zero.

OK, I'm probably being a bit harsh, but I just don't think Coghead is going to:

.. Completely upend the balance of power in the software game -- putting users, and not coders, in ascendancy

Yeah, right. (As a coder, I have the balance of power? Why didn't anyone tell me this? I'm so always the last person to learn these things.)

I've tried to read up on Coghead's website to see if I just don't get it yet. But everything I read points me to the same conclusion - it's all just a load of Silicon Valley hype.

OK, before I get ahead of myself, what is Coghead? Essentially, Coghead is an environment where you can click and drag your way to the construction of a web application. This sounds great, and the pretty screenshots seem to back this up. Add to this the fact that you have people like Steve Bourne (the inventor of /bin/sh!) as advisors, and it seems like they can't lose.

OK, lets assume that they have removed coding from the development of software. That's great, but here's the thing, the hard part of developing software isn't the coding. It's the thinking.

I've now taught a couple of different classes relating to computers and programming, and I've been just blown away at how the typical way a developer breaks down problems and manages complexity on a daily basis, are not obvious to most people (college level students). I've asked my advanced web design students to work on a simple problem, say the generation of a random welcome message, and I'm greeted with blank stares. Not stares of how to construct the javascript just right, but in how to get started.

Specifically, they don't get how to decompose and attack the problem. It doesn't occur to them that they need to simply the problem to: (a) find a way to generate any greeting, (b) find a way to generate a random number, (c) create a collection of random sayings, (d) combine (a) - (c) to solve the problem.

And that's what us programmers do on a daily basis. We are professional problem solvers. Give us a word problem, and we'll break it up into little bits and find a way to solve it. As I found out in the classroom, this is a learned skill, and not just common sense. Add to that the fact that debugging itself is a skill that needs to be learned and mastered, and you realize that if you could create an application without writing a line of code, getting it to work correctly would be remarkably tricky.

The buzz for this company seems to be built around the fact that they solved one problem (how to create an app without writing a line of code) and are ignoring the bigger one (thinking through the details of how exactly you create the application).

Does that mean that there's no place for Coghead in the marketplace? Of course not, it's just that I don't see as one of the 11 companies that could change the world.

My guess is that you'll have users who will embrace Coghead. However, the ones that do will no doubt start their way the software development food chain. First Coghead, then VB, then PHP, then JSP, then J2EE and finally to Scheme.

Good luck Guy, I hope I'm wrong. Of course if I am wrong, then I could be out of a job. But I'm prepared to take my chances.

No comments:

Post a Comment