Blog Archives

The Struggle for the Sould of the Web

Very interesting article, “The Struggle for the Soul of the Web” !
The author enforces the concept of the importance of Ajax standards (and, thus, the Open Ajax Alliance) as a mean to avoid that the web becomes the territory where proprietary solutions (see Flex and SilverLight) will flourish.

In developping his argument, on which I agree, the author makes an interesting statement:
More importantly, Flash and Silverlight work by installing a proprietary plug-in to your browser, thus opting out of the entire browser infrastructure. If you are a plug-in vendor, your incentive is to keep the browser as dumb as possible.
The worse the underlying browser is at rendering rich widgets and media, the more developers and users will want your plug-in. If you are both the vendor of a browser (say IE) as well as the proponent of a plug-in (say Silverlight), then the incentives get truly twisted.

In some way, what he says is very similar to what I have said since a while: we need a new generation of Browsers which are not constraining people from developping applications delivered through the web (see here and here and here for a summary of my opinion on this topic). In that sense, Chrome may be the start of an answer (unfortunately, I say, as it comes from Google instead than from the Open Source community…).
If we want to avoid the risk that Flex and Silverlight will dominate the Web, we need to address this kind of question, which can be summarized by what I found in this other article

We’re in a transition point between the Age of Web Apps and the Age of RIAs (in the web space, that is). And if you doubt that we’re at this transition point, or if you think that RIAs include web apps, ask yourself, does AJAX really give you “all the rich you need”?

Can AJAX really, as Jef Raskin famously stated [60], treat all user input as sacred? Is AJAX really the end all and be all of a Compelling User Experience? Or do we remember that applications used to run outside of a browser?

Of course, it is provoking. But the risk is quite present.

User as center of the Universe

I am slowly catching up with some articles I read and over which I wanted to comment. I am dealing with this one SOA needs RIA – Burton Group, because there are few sentences I liked and because it lacks, in my opinion, a proper “end”.

The Value Hierarchy of Web 2.0So, here are the quotes I liked most:

  • “We firmly believe the user experience needs to be a first level priority at the same level as SDLC, platform languages, SOA and security.”
  • “If the business depends on people and people depend on information technology, then the interface between people and information technology — the user interface — naturally has to be very good. If you have an ineffective user interface, you’re going to have a less effective organization.”
  • “…people are the platform. IT is ephemeral. It continues to change over time, but what does not change in business is that the quality of any organization depends on the quality of its workers.”
  • If developers think the goal of SOA is to provide agility in assembling loosely coupled Web services into an application that provides real-time sales data to managers and marketers, they are missing a key component in the Burton view:  “The idea is to make user experience the end goal of any IT initiative and not an afterthought.”

I, personally, subscribe to all the above statements. They remember me a very nice article I read a couple of years ago, from Dion Hinchcliffe, titled The Web2.0 Trinity: People, Data and Great Software. The pictures in this post are both taken from Dion’s article, and I use them consistently in my talks around Web2.0 and the evolution of Desktop technologies.

Going forward, there is another quote that my few readers may appreciate:

“We see the next step as RIAD, the rich Internet application desktop. Here you need to look at Adobe AIR, Google Gadgets, the Microsoft Widget Library, to see resident applications that provide you with a visual experience associated with RIA.”

This is even more close to what I have often written in my blog: moving beyond the browser (as we see it today) towards a mechanism where applications, delivered via the web, will be executed locally. GREAT !

What seems missing to me is the very last part of the article

In Burton’s view, the future of the UXP is in using Web widgets, portable chunks of code and gadgets, miniature objects that can be placed on a Web page to provide dynamic content.

With widgets and gadgets, real-time sales data is on the sales manager’s desktop without requiring him to do multiple click-throughs to find a table or chart, the Burton analyst said.

What I think is missing is the name to this approach, a name which already exists. It is called Mashups, isn’t it? What is needed is the possibility to define those widgets in a standard way and be able to mix and match them in different contexts: a Portal, a Mashup environment, a Rich Client, the desktop even….

Internet Search should be property of no one

For the people that start fearing about Google, I suggest reading the following article: Google goes click.
Among the others, I liked this quote:

Further proof, if any were needed, that Google
isn’t a technology company that makes money from ads, it’s an
advertising company that uses technology to lure eyeballs

I start to believe that Internet Search is too delicate a feature, is so important that it cannot be left in the hands of a monopoly.
Internet Search should be property of no one or real competition and alternatives should be promoted.

Thoughts around REST

It is quite sometimes that I have in mind to write down this little comment. I know that, in doing this, I am probably going to be ignored or to be blamed.
But, for all my readers, I am doing this exercise with true humble and open spirit; I am sure that many things I write here represent only a part of the truth, perhaps so little a part…. or perhaps no part at all 🙁 My objective is to understand where I am wrong: so, please, accept my apologies in advance. After all, the motto of this blog is to have “opinions”…. not “truths” 😉 !

So, here is what I do not like in the REST Hype that is around.

  • despite it is “de facto” the way the Web works, REST is counter-intuitive to me.
    It is counter-intuitive because since when I first started to program, I was told to use “subprograms”.
    And, when I moved to Object Orientation, I was told to invoke methods on objects.
    In summary: if we need to use an “addressing space” that is as wide as the whole Internet (and, not simply constrained by the virtual memory given to my executable), I do not see why I should change the way in which I am programming…why should I avoid the “invocation” paradigm ?
  • I think that REST does not add anything on the top on SOAP (or its XML-RCP ancestor).
    It is isomorphic to SOAP. Just using “nouns” instead of “verbs” simply shifts the complexity from one part to the other…. with the side effect of making the things less clear (at least for me, as I am used to add meaning to the verbs I use to describe “actions”)
  • I think that REST assumes that the world is painted with one color only: stateless.
    The reality is seldomly “stateless.
    A lot of times, it is “stateful”. And, maybe I am wrong, but I think that it is better to consider “stateless” as a subcase of “stateful” than the viceversa.
    Statelessness is great for scalability; of course! The Web is so scalable because it is stateless; sure! But, here we are not talking about pages, we are talking about an “addressing space as wide as the whole internet. We are talking about applications that use such a big space.
    I understand that the use of REST makes it possible the different caching levels the internet provides; but in so many cases, the data that are manipulated by internet-wide applications are changing so frequently that caching is not an option.
  • With REST, the “state transition” is in the protocol. I am used to manage the “state transitions” in my code.
  • I fear that REST brings back two-tiers architecture.
    Issuing GET, POST, PUT and DELETE operations on remote resources looks, to me, very much like performing CRUD operations on a remote database: something we have learned not to do.
    I understand that the implementation of a REST service makes sure I am not actually accessing the physical row in a database… but this is true for any RDBMS, actually.

I realize that an important part of the hype on REST is due to the fact that SOAP is so complex!

And I agree that REST is, certainly, a great way to address resources; it is really great when you can easily put an URL into some code and create those cool mashups!
But I would not like to extrapolate that, since something is so easy to use, then it is the only way (or the correct way) to accomplish a given task.

As I said, these are just few thoughts that I have in mind on this subject. I know that there will be arguments to address each of those concerns and to take me back on the “right way of thinking“….

P.S. : By the way; few of the previous thoughts would also apply in favor of an RPC approach to WebServices!

Internet and freedom… and Google?

Just happened to read this little report on Google’s CEO Eric Schmidt: Google CEO: Internet’s role in freedom still expanding
I just wanted to read as I was immediately surprised by the fact that Google has something to say in that domain. My curiosity did not come without an answer 😉 .
It was interesting reading the following:

Some governments will struggle with how much free expression is too much, he said. Even in Western democracies, such as France and Germany, posting information about the Nazi Party is prohibited, Schmidt said, and other governments will struggle with what expression to allow.

Hey! It is not the first time that I see comparing apples and oranges, but I do not think that it is fair to compare revisioninsm with what happens somewhere else with the support of Google !

  • Social Slider
  • RSS
rss Follow on Twitter facebook linkedin