I’ve been around software for 20 years now. Looking back, I have mixed
feelings about the progress we’ve made. The end results have been amazing
but the process of building software hasn’t fundamentally changed since the
80s. In fact, I see us make some of the same mistakes over and over again.
One of the common anti-patterns is over-relying on tools and frameworks
instead of inventing new programming models.
Layers of abstraction are fundamental to software. Some layers are defined
through programming models, e.g., machine language, assembly language, 3GLs,
JSP. Others are defined through a combination of tools and frameworks, e.g.,
MFC and Visual Studio on top of C++. There is a limit to how high we can
raise a level of abstraction through tools and frameworks alone. At some
point, a new programming model is the best way forward.
Here are some examples: CASE tools ... (more)
With all the noise the Web 2.0 revolutionaries are making, it's easy to
ignore another-this time velvet-revolution. E-commerce 2.0 is coming into
maturity and getting ready to relieve its now 10+ year old predecessor. It's
What makes an e-commerce 2.0 site? Well, as Supreme Court Justice Stewart's
famous saying (about pornography) goes: "I know it when I see it." This may
not be a satisfactory answer but it's an honest one. It's too early to tell.
E-commerce 2.0 sites look better, they are easier to use but, most
importantly, they drive better economics. Let's look a... (more)
I just came back from the first face-to-face meeting of the W3C working group
on XML Protocol (is it just me, or is the name somewhat odd-sounding?), and
I'm wondering what topics to exclude from this column. Yes, that's right -
exclude. Encoding data in XML is a difficult topic for many reasons. First,
it's one of those technical subjects in which you need to look at lots of XML
instance/schema/DTD snippets. Second, the devil is very much in the details
and there are lots of them. Last but not least, there are as many ways to
encode data in XML as there are data encoding needs. ... (more)
It's been a long time since the last XML in Transit column. Did you miss my
musing on Web services? I doubt it. More likely, you were busy keeping up
with all the new initiatives in the Web services space. Those of you with
corporate responsibilities were probably wondering how to get some real ROI
out of Web services. The more entrepreneurial of you were thinking how to
make money in this new world.
I too have been trying to organize my thoughts. This is going be the first in
a series of articles that go beyond the basic SOAP/WSDL/UDDI Web services
stack to cover the innovation ... (more)
"Metcalfe's Law is Wrong," contended Bob Briscoe, Andrew Odlyzko, and
Benjamin Tilly recently in a much-discussed IEEE Spectrum article, in which
they wrote: "Of all the popular ideas of the Internet boom, one of the most
dangerously influential was Metcalfe's Law." Sim Simeonov disagrees.
The industry is at it again – trying to figure out what to make of
Metcalfe’s Law. This time it’s IEEE Spectrum with a
controversially titled “Metcalfe’s Law is Wrong”. The main
thrust of the argument is that the value of a network grows O(nlogn) as
opposed t... (more)