Well the real issue is defining what's better. And the worry some of us have is this new trend of grappling with increased complexity seems short-sighted; we don't like the direction it's going. As much as Sussman shows understanding of the current situation, what he's saying is also a criticism--doing this sort of ad hoc "science by poking but not really science" is the heart of the issue.
And what's interesting is if you look at actual scientific research around programming, say dealing with concurrency and advanced tools like model checking, etc—all of that is very theoretical stuff that assumes you know SICP or have equivalent foundations. So it's not really an argument that theory is dying; in face of this new level of complexity in practice, perhaps we could benefit from theoretical research now more than ever.
It's hard to argue with productive results, however. If this "poking" results in valuable engineering more than SICP does, then "poking" needs to at least be seriously looked at and understood, if not outright taught to the next generation of software engineers.
The real problem, I think we can all agree, is the lack of widespread specialization of degree programs. Computer Science is still the blanket degree everyone gets, when in reality, some kind of trade program is likely sufficient to train many of today's "developers" (the "pokers").
And what's interesting is if you look at actual scientific research around programming, say dealing with concurrency and advanced tools like model checking, etc—all of that is very theoretical stuff that assumes you know SICP or have equivalent foundations. So it's not really an argument that theory is dying; in face of this new level of complexity in practice, perhaps we could benefit from theoretical research now more than ever.