

Do CS depts pretend programming is hard even though it is now easier than ever? - amichail

CS depts want to increase enrollment after all...<p>Moreover, I wouldn't be surprised if professors even exaggerate the difficulty of programming in their grant applications.
======
bcater
Is programming easier than ever?

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.

~~~
shutter
Exatly. We're often at a higher level of abstraction from the hardware now,
but that doesn't mean our job is any easier; we're just tackling broader
problems.

------
qhoxie
I'm not sure you understand what computer science really is. Perhaps you are
thinking of software engineering.

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.

~~~
amichail
I've spent quite a long time in academia (I'm a former academic) and I am well
aware about the difference between software engineering and computer science.

The point though is this: the typical web 2.0 app is really easy to build.

~~~
qhoxie
_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.

~~~
amichail
Frameworks get better all the time. For example, building a scalable web app
is now much easier with the google app engine.

~~~
qhoxie
I agree and made note of framework and tool advancements above, but you are
still missing the point. Good utilities make it quicker to create an
application, but they don't create good programmers or good code by
themselves.

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.

