Do CS depts pretend programming is hard even though it is now easier than ever?
Moreover, I wouldn't be surprised if professors even exaggerate the difficulty of programming in their grant applications.
Moreover, I wouldn't be surprised if professors even exaggerate the difficulty of programming in their grant applications.
You're right; I don't want to write scripts to rename a bunch of files in asm. Still, programming isn't easy, as evidenced by how few people there are to look up to in the field relative to the number of participants, many of them themselves somewhat proficient.
Our modern languages let us do things that used to be hard in just a few lines, but that just means that we imagine more ambitious projects - so ambitious, in fact, that we coin all sorts of terms like "Test-Driven Development," which is itself nothing more than a moniker for "We know that we're not going to get this right the first time, and even if we get it right later, we should frequently verify that something else doesn't break it." Yes - programming is so easy that changes far away still break things, and despite a lot of theories on modularity and the like, we still don't know how to do it in practice.
We all want to figure out how to write better software, but despite all of our languages and methods and collective experiences, we're still not very good at it. That last clause well describes something hard, not something easy.
It varies by university, but my program was approximately 75% theory courses and 25% practical (programming, give or take) courses. This seems to be a common misconception among the uninformed. While there is some coding in select theory classes, it is limited to POC implementations. Most mid to upper level practical courses (attempt to) teach about exterior factors in programming such as team management, testing, and workflows.
To say that programming is easier than ever is a naively sweeping statement. There may be truth in some aspects such as increased communities around languages, advancements in frameworks, and pushes for better tools and documentation, but the basis of programming has not changed. If anything, it has broadened and become more complex.
The point though is this: the typical web 2.0 app is really easy to build.
Saying that and saying programming is easier and it is making CS departments less relevant are very different things. In accodance with that, building a web 2.0 app may be easy, but building a good web application takes as much skill and talent as ever. Standards change.
Squeak (http://www.squeak.org/) was an interesting advent. It made programming pretty simple. A layperson playing with squeak could "program," but it hardly stands in for even an introductory CS class.
I also take issue with the fact that you treat programming or web app development as if good is a static threshold. A good web app a few years ago hardly compares today, and that can be seen in the evolution of almost any major website.