Future releases?

Nov 8, 2010 at 8:04 PM

With an existing and working code, it can be easy(?) to apply best practices of .NET , but what do you think about future releases. How do you plan to port the codes after so many divergences from Lucene Java. A new start with an every new version?.

DIGY

Nov 8, 2010 at 8:27 PM

And would it be more challenging to start with Lucene 3.X which already utilizes generics?

DIGY

Coordinator
Nov 11, 2010 at 9:17 AM

Digy, 

You're right. We will be starting from 3.0.2 (I updated the documentation to this effect). There's really no reason to work from an earlier release.

As far as keeping up with changes from the Java Lucene project... Well, it will be a constant need and a non-trivial task. Basically, my plan is that a developer will read the Java code, understand the changes fully such that they can develop a plan for incorporating the same kind of change in our library. 

In theory, though the APIs and architecture may be quite different from the Java structures, we are dealing with the same domain model. We will still need to represent those domain entities in our code base... There will likely be many very familiar class names with many very similar interfaces. Because of that, the conceptual overhead required to understand the Java code changes and implement it inside of our ecosystem shouldn't be too difficult. In effect, if we have a Java duck and they add the ability to make the duck say "Quack", our .NET duck will need to be able to quack also. The details of the implementation will vary by the situation, but you can be sure there will be a duck in both libraries and we'll find a way to make it quack... but it might quack with a .NET accent. 

Thanks,

Troy

 

 

Nov 11, 2010 at 11:48 AM

DIGY,

I am with you. It will be very hard to keep up with Java Lucene. Java Lucene is such a big codebase and moving very quickly.

 

 

Coordinator
Nov 12, 2010 at 2:10 AM

Maxx,

 

One thing to keep in mind is that we are not afraid of hard work and also don't mind if our project lags behind Java Lucene. Though our methodology may cause us to take longer to release updates than a more direct port would, we hope that what we release will be valuable and worth both the effort and the wait. 

 

Thanks,

Troy

 

Nov 12, 2010 at 2:03 PM

Troy,

If I had to choose between a line-by-line port of Lucene that keeps up with the Java version, but is not as nicely to use with .NET, and a nicer .NET version that's behind, I'll pick the former. There are other advantages to the line by line port, like plenty of documentation, being able to ask in the (very active) Java groups, books (Lucene in Action) and so on that, to me, more than compensate for an interface that feels a bit awkward in .NET.

I guess my biggest concern is that this projects takes resources away from Lucene.NET (which already has not enough resources) but doesn't have enough resources to be viable in the long run. I'd rather see the effort being spent on tools for an automated translation from Java.

 

 

 

 

 

Coordinator
Nov 14, 2010 at 4:37 PM

"If I had to choose between a line-by-line port of Lucene that keeps up with the Java version, but is not as nicely to use with .NET, and a nicer .NET version that's behind, I'll pick the former."

Conveniently, this project allows you to have access to both, rather than having to pick one or the other. 

"I guess my biggest concern is that this projects takes resources away from Lucene.NET"

Lucene.Net seems to have sufficient resources and none of the people working on this project are people who were previously working on Lucene.Net. We don't see this as an issue.

"I'd rather see the effort being spent on tools for an automated translation from Java."

Neither project is focused on this problem. Lucene.Net uses such tools and this project chooses the by-hand approach, because automated tooling doesn't create the kind of results we want. If you're interested in seeing automated Java to C# conversion get better, I'd suggest following or getting involved with Sharpen or one of the other open source projects that builds tools for this task.

 

Thanks,

Troy 

Nov 18, 2010 at 7:36 PM

Troy,

I hope you'll succeed.