[SoC] Re: Request for views on the proposal on pgRouting project.

Daniel Kastl daniel.kastl at georepublic.de
Thu Mar 11 22:18:28 EST 2010


Hi Jatin, hi Stephen and others,

Thank you, Jatin, for your early and detailed project idea!
And sorry that I haven't replied faster, but in Japan we usually sleep when
the mailing list threads grow ;-)

I'm not the person, who wrote the C/C++ code in pgRouting and Anton will
probably be mad at me later when I give amateurish comments, but Stephen
called me, so here is what I think about the idea:

First, I'm not sure I haven't heard about a shortest path search algorithm
implementation in Java, and as far as I know openrouteservice.org is Java
based. There was always some talk to releaase the source code, but I'm not
up-to-date anymore with that issue.

Speaking for pgRouting I can't see much advantage for a Java replacement of
the C part.
Jatin, may I ask you if you have already installed and tried pgRouting?
Maybe you have already tried our workshop, haven't you?

Because for a user the "API" to pgRouting isn't in C or in C++ and it won't
be in Java. pgRouting extends PostgreSQL/PostGIS with shortest path search
functions, so the way you talk to pgRouting is SQL.
The reason why pgRouting uses C is more or less historical, it makes use of
Boost library and I'm not sure actually you can make use of Java with
writing for PostgreSQL. Anton actually likes Java much more than C, that's
not the reason.

The idea behind pgRouting is that you have your network data stored in a
database (not in a binary format for example) and just select the data of
your graph you need to do a shortest path search (SQL "select ... from ....
where").

Because it works through SQL you can actually make use of pgRouting with any
software that can connect to a PostgreSQL database. If your program is
written in Java, you might use JDBC for that. Your software doesn't need to
care that pgRouting uses Boost library and is written in C.

There is actually an alternative project called "pgRoute" written by
Christian Gonzales, who replaced Boost with iGraph library.
But for the pgRouting project I don't see a Java implementation as important
(Anton, do you?), because it won't bring new functionalities and we then had
to maintain a Java and a C "tribe" afterwards.

So I'm afraid, Jatin, your project wouldn't be ranked high on our internal
list, what lowers the chance to be selected by GSoC. Not because we don't
like Java or your thoughts are not good, but because pgRouting prefers to
get new features implemented.

I also think that for a GSoC project creating some new functionality and
extending a project, instead of rewriting it in another programming
language, is much better.
Nevertheless, as you could see, there are a lot of people of other projects
who support your idea. So with some changes it might become a GSoC for a
Java based project.

Best regards,
Daniel







2010/3/12 Stephen Woodbridge <woodbri at swoodbridge.com>

> I would like to hear from Daniel on his thoughts on this. My first thought
> is that pgRouting basically has two components:
>
> plpgsql code that wraps calls to the lower level C/C++ code that implements
> the guts of the graph building and analysis.
>
> It sounds like Jatin's proposal is to build a new project based on Java
> that implements graph analysis in PostgreSQL similar in nature to what
> pgRouting is doing today. I think this makes good sense for supporting the
> Java based projects that Alex mentioned. If this is the case, then I'm not
> sure how much help a pgRouting mentor will be, but I could be wrong on this.
> I'm also not sure that it makes sense to pre-condition Jatin's project with
> what may or may not be good design decision for C/C++ vs Java as I suspect
> the integration issues will vary greatly.
>
> Alex - thank you for your suggestion on other projects that might be
> interested.
>
> Daniel - please chime in when you have a chance.
>
> Wolf - I think your help co-ordinating might be very helpful.
>
> -Steve
>
> Wolf Bergenheim wrote:
>
>> On Thu, Mar 11, 2010 at 20:59, Alex Mandel <tech_dev at wildintellect.com>
>> wrote:
>>
>>> This sounds like it might be a good joint project with gvSig,UDig or
>>> OpenJump integration of pgRouting, all are Java implementations of GIS
>>> and UDig is closely tied to the origins of postgis.
>>>
>>> I'm not sure who has volunteered to mentor from those projects but it
>>> wouldn't hurt to ask around. This might be a good 2 mentor project.
>>>
>>>
>> Yes very nice. One pgRouter and one UDig mentor would be very nice! I
>> can help in the co-ordination if needed.
>>
>> --Wolf
>> _______________________________________________
>> SoC mailing list
>> SoC at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/soc
>>
>
>


-- 
Georepublic UG (haftungsbeschränkt)
Salzmannstraße 44,
81739 München, Germany

eMail: daniel.kastl at georepublic.de
Web: http://georepublic.de

Tel: +49 (089) 4161 7698-1
Fax: +49 (089) 4161 7698-9

Commercial register: Amtsgericht München, HRB 181428
CEO: Daniel Kastl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/soc/attachments/20100312/1ebae4a8/attachment-0001.html


More information about the SoC mailing list