[Q]Any opinions on the Victoria Livschitz interview?
Darius
squeakuser at inglang.com
Sat Feb 14 01:15:12 UTC 2004
Any opinions on this interview with Sun's Victoria Livschitz, a senior IT
architect and Java Evangelist?
"The Next Move in Programming: A Conversation with Sun's Victoria Livschitz"
by Janice J. Heiss, February 2004
http://java.sun.com/developer/technicalArticles/Interviews/livschitz_qa.html
_____
"Here's what's really sad -- the overwhelming majority of so-called successful
development projects produce mediocre software."
"The parallel between chess and programming is rather obvious. Programming is
also about knowledge, creativity, and technique."
"It's not the prevention of bugs but the recovery -- the ability to gracefully
exterminate them -- that counts."
"A forest is a complex ecosystem, but for the average hiker the woods do not
appear complex."
"Object-oriented programming allowed developers to create industrial software
that is far more complex than what functional programming allowed. However, we
seem to have reached the point where OO is no longer effective. No one can
comfortably negotiate a system with thousands of classes. So, unfortunately,
object-oriented programming has a fundamental flaw, ironically related to its
main strength [reducing complexity]."
"Consider a few common concepts that people universally use to understand and
describe all systems -- concepts that do not fit the object mold. The
"before/after" paradigm, as well that of "cause/effect," and the notion of the
"state of the system" are amongst the most vivid examples."
"Elaborate mechanisms have been devised over the years to handle transactions,
workflow, orchestration, threads, protocols, and other inherently "procedural"
concepts. Those mechanisms breed complexity as they try to compensate for the
inherent time-invariant deficiency in OO programming. Instead, the problem
should be addressed at the root by allowing process-specific constructs, such as
"before/after," "cause/effect," and, perhaps, "system state" to be a core part
of the language."
"But expanding the pure object-oriented paradigm to allow for a richer set of
basic abstractions -- like processes and conditions -- is only half of the
arsenal in the war on complexity. The other half is a powerful
aggregation/decomposition model that is rather weak, convoluted, and fragmented
in modern programming."
"In the fight against complexity, an attempt to engage the programmer's
intuition and subliminal perception is the best strategy, yet it is terribly
neglected."
"There is a plethora of other relationships that also don't fit very neatly.
Master/slave, many-to-many, component/container, interval, element/metadata, and
so on, are just a few common ones that we deal with every day."
"As far as optimism about the future, I see a lot of interesting work around
presentation of data to end users. Sun's Project Looking Glass is a good example
of the innovative thinking and good use of intuitive metaphors that make
interactions with complex multi-media information effortless. Apple and
Microsoft seem to be working on similarly interesting technologies. Sadly, none
of it is going into basic research and the development of principally innovative
general-purpose programming languages."
"Enormous productivity gains remain to be uncovered and difficult problems are
yet to be solved. The world has gone crazy with XML and then web services; SOAP
and UDDI are getting enormous attention, and, yet, from a software engineering
standpoint, they seem to me a setback rather then a step forward. "
More information about the Squeak-dev
mailing list
|