harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From johann Sorel <sorel.joh...@inbox.com>
Subject roadmap suggestion
Date Sun, 19 Dec 2010 00:11:10 GMT
Good evening,

I have been reading the previous discussion on the harmony roadmap and the little message
on the web site motivated me to make this proposal. 
"If you have an idea, come and join the community and talk about it."

So here it is, first to quickly introduce myself and what I'm working on. My domain is Geographic
Information Systems, developer on several java projects like GeoAPI, GeotoolKit, Constellation,
Puzzle-GIS ... In the last several years I have always been very enthousiastic when developing
and worked both on my professional and personnal time for thoses projects. My work implied
working with ISO, OGC specifications and also JSR, even being part of the elaboration of some
of them at the OGC. Today my motivation is nearly gone after the death of several projects
I liked and mostly the behavior of oracle against the community. 

I started exploring alternatives outside the java world a few months ago and found out the
Parrot VM project, to resume quickly what it is, it's an agnostic vm not related to any language
and provide a set of tools to 'parse' syntaxe and run different languages, also allowing high
interoperability between them. It believe it has a bright futur because that's the way a VM
should be.

Since it is now unlikely that harmony will be a 'validate' jvm, my proposal is to change harmony
to match a similar goal as parrot, an agnostic VM with java as the reference language and
start implementing other languages. Java is a great syntaxe but not always appropriate for
all works like small parallal tasks and scientific operations / formulas. MatLab for example
is much more used in research areas, python also has a growing community in this domain, java
is just too complex and they don't want to bother with it and I perfectly understand there
concern. Same thing for web applications, there are plenty of alternatives out there which
are effective and have growing community.

There are 3 objectives for this new 'Harmony':
- make a neutral VM, not a JVM. 
- allow companies who want to move away from java to do so. this can only be possible when
there is a high interoperability between languages, to enable us to use our old java libraries
and tools (maven,ant...) with different languages while library are progressivly rewritten
in some other language.
- write programs in different syntaxes when they are more appropriate.

Actually, alternative langages like Fantom or Scala run correctly only on a JVM. This gives
them very little credit as replacement for java.
Having a neutral, free and open source VM would benefit the community and creation of alternatives.
As I imagine it, there would be a very slim crossplatform Harmony core project providing the
low level mecanism : native interfacing system, exceptions, debugging/profiling, threads.
And several sub projects for each language.

You don't even have to rename the project. 
the 'Harmony' name perfectly matches this objective. :)

I don't want to see harmony dye because of some legal/license problems, you did a great work
to make this vm, all the core for a neutral VM is done, don't let it all go to waiste. If
the JVM path can not continue, then so be it. See further, what needs the futur of programming
Now, if the worst scenario happen and the decision to stop harmony is taken, then for the
sake of futur vm projects make a generous effort and release a last version in public domain.

The apache foundation expressed it's opinion and quit the JCP. I don't think it's a surprise,
it's a natural decision after what happened. I am not part of the apache foundation, and made
only very little exchanges with it on some mailing list like jackrabbit. This is actually
the longest mail I ever written on thoses lists, just to note that apache decision reflect
not only the apache foundation but also developers outside.

What I see around me at work and as moderator of development forums are three kind of peoples
- base programmers, for them what does oracle is not there concern, they code, they get payed
and that's all.
- Commercial, as long as it sells, it's fine, but if you raise a small phrase like : 'hey,
if we can make run our app on ZZZ vm, that's a good selling argument and since we only do
LGPL libraries that's one more point for our tools don't you think.". they get interested,
anything is good to use for promotion, making the jvm look like evil is pretty easy, clients
get's attracted to the fact that they are not binded to some big company, that's specialy
true when you work with research and public instituts who are surfing on the "open-source"
- Inovating programmers, doing more then their job time, answering student questions on forums,
lead there own projet aside from work, thoses are the real strength of open-source, their
main motivation is not money but the sake of the project and leaving behind them something
helping the community. They are concerned by what does oracle, most don't like what's going
on but are chained to continue because it's too much work to start again in a different language,
and they can't really express themselves since commercial are behind them to ensure no harm
is done to the company, the general atmosphere is something like "damn I'm trapped" or "let's
hope it calms down".

My concerns are not for the two first categories, but the last one, if there is a chance to
move away without loosing the work done then they'll definitly try it and the two first categories
will follow. If Harmony can offer this small door to exit the trap then Harmony will won.
I believe apache Maven is the key project, if a project can run with dependencies of different
languages and bytecodes, you won!

that was a long mail ... sorry :)
I hope my english wasn't too bad and that it gave ideas.

johann sorel

TRY FREE IM TOOLPACK at http://www.imtoolpack.com/default.aspx?rc=if5
Capture screenshots, upload images, edit and send them to your friends
through IMs, post on Twitter®, Facebook®, MySpace™, LinkedIn® – FAST!

View raw message