[Geoserver-devel] Proposal to contribute code to Geoserver

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to use
Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so we
developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver will
achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into Geoserver.
Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data, which
presented us with certain technical challenges, for which we found and
implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the Climate
and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution datasets
and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that the
image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source data).
7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for Geoserver
but it makes the software more useful to us).

We have found all these features to be important in the DEWS project,
as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think the
best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already using
our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do this
we will need a letter of support, which will take a little crafting -
but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

--
--------------------------------------------------------------
Dr Jon Blower Tel: +44 118 378 5213 (direct line)
Technical Director Tel: +44 118 378 8741 (ESSC)
Reading e-Science Centre Fax: +44 118 378 6413
ESSC Email: jdb@anonymised.com
University of Reading
3 Earley Gate
Reading RG6 6AL, UK
--------------------------------------------------------------

Hi Jon and welcome to GeoServer.

I am a member of the GeoServer Project Steering Committee so I am going to be quick to
answer you. Many of your more detailed questions are going to have to wait until we have
had a chance to talk shop. Several developers are excited about "N"D coverages and it
sounds like you have gone further then their dreams :smiley:

GeoServer is very open to collaboration; we have mixed success in the past (the FROGS project
had some interesting ideas, but their public source code was out of date and they did not manage
to find time / budget for collaboration).

So that is basically my first question; I would like to make sure you have both time and budget to
make intergration a priority. It is great that you have source code - it will save a lot of
communication effort when we can look at the details.

I am really excited about the prospect - both in terms of expanding the GeoServer feature set, and also
in terms of stressing the GeoServer architecture. We have set up GeoServer to allow for expansion
and this would be a good oppertunity to stress the design.

Although I am enthusiastic (most open source developers are) I would like to do a sanity check. Intergration
is not something we are going to be able to throw bodies at - many GeoServer developers have their own
projects and deadlines to meet. We will need to do some careful planning and plot out what preparation is
needed and so on. On the bright side GeoServer is composed into modules, so intergration work can begin
"right away", the planning is more with respect to "product" roll out. I would like to be sure that the developers
from The Open Planning Project are not stuck for months testing before they can make a good release. This
is not an idle concern - it is position I have contributed to previously.

It sounds like you have a short term need - a letter of support.

The PSC can write up a letter of support for you, we can prepair a draft for Tuesdays IRC meeting (which I would
like to ensure you can attend). In the past (ie FROGS) we have been careful to evaulate the code before signing
anything, you may wish to ensure we have access to the source code (or design documents). We are friendly and
understand code writen for a deadline, but we are also careful - especially with respect to testing.

You may also wish to approach Chris Holmes (as a representative of The Open Planning Project ) for a seperate letter
of support - since TOPP holds the (c) on the GeoServer codebase.

The second item is one of process; the GeoServer Project Streering Committee is made up of active members that
are making stratagic decisions for the GeoServer product. We try and have a high turn over (so that members that
are actually up against deadlines have the ability to move mountains if they have to). My own GeoServer project
seems to be slowing down right now - if you come back after your letter with a mandate for intergration I will probably
step aside and nominate you for the committee. We tend to work with developers (rather than organizations), so if you
are representing a team one of your other members may end up being a better fit.

In short:
- technical - looks like a great fit of complementary technologies
- process - you will not get off lightly, we need to ensure you have more than just code

Thanks so much for bringing these ideas forward, and next time you need a prompt response try for a weekday :slight_smile:
Jody

Jon Blower wrote:

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to use
Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so we
developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver will
achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into Geoserver.
Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data, which
presented us with certain technical challenges, for which we found and
implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the Climate
and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution datasets
and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that the
image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source data).
7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for Geoserver
but it makes the software more useful to us).

We have found all these features to be important in the DEWS project,
as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think the
best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already using
our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do this
we will need a letter of support, which will take a little crafting -
but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

Hi Jon,

I've been thinking about some of the issues as well and got as far as putting together a roadmap for an approach whereby N-D coverages could be passed around processing chains using WFS calls, and retrieved via WCS by the element of the chain that actually needs the data.

please have a look at this: http://docs.codehaus.org/display/GEOS/Observations+and+Measurements

got a fair bit on my plate getting basic WFS able to handle interesting feature types without getting as far as implementing the coverage functions of course, but would be keen to discuss the common aspects of our interests any time.

As a member of PSC I'm also happy to support you, and also to caution you about being overambitious with regard to the communities ability to lift its head long enough to pay attention to too many changes in one hit. I'd be tempted to scope the exercise with at most one change that will require any community agreement to commit changes, with a series of bolt-on modules that can extend without changing any existing modules.

The other people you really need to talk to I suspect are Geomatsys in France, Martin Dessruisseaux et al who have been playing with similar data and looking into the underlying API issues.

Regards
Rob Atkinson

Jody Garnett wrote:

Hi Jon and welcome to GeoServer.

I am a member of the GeoServer Project Steering Committee so I am going to be quick to
answer you. Many of your more detailed questions are going to have to wait until we have
had a chance to talk shop. Several developers are excited about "N"D coverages and it
sounds like you have gone further then their dreams :smiley:

GeoServer is very open to collaboration; we have mixed success in the past (the FROGS project
had some interesting ideas, but their public source code was out of date and they did not manage
to find time / budget for collaboration).

So that is basically my first question; I would like to make sure you have both time and budget to
make intergration a priority. It is great that you have source code - it will save a lot of
communication effort when we can look at the details.

I am really excited about the prospect - both in terms of expanding the GeoServer feature set, and also
in terms of stressing the GeoServer architecture. We have set up GeoServer to allow for expansion
and this would be a good oppertunity to stress the design.

Although I am enthusiastic (most open source developers are) I would like to do a sanity check. Intergration
is not something we are going to be able to throw bodies at - many GeoServer developers have their own
projects and deadlines to meet. We will need to do some careful planning and plot out what preparation is
needed and so on. On the bright side GeoServer is composed into modules, so intergration work can begin
"right away", the planning is more with respect to "product" roll out. I would like to be sure that the developers
from The Open Planning Project are not stuck for months testing before they can make a good release. This
is not an idle concern - it is position I have contributed to previously.

It sounds like you have a short term need - a letter of support.

The PSC can write up a letter of support for you, we can prepair a draft for Tuesdays IRC meeting (which I would
like to ensure you can attend). In the past (ie FROGS) we have been careful to evaulate the code before signing
anything, you may wish to ensure we have access to the source code (or design documents). We are friendly and
understand code writen for a deadline, but we are also careful - especially with respect to testing.

You may also wish to approach Chris Holmes (as a representative of The Open Planning Project ) for a seperate letter
of support - since TOPP holds the (c) on the GeoServer codebase.

The second item is one of process; the GeoServer Project Streering Committee is made up of active members that
are making stratagic decisions for the GeoServer product. We try and have a high turn over (so that members that
are actually up against deadlines have the ability to move mountains if they have to). My own GeoServer project
seems to be slowing down right now - if you come back after your letter with a mandate for intergration I will probably
step aside and nominate you for the committee. We tend to work with developers (rather than organizations), so if you
are representing a team one of your other members may end up being a better fit.

In short:
- technical - looks like a great fit of complementary technologies
- process - you will not get off lightly, we need to ensure you have more than just code

Thanks so much for bringing these ideas forward, and next time you need a prompt response try for a weekday :slight_smile:
Jody

Jon Blower wrote:
  

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to use
Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so we
developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver will
achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into Geoserver.
Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data, which
presented us with certain technical challenges, for which we found and
implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the Climate
and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution datasets
and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that the
image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source data).
7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for Geoserver
but it makes the software more useful to us).

We have found all these features to be important in the DEWS project,
as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think the
best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already using
our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do this
we will need a letter of support, which will take a little crafting -
but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  

Echoing Rob and Jody, it sounds like great work that you're looking to add to GeoServer, but be cautious about being over ambitious. It sounds promising that you're seeking funds specifically to integrate with our work, just make sure that it's a sufficient amount. Like Jody mentioned we try to be risk averse about people dumping code on us that isn't in a _very_ maintainable state, as no matter what it takes extra work for the community to get it to the standards we need. So I'd like to hear more about what type of time commitment you can put in to working on this, both when you have funding and availability to at least help out with questions after the knowledge transfer funds run out.

The other concern, and I'd like to hear from both of the groups I know working on this as well, is that nD support is getting a lot of traction right now. I believe Geomatsys and GeoSolutions are both on the hook for 4-d WCS and WMS support. A number of the things you've worked on are at least started in GeoServer/GeoTools, and we have a preference for their solutions as they've been working within the community. So as an integration strategy I'd like to be sure that you're open to more helping them out and improving their code with the type of improvements you've made before, instead of attempting to introduce an alternate API.

So for example I really don't want another pipeline for efficient generation of WMS map images that runs parallel to ours. If yours is truly superior in every way and incompatible with how we do it now we'd be open to replacing it, but that kind of move is a lot more risky for us. So the preferred method of working would be take your algorithms and plug them in to our existing pipeline. This holds true for tile caching, kmz output, openlayers interface, and 4-d netcdf support for sure, and may for the other topics as well. So as long as you understand that the knowledge transfer will go a lot smoother if you learn our codebase and improve it then trying to tack on your stuff. I hope this doesn't come across as 'we have the best code and only want to play if things are our way', on the contrary, we've had a number of great outside contributions and some less successful attempts, and the patterns of successful ones have followed that route. Your email thankfully seems to be talking in the right directions, integrating and contributing, but I just want to be sure that things from our perspective are spelled out.

So the final question is timing, when would you be able to do the work, when would it absolutely have to be finished by? The best route from our perspective would likely be to let the current nD implementations finish up a bit, as I'm already a bit worried that may be doing some parallel work that will need to be resolved.

Sorry for perhaps coming across as negative, I'm actually really excited about this as I've been following your work for awhile and it looks really well done and would be a great step forward to have it in GeoServer. I just want to be sure that this is a success and that you know what you're getting in to. If you can work with everything I've written I think there's a good chance we could do this. I would like to hear from the other two main nD groups, and from you about timing.

What's your timing needed for the letter of support? The best would be to talk about it on IRC at the PSC meeting on tuesday. And to see if someone from the nD group would be open to guiding you directly, in addition to general support from the community. And I'm out of the office until at least wednesday, so if you need signed letterhead from TOPP I may not be able to get that out till the end of the week at the earliest. But we may be able to come up with an alternate strategy.

best regards,

Chris

Jon Blower wrote:

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to use
Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so we
developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver will
achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into Geoserver.
Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data, which
presented us with certain technical challenges, for which we found and
implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the Climate
and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution datasets
and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that the
image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source data).
7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for Geoserver
but it makes the software more useful to us).

We have found all these features to be important in the DEWS project,
as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think the
best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already using
our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do this
we will need a letter of support, which will take a little crafting -
but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

Dear Chris, Rob, Jody (and list),

First off, thanks very much indeed for replying (in so much detail
too) on a weekend! I'm very glad that there's enthusiasm for what I'm
proposing and I understand completely the desire to be cautious when
incorporating new code. I'm also aware of other efforts in similar
directions, particularly with regard to nD coverages, and have had a
couple of chats with Mickael Treguer of Ifremer at meetings in the
last few months. Naturally it's desirable for us all to work together
and I appreciate that I need to catch up with these other efforts.

Here are the facts 'n' figures about the proposal I'm putting together:
1) It will (hopefully) fund one person for one year, starting Jan 08,
plus a few hours a week of my time as a manager.
2) This person will have other things to do besides Geoserver
integration, for example, developing a couple of test cases (prob.
with UK Met Office and someone else). My guess is that there will be
about 6 months on Geoserver-related work, although we will do some
preparation before the project starts in order to hit the ground
running.
3) The proposal is due in on August 1st! I won't bore you with the
details of why the notice is so short, only to say that this is my
fault and I apologise! Normally letters of support can be submitted
after the main proposal is due, but I will check this tomorrow
(Monday). It would be very good to be able to agree the content of
the letter asap - the Tuesday IRC meeting should be OK, but if we can
at least agree on the scope of the work, that would help me greatly to
prepare the case for support.

(There is quite a lot of bureaucracy for a fairly small pot of money,
unfortunately.)

As well as the short deadline and the small size of the money pot,
there is one more thing that we have to watch out for: This is a
Knowledge Transfer call, not a research call. Therefore we have to be
wary of spending too much time on development and experimentation.

Hence my immediate need is to figure out what is realistically
achievable. I am largely ignorant of the Geoserver codebase, although
I like what I hear about all the effort that is being made to keep it
maintainable and readable. I don't want to place unrealistic demands
either on ourselves or on the Geoserver community. Here's a sliding
scale of ambitions in increasing order (I think!) of difficulty:

1) We simply tidy up our code and document it thoroughly (despite what
you might think from our website, we *can* do decent documentation,
but haven't had time yet!) We'll especially concentrate on novel
features (e.g. algorithms) that we think are important (and maybe
unique) to our code. Then the Geoserver team can review the code and
docs at the end of the project and we together decide on the best way
forward, which might involve us travelling to meet the right people
for a face-to-face meeting. The Geoserver team would commit to be
lightly involved during this process (to guide us as to what will be
important from a Geoserver point of view) and to discussing a roadmap
for progression at the end.

2) We get to know the Geoserver code base and re-engineer our code in
line with Geoserver quality procedures (inc. documentation) and using
Geoserver APIs (e.g. GeoTools) whenever we can (and reporting when we
can't!) We would need guidance from the GS team to help us understand
the GS APIs and procedures, as well as to make us aware of other
similar efforts with which we might potentially clash. Maybe we can
just join the weekly IRCs but it would be useful to have a friendly
developer with the right expertise to pester...

3) We work very closely with the GS team to agree, at an early stage,
a roadmap for incorporation of our code into GS and both parties would
commit to achieving a certain amount of this within the year of the
project, maybe aiming at incorporating (certain parts of) our code
into a specific future Geoserver version.

From what I understand from your emails, option (3) is probably

unrealistic as it seems that the GS team would want to review our code
before committing to such an agreement, which is absolutely fair
enough. My current feeling is that option (2) is the best option: it
does not commit Geoserver to anything but will improve our code base
and provide a solid platform for future integration. Option (1) might
be a little weak to justify the funding I feel.

A technical point: we have been using the Unidata Java NetCDF APIs as
our base. Does the GeoTools library use this too (for NetCDF data at
least)? Do you know when nD NetCDF data support in GeoTools will
appear (if it has not already done so)?

You are all very welcome to look at our code but please remember that
I don't regard it as finished by any means! The most recent binary
release (plus brief instructions) can be found in a practical session
I gave at a workshop a little while ago. Use this if you want to
actually try it out (should be doable in about 10 minutes of work):

http://www.nerc-essc.ac.uk/~jdb/WebMappingPractical.zip

This binary release is a little behind the source release, which we
are currently re-jigging to work within the Spring framework (of which
I have recently become a fan). The latest source code for this
Spring-based version is in a branch in our Subversion repository:

https://ncwms.svn.sourceforge.net/svnroot/ncwms/branches/spring-20070706/
http://www.resc.rdg.ac.uk/trac/ncWMS/browser/branches/spring-20070706/

I suggest you start with the
uk.ac.rdg.resc.ncwms.controller.WmsController class to get an idea of
how it works. This snapshot mostly works but the admin system still
isn't finished so it will be hard to actually use. NetBeans is our
IDE of choice, and the code base includes NB project files so you can
open in NB straight away if you want.

I have no wish to impose a new API onto the community and would much
rather improve an existing API (e.g. GeoTools) to meet our needs.
However, we have had specific functional needs in the past that have
forced us to develop something bespoke. I hope this (admittedly
limited) project can at least start us off down the road of
integration. I think we now have most of the functionality we need
(in the WMS/WCS at least: the web portal is a different matter!) so we
should be able to concentrate on collaboration.

As for immediate timescales: in an ideal world I'd like to agree on
the broad scope of the work by the end of Monday 30th or the morning
of Tuesday 31st. If this means loosening the collaboration because
deadlines are far too tight then so be it - it's my fault and I'll
just have to make the best of it. Having agreed the scope, it would
be great to agree on the wording of the letter of support in Tuesday
evening's IRC. The physical letter can probably wait a little while
longer.

I hope this sounds OK and I really do apologise for the tight
timescales - I understood that this could wait until the next round of
KT funding in March 08 but I found out on Friday (to my horror) that
this wasn't the case.

Best wishes,
Jon

On 7/28/07, Chris Holmes <cholmes@anonymised.com> wrote:

Echoing Rob and Jody, it sounds like great work that you're looking to
add to GeoServer, but be cautious about being over ambitious. It sounds
promising that you're seeking funds specifically to integrate with our
work, just make sure that it's a sufficient amount. Like Jody mentioned
we try to be risk averse about people dumping code on us that isn't in a
_very_ maintainable state, as no matter what it takes extra work for the
community to get it to the standards we need. So I'd like to hear more
about what type of time commitment you can put in to working on this,
both when you have funding and availability to at least help out with
questions after the knowledge transfer funds run out.

The other concern, and I'd like to hear from both of the groups I know
working on this as well, is that nD support is getting a lot of traction
right now. I believe Geomatsys and GeoSolutions are both on the hook
for 4-d WCS and WMS support. A number of the things you've worked on
are at least started in GeoServer/GeoTools, and we have a preference for
their solutions as they've been working within the community. So as an
integration strategy I'd like to be sure that you're open to more
helping them out and improving their code with the type of improvements
you've made before, instead of attempting to introduce an alternate API.

So for example I really don't want another pipeline for efficient
generation of WMS map images that runs parallel to ours. If yours is
truly superior in every way and incompatible with how we do it now we'd
be open to replacing it, but that kind of move is a lot more risky for
us. So the preferred method of working would be take your algorithms
and plug them in to our existing pipeline. This holds true for tile
caching, kmz output, openlayers interface, and 4-d netcdf support for
sure, and may for the other topics as well. So as long as you
understand that the knowledge transfer will go a lot smoother if you
learn our codebase and improve it then trying to tack on your stuff. I
hope this doesn't come across as 'we have the best code and only want to
play if things are our way', on the contrary, we've had a number of
great outside contributions and some less successful attempts, and the
patterns of successful ones have followed that route. Your email
thankfully seems to be talking in the right directions, integrating and
contributing, but I just want to be sure that things from our
perspective are spelled out.

So the final question is timing, when would you be able to do the work,
when would it absolutely have to be finished by? The best route from
our perspective would likely be to let the current nD implementations
finish up a bit, as I'm already a bit worried that may be doing some
parallel work that will need to be resolved.

Sorry for perhaps coming across as negative, I'm actually really excited
about this as I've been following your work for awhile and it looks
really well done and would be a great step forward to have it in
GeoServer. I just want to be sure that this is a success and that you
know what you're getting in to. If you can work with everything I've
written I think there's a good chance we could do this. I would like to
hear from the other two main nD groups, and from you about timing.

What's your timing needed for the letter of support? The best would be
to talk about it on IRC at the PSC meeting on tuesday. And to see if
someone from the nD group would be open to guiding you directly, in
addition to general support from the community. And I'm out of the
office until at least wednesday, so if you need signed letterhead from
TOPP I may not be able to get that out till the end of the week at the
earliest. But we may be able to come up with an alternate strategy.

best regards,

Chris

Jon Blower wrote:
> Dear all,
>
> I hope this mailing list is the right place to ask this sort of
> question. We have the opportunity (but not much time!) to apply for
> some Knowledge Transfer funds to allow us to contribute our work on
> OGC web service development to a wider community. As some of you
> probably know, we have developed WMS and WCS implementations for a
> project called DEWS (www.dews.org.uk). We originally intended to use
> Geoserver in DEWS but the necessary features (esp. 4-D coverage
> support) were not present at the critical point in the project, so we
> developed our own solution for our specific problems.
>
> DEWS is now at an end and we would like to see our code and ideas
> reach a wider audience. We think that integration with Geoserver will
> achieve this and so our proposal to the Knowledge Transfer fund will
> include time to integrate our code, where appropriate, into Geoserver.
> Our work has been particularly concerned with the serving (WCS) and
> visualization (WMS) of large-volume gridded ocean forecast data, which
> presented us with certain technical challenges, for which we found and
> implemented solutions that we would like to contribute to the
> community. In particular, we can offer (some of these might already
> be supported, in which case great!):
>
> 1) Support for large-volume 4-D NetCDF files conforming to the Climate
> and Forecast convention.
> 2) Support for curvilinear and other exotic grid types with no
> analytical formulation (increasingly common in ocean model data).
> 3) Algorithms for efficient generation of WMS map images (we aim for
> <0.5s per image for a 256x256 tile, even for high-resolution datasets
> and irregular grids).
> 4) A tile caching mechanism (actually we cache data arrays so that the
> image style can be changed without going through a new
> extraction/reprojection process).
> 5) An OpenLayers-based AJAX web interface for our WMS
> (http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
> something similar exists in Geoserver but perhaps aspects of our
> solution will be useful.
> 6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
> fields (the latter are automatically discovered from the source data).
> 7) KMZ output (again I know this is present in Geoserver but our
> approach might be a bit different!).
> 8) Some proposed extensions to WCS and WMS to support our kind of
> scientific data (this is more a matter for the OGC than for Geoserver
> but it makes the software more useful to us).
>
> We have found all these features to be important in the DEWS project,
> as well as in many other projects (we are involved in a number of
> high-profile EU projects connected with the serving of real-time
> oceanographic data: MERSEA, ECOOP, MyOcean).
>
> We do not wish to fragment the open-source geospatial community by
> producing independent "products" in the long term and so we think the
> best way forward is integration with Geoserver. This would lead to
> greater uptake of Geoserver in the communities that are already using
> our software. In order to achieve this, we will need support from
> existing Geoserver experts who can guide us along the right paths.
>
> Therefore I'm looking for someone who can speak for the Geoserver
> community to support our proposal. If someone is prepared to do this
> we will need a letter of support, which will take a little crafting -
> but in the meantime it would be really useful if someone could reply
> asap (sorry for the short notice) with their thoughts on this. Then
> we can sort this out off-list.
>
> Best wishes,
> Jon Blower
>

--
--------------------------------------------------------------
Dr Jon Blower Tel: +44 118 378 5213 (direct line)
Technical Director Tel: +44 118 378 8741 (ESSC)
Reading e-Science Centre Fax: +44 118 378 6413
ESSC Email: jdb@anonymised.com
University of Reading
3 Earley Gate
Reading RG6 6AL, UK
--------------------------------------------------------------

I agree that #2 sounds like the best option, perhaps we may even aim for some of #3. Since Simone still hasn't responded it might be best for TOPP to just do the letter. We aren't the experts on this subject, but we can do the work to engage those who are and keep communication going. I feel relatively confident that you'll be able to work with the right people though, since our community is generally quite open, and I know that others have funded work on this exact topic. So it'll mostly be a matter of aligning with them, figuring out where your work can make an impact.

It sounds like enough time to make a solid impact on GeoServer, especially since I think much of it should be in the codebase by January. Geomatys is giving a presentation at foss4g, and should have their work on 4d with netcdf done by then, see: http://www.foss4g2007.org/presentations/view.php/225

GeoSolutions is also working on this, and TOPP is on the hook to incorporate their work in to WCS 1.1 reference implementation by Feb. 08 So there should be working 4d support in GeoServer WCS and WMS by the time you start.

As for answers to some of your technical questions, I'm pretty sure that the geotools NetCDF implementation is based on Unidata Java NetCDF APIs. I believe the code may be in http://svn.geotools.org/geotools/trunk/gt/modules/unsupported/coverageio-netcdf/ Martin can give more details.

GeoServer is also based on Spring, so it sounds good that you guys are moving in that direction.

But yes, this all sounds great, good to hear you're in line with our general approaches and philosophy. So let's make this happen, it sounds like it should be a good win all around.

best regards,

Chris

Jon Blower wrote:

Dear Chris, Rob, Jody (and list),

First off, thanks very much indeed for replying (in so much detail
too) on a weekend! I'm very glad that there's enthusiasm for what I'm
proposing and I understand completely the desire to be cautious when
incorporating new code. I'm also aware of other efforts in similar
directions, particularly with regard to nD coverages, and have had a
couple of chats with Mickael Treguer of Ifremer at meetings in the
last few months. Naturally it's desirable for us all to work together
and I appreciate that I need to catch up with these other efforts.

Here are the facts 'n' figures about the proposal I'm putting together:
1) It will (hopefully) fund one person for one year, starting Jan 08,
plus a few hours a week of my time as a manager.
2) This person will have other things to do besides Geoserver
integration, for example, developing a couple of test cases (prob.
with UK Met Office and someone else). My guess is that there will be
about 6 months on Geoserver-related work, although we will do some
preparation before the project starts in order to hit the ground
running.
3) The proposal is due in on August 1st! I won't bore you with the
details of why the notice is so short, only to say that this is my
fault and I apologise! Normally letters of support can be submitted
after the main proposal is due, but I will check this tomorrow
(Monday). It would be very good to be able to agree the content of
the letter asap - the Tuesday IRC meeting should be OK, but if we can
at least agree on the scope of the work, that would help me greatly to
prepare the case for support.

(There is quite a lot of bureaucracy for a fairly small pot of money,
unfortunately.)

As well as the short deadline and the small size of the money pot,
there is one more thing that we have to watch out for: This is a
Knowledge Transfer call, not a research call. Therefore we have to be
wary of spending too much time on development and experimentation.

Hence my immediate need is to figure out what is realistically
achievable. I am largely ignorant of the Geoserver codebase, although
I like what I hear about all the effort that is being made to keep it
maintainable and readable. I don't want to place unrealistic demands
either on ourselves or on the Geoserver community. Here's a sliding
scale of ambitions in increasing order (I think!) of difficulty:

1) We simply tidy up our code and document it thoroughly (despite what
you might think from our website, we *can* do decent documentation,
but haven't had time yet!) We'll especially concentrate on novel
features (e.g. algorithms) that we think are important (and maybe
unique) to our code. Then the Geoserver team can review the code and
docs at the end of the project and we together decide on the best way
forward, which might involve us travelling to meet the right people
for a face-to-face meeting. The Geoserver team would commit to be
lightly involved during this process (to guide us as to what will be
important from a Geoserver point of view) and to discussing a roadmap
for progression at the end.

2) We get to know the Geoserver code base and re-engineer our code in
line with Geoserver quality procedures (inc. documentation) and using
Geoserver APIs (e.g. GeoTools) whenever we can (and reporting when we
can't!) We would need guidance from the GS team to help us understand
the GS APIs and procedures, as well as to make us aware of other
similar efforts with which we might potentially clash. Maybe we can
just join the weekly IRCs but it would be useful to have a friendly
developer with the right expertise to pester...

3) We work very closely with the GS team to agree, at an early stage,
a roadmap for incorporation of our code into GS and both parties would
commit to achieving a certain amount of this within the year of the
project, maybe aiming at incorporating (certain parts of) our code
into a specific future Geoserver version.

From what I understand from your emails, option (3) is probably
unrealistic as it seems that the GS team would want to review our code
before committing to such an agreement, which is absolutely fair
enough. My current feeling is that option (2) is the best option: it
does not commit Geoserver to anything but will improve our code base
and provide a solid platform for future integration. Option (1) might
be a little weak to justify the funding I feel.

A technical point: we have been using the Unidata Java NetCDF APIs as
our base. Does the GeoTools library use this too (for NetCDF data at
least)? Do you know when nD NetCDF data support in GeoTools will
appear (if it has not already done so)?

You are all very welcome to look at our code but please remember that
I don't regard it as finished by any means! The most recent binary
release (plus brief instructions) can be found in a practical session
I gave at a workshop a little while ago. Use this if you want to
actually try it out (should be doable in about 10 minutes of work):

http://www.nerc-essc.ac.uk/~jdb/WebMappingPractical.zip

This binary release is a little behind the source release, which we
are currently re-jigging to work within the Spring framework (of which
I have recently become a fan). The latest source code for this
Spring-based version is in a branch in our Subversion repository:

https://ncwms.svn.sourceforge.net/svnroot/ncwms/branches/spring-20070706/
http://www.resc.rdg.ac.uk/trac/ncWMS/browser/branches/spring-20070706/

I suggest you start with the
uk.ac.rdg.resc.ncwms.controller.WmsController class to get an idea of
how it works. This snapshot mostly works but the admin system still
isn't finished so it will be hard to actually use. NetBeans is our
IDE of choice, and the code base includes NB project files so you can
open in NB straight away if you want.

I have no wish to impose a new API onto the community and would much
rather improve an existing API (e.g. GeoTools) to meet our needs.
However, we have had specific functional needs in the past that have
forced us to develop something bespoke. I hope this (admittedly
limited) project can at least start us off down the road of
integration. I think we now have most of the functionality we need
(in the WMS/WCS at least: the web portal is a different matter!) so we
should be able to concentrate on collaboration.

As for immediate timescales: in an ideal world I'd like to agree on
the broad scope of the work by the end of Monday 30th or the morning
of Tuesday 31st. If this means loosening the collaboration because
deadlines are far too tight then so be it - it's my fault and I'll
just have to make the best of it. Having agreed the scope, it would
be great to agree on the wording of the letter of support in Tuesday
evening's IRC. The physical letter can probably wait a little while
longer.

I hope this sounds OK and I really do apologise for the tight
timescales - I understood that this could wait until the next round of
KT funding in March 08 but I found out on Friday (to my horror) that
this wasn't the case.

Best wishes,
Jon

On 7/28/07, Chris Holmes <cholmes@anonymised.com> wrote:

Echoing Rob and Jody, it sounds like great work that you're looking to
add to GeoServer, but be cautious about being over ambitious. It sounds
promising that you're seeking funds specifically to integrate with our
work, just make sure that it's a sufficient amount. Like Jody mentioned
we try to be risk averse about people dumping code on us that isn't in a
_very_ maintainable state, as no matter what it takes extra work for the
community to get it to the standards we need. So I'd like to hear more
about what type of time commitment you can put in to working on this,
both when you have funding and availability to at least help out with
questions after the knowledge transfer funds run out.

The other concern, and I'd like to hear from both of the groups I know
working on this as well, is that nD support is getting a lot of traction
right now. I believe Geomatsys and GeoSolutions are both on the hook
for 4-d WCS and WMS support. A number of the things you've worked on
are at least started in GeoServer/GeoTools, and we have a preference for
their solutions as they've been working within the community. So as an
integration strategy I'd like to be sure that you're open to more
helping them out and improving their code with the type of improvements
you've made before, instead of attempting to introduce an alternate API.

So for example I really don't want another pipeline for efficient
generation of WMS map images that runs parallel to ours. If yours is
truly superior in every way and incompatible with how we do it now we'd
be open to replacing it, but that kind of move is a lot more risky for
us. So the preferred method of working would be take your algorithms
and plug them in to our existing pipeline. This holds true for tile
caching, kmz output, openlayers interface, and 4-d netcdf support for
sure, and may for the other topics as well. So as long as you
understand that the knowledge transfer will go a lot smoother if you
learn our codebase and improve it then trying to tack on your stuff. I
hope this doesn't come across as 'we have the best code and only want to
play if things are our way', on the contrary, we've had a number of
great outside contributions and some less successful attempts, and the
patterns of successful ones have followed that route. Your email
thankfully seems to be talking in the right directions, integrating and
contributing, but I just want to be sure that things from our
perspective are spelled out.

So the final question is timing, when would you be able to do the work,
when would it absolutely have to be finished by? The best route from
our perspective would likely be to let the current nD implementations
finish up a bit, as I'm already a bit worried that may be doing some
parallel work that will need to be resolved.

Sorry for perhaps coming across as negative, I'm actually really excited
about this as I've been following your work for awhile and it looks
really well done and would be a great step forward to have it in
GeoServer. I just want to be sure that this is a success and that you
know what you're getting in to. If you can work with everything I've
written I think there's a good chance we could do this. I would like to
hear from the other two main nD groups, and from you about timing.

What's your timing needed for the letter of support? The best would be
to talk about it on IRC at the PSC meeting on tuesday. And to see if
someone from the nD group would be open to guiding you directly, in
addition to general support from the community. And I'm out of the
office until at least wednesday, so if you need signed letterhead from
TOPP I may not be able to get that out till the end of the week at the
earliest. But we may be able to come up with an alternate strategy.

best regards,

Chris

Jon Blower wrote:

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to use
Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so we
developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver will
achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into Geoserver.
Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data, which
presented us with certain technical challenges, for which we found and
implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the Climate
and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution datasets
and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that the
image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source data).
7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for Geoserver
but it makes the software more useful to us).

We have found all these features to be important in the DEWS project,
as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think the
best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already using
our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do this
we will need a letter of support, which will take a little crafting -
but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

Dear Jon (and list),

It's a good news that you are interested in geoserver.

The Goal of our project (Ifremer with Geomatys) is to handle 4D nedcdf files
and Opendap through WMS and WCS with Geotools/Geoserver. Now, we are able to
display 4D netcdf files (WMS), it's a prototype. The end of the project is
in september/october.

However, it will be a lot of things to add/ improve after our project
(display of vector, improve the renderer : implement the OGC spec Go-1,
...). So, as Chris Holmes said I will be really enjoy to see you helping us
and improving our code instead of attempting to introduce an alternate API.

Regards,
Mickael TREGUER

Chris Holmes wrote:

I agree that #2 sounds like the best option, perhaps we may even aim for
some of #3. Since Simone still hasn't responded it might be best for
TOPP to just do the letter. We aren't the experts on this subject, but
we can do the work to engage those who are and keep communication going.
  I feel relatively confident that you'll be able to work with the right
people though, since our community is generally quite open, and I know
that others have funded work on this exact topic. So it'll mostly be a
matter of aligning with them, figuring out where your work can make an
impact.

It sounds like enough time to make a solid impact on GeoServer,
especially since I think much of it should be in the codebase by
January. Geomatys is giving a presentation at foss4g, and should have
their work on 4d with netcdf done by then, see:
http://www.foss4g2007.org/presentations/view.php/225

GeoSolutions is also working on this, and TOPP is on the hook to
incorporate their work in to WCS 1.1 reference implementation by Feb. 08
  So there should be working 4d support in GeoServer WCS and WMS by the
time you start.

As for answers to some of your technical questions, I'm pretty sure that
the geotools NetCDF implementation is based on Unidata Java NetCDF APIs.
  I believe the code may be in
http://svn.geotools.org/geotools/trunk/gt/modules/unsupported/coverageio-netcdf/
  Martin can give more details.

GeoServer is also based on Spring, so it sounds good that you guys are
moving in that direction.

But yes, this all sounds great, good to hear you're in line with our
general approaches and philosophy. So let's make this happen, it sounds
like it should be a good win all around.

best regards,

Chris

Jon Blower wrote:

Dear Chris, Rob, Jody (and list),

First off, thanks very much indeed for replying (in so much detail
too) on a weekend! I'm very glad that there's enthusiasm for what I'm
proposing and I understand completely the desire to be cautious when
incorporating new code. I'm also aware of other efforts in similar
directions, particularly with regard to nD coverages, and have had a
couple of chats with Mickael Treguer of Ifremer at meetings in the
last few months. Naturally it's desirable for us all to work together
and I appreciate that I need to catch up with these other efforts.

Here are the facts 'n' figures about the proposal I'm putting together:
1) It will (hopefully) fund one person for one year, starting Jan 08,
plus a few hours a week of my time as a manager.
2) This person will have other things to do besides Geoserver
integration, for example, developing a couple of test cases (prob.
with UK Met Office and someone else). My guess is that there will be
about 6 months on Geoserver-related work, although we will do some
preparation before the project starts in order to hit the ground
running.
3) The proposal is due in on August 1st! I won't bore you with the
details of why the notice is so short, only to say that this is my
fault and I apologise! Normally letters of support can be submitted
after the main proposal is due, but I will check this tomorrow
(Monday). It would be very good to be able to agree the content of
the letter asap - the Tuesday IRC meeting should be OK, but if we can
at least agree on the scope of the work, that would help me greatly to
prepare the case for support.

(There is quite a lot of bureaucracy for a fairly small pot of money,
unfortunately.)

As well as the short deadline and the small size of the money pot,
there is one more thing that we have to watch out for: This is a
Knowledge Transfer call, not a research call. Therefore we have to be
wary of spending too much time on development and experimentation.

Hence my immediate need is to figure out what is realistically
achievable. I am largely ignorant of the Geoserver codebase, although
I like what I hear about all the effort that is being made to keep it
maintainable and readable. I don't want to place unrealistic demands
either on ourselves or on the Geoserver community. Here's a sliding
scale of ambitions in increasing order (I think!) of difficulty:

1) We simply tidy up our code and document it thoroughly (despite what
you might think from our website, we *can* do decent documentation,
but haven't had time yet!) We'll especially concentrate on novel
features (e.g. algorithms) that we think are important (and maybe
unique) to our code. Then the Geoserver team can review the code and
docs at the end of the project and we together decide on the best way
forward, which might involve us travelling to meet the right people
for a face-to-face meeting. The Geoserver team would commit to be
lightly involved during this process (to guide us as to what will be
important from a Geoserver point of view) and to discussing a roadmap
for progression at the end.

2) We get to know the Geoserver code base and re-engineer our code in
line with Geoserver quality procedures (inc. documentation) and using
Geoserver APIs (e.g. GeoTools) whenever we can (and reporting when we
can't!) We would need guidance from the GS team to help us understand
the GS APIs and procedures, as well as to make us aware of other
similar efforts with which we might potentially clash. Maybe we can
just join the weekly IRCs but it would be useful to have a friendly
developer with the right expertise to pester...

3) We work very closely with the GS team to agree, at an early stage,
a roadmap for incorporation of our code into GS and both parties would
commit to achieving a certain amount of this within the year of the
project, maybe aiming at incorporating (certain parts of) our code
into a specific future Geoserver version.

From what I understand from your emails, option (3) is probably
unrealistic as it seems that the GS team would want to review our code
before committing to such an agreement, which is absolutely fair
enough. My current feeling is that option (2) is the best option: it
does not commit Geoserver to anything but will improve our code base
and provide a solid platform for future integration. Option (1) might
be a little weak to justify the funding I feel.

A technical point: we have been using the Unidata Java NetCDF APIs as
our base. Does the GeoTools library use this too (for NetCDF data at
least)? Do you know when nD NetCDF data support in GeoTools will
appear (if it has not already done so)?

You are all very welcome to look at our code but please remember that
I don't regard it as finished by any means! The most recent binary
release (plus brief instructions) can be found in a practical session
I gave at a workshop a little while ago. Use this if you want to
actually try it out (should be doable in about 10 minutes of work):

http://www.nerc-essc.ac.uk/~jdb/WebMappingPractical.zip

This binary release is a little behind the source release, which we
are currently re-jigging to work within the Spring framework (of which
I have recently become a fan). The latest source code for this
Spring-based version is in a branch in our Subversion repository:

https://ncwms.svn.sourceforge.net/svnroot/ncwms/branches/spring-20070706/
http://www.resc.rdg.ac.uk/trac/ncWMS/browser/branches/spring-20070706/

I suggest you start with the
uk.ac.rdg.resc.ncwms.controller.WmsController class to get an idea of
how it works. This snapshot mostly works but the admin system still
isn't finished so it will be hard to actually use. NetBeans is our
IDE of choice, and the code base includes NB project files so you can
open in NB straight away if you want.

I have no wish to impose a new API onto the community and would much
rather improve an existing API (e.g. GeoTools) to meet our needs.
However, we have had specific functional needs in the past that have
forced us to develop something bespoke. I hope this (admittedly
limited) project can at least start us off down the road of
integration. I think we now have most of the functionality we need
(in the WMS/WCS at least: the web portal is a different matter!) so we
should be able to concentrate on collaboration.

As for immediate timescales: in an ideal world I'd like to agree on
the broad scope of the work by the end of Monday 30th or the morning
of Tuesday 31st. If this means loosening the collaboration because
deadlines are far too tight then so be it - it's my fault and I'll
just have to make the best of it. Having agreed the scope, it would
be great to agree on the wording of the letter of support in Tuesday
evening's IRC. The physical letter can probably wait a little while
longer.

I hope this sounds OK and I really do apologise for the tight
timescales - I understood that this could wait until the next round of
KT funding in March 08 but I found out on Friday (to my horror) that
this wasn't the case.

Best wishes,
Jon

On 7/28/07, Chris Holmes <cholmes@anonymised.com> wrote:

Echoing Rob and Jody, it sounds like great work that you're looking to
add to GeoServer, but be cautious about being over ambitious. It sounds
promising that you're seeking funds specifically to integrate with our
work, just make sure that it's a sufficient amount. Like Jody mentioned
we try to be risk averse about people dumping code on us that isn't in a
_very_ maintainable state, as no matter what it takes extra work for the
community to get it to the standards we need. So I'd like to hear more
about what type of time commitment you can put in to working on this,
both when you have funding and availability to at least help out with
questions after the knowledge transfer funds run out.

The other concern, and I'd like to hear from both of the groups I know
working on this as well, is that nD support is getting a lot of traction
right now. I believe Geomatsys and GeoSolutions are both on the hook
for 4-d WCS and WMS support. A number of the things you've worked on
are at least started in GeoServer/GeoTools, and we have a preference for
their solutions as they've been working within the community. So as an
integration strategy I'd like to be sure that you're open to more
helping them out and improving their code with the type of improvements
you've made before, instead of attempting to introduce an alternate API.

So for example I really don't want another pipeline for efficient
generation of WMS map images that runs parallel to ours. If yours is
truly superior in every way and incompatible with how we do it now we'd
be open to replacing it, but that kind of move is a lot more risky for
us. So the preferred method of working would be take your algorithms
and plug them in to our existing pipeline. This holds true for tile
caching, kmz output, openlayers interface, and 4-d netcdf support for
sure, and may for the other topics as well. So as long as you
understand that the knowledge transfer will go a lot smoother if you
learn our codebase and improve it then trying to tack on your stuff. I
hope this doesn't come across as 'we have the best code and only want to
play if things are our way', on the contrary, we've had a number of
great outside contributions and some less successful attempts, and the
patterns of successful ones have followed that route. Your email
thankfully seems to be talking in the right directions, integrating and
contributing, but I just want to be sure that things from our
perspective are spelled out.

So the final question is timing, when would you be able to do the work,
when would it absolutely have to be finished by? The best route from
our perspective would likely be to let the current nD implementations
finish up a bit, as I'm already a bit worried that may be doing some
parallel work that will need to be resolved.

Sorry for perhaps coming across as negative, I'm actually really excited
about this as I've been following your work for awhile and it looks
really well done and would be a great step forward to have it in
GeoServer. I just want to be sure that this is a success and that you
know what you're getting in to. If you can work with everything I've
written I think there's a good chance we could do this. I would like to
hear from the other two main nD groups, and from you about timing.

What's your timing needed for the letter of support? The best would be
to talk about it on IRC at the PSC meeting on tuesday. And to see if
someone from the nD group would be open to guiding you directly, in
addition to general support from the community. And I'm out of the
office until at least wednesday, so if you need signed letterhead from
TOPP I may not be able to get that out till the end of the week at the
earliest. But we may be able to come up with an alternate strategy.

best regards,

Chris

Jon Blower wrote:

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to use
Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so we
developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver will
achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into Geoserver.
Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data, which
presented us with certain technical challenges, for which we found and
implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the Climate
and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution datasets
and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that the
image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source data).
7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for Geoserver
but it makes the software more useful to us).

We have found all these features to be important in the DEWS project,
as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think the
best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already using
our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do this
we will need a letter of support, which will take a little crafting -
but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

begin:vcard
fn:Chris Holmes
n:Holmes;Chris
org:The Open Planning Project
adr:;;349 W. 12th Street, #3;New York;NY;10014;USA
email;internet:cholmes@anonymised.com
title:Managing Director, Strategic Development
x-mozilla-html:FALSE
url:http://topp.openplans.org
version:2.1
end:vcard

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
View this message in context: http://www.nabble.com/Proposal-to-contribute-code-to-Geoserver-tf4162007.html#a11942054
Sent from the GeoServer - Dev mailing list archive at Nabble.com.

Jon and Mickael,

Would it be possible to get a summary of the proposed changes to the web
services interface(s)? Without looking at the technology of how everything
is implemented, I'd be very interested in seeing how each proposal adds to
(or is different from) the current WMS and WFS specs.

I'm a little out of touch with our current status because I've "delegated"
too much, but I believe we're serving up 4D netcdf files with Geoserver
right now, using Simone's work. These files are generated from the Weather
Research and Forecasting meterological model, and have their own "standard
format". :wink: Now we don't have all the cool features like vector display,
but the particular branch we're using should be capable of publishing
anything that the netcdf-java package can read. Since that seems to be the
package you're using, we seem to be off to a compatible start. :slight_smile:

Bryce

geoserver-devel-bounces@lists.sourceforge.net wrote on 08/01/2007 03:03:11
AM:

Dear Jon (and list),

It's a good news that you are interested in geoserver.

The Goal of our project (Ifremer with Geomatys) is to handle 4D nedcdf

files

and Opendap through WMS and WCS with Geotools/Geoserver. Now, we are able

to

display 4D netcdf files (WMS), it's a prototype. The end of the project

is

in september/october.

However, it will be a lot of things to add/ improve after our project
(display of vector, improve the renderer : implement the OGC spec Go-1,
...). So, as Chris Holmes said I will be really enjoy to see you helping

us

and improving our code instead of attempting to introduce an alternate

API.

Regards,
Mickael TREGUER

Chris Holmes wrote:
>
> I agree that #2 sounds like the best option, perhaps we may even aim

for

> some of #3. Since Simone still hasn't responded it might be best for
> TOPP to just do the letter. We aren't the experts on this subject, but

> we can do the work to engage those who are and keep communication

going.

> I feel relatively confident that you'll be able to work with the

right

> people though, since our community is generally quite open, and I know
> that others have funded work on this exact topic. So it'll mostly be a

> matter of aligning with them, figuring out where your work can make an
> impact.
>
> It sounds like enough time to make a solid impact on GeoServer,
> especially since I think much of it should be in the codebase by
> January. Geomatys is giving a presentation at foss4g, and should have
> their work on 4d with netcdf done by then, see:
> http://www.foss4g2007.org/presentations/view.php/225
>
> GeoSolutions is also working on this, and TOPP is on the hook to
> incorporate their work in to WCS 1.1 reference implementation by Feb.

08

> So there should be working 4d support in GeoServer WCS and WMS by the

> time you start.
>
> As for answers to some of your technical questions, I'm pretty sure

that

> the geotools NetCDF implementation is based on Unidata Java NetCDF

APIs.

> I believe the code may be in
> http://svn.geotools.
org/geotools/trunk/gt/modules/unsupported/coverageio-netcdf/
> Martin can give more details.
>
> GeoServer is also based on Spring, so it sounds good that you guys are
> moving in that direction.
>
> But yes, this all sounds great, good to hear you're in line with our
> general approaches and philosophy. So let's make this happen, it

sounds

> like it should be a good win all around.
>
> best regards,
>
> Chris
>
> Jon Blower wrote:
>> Dear Chris, Rob, Jody (and list),
>>
>> First off, thanks very much indeed for replying (in so much detail
>> too) on a weekend! I'm very glad that there's enthusiasm for what I'm
>> proposing and I understand completely the desire to be cautious when
>> incorporating new code. I'm also aware of other efforts in similar
>> directions, particularly with regard to nD coverages, and have had a
>> couple of chats with Mickael Treguer of Ifremer at meetings in the
>> last few months. Naturally it's desirable for us all to work together
>> and I appreciate that I need to catch up with these other efforts.
>>
>> Here are the facts 'n' figures about the proposal I'm putting

together:

>> 1) It will (hopefully) fund one person for one year, starting Jan 08,
>> plus a few hours a week of my time as a manager.
>> 2) This person will have other things to do besides Geoserver
>> integration, for example, developing a couple of test cases (prob.
>> with UK Met Office and someone else). My guess is that there will be
>> about 6 months on Geoserver-related work, although we will do some
>> preparation before the project starts in order to hit the ground
>> running.
>> 3) The proposal is due in on August 1st! I won't bore you with the
>> details of why the notice is so short, only to say that this is my
>> fault and I apologise! Normally letters of support can be submitted
>> after the main proposal is due, but I will check this tomorrow
>> (Monday). It would be very good to be able to agree the content of
>> the letter asap - the Tuesday IRC meeting should be OK, but if we can
>> at least agree on the scope of the work, that would help me greatly to
>> prepare the case for support.
>>
>> (There is quite a lot of bureaucracy for a fairly small pot of money,
>> unfortunately.)
>>
>> As well as the short deadline and the small size of the money pot,
>> there is one more thing that we have to watch out for: This is a
>> Knowledge Transfer call, not a research call. Therefore we have to be
>> wary of spending too much time on development and experimentation.
>>
>> Hence my immediate need is to figure out what is realistically
>> achievable. I am largely ignorant of the Geoserver codebase, although
>> I like what I hear about all the effort that is being made to keep it
>> maintainable and readable. I don't want to place unrealistic demands
>> either on ourselves or on the Geoserver community. Here's a sliding
>> scale of ambitions in increasing order (I think!) of difficulty:
>>
>> 1) We simply tidy up our code and document it thoroughly (despite what
>> you might think from our website, we *can* do decent documentation,
>> but haven't had time yet!) We'll especially concentrate on novel
>> features (e.g. algorithms) that we think are important (and maybe
>> unique) to our code. Then the Geoserver team can review the code and
>> docs at the end of the project and we together decide on the best way
>> forward, which might involve us travelling to meet the right people
>> for a face-to-face meeting. The Geoserver team would commit to be
>> lightly involved during this process (to guide us as to what will be
>> important from a Geoserver point of view) and to discussing a roadmap
>> for progression at the end.
>>
>> 2) We get to know the Geoserver code base and re-engineer our code in
>> line with Geoserver quality procedures (inc. documentation) and using
>> Geoserver APIs (e.g. GeoTools) whenever we can (and reporting when we
>> can't!) We would need guidance from the GS team to help us understand
>> the GS APIs and procedures, as well as to make us aware of other
>> similar efforts with which we might potentially clash. Maybe we can
>> just join the weekly IRCs but it would be useful to have a friendly
>> developer with the right expertise to pester...
>>
>> 3) We work very closely with the GS team to agree, at an early stage,
>> a roadmap for incorporation of our code into GS and both parties would
>> commit to achieving a certain amount of this within the year of the
>> project, maybe aiming at incorporating (certain parts of) our code
>> into a specific future Geoserver version.
>>
>> From what I understand from your emails, option (3) is probably
>> unrealistic as it seems that the GS team would want to review our code
>> before committing to such an agreement, which is absolutely fair
>> enough. My current feeling is that option (2) is the best option: it
>> does not commit Geoserver to anything but will improve our code base
>> and provide a solid platform for future integration. Option (1) might
>> be a little weak to justify the funding I feel.
>>
>> A technical point: we have been using the Unidata Java NetCDF APIs as
>> our base. Does the GeoTools library use this too (for NetCDF data at
>> least)? Do you know when nD NetCDF data support in GeoTools will
>> appear (if it has not already done so)?
>>
>> You are all very welcome to look at our code but please remember that
>> I don't regard it as finished by any means! The most recent binary
>> release (plus brief instructions) can be found in a practical session
>> I gave at a workshop a little while ago. Use this if you want to
>> actually try it out (should be doable in about 10 minutes of work):
>>
>> http://www.nerc-essc.ac.uk/~jdb/WebMappingPractical.zip
>>
>> This binary release is a little behind the source release, which we
>> are currently re-jigging to work within the Spring framework (of which
>> I have recently become a fan). The latest source code for this
>> Spring-based version is in a branch in our Subversion repository:
>>
>>
>>

https://ncwms.svn.sourceforge.net/svnroot/ncwms/branches/spring-20070706/

>>

http://www.resc.rdg.ac.uk/trac/ncWMS/browser/branches/spring-20070706/

>>
>> I suggest you start with the
>> uk.ac.rdg.resc.ncwms.controller.WmsController class to get an idea of
>> how it works. This snapshot mostly works but the admin system still
>> isn't finished so it will be hard to actually use. NetBeans is our
>> IDE of choice, and the code base includes NB project files so you can
>> open in NB straight away if you want.
>>
>> I have no wish to impose a new API onto the community and would much
>> rather improve an existing API (e.g. GeoTools) to meet our needs.
>> However, we have had specific functional needs in the past that have
>> forced us to develop something bespoke. I hope this (admittedly
>> limited) project can at least start us off down the road of
>> integration. I think we now have most of the functionality we need
>> (in the WMS/WCS at least: the web portal is a different matter!) so we
>> should be able to concentrate on collaboration.
>>
>> As for immediate timescales: in an ideal world I'd like to agree on
>> the broad scope of the work by the end of Monday 30th or the morning
>> of Tuesday 31st. If this means loosening the collaboration because
>> deadlines are far too tight then so be it - it's my fault and I'll
>> just have to make the best of it. Having agreed the scope, it would
>> be great to agree on the wording of the letter of support in Tuesday
>> evening's IRC. The physical letter can probably wait a little while
>> longer.
>>
>> I hope this sounds OK and I really do apologise for the tight
>> timescales - I understood that this could wait until the next round of
>> KT funding in March 08 but I found out on Friday (to my horror) that
>> this wasn't the case.
>>
>> Best wishes,
>> Jon
>>
>> On 7/28/07, Chris Holmes <cholmes@anonymised.com> wrote:
>>> Echoing Rob and Jody, it sounds like great work that you're looking

to

>>> add to GeoServer, but be cautious about being over ambitious. It

sounds

>>> promising that you're seeking funds specifically to integrate with

our

>>> work, just make sure that it's a sufficient amount. Like Jody

mentioned

>>> we try to be risk averse about people dumping code on us that isn't

in a

>>> _very_ maintainable state, as no matter what it takes extra work for

the

>>> community to get it to the standards we need. So I'd like to hear

more

>>> about what type of time commitment you can put in to working on this,
>>> both when you have funding and availability to at least help out with
>>> questions after the knowledge transfer funds run out.
>>>
>>> The other concern, and I'd like to hear from both of the groups I

know

>>> working on this as well, is that nD support is getting a lot of

traction

>>> right now. I believe Geomatsys and GeoSolutions are both on the hook
>>> for 4-d WCS and WMS support. A number of the things you've worked on
>>> are at least started in GeoServer/GeoTools, and we have a preference

for

>>> their solutions as they've been working within the community. So as

an

>>> integration strategy I'd like to be sure that you're open to more
>>> helping them out and improving their code with the type of

improvements

>>> you've made before, instead of attempting to introduce an alternate

API.

>>>
>>> So for example I really don't want another pipeline for efficient
>>> generation of WMS map images that runs parallel to ours. If yours is
>>> truly superior in every way and incompatible with how we do it now

we'd

>>> be open to replacing it, but that kind of move is a lot more risky

for

>>> us. So the preferred method of working would be take your algorithms
>>> and plug them in to our existing pipeline. This holds true for tile
>>> caching, kmz output, openlayers interface, and 4-d netcdf support for
>>> sure, and may for the other topics as well. So as long as you
>>> understand that the knowledge transfer will go a lot smoother if you
>>> learn our codebase and improve it then trying to tack on your stuff.

I

>>> hope this doesn't come across as 'we have the best code and only want

to

>>> play if things are our way', on the contrary, we've had a number of
>>> great outside contributions and some less successful attempts, and

the

>>> patterns of successful ones have followed that route. Your email
>>> thankfully seems to be talking in the right directions, integrating

and

>>> contributing, but I just want to be sure that things from our
>>> perspective are spelled out.
>>>
>>> So the final question is timing, when would you be able to do the

work,

>>> when would it absolutely have to be finished by? The best route from
>>> our perspective would likely be to let the current nD implementations
>>> finish up a bit, as I'm already a bit worried that may be doing some
>>> parallel work that will need to be resolved.
>>>
>>> Sorry for perhaps coming across as negative, I'm actually really

excited

>>> about this as I've been following your work for awhile and it looks
>>> really well done and would be a great step forward to have it in
>>> GeoServer. I just want to be sure that this is a success and that

you

>>> know what you're getting in to. If you can work with everything I've
>>> written I think there's a good chance we could do this. I would like

to

>>> hear from the other two main nD groups, and from you about timing.
>>>
>>> What's your timing needed for the letter of support? The best would

be

>>> to talk about it on IRC at the PSC meeting on tuesday. And to see if
>>> someone from the nD group would be open to guiding you directly, in
>>> addition to general support from the community. And I'm out of the
>>> office until at least wednesday, so if you need signed letterhead

from

>>> TOPP I may not be able to get that out till the end of the week at

the

>>> earliest. But we may be able to come up with an alternate strategy.
>>>
>>> best regards,
>>>
>>> Chris
>>>
>>> Jon Blower wrote:
>>>> Dear all,
>>>>
>>>> I hope this mailing list is the right place to ask this sort of
>>>> question. We have the opportunity (but not much time!) to apply for
>>>> some Knowledge Transfer funds to allow us to contribute our work on
>>>> OGC web service development to a wider community. As some of you
>>>> probably know, we have developed WMS and WCS implementations for a
>>>> project called DEWS (www.dews.org.uk). We originally intended to

use

>>>> Geoserver in DEWS but the necessary features (esp. 4-D coverage
>>>> support) were not present at the critical point in the project, so

we

>>>> developed our own solution for our specific problems.
>>>>
>>>> DEWS is now at an end and we would like to see our code and ideas
>>>> reach a wider audience. We think that integration with Geoserver

will

>>>> achieve this and so our proposal to the Knowledge Transfer fund will
>>>> include time to integrate our code, where appropriate, into

Geoserver.

>>>> Our work has been particularly concerned with the serving (WCS) and
>>>> visualization (WMS) of large-volume gridded ocean forecast data,

which

>>>> presented us with certain technical challenges, for which we found

and

>>>> implemented solutions that we would like to contribute to the
>>>> community. In particular, we can offer (some of these might already
>>>> be supported, in which case great!):
>>>>
>>>> 1) Support for large-volume 4-D NetCDF files conforming to the

Climate

>>>> and Forecast convention.
>>>> 2) Support for curvilinear and other exotic grid types with no
>>>> analytical formulation (increasingly common in ocean model data).
>>>> 3) Algorithms for efficient generation of WMS map images (we aim for
>>>> <0.5s per image for a 256x256 tile, even for high-resolution

datasets

>>>> and irregular grids).
>>>> 4) A tile caching mechanism (actually we cache data arrays so that

the

>>>> image style can be changed without going through a new
>>>> extraction/reprojection process).
>>>> 5) An OpenLayers-based AJAX web interface for our WMS
>>>> (http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
>>>> something similar exists in Geoserver but perhaps aspects of our
>>>> solution will be useful.
>>>> 6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
>>>> fields (the latter are automatically discovered from the source

data).

>>>> 7) KMZ output (again I know this is present in Geoserver but our
>>>> approach might be a bit different!).
>>>> 8) Some proposed extensions to WCS and WMS to support our kind of
>>>> scientific data (this is more a matter for the OGC than for

Geoserver

>>>> but it makes the software more useful to us).
>>>>
>>>> We have found all these features to be important in the DEWS

project,

>>>> as well as in many other projects (we are involved in a number of
>>>> high-profile EU projects connected with the serving of real-time
>>>> oceanographic data: MERSEA, ECOOP, MyOcean).
>>>>
>>>> We do not wish to fragment the open-source geospatial community by
>>>> producing independent "products" in the long term and so we think

the

>>>> best way forward is integration with Geoserver. This would lead to
>>>> greater uptake of Geoserver in the communities that are already

using

>>>> our software. In order to achieve this, we will need support from
>>>> existing Geoserver experts who can guide us along the right paths.
>>>>
>>>> Therefore I'm looking for someone who can speak for the Geoserver
>>>> community to support our proposal. If someone is prepared to do

this

>>>> we will need a letter of support, which will take a little crafting

-

>>>> but in the meantime it would be really useful if someone could reply
>>>> asap (sorry for the short notice) with their thoughts on this. Then
>>>> we can sort this out off-list.
>>>>
>>>> Best wishes,
>>>> Jon Blower
>>>>
>>>
>>
>>
>
> begin:vcard
> fn:Chris Holmes
> n:Holmes;Chris
> org:The Open Planning Project
> adr:;;349 W. 12th Street, #3;New York;NY;10014;USA
> email;internet:cholmes@anonymised.com
> title:Managing Director, Strategic Development
> x-mozilla-html:FALSE
> url:http://topp.openplans.org
> version:2.1
> end:vcard
>
>
>

-------------------------------------------------------------------------

> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems? Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> _______________________________________________
> Geoserver-devel mailing list
> Geoserver-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/geoserver-devel
>
>

--
View this message in context: http://www.nabble.com/Proposal-to-
contribute-code-to-Geoserver-tf4162007.html#a11942054
Sent from the GeoServer - Dev mailing list archive at Nabble.com.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Bryce, all,

I'm taking some time to explain what kind of work we're doing on GS, and what we're planning to do in a near future.
At first, we're working for IFREMER (http://www.ifremer.fr) to normalize their raster data streams (mainly based on NetCDF file format).
For this project, we're working on a NetCDF reader, based on ImageIO and GT. This work is in an advanced stage as we can read NetCDF files with good performances (this work include CF convention support), it's currently hosted on the unsepported part of GT project.

As we've to deal with a lot of NetCDF datasets (Time Series), Martin has developed the PostGRID project, an image catalog that store GridCoverage "metadata" on a PostgreSQl database (now using postGIS geometry), and give a pointer to images stored on the file system. In that way we can deal with Time series after having it declarated with the Geoserver config system using the postgrid datastore (or CoverageStore, I don't know how to call it).
We've extended Geoserver WMS to time and elevation dimensions, and now it works fine. We still have to fix some problems (ie. adapting postgrid datastore code to fit better with streaming renderer when reprojection is needed). Martin will certainly still have some work to do on it the next weeks as we're porting some PostGRID work to JavaDB and developping harvesting system to feed the database.

Next step, extending WCS to nD as we've to extract geophisical data from those datasets. Cédric Briançon will work on it next weeks.
All this work must be finished around 20th September if everything goes right.

Like Mickael said, in the future we're planning to spend some time on old Martin's J2D renderer to refactor it against GO-1 interfaces. J2D renderer was developed for oceanographic needs, so it can deal with nice things like wind barbs, stream-fields etc. ...

We will stay silent for one more month because we've to reach as soon as possible a new milestone for this project and there is a lot to do.

We'll be at Foss4g to do a presentation of this work with Mickael Treguer, then it will be a good oportunity to talk about future works, and how to harmonize our projects.

In the meantime we're working on an SOS project, but it's an other story ...

Bye

Vincent Heurteaux
http://www.geomatys.fr

Le 1 août 07 à 17:31, Bryce L Nordgren a écrit :

Jon and Mickael,

Would it be possible to get a summary of the proposed changes to the web
services interface(s)? Without looking at the technology of how everything
is implemented, I'd be very interested in seeing how each proposal adds to
(or is different from) the current WMS and WFS specs.

I'm a little out of touch with our current status because I've "delegated"
too much, but I believe we're serving up 4D netcdf files with Geoserver
right now, using Simone's work. These files are generated from the Weather
Research and Forecasting meterological model, and have their own "standard
format". :wink: Now we don't have all the cool features like vector display,
but the particular branch we're using should be capable of publishing
anything that the netcdf-java package can read. Since that seems to be the
package you're using, we seem to be off to a compatible start. :slight_smile:

Bryce

geoserver-devel-bounces@lists.sourceforge.net wrote on 08/01/2007 03:03:11
AM:

Dear Jon (and list),

It's a good news that you are interested in geoserver.

The Goal of our project (Ifremer with Geomatys) is to handle 4D nedcdf

files

and Opendap through WMS and WCS with Geotools/Geoserver. Now, we are able

to

display 4D netcdf files (WMS), it's a prototype. The end of the project

is

in september/october.

However, it will be a lot of things to add/ improve after our project
(display of vector, improve the renderer : implement the OGC spec Go-1,
...). So, as Chris Holmes said I will be really enjoy to see you helping

us

and improving our code instead of attempting to introduce an alternate

API.

Regards,
Mickael TREGUER

Chris Holmes wrote:

I agree that #2 sounds like the best option, perhaps we may even aim

for

some of #3. Since Simone still hasn't responded it might be best for
TOPP to just do the letter. We aren't the experts on this subject, but

we can do the work to engage those who are and keep communication

going.

  I feel relatively confident that you'll be able to work with the

right

people though, since our community is generally quite open, and I know
that others have funded work on this exact topic. So it'll mostly be a

matter of aligning with them, figuring out where your work can make an
impact.

It sounds like enough time to make a solid impact on GeoServer,
especially since I think much of it should be in the codebase by
January. Geomatys is giving a presentation at foss4g, and should have
their work on 4d with netcdf done by then, see:
http://www.foss4g2007.org/presentations/view.php/225

GeoSolutions is also working on this, and TOPP is on the hook to
incorporate their work in to WCS 1.1 reference implementation by Feb.

08

  So there should be working 4d support in GeoServer WCS and WMS by the

time you start.

As for answers to some of your technical questions, I'm pretty sure

that

the geotools NetCDF implementation is based on Unidata Java NetCDF

APIs.

  I believe the code may be in
http://svn.geotools.

org/geotools/trunk/gt/modules/unsupported/coverageio-netcdf/

  Martin can give more details.

GeoServer is also based on Spring, so it sounds good that you guys are
moving in that direction.

But yes, this all sounds great, good to hear you're in line with our
general approaches and philosophy. So let's make this happen, it

sounds

like it should be a good win all around.

best regards,

Chris

Jon Blower wrote:

Dear Chris, Rob, Jody (and list),

First off, thanks very much indeed for replying (in so much detail
too) on a weekend! I'm very glad that there's enthusiasm for what I'm
proposing and I understand completely the desire to be cautious when
incorporating new code. I'm also aware of other efforts in similar
directions, particularly with regard to nD coverages, and have had a
couple of chats with Mickael Treguer of Ifremer at meetings in the
last few months. Naturally it's desirable for us all to work together
and I appreciate that I need to catch up with these other efforts.

Here are the facts 'n' figures about the proposal I'm putting

together:

1) It will (hopefully) fund one person for one year, starting Jan 08,
plus a few hours a week of my time as a manager.
2) This person will have other things to do besides Geoserver
integration, for example, developing a couple of test cases (prob.
with UK Met Office and someone else). My guess is that there will be
about 6 months on Geoserver-related work, although we will do some
preparation before the project starts in order to hit the ground
running.
3) The proposal is due in on August 1st! I won't bore you with the
details of why the notice is so short, only to say that this is my
fault and I apologise! Normally letters of support can be submitted
after the main proposal is due, but I will check this tomorrow
(Monday). It would be very good to be able to agree the content of
the letter asap - the Tuesday IRC meeting should be OK, but if we can
at least agree on the scope of the work, that would help me greatly to
prepare the case for support.

(There is quite a lot of bureaucracy for a fairly small pot of money,
unfortunately.)

As well as the short deadline and the small size of the money pot,
there is one more thing that we have to watch out for: This is a
Knowledge Transfer call, not a research call. Therefore we have to be
wary of spending too much time on development and experimentation.

Hence my immediate need is to figure out what is realistically
achievable. I am largely ignorant of the Geoserver codebase, although
I like what I hear about all the effort that is being made to keep it
maintainable and readable. I don't want to place unrealistic demands
either on ourselves or on the Geoserver community. Here's a sliding
scale of ambitions in increasing order (I think!) of difficulty:

1) We simply tidy up our code and document it thoroughly (despite what
you might think from our website, we *can* do decent documentation,
but haven't had time yet!) We'll especially concentrate on novel
features (e.g. algorithms) that we think are important (and maybe
unique) to our code. Then the Geoserver team can review the code and
docs at the end of the project and we together decide on the best way
forward, which might involve us travelling to meet the right people
for a face-to-face meeting. The Geoserver team would commit to be
lightly involved during this process (to guide us as to what will be
important from a Geoserver point of view) and to discussing a roadmap
for progression at the end.

2) We get to know the Geoserver code base and re-engineer our code in
line with Geoserver quality procedures (inc. documentation) and using
Geoserver APIs (e.g. GeoTools) whenever we can (and reporting when we
can't!) We would need guidance from the GS team to help us understand
the GS APIs and procedures, as well as to make us aware of other
similar efforts with which we might potentially clash. Maybe we can
just join the weekly IRCs but it would be useful to have a friendly
developer with the right expertise to pester...

3) We work very closely with the GS team to agree, at an early stage,
a roadmap for incorporation of our code into GS and both parties would
commit to achieving a certain amount of this within the year of the
project, maybe aiming at incorporating (certain parts of) our code
into a specific future Geoserver version.

From what I understand from your emails, option (3) is probably
unrealistic as it seems that the GS team would want to review our code
before committing to such an agreement, which is absolutely fair
enough. My current feeling is that option (2) is the best option: it
does not commit Geoserver to anything but will improve our code base
and provide a solid platform for future integration. Option (1) might
be a little weak to justify the funding I feel.

A technical point: we have been using the Unidata Java NetCDF APIs as
our base. Does the GeoTools library use this too (for NetCDF data at
least)? Do you know when nD NetCDF data support in GeoTools will
appear (if it has not already done so)?

You are all very welcome to look at our code but please remember that
I don't regard it as finished by any means! The most recent binary
release (plus brief instructions) can be found in a practical session
I gave at a workshop a little while ago. Use this if you want to
actually try it out (should be doable in about 10 minutes of work):

http://www.nerc-essc.ac.uk/~jdb/WebMappingPractical.zip

This binary release is a little behind the source release, which we
are currently re-jigging to work within the Spring framework (of which
I have recently become a fan). The latest source code for this
Spring-based version is in a branch in our Subversion repository:

https://ncwms.svn.sourceforge.net/svnroot/ncwms/branches/spring-20070706/

http://www.resc.rdg.ac.uk/trac/ncWMS/browser/branches/spring-20070706/

I suggest you start with the
uk.ac.rdg.resc.ncwms.controller.WmsController class to get an idea of
how it works. This snapshot mostly works but the admin system still
isn't finished so it will be hard to actually use. NetBeans is our
IDE of choice, and the code base includes NB project files so you can
open in NB straight away if you want.

I have no wish to impose a new API onto the community and would much
rather improve an existing API (e.g. GeoTools) to meet our needs.
However, we have had specific functional needs in the past that have
forced us to develop something bespoke. I hope this (admittedly
limited) project can at least start us off down the road of
integration. I think we now have most of the functionality we need
(in the WMS/WCS at least: the web portal is a different matter!) so we
should be able to concentrate on collaboration.

As for immediate timescales: in an ideal world I'd like to agree on
the broad scope of the work by the end of Monday 30th or the morning
of Tuesday 31st. If this means loosening the collaboration because
deadlines are far too tight then so be it - it's my fault and I'll
just have to make the best of it. Having agreed the scope, it would
be great to agree on the wording of the letter of support in Tuesday
evening's IRC. The physical letter can probably wait a little while
longer.

I hope this sounds OK and I really do apologise for the tight
timescales - I understood that this could wait until the next round of
KT funding in March 08 but I found out on Friday (to my horror) that
this wasn't the case.

Best wishes,
Jon

On 7/28/07, Chris Holmes <cholmes@anonymised.com> wrote:

Echoing Rob and Jody, it sounds like great work that you're looking

to

add to GeoServer, but be cautious about being over ambitious. It

sounds

promising that you're seeking funds specifically to integrate with

our

work, just make sure that it's a sufficient amount. Like Jody

mentioned

we try to be risk averse about people dumping code on us that isn't

in a

_very_ maintainable state, as no matter what it takes extra work for

the

community to get it to the standards we need. So I'd like to hear

more

about what type of time commitment you can put in to working on this,
both when you have funding and availability to at least help out with
questions after the knowledge transfer funds run out.

The other concern, and I'd like to hear from both of the groups I

know

working on this as well, is that nD support is getting a lot of

traction

right now. I believe Geomatsys and GeoSolutions are both on the hook
for 4-d WCS and WMS support. A number of the things you've worked on
are at least started in GeoServer/GeoTools, and we have a preference

for

their solutions as they've been working within the community. So as

an

integration strategy I'd like to be sure that you're open to more
helping them out and improving their code with the type of

improvements

you've made before, instead of attempting to introduce an alternate

API.

So for example I really don't want another pipeline for efficient
generation of WMS map images that runs parallel to ours. If yours is
truly superior in every way and incompatible with how we do it now

we'd

be open to replacing it, but that kind of move is a lot more risky

for

us. So the preferred method of working would be take your algorithms
and plug them in to our existing pipeline. This holds true for tile
caching, kmz output, openlayers interface, and 4-d netcdf support for
sure, and may for the other topics as well. So as long as you
understand that the knowledge transfer will go a lot smoother if you
learn our codebase and improve it then trying to tack on your stuff.

I

hope this doesn't come across as 'we have the best code and only want

to

play if things are our way', on the contrary, we've had a number of
great outside contributions and some less successful attempts, and

the

patterns of successful ones have followed that route. Your email
thankfully seems to be talking in the right directions, integrating

and

contributing, but I just want to be sure that things from our
perspective are spelled out.

So the final question is timing, when would you be able to do the

work,

when would it absolutely have to be finished by? The best route from
our perspective would likely be to let the current nD implementations
finish up a bit, as I'm already a bit worried that may be doing some
parallel work that will need to be resolved.

Sorry for perhaps coming across as negative, I'm actually really

excited

about this as I've been following your work for awhile and it looks
really well done and would be a great step forward to have it in
GeoServer. I just want to be sure that this is a success and that

you

know what you're getting in to. If you can work with everything I've
written I think there's a good chance we could do this. I would like

to

hear from the other two main nD groups, and from you about timing.

What's your timing needed for the letter of support? The best would

be

to talk about it on IRC at the PSC meeting on tuesday. And to see if
someone from the nD group would be open to guiding you directly, in
addition to general support from the community. And I'm out of the
office until at least wednesday, so if you need signed letterhead

from

TOPP I may not be able to get that out till the end of the week at

the

earliest. But we may be able to come up with an alternate strategy.

best regards,

Chris

Jon Blower wrote:

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to

use

Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so

we

developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver

will

achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into

Geoserver.

Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data,

which

presented us with certain technical challenges, for which we found

and

implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the

Climate

and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution

datasets

and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that

the

image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source

data).

7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for

Geoserver

but it makes the software more useful to us).

We have found all these features to be important in the DEWS

project,

as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think

the

best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already

using

our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do

this

we will need a letter of support, which will take a little crafting

-

but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

begin:vcard
fn:Chris Holmes
n:Holmes;Chris
org:The Open Planning Project
adr:;;349 W. 12th Street, #3;New York;NY;10014;USA
email;internet:cholmes@anonymised.com
title:Managing Director, Strategic Development
x-mozilla-html:FALSE
url:http://topp.openplans.org
version:2.1
end:vcard

-------------------------------------------------------------------------

This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
View this message in context: http://www.nabble.com/Proposal-to-
contribute-code-to-Geoserver-tf4162007.html#a11942054
Sent from the GeoServer - Dev mailing list archive at Nabble.com.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Like Mickael said, in the future we're planning to spend some time on old Martin's J2D renderer to refactor it against GO-1 interfaces. J2D renderer was developed for oceanographic needs, so it can deal with nice things like wind barbs, stream-fields etc. ...

Are you looking to have the J2D renderer used in GeoServer? I don't think I feel that good about having another rendering pipeline in place, and if I remember properly J2D was much more geared towards stateful desktop rendering instead of stateless server rendering.

Do you have a specific requirement to implement GO-1 interfaces? If not it might make more sense to refactor it in to GeoServer's existing renderer?

best regards,

Chris

We will stay silent for one more month because we've to reach as soon as possible a new milestone for this project and there is a lot to do.

Good luck!

best regards,

Chris

Le 1 août 07 à 17:31, Bryce L Nordgren a écrit :

Jon and Mickael,

Would it be possible to get a summary of the proposed changes to the web
services interface(s)? Without looking at the technology of how everything
is implemented, I'd be very interested in seeing how each proposal adds to
(or is different from) the current WMS and WFS specs.

I'm a little out of touch with our current status because I've "delegated"
too much, but I believe we're serving up 4D netcdf files with Geoserver
right now, using Simone's work. These files are generated from the Weather
Research and Forecasting meterological model, and have their own "standard
format". :wink: Now we don't have all the cool features like vector display,
but the particular branch we're using should be capable of publishing
anything that the netcdf-java package can read. Since that seems to be the
package you're using, we seem to be off to a compatible start. :slight_smile:

Bryce

geoserver-devel-bounces@lists.sourceforge.net wrote on 08/01/2007 03:03:11
AM:

Dear Jon (and list),

It's a good news that you are interested in geoserver.

The Goal of our project (Ifremer with Geomatys) is to handle 4D nedcdf

files

and Opendap through WMS and WCS with Geotools/Geoserver. Now, we are able

to

display 4D netcdf files (WMS), it's a prototype. The end of the project

is

in september/october.

However, it will be a lot of things to add/ improve after our project
(display of vector, improve the renderer : implement the OGC spec Go-1,
...). So, as Chris Holmes said I will be really enjoy to see you helping

us

and improving our code instead of attempting to introduce an alternate

API.

Regards,
Mickael TREGUER

Chris Holmes wrote:

I agree that #2 sounds like the best option, perhaps we may even aim

for

some of #3. Since Simone still hasn't responded it might be best for
TOPP to just do the letter. We aren't the experts on this subject, but
we can do the work to engage those who are and keep communication

going.

  I feel relatively confident that you'll be able to work with the

right

people though, since our community is generally quite open, and I know
that others have funded work on this exact topic. So it'll mostly be a
matter of aligning with them, figuring out where your work can make an
impact.

It sounds like enough time to make a solid impact on GeoServer,
especially since I think much of it should be in the codebase by
January. Geomatys is giving a presentation at foss4g, and should have
their work on 4d with netcdf done by then, see:
http://www.foss4g2007.org/presentations/view.php/225

GeoSolutions is also working on this, and TOPP is on the hook to
incorporate their work in to WCS 1.1 reference implementation by Feb.

08

  So there should be working 4d support in GeoServer WCS and WMS by the
time you start.

As for answers to some of your technical questions, I'm pretty sure

that

the geotools NetCDF implementation is based on Unidata Java NetCDF

APIs.

  I believe the code may be in
http://svn.geotools.

org/geotools/trunk/gt/modules/unsupported/coverageio-netcdf/

  Martin can give more details.

GeoServer is also based on Spring, so it sounds good that you guys are
moving in that direction.

But yes, this all sounds great, good to hear you're in line with our
general approaches and philosophy. So let's make this happen, it

sounds

like it should be a good win all around.

best regards,

Chris

Jon Blower wrote:

Dear Chris, Rob, Jody (and list),

First off, thanks very much indeed for replying (in so much detail
too) on a weekend! I'm very glad that there's enthusiasm for what I'm
proposing and I understand completely the desire to be cautious when
incorporating new code. I'm also aware of other efforts in similar
directions, particularly with regard to nD coverages, and have had a
couple of chats with Mickael Treguer of Ifremer at meetings in the
last few months. Naturally it's desirable for us all to work together
and I appreciate that I need to catch up with these other efforts.

Here are the facts 'n' figures about the proposal I'm putting

together:

1) It will (hopefully) fund one person for one year, starting Jan 08,
plus a few hours a week of my time as a manager.
2) This person will have other things to do besides Geoserver
integration, for example, developing a couple of test cases (prob.
with UK Met Office and someone else). My guess is that there will be
about 6 months on Geoserver-related work, although we will do some
preparation before the project starts in order to hit the ground
running.
3) The proposal is due in on August 1st! I won't bore you with the
details of why the notice is so short, only to say that this is my
fault and I apologise! Normally letters of support can be submitted
after the main proposal is due, but I will check this tomorrow
(Monday). It would be very good to be able to agree the content of
the letter asap - the Tuesday IRC meeting should be OK, but if we can
at least agree on the scope of the work, that would help me greatly to
prepare the case for support.

(There is quite a lot of bureaucracy for a fairly small pot of money,
unfortunately.)

As well as the short deadline and the small size of the money pot,
there is one more thing that we have to watch out for: This is a
Knowledge Transfer call, not a research call. Therefore we have to be
wary of spending too much time on development and experimentation.

Hence my immediate need is to figure out what is realistically
achievable. I am largely ignorant of the Geoserver codebase, although
I like what I hear about all the effort that is being made to keep it
maintainable and readable. I don't want to place unrealistic demands
either on ourselves or on the Geoserver community. Here's a sliding
scale of ambitions in increasing order (I think!) of difficulty:

1) We simply tidy up our code and document it thoroughly (despite what
you might think from our website, we *can* do decent documentation,
but haven't had time yet!) We'll especially concentrate on novel
features (e.g. algorithms) that we think are important (and maybe
unique) to our code. Then the Geoserver team can review the code and
docs at the end of the project and we together decide on the best way
forward, which might involve us travelling to meet the right people
for a face-to-face meeting. The Geoserver team would commit to be
lightly involved during this process (to guide us as to what will be
important from a Geoserver point of view) and to discussing a roadmap
for progression at the end.

2) We get to know the Geoserver code base and re-engineer our code in
line with Geoserver quality procedures (inc. documentation) and using
Geoserver APIs (e.g. GeoTools) whenever we can (and reporting when we
can't!) We would need guidance from the GS team to help us understand
the GS APIs and procedures, as well as to make us aware of other
similar efforts with which we might potentially clash. Maybe we can
just join the weekly IRCs but it would be useful to have a friendly
developer with the right expertise to pester...

3) We work very closely with the GS team to agree, at an early stage,
a roadmap for incorporation of our code into GS and both parties would
commit to achieving a certain amount of this within the year of the
project, maybe aiming at incorporating (certain parts of) our code
into a specific future Geoserver version.

From what I understand from your emails, option (3) is probably
unrealistic as it seems that the GS team would want to review our code
before committing to such an agreement, which is absolutely fair
enough. My current feeling is that option (2) is the best option: it
does not commit Geoserver to anything but will improve our code base
and provide a solid platform for future integration. Option (1) might
be a little weak to justify the funding I feel.

A technical point: we have been using the Unidata Java NetCDF APIs as
our base. Does the GeoTools library use this too (for NetCDF data at
least)? Do you know when nD NetCDF data support in GeoTools will
appear (if it has not already done so)?

You are all very welcome to look at our code but please remember that
I don't regard it as finished by any means! The most recent binary
release (plus brief instructions) can be found in a practical session
I gave at a workshop a little while ago. Use this if you want to
actually try it out (should be doable in about 10 minutes of work):

http://www.nerc-essc.ac.uk/~jdb/WebMappingPractical.zip

This binary release is a little behind the source release, which we
are currently re-jigging to work within the Spring framework (of which
I have recently become a fan). The latest source code for this
Spring-based version is in a branch in our Subversion repository:

https://ncwms.svn.sourceforge.net/svnroot/ncwms/branches/ spring-20070706/
http://www.resc.rdg.ac.uk/trac/ncWMS/browser/branches/spring-20070706/

I suggest you start with the
uk.ac.rdg.resc.ncwms.controller.WmsController class to get an idea of
how it works. This snapshot mostly works but the admin system still
isn't finished so it will be hard to actually use. NetBeans is our
IDE of choice, and the code base includes NB project files so you can
open in NB straight away if you want.

I have no wish to impose a new API onto the community and would much
rather improve an existing API (e.g. GeoTools) to meet our needs.
However, we have had specific functional needs in the past that have
forced us to develop something bespoke. I hope this (admittedly
limited) project can at least start us off down the road of
integration. I think we now have most of the functionality we need
(in the WMS/WCS at least: the web portal is a different matter!) so we
should be able to concentrate on collaboration.

As for immediate timescales: in an ideal world I'd like to agree on
the broad scope of the work by the end of Monday 30th or the morning
of Tuesday 31st. If this means loosening the collaboration because
deadlines are far too tight then so be it - it's my fault and I'll
just have to make the best of it. Having agreed the scope, it would
be great to agree on the wording of the letter of support in Tuesday
evening's IRC. The physical letter can probably wait a little while
longer.

I hope this sounds OK and I really do apologise for the tight
timescales - I understood that this could wait until the next round of
KT funding in March 08 but I found out on Friday (to my horror) that
this wasn't the case.

Best wishes,
Jon

On 7/28/07, Chris Holmes <cholmes@anonymised.com> wrote:

Echoing Rob and Jody, it sounds like great work that you're looking

to

add to GeoServer, but be cautious about being over ambitious. It

sounds

promising that you're seeking funds specifically to integrate with

our

work, just make sure that it's a sufficient amount. Like Jody

mentioned

we try to be risk averse about people dumping code on us that isn't

in a

_very_ maintainable state, as no matter what it takes extra work for

the

community to get it to the standards we need. So I'd like to hear

more

about what type of time commitment you can put in to working on this,
both when you have funding and availability to at least help out with
questions after the knowledge transfer funds run out.

The other concern, and I'd like to hear from both of the groups I

know

working on this as well, is that nD support is getting a lot of

traction

right now. I believe Geomatsys and GeoSolutions are both on the hook
for 4-d WCS and WMS support. A number of the things you've worked on
are at least started in GeoServer/GeoTools, and we have a preference

for

their solutions as they've been working within the community. So as

an

integration strategy I'd like to be sure that you're open to more
helping them out and improving their code with the type of

improvements

you've made before, instead of attempting to introduce an alternate

API.

So for example I really don't want another pipeline for efficient
generation of WMS map images that runs parallel to ours. If yours is
truly superior in every way and incompatible with how we do it now

we'd

be open to replacing it, but that kind of move is a lot more risky

for

us. So the preferred method of working would be take your algorithms
and plug them in to our existing pipeline. This holds true for tile
caching, kmz output, openlayers interface, and 4-d netcdf support for
sure, and may for the other topics as well. So as long as you
understand that the knowledge transfer will go a lot smoother if you
learn our codebase and improve it then trying to tack on your stuff.

I

hope this doesn't come across as 'we have the best code and only want

to

play if things are our way', on the contrary, we've had a number of
great outside contributions and some less successful attempts, and

the

patterns of successful ones have followed that route. Your email
thankfully seems to be talking in the right directions, integrating

and

contributing, but I just want to be sure that things from our
perspective are spelled out.

So the final question is timing, when would you be able to do the

work,

when would it absolutely have to be finished by? The best route from
our perspective would likely be to let the current nD implementations
finish up a bit, as I'm already a bit worried that may be doing some
parallel work that will need to be resolved.

Sorry for perhaps coming across as negative, I'm actually really

excited

about this as I've been following your work for awhile and it looks
really well done and would be a great step forward to have it in
GeoServer. I just want to be sure that this is a success and that

you

know what you're getting in to. If you can work with everything I've
written I think there's a good chance we could do this. I would like

to

hear from the other two main nD groups, and from you about timing.

What's your timing needed for the letter of support? The best would

be

to talk about it on IRC at the PSC meeting on tuesday. And to see if
someone from the nD group would be open to guiding you directly, in
addition to general support from the community. And I'm out of the
office until at least wednesday, so if you need signed letterhead

from

TOPP I may not be able to get that out till the end of the week at

the

earliest. But we may be able to come up with an alternate strategy.

best regards,

Chris

Jon Blower wrote:

Dear all,

I hope this mailing list is the right place to ask this sort of
question. We have the opportunity (but not much time!) to apply for
some Knowledge Transfer funds to allow us to contribute our work on
OGC web service development to a wider community. As some of you
probably know, we have developed WMS and WCS implementations for a
project called DEWS (www.dews.org.uk). We originally intended to

use

Geoserver in DEWS but the necessary features (esp. 4-D coverage
support) were not present at the critical point in the project, so

we

developed our own solution for our specific problems.

DEWS is now at an end and we would like to see our code and ideas
reach a wider audience. We think that integration with Geoserver

will

achieve this and so our proposal to the Knowledge Transfer fund will
include time to integrate our code, where appropriate, into

Geoserver.

Our work has been particularly concerned with the serving (WCS) and
visualization (WMS) of large-volume gridded ocean forecast data,

which

presented us with certain technical challenges, for which we found

and

implemented solutions that we would like to contribute to the
community. In particular, we can offer (some of these might already
be supported, in which case great!):

1) Support for large-volume 4-D NetCDF files conforming to the

Climate

and Forecast convention.
2) Support for curvilinear and other exotic grid types with no
analytical formulation (increasingly common in ocean model data).
3) Algorithms for efficient generation of WMS map images (we aim for
<0.5s per image for a 256x256 tile, even for high-resolution

datasets

and irregular grids).
4) A tile caching mechanism (actually we cache data arrays so that

the

image style can be changed without going through a new
extraction/reprojection process).
5) An OpenLayers-based AJAX web interface for our WMS
(http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
something similar exists in Geoserver but perhaps aspects of our
solution will be useful.
6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
fields (the latter are automatically discovered from the source

data).

7) KMZ output (again I know this is present in Geoserver but our
approach might be a bit different!).
8) Some proposed extensions to WCS and WMS to support our kind of
scientific data (this is more a matter for the OGC than for

Geoserver

but it makes the software more useful to us).

We have found all these features to be important in the DEWS

project,

as well as in many other projects (we are involved in a number of
high-profile EU projects connected with the serving of real-time
oceanographic data: MERSEA, ECOOP, MyOcean).

We do not wish to fragment the open-source geospatial community by
producing independent "products" in the long term and so we think

the

best way forward is integration with Geoserver. This would lead to
greater uptake of Geoserver in the communities that are already

using

our software. In order to achieve this, we will need support from
existing Geoserver experts who can guide us along the right paths.

Therefore I'm looking for someone who can speak for the Geoserver
community to support our proposal. If someone is prepared to do

this

we will need a letter of support, which will take a little crafting

-

but in the meantime it would be really useful if someone could reply
asap (sorry for the short notice) with their thoughts on this. Then
we can sort this out off-list.

Best wishes,
Jon Blower

begin:vcard
fn:Chris Holmes
n:Holmes;Chris
org:The Open Planning Project
adr:;;349 W. 12th Street, #3;New York;NY;10014;USA
email;internet:cholmes@anonymised.com
title:Managing Director, Strategic Development
x-mozilla-html:FALSE
url:http://topp.openplans.org
version:2.1
end:vcard

---------------------------------------------------------------------- ---

This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
View this message in context: http://www.nabble.com/Proposal-to-
contribute-code-to-Geoserver-tf4162007.html#a11942054
Sent from the GeoServer - Dev mailing list archive at Nabble.com.

--------------------------------------------------------------------- ----
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

---------------------------------------------------------------------- ---
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

!DSPAM:4005,46b0f363252674901796417!

Yes it could make sense, but we've found some funds to start working on "GO-1 Renderer" with a statefull approach (for a desktop app), and we could then benefit from the refactoring operation to do kind of "switchs" to give it stateless capabilities. And we don't know at all Streaming Renderer, it could take a long time for us to refactor some part of J2D into it.

We will stay silent for one more month because we've to reach as soon as possible a new milestone for this project and there is a lot to do.

Good luck!

By te way, Martin will be certainly unreachable during this period, but I can try to inform you about our progress and looking for some technical orientations in our side to fit better with the GS project (H2 vs. Javadb, etc. ..).

Cheers

Vincent

Dear Bryce (et al),

I'll summarize the particular features of our WMS interface (some of
which might also be addressed by other groups in Geoserver and
elsewhere). We haven't done any work with WFS.

1) If a NetCDF source file contains the eastward and northward
components of a vector quantity (which can be viewed as separate
layers), our WMS automatically detects this (using the CF standard
names, e.g. "[northward,eastward]_sea_water_velocity") and creates a
new layer (called, for example, "sea_water_velocity") that can be
viewed either as a vector plot (i.e. with arrows) or as a scalar field
(i.e. the magnitude of the vector quantity).

2) We monkeyed around with styling of layers that are generated from
gridded data fields. This is non-standard but pragmatic: I don't
think SLD is very efficient when choosing how to colour an image based
on, say, a temperature field. We let the user choose a colour palette
(e.g. "rainbow", "greyscale", "red-blue") and also the field values
that represent the extremes of the colour scale (e.g. dark blue maps
to 20degC, red to 35degC). If the user doesn't specify the extremes
of the colour scale, they are automatically chosen. See
http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html for a demo of
how this works. With SLD someone would have to generate a new SLD
document every time the user changed the colour scale - possible, and
standards-compliant, but not efficient. (BTW, I think Geoserver
should probably stick to the standard unless we can figure out a good
compromise). In our method, these parameters are appended to the
STYLE of a layer, rather like MIME type modifiers.

3) We (like Geomatys) also support the TIME and ELEVATION dimensions -
these are part of the WMS standard but rarely supported in WMS
implementations. We allow the generation of animations (also in the
standard) by specifying a range for the TIME dimension.

4) We support extraction of data from arbitrary numerical grids, even
those without an analytical form (we do this through look-up-tables,
which isn't precise but is good enough for visualization).

5) The slowest point in generating an image from gridded NetCDF data
is usually the extraction of data from disk. We developed simple
algorithms to optimise this step (although we haven't made an effort
to optimise aggressively) so that images can be generated quickly,
even when reprojecting data from an exotic CRS.

6) We support the GetFeatureInfo operation so that a user can click on
a point on a map on a web interface and find the value of the field at
that exact point (again, see
http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html for a demo).
We also use GetFeatureInfo to return timeseries plots showing the
variability over time of a quantity at a given point.

Clearly there is overlap with other groups who work with 4-D data in
GS. It would be great (particularly if our proposal comes off!) if we
could get our heads together and figure out a way forward.

Cheers, Jon

On 8/1/07, Bryce L Nordgren <bnordgren@anonymised.com> wrote:

Jon and Mickael,

Would it be possible to get a summary of the proposed changes to the web
services interface(s)? Without looking at the technology of how everything
is implemented, I'd be very interested in seeing how each proposal adds to
(or is different from) the current WMS and WFS specs.

I'm a little out of touch with our current status because I've "delegated"
too much, but I believe we're serving up 4D netcdf files with Geoserver
right now, using Simone's work. These files are generated from the Weather
Research and Forecasting meterological model, and have their own "standard
format". :wink: Now we don't have all the cool features like vector display,
but the particular branch we're using should be capable of publishing
anything that the netcdf-java package can read. Since that seems to be the
package you're using, we seem to be off to a compatible start. :slight_smile:

Bryce

geoserver-devel-bounces@lists.sourceforge.net wrote on 08/01/2007 03:03:11
AM:

>
> Dear Jon (and list),
>
> It's a good news that you are interested in geoserver.
>
> The Goal of our project (Ifremer with Geomatys) is to handle 4D nedcdf
files
> and Opendap through WMS and WCS with Geotools/Geoserver. Now, we are able
to
> display 4D netcdf files (WMS), it's a prototype. The end of the project
is
> in september/october.
>
> However, it will be a lot of things to add/ improve after our project
> (display of vector, improve the renderer : implement the OGC spec Go-1,
> ...). So, as Chris Holmes said I will be really enjoy to see you helping
us
> and improving our code instead of attempting to introduce an alternate
API.
>
> Regards,
> Mickael TREGUER
>
>
>
> Chris Holmes wrote:
> >
> > I agree that #2 sounds like the best option, perhaps we may even aim
for
> > some of #3. Since Simone still hasn't responded it might be best for
> > TOPP to just do the letter. We aren't the experts on this subject, but

> > we can do the work to engage those who are and keep communication
going.
> > I feel relatively confident that you'll be able to work with the
right
> > people though, since our community is generally quite open, and I know
> > that others have funded work on this exact topic. So it'll mostly be a

> > matter of aligning with them, figuring out where your work can make an
> > impact.
> >
> > It sounds like enough time to make a solid impact on GeoServer,
> > especially since I think much of it should be in the codebase by
> > January. Geomatys is giving a presentation at foss4g, and should have
> > their work on 4d with netcdf done by then, see:
> > http://www.foss4g2007.org/presentations/view.php/225
> >
> > GeoSolutions is also working on this, and TOPP is on the hook to
> > incorporate their work in to WCS 1.1 reference implementation by Feb.
08
> > So there should be working 4d support in GeoServer WCS and WMS by the

> > time you start.
> >
> > As for answers to some of your technical questions, I'm pretty sure
that
> > the geotools NetCDF implementation is based on Unidata Java NetCDF
APIs.
> > I believe the code may be in
> > http://svn.geotools.
> org/geotools/trunk/gt/modules/unsupported/coverageio-netcdf/
> > Martin can give more details.
> >
> > GeoServer is also based on Spring, so it sounds good that you guys are
> > moving in that direction.
> >
> > But yes, this all sounds great, good to hear you're in line with our
> > general approaches and philosophy. So let's make this happen, it
sounds
> > like it should be a good win all around.
> >
> > best regards,
> >
> > Chris
> >
> > Jon Blower wrote:
> >> Dear Chris, Rob, Jody (and list),
> >>
> >> First off, thanks very much indeed for replying (in so much detail
> >> too) on a weekend! I'm very glad that there's enthusiasm for what I'm
> >> proposing and I understand completely the desire to be cautious when
> >> incorporating new code. I'm also aware of other efforts in similar
> >> directions, particularly with regard to nD coverages, and have had a
> >> couple of chats with Mickael Treguer of Ifremer at meetings in the
> >> last few months. Naturally it's desirable for us all to work together
> >> and I appreciate that I need to catch up with these other efforts.
> >>
> >> Here are the facts 'n' figures about the proposal I'm putting
together:
> >> 1) It will (hopefully) fund one person for one year, starting Jan 08,
> >> plus a few hours a week of my time as a manager.
> >> 2) This person will have other things to do besides Geoserver
> >> integration, for example, developing a couple of test cases (prob.
> >> with UK Met Office and someone else). My guess is that there will be
> >> about 6 months on Geoserver-related work, although we will do some
> >> preparation before the project starts in order to hit the ground
> >> running.
> >> 3) The proposal is due in on August 1st! I won't bore you with the
> >> details of why the notice is so short, only to say that this is my
> >> fault and I apologise! Normally letters of support can be submitted
> >> after the main proposal is due, but I will check this tomorrow
> >> (Monday). It would be very good to be able to agree the content of
> >> the letter asap - the Tuesday IRC meeting should be OK, but if we can
> >> at least agree on the scope of the work, that would help me greatly to
> >> prepare the case for support.
> >>
> >> (There is quite a lot of bureaucracy for a fairly small pot of money,
> >> unfortunately.)
> >>
> >> As well as the short deadline and the small size of the money pot,
> >> there is one more thing that we have to watch out for: This is a
> >> Knowledge Transfer call, not a research call. Therefore we have to be
> >> wary of spending too much time on development and experimentation.
> >>
> >> Hence my immediate need is to figure out what is realistically
> >> achievable. I am largely ignorant of the Geoserver codebase, although
> >> I like what I hear about all the effort that is being made to keep it
> >> maintainable and readable. I don't want to place unrealistic demands
> >> either on ourselves or on the Geoserver community. Here's a sliding
> >> scale of ambitions in increasing order (I think!) of difficulty:
> >>
> >> 1) We simply tidy up our code and document it thoroughly (despite what
> >> you might think from our website, we *can* do decent documentation,
> >> but haven't had time yet!) We'll especially concentrate on novel
> >> features (e.g. algorithms) that we think are important (and maybe
> >> unique) to our code. Then the Geoserver team can review the code and
> >> docs at the end of the project and we together decide on the best way
> >> forward, which might involve us travelling to meet the right people
> >> for a face-to-face meeting. The Geoserver team would commit to be
> >> lightly involved during this process (to guide us as to what will be
> >> important from a Geoserver point of view) and to discussing a roadmap
> >> for progression at the end.
> >>
> >> 2) We get to know the Geoserver code base and re-engineer our code in
> >> line with Geoserver quality procedures (inc. documentation) and using
> >> Geoserver APIs (e.g. GeoTools) whenever we can (and reporting when we
> >> can't!) We would need guidance from the GS team to help us understand
> >> the GS APIs and procedures, as well as to make us aware of other
> >> similar efforts with which we might potentially clash. Maybe we can
> >> just join the weekly IRCs but it would be useful to have a friendly
> >> developer with the right expertise to pester...
> >>
> >> 3) We work very closely with the GS team to agree, at an early stage,
> >> a roadmap for incorporation of our code into GS and both parties would
> >> commit to achieving a certain amount of this within the year of the
> >> project, maybe aiming at incorporating (certain parts of) our code
> >> into a specific future Geoserver version.
> >>
> >> From what I understand from your emails, option (3) is probably
> >> unrealistic as it seems that the GS team would want to review our code
> >> before committing to such an agreement, which is absolutely fair
> >> enough. My current feeling is that option (2) is the best option: it
> >> does not commit Geoserver to anything but will improve our code base
> >> and provide a solid platform for future integration. Option (1) might
> >> be a little weak to justify the funding I feel.
> >>
> >> A technical point: we have been using the Unidata Java NetCDF APIs as
> >> our base. Does the GeoTools library use this too (for NetCDF data at
> >> least)? Do you know when nD NetCDF data support in GeoTools will
> >> appear (if it has not already done so)?
> >>
> >> You are all very welcome to look at our code but please remember that
> >> I don't regard it as finished by any means! The most recent binary
> >> release (plus brief instructions) can be found in a practical session
> >> I gave at a workshop a little while ago. Use this if you want to
> >> actually try it out (should be doable in about 10 minutes of work):
> >>
> >> http://www.nerc-essc.ac.uk/~jdb/WebMappingPractical.zip
> >>
> >> This binary release is a little behind the source release, which we
> >> are currently re-jigging to work within the Spring framework (of which
> >> I have recently become a fan). The latest source code for this
> >> Spring-based version is in a branch in our Subversion repository:
> >>
> >>
> >>
https://ncwms.svn.sourceforge.net/svnroot/ncwms/branches/spring-20070706/
> >>
http://www.resc.rdg.ac.uk/trac/ncWMS/browser/branches/spring-20070706/
> >>
> >> I suggest you start with the
> >> uk.ac.rdg.resc.ncwms.controller.WmsController class to get an idea of
> >> how it works. This snapshot mostly works but the admin system still
> >> isn't finished so it will be hard to actually use. NetBeans is our
> >> IDE of choice, and the code base includes NB project files so you can
> >> open in NB straight away if you want.
> >>
> >> I have no wish to impose a new API onto the community and would much
> >> rather improve an existing API (e.g. GeoTools) to meet our needs.
> >> However, we have had specific functional needs in the past that have
> >> forced us to develop something bespoke. I hope this (admittedly
> >> limited) project can at least start us off down the road of
> >> integration. I think we now have most of the functionality we need
> >> (in the WMS/WCS at least: the web portal is a different matter!) so we
> >> should be able to concentrate on collaboration.
> >>
> >> As for immediate timescales: in an ideal world I'd like to agree on
> >> the broad scope of the work by the end of Monday 30th or the morning
> >> of Tuesday 31st. If this means loosening the collaboration because
> >> deadlines are far too tight then so be it - it's my fault and I'll
> >> just have to make the best of it. Having agreed the scope, it would
> >> be great to agree on the wording of the letter of support in Tuesday
> >> evening's IRC. The physical letter can probably wait a little while
> >> longer.
> >>
> >> I hope this sounds OK and I really do apologise for the tight
> >> timescales - I understood that this could wait until the next round of
> >> KT funding in March 08 but I found out on Friday (to my horror) that
> >> this wasn't the case.
> >>
> >> Best wishes,
> >> Jon
> >>
> >> On 7/28/07, Chris Holmes <cholmes@anonymised.com> wrote:
> >>> Echoing Rob and Jody, it sounds like great work that you're looking
to
> >>> add to GeoServer, but be cautious about being over ambitious. It
sounds
> >>> promising that you're seeking funds specifically to integrate with
our
> >>> work, just make sure that it's a sufficient amount. Like Jody
mentioned
> >>> we try to be risk averse about people dumping code on us that isn't
in a
> >>> _very_ maintainable state, as no matter what it takes extra work for
the
> >>> community to get it to the standards we need. So I'd like to hear
more
> >>> about what type of time commitment you can put in to working on this,
> >>> both when you have funding and availability to at least help out with
> >>> questions after the knowledge transfer funds run out.
> >>>
> >>> The other concern, and I'd like to hear from both of the groups I
know
> >>> working on this as well, is that nD support is getting a lot of
traction
> >>> right now. I believe Geomatsys and GeoSolutions are both on the hook
> >>> for 4-d WCS and WMS support. A number of the things you've worked on
> >>> are at least started in GeoServer/GeoTools, and we have a preference
for
> >>> their solutions as they've been working within the community. So as
an
> >>> integration strategy I'd like to be sure that you're open to more
> >>> helping them out and improving their code with the type of
improvements
> >>> you've made before, instead of attempting to introduce an alternate
API.
> >>>
> >>> So for example I really don't want another pipeline for efficient
> >>> generation of WMS map images that runs parallel to ours. If yours is
> >>> truly superior in every way and incompatible with how we do it now
we'd
> >>> be open to replacing it, but that kind of move is a lot more risky
for
> >>> us. So the preferred method of working would be take your algorithms
> >>> and plug them in to our existing pipeline. This holds true for tile
> >>> caching, kmz output, openlayers interface, and 4-d netcdf support for
> >>> sure, and may for the other topics as well. So as long as you
> >>> understand that the knowledge transfer will go a lot smoother if you
> >>> learn our codebase and improve it then trying to tack on your stuff.
I
> >>> hope this doesn't come across as 'we have the best code and only want
to
> >>> play if things are our way', on the contrary, we've had a number of
> >>> great outside contributions and some less successful attempts, and
the
> >>> patterns of successful ones have followed that route. Your email
> >>> thankfully seems to be talking in the right directions, integrating
and
> >>> contributing, but I just want to be sure that things from our
> >>> perspective are spelled out.
> >>>
> >>> So the final question is timing, when would you be able to do the
work,
> >>> when would it absolutely have to be finished by? The best route from
> >>> our perspective would likely be to let the current nD implementations
> >>> finish up a bit, as I'm already a bit worried that may be doing some
> >>> parallel work that will need to be resolved.
> >>>
> >>> Sorry for perhaps coming across as negative, I'm actually really
excited
> >>> about this as I've been following your work for awhile and it looks
> >>> really well done and would be a great step forward to have it in
> >>> GeoServer. I just want to be sure that this is a success and that
you
> >>> know what you're getting in to. If you can work with everything I've
> >>> written I think there's a good chance we could do this. I would like
to
> >>> hear from the other two main nD groups, and from you about timing.
> >>>
> >>> What's your timing needed for the letter of support? The best would
be
> >>> to talk about it on IRC at the PSC meeting on tuesday. And to see if
> >>> someone from the nD group would be open to guiding you directly, in
> >>> addition to general support from the community. And I'm out of the
> >>> office until at least wednesday, so if you need signed letterhead
from
> >>> TOPP I may not be able to get that out till the end of the week at
the
> >>> earliest. But we may be able to come up with an alternate strategy.
> >>>
> >>> best regards,
> >>>
> >>> Chris
> >>>
> >>> Jon Blower wrote:
> >>>> Dear all,
> >>>>
> >>>> I hope this mailing list is the right place to ask this sort of
> >>>> question. We have the opportunity (but not much time!) to apply for
> >>>> some Knowledge Transfer funds to allow us to contribute our work on
> >>>> OGC web service development to a wider community. As some of you
> >>>> probably know, we have developed WMS and WCS implementations for a
> >>>> project called DEWS (www.dews.org.uk). We originally intended to
use
> >>>> Geoserver in DEWS but the necessary features (esp. 4-D coverage
> >>>> support) were not present at the critical point in the project, so
we
> >>>> developed our own solution for our specific problems.
> >>>>
> >>>> DEWS is now at an end and we would like to see our code and ideas
> >>>> reach a wider audience. We think that integration with Geoserver
will
> >>>> achieve this and so our proposal to the Knowledge Transfer fund will
> >>>> include time to integrate our code, where appropriate, into
Geoserver.
> >>>> Our work has been particularly concerned with the serving (WCS) and
> >>>> visualization (WMS) of large-volume gridded ocean forecast data,
which
> >>>> presented us with certain technical challenges, for which we found
and
> >>>> implemented solutions that we would like to contribute to the
> >>>> community. In particular, we can offer (some of these might already
> >>>> be supported, in which case great!):
> >>>>
> >>>> 1) Support for large-volume 4-D NetCDF files conforming to the
Climate
> >>>> and Forecast convention.
> >>>> 2) Support for curvilinear and other exotic grid types with no
> >>>> analytical formulation (increasingly common in ocean model data).
> >>>> 3) Algorithms for efficient generation of WMS map images (we aim for
> >>>> <0.5s per image for a 256x256 tile, even for high-resolution
datasets
> >>>> and irregular grids).
> >>>> 4) A tile caching mechanism (actually we cache data arrays so that
the
> >>>> image style can be changed without going through a new
> >>>> extraction/reprojection process).
> >>>> 5) An OpenLayers-based AJAX web interface for our WMS
> >>>> (http://lovejoy.nerc-essc.ac.uk:8080/ncWMS/godiva2.html). I know
> >>>> something similar exists in Geoserver but perhaps aspects of our
> >>>> solution will be useful.
> >>>> 6) Display of scalar (e.g. temperature) and vector (e.g. velocity)
> >>>> fields (the latter are automatically discovered from the source
data).
> >>>> 7) KMZ output (again I know this is present in Geoserver but our
> >>>> approach might be a bit different!).
> >>>> 8) Some proposed extensions to WCS and WMS to support our kind of
> >>>> scientific data (this is more a matter for the OGC than for
Geoserver
> >>>> but it makes the software more useful to us).
> >>>>
> >>>> We have found all these features to be important in the DEWS
project,
> >>>> as well as in many other projects (we are involved in a number of
> >>>> high-profile EU projects connected with the serving of real-time
> >>>> oceanographic data: MERSEA, ECOOP, MyOcean).
> >>>>
> >>>> We do not wish to fragment the open-source geospatial community by
> >>>> producing independent "products" in the long term and so we think
the
> >>>> best way forward is integration with Geoserver. This would lead to
> >>>> greater uptake of Geoserver in the communities that are already
using
> >>>> our software. In order to achieve this, we will need support from
> >>>> existing Geoserver experts who can guide us along the right paths.
> >>>>
> >>>> Therefore I'm looking for someone who can speak for the Geoserver
> >>>> community to support our proposal. If someone is prepared to do
this
> >>>> we will need a letter of support, which will take a little crafting
-
> >>>> but in the meantime it would be really useful if someone could reply
> >>>> asap (sorry for the short notice) with their thoughts on this. Then
> >>>> we can sort this out off-list.
> >>>>
> >>>> Best wishes,
> >>>> Jon Blower
> >>>>
> >>>
> >>
> >>
> >
> > begin:vcard
> > fn:Chris Holmes
> > n:Holmes;Chris
> > org:The Open Planning Project
> > adr:;;349 W. 12th Street, #3;New York;NY;10014;USA
> > email;internet:cholmes@anonymised.com
> > title:Managing Director, Strategic Development
> > x-mozilla-html:FALSE
> > url:http://topp.openplans.org
> > version:2.1
> > end:vcard
> >
> >
> >
-------------------------------------------------------------------------
> > This SF.net email is sponsored by: Splunk Inc.
> > Still grepping through log files to find problems? Stop.
> > Now Search log events and configuration files using AJAX and a browser.
> > Download your FREE copy of Splunk now >> http://get.splunk.com/
> > _______________________________________________
> > Geoserver-devel mailing list
> > Geoserver-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/geoserver-devel
> >
> >
>
> --
> View this message in context: http://www.nabble.com/Proposal-to-
> contribute-code-to-Geoserver-tf4162007.html#a11942054
> Sent from the GeoServer - Dev mailing list archive at Nabble.com.
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems? Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> _______________________________________________
> Geoserver-devel mailing list
> Geoserver-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/geoserver-devel

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
--------------------------------------------------------------
Dr Jon Blower Tel: +44 118 378 5213 (direct line)
Technical Director Tel: +44 118 378 8741 (ESSC)
Reading e-Science Centre Fax: +44 118 378 6413
ESSC Email: jdb@anonymised.com
University of Reading
3 Earley Gate
Reading RG6 6AL, UK
--------------------------------------------------------------

Vincent Heurteaux ha scritto:

Yes it could make sense, but we've found some funds to start working on "GO-1 Renderer" with a statefull approach (for a desktop app), and we could then benefit from the refactoring operation to do kind of "switchs" to give it stateless capabilities. And we don't know at all Streaming Renderer, it could take a long time for us to refactor some part of J2D into it.

Well, I guess if you do make it so that j2d renderer uses the Renderer
interface keeping both around in the code would not be such a problem
(the official releases would ship with streaming until j2d proves
to be superior both performance, stability and maintenance anyways,
but that's an issue that will solve by itself, integrating it
would be easy and time will tell which renderer is the best).

So, that's not really the crux. The real crux is, how do you specify
to your renderer how to draw the map?
We got SLD, but afaik it does not have the necessary constructs
to allow you doing what you spoke about.
If you extend SLD with new constructs, I think we would have no big
troubles, but if you roll your own, I fear the likeliness of an eventual
integration in an official GeoServer would drop down dramatically.
Having two style specification languages at the same time, or for
that matter, adopting a complete replacement, would be a much more
serious issue, because it would not affect the developers (small
group, change is not an issue) but every single user we have around.

Cheers
Andrea