Wednesday, August 29, 2007

O/R mismatch: What is the Problem?

August 28, 2007

There has been quite a discussion recently on the so called "O/R mismatch".
This is a quite interesting discussion. The bottom line is that after so many years, still object persistence does not seem to have a fully adequate solution.
This is ackward, bringing programming languages and databases seems still a rather diffcult task...!

There are a number of interesting resources I have recently published on this subject on ODBMS.ORG.

In cooperation with FranklinsNet, ODBMS.ORG has published the transcript of the panel discussion "ORM Smackdown" between Ted Neward and Oren "Ayende" Eini on different viewpoints on Object-Relational Mapping (ORM) systems.
It is an interesting reading. Pls check: ORM Smackdown

I have also published Ted Neward's follow on essay discussing solutions to the problems
of Object/Relational-Mapping titled "Avoiding the Quagmire".
This new essay is a follow on to Neward's "The Vietnam of Computer Science" , which compared
the inherent problems of object/relational mapping to the quagmire in the Vietnam war.
The initial "Vietnam" essay was first published in 2006 and widely discussed in the industry.

"Avoiding the Quagmire" discusses the impact of choosing to integrate object concepts into the database as opposed to using relational concepts or object/relational mappers.
Neward states that while using an object oriented database management system (ODBMS) will not completely eliminate all of the problems described in the intial "Vietnam" essay, it does address some of the more egregious problems. ODBMS thus frequently provide the developer a better chance of avoiding the quagmire and allowing them to focus more clearly on the problem at hand.

Pls check: Avoiding the Quagmire

I published a copy of Ted Neward's "The Vietnam of Computer Science".
Neward argues that the O/R mismatch is a quagmire where current approaches including object-relational mappers (ORMs) are subject to decreasing marginal returns. He lists the abandonment of objects (as a programming paradigm) or of relational data structures (as a database paradigm) as the only wholehearted solutions, while living with the pain or full integration of ORMs into languages or databases are other approaches.

I personally do not like the analogy with Vietnam... but the article has a number of interesting points. The article as you may immagine has received a mix feedback from the readers....

Here is the reference: The Vietnam of Computer Science

Monday, August 20, 2007

10 Questions On Innovation

August 2007--
In my work as Editor of ODBMS.ORG
I started a Section on Innovation.
I believe this is important. In the IT industry innovation plays a key role.
But how does innovation occur? I thought the best way is to ask who did some mayor innovation..

So I asked:

Ivar Jacobson. creator of OO methodologies
Alan Kay, pioneer of OOP, PC, and GUI
Vinton G. Cerf, father of the Internet
Philippe Kahn, founder of Fullpower, LightSurf, Starfish, and Borland

You can read in this blog their answers to my 10 Questions On Innovation.

Learning from great innovators is one source of inspiration, but not a guarantee of course...

Enjoy. -- Roberto V. Zicari

Business Models for Open Source with Dual Licensing

August 2007-- I wote a research paper together with my colleague Jesper Holck while I was at the Copenhagen Business School:

A Framework Analysis of Business Models for Open Source Software Products with Dual Licensing
Working Paper, CBS/INF, No. 1, January 2007

Jesper Holck, Roberto V. Zicari

Copenhagen Business School
Department of Informatics
Howitzvej 60
DK-2000 Frederiksberg, Denmark.

Abstract
Aim of this research is to identify the key elements that play a significant role in the success of business models for companies which produce software products based on open source using dual licensing. For that we have defined a new framework analysis that can be used to evaluate existing and new business models.

Click here, to download.pdf (133KB):
Working Paper, CBS/INF, No. 1, January 2007

I`d be interested to receive feedback/suggestions/criticisms so that we can improve the paper.

E-services and business models for the Web

August 2007-- Last semester I did teach at the Copenhagen Business School a master course on
"E-services and business models for the Web".

For the course I have created a resources page where you can download interesting material: E-BMW Resources

I am interested to receive up to date resources that I can add to the course resource page.

For some more details: E-BMW Course Description

Wednesday, August 15, 2007

My Visits at Google and IBM Almaden Research

August 16 2007--
This summer I was in the Bay Area. I took the occasion and visit IBM Almaden Research and Google.
I gave a presentation both at IBM and Google on my research project, Gugubarra.

Here are some details:

Title of the talk:
The Gugubarra Project: Building and Evaluating User Profiles for
Visitors of Web Sites.

Speaker: Roberto V. Zicari
Computer Science Department,
Goethe University of Frankfurt, Germany.

Work done in cooperation with Natascha Hoebel, Sascha Kaufmann,
Karsten Tolle, Naveed Mustaq.

Index Terms: User Profiles, Web Communities, User modeling, Clustering methods

----------------------------------------------------
Abstract

In this talk I will present an overview of the work we are
currently doing in the Gugubarra project. The project aims at
building tools for better managing communities of Web visitors.

The Gugubarra project (Gugubarra is the Aboriginal name for the
Kookaburra bird) began in 2004 within the database group (DBIS)
at the Computer Science Institute of the Johann Wolfgang Goethe
University, with the aim to build tools for better managing
communities of registered Web visitors.

In this talk I will present the results of the project so far
and outline some open research issues.

The starting point of our project is the assumption that a
community of users is registered on a Web site and that for each
user a profile is built. A User profile is based on the actions
and navigations the user performs on the Web site.

In Gugubarra, we offer various settings that can be used to
create and manage user profiles. By using these settings the Web
site owner can focus on those aspects he wants to analyze.

The approach we have in Gugubarra is as follows:

i) For each registered Web visitor we create a profile.
These user profiles reflect the “inferred” interests of the
users related to a set of pre-defined topics defined by the owner of
the Web site. The profiles go beyond collecting the obvious
information the user is willing to give at the time of
registration. In Gugubarra, a user profile contains two parts:
the obvious profile, given directly by the user and a non
obvious profile (NOP), inferred by the user's behavior during his visits
on the site.

ii) A user profile is (re)-calculated dynamically any time an
explicit feedback is given by the user and/or a set of events
occurred which are related to the user's behavior and to certain
“locations” of the Web site.

iii) We cluster Web visitors by clustering similar profiles of
interest [5]. Cluster of Web visitors can then be used to
analyze patterns of interests in the Web community and to forecast
further behavior. Clusters might also provide useful information
to support the decision what kind of new E-services to introduce
for the Web community and when to introduce them.

A first research prototype system, called Gugubarra 1.0 has been
implemented in 2004 [1], which allows to build and manipulate
non-obvious user profiles. It was showcased at the CeBIT Trade
Fairs in 2004 and 2005. Gugubarra 1.0 works as a test
application on real data provided by the Web community viewzone.org.

A new prototype system, Gugubarra 2.0, is currently being
designed [3], [2] which includes a more sophisticated approach
to the definition of non-obvious user profiles and allows
clustering users by interests [4]. In this talk I will focus mainly on
the new features introduced in Gugubarra 2.0 and refer to [6] for
the features implemented in Gugubarra 1.0
-----------------------------------------------------

Resources

[1] Building and Evaluating Non-Obvious User Profiles for
Visitors of Web Sites. N. Mushtaq, K. Tolle, P. Werner and R.
V. Zicari.
IEEE Conference on E-Commerce Technology (CEC 04) July 6-9,
2004,San Diego, California, USA (.pdf 265KB)

[2] The Gugubarra Project: Building and Evaluating User Profiles
for Visitors of Web Sites. N. Hoebel, S. Kaufmann, K. Tolle, R.
V. Zicari.
First IEEE Workshop on Hot Topics in Web Systems and
Technologies (HotWeb 2006), November 13-14, 2006, Boston,
Massachusetts, USA (.pdf 415)

[3] The Design of Gugubarra 2.0: A Tool for Building and
Managing Profiles of Web Users. N. Hoebel, S. Kaufmann, K. Tolle, R. V.Zicari.
IEEE/WIC/ACM, International Conference on Web Intelligence,
2006, Hong Kong (.pdf 100) Long Version: (.pdf 196)

[4] On Clustering Visitors of a Web Site by Behavior and
Interests.
N. Hoebel, R. V. Zicari. in Studies in Computational
Intelligence Series, Springer, AWIC '07 (.pdf 155)

The above papers can be downloaded at:
Gugubarra Papers

If you are interested you can also view the video of my presentation at Google.

Monday, August 13, 2007

10 Questions On Innovation to Ivar Jacobson.

August 2007--
Dr. Ivar Jacobson is one of the great thought-leaders in the
software world where he has made several seminal
contributions.
He is one of the fathers of components and component
architecture, use cases, modern business engineering, the
Unified Modeling Language and the Rational Unified Process.
He is the principal author of five influential and
best-selling books. He has written more than 50 papers and he
is a regular keynote speaker at large conferences around the
world.

1. Who are your favorite innovators?
[ivar] I am very impressed by some innovators that have made
the world a better world, but I really don't have any
favorites. My favorites are found in other spaces such as sport, music and art.

2. What do you consider are the most promising innovations of the last 3 years?
[ivar] I have not given this question any thoughts.

3. What helped you to become a successful innovator?
[ivar] I have never seen me as an innovator. I have tried to
solve problems we have with software, but I guess that could
be seen as innovations. I introduced components in 1967 as a
means to build software architectures that could change
gracefully over many years and that could be reused for many
different applications.
I introduced use cases to get more understandable
requirements at the same time as they worked as test cases.

4. Did you pay a price to be an innovator? Which one?
[ivar] Being a manager for a large project and at the same
time fighting for a better way of building software is
professional suicide. After having introduced components at
Ericsson it took ten years before the company knew it had
created history in the telecom space. In the mean time I was
demoted and recommended to leave the company. The
recommendation was given by my boss who later became the
president of Ericsson.

5. What are the rewards to be an innovator?
[ivar] I never came up with an idea to be rewarded.
Components made it possible to develop a product that could
be adapted to every customer with small costs and made it
possible for me to do what I had been asked to do.
Use cases streamlined the life cycle since use cases were test cases.
However, later I have been rewarded because people adopted
these ideas. I have been able to work with fantastic people
around the world and make a living out of it.

6. What are in your opinion the top 3 criteria for successful innovation?
[ivar] This is a new question to me, but I will give it a try.
An innovation should 1) be practical, 2) stand on a good
theoretical foundation, and 3) be simple to understand.
I usually quote Kurt Lewin: There is nothing as practical as a good theory.
Even a rather complex idea must be presentable in a simple way.

7. What would you recommend to young people who wish to pursue innovation?
[ivar] First of all, don't make it your goal to become an
innovator. If you have good ideas, you will have to fight
for them. Many people have good ideas, but most give up due
to the resistance that comes from the establishment. Success
requires perseverance. On the other hand don't become
greedy. Don't focus on making money, but be generous with
your ideas. You have more ideas that you can harvest from
later on. And have fun.

8. In your opinion how can we create a culture that supports and sustains innovation?
[ivar] There are many obvious answers to this question so I
will try something different: First, in Sweden there was a
time when we had no world class tennis players. Then we got
Bjorn Borg. After Bjorn Borg we got many world class tennis
players. We have similar effects in other areas. If someone
has great ideas, let her or him work with promising people
and they will all soon be more interested in coming up with
new ideas. In my companies I have had great people around me
that now are very alert for new ideas.
For example Gunnar Overgaard, Per Kroll, Agneta Jacobson,
Maria Ericsson, Dave West, Patrik Jonsson, Pan Wei Ng, Ian
Spence, Kurt Bittner, Magnus Christerson, Stefan Bylund.
Nothing is as effective in growing an innovative culture as
working with innovative people.

In big companies actively supporting alternative careers has
been very effective in growing an innovative culture.

9. What do you think stops/slows down innovation?
[ivar] I can't think of anything more than the obvious answers.

10.Do you think becoming an innovator can be taught?
[ivar] Absolutely

Labels: ,