4 min read
When writing software, there is always this tension between writing good software fast and having good code structure, which usually results in a nice API. These two are completely orthogonal - you can definitely end up having one without the other, and it is really hard and time consuming to have b...
6 min read
For quite a while RavenDB had geo-spatial search capabilities, but ever since it was introduced it was limited to finding documents with latitude and longitude within a radius from a given point. In the past few weeks I was working on revamping the Lucene.Net spatial module, and earlier this week th...
2 min read
Apparently do not work well together... Consider the following: [code lang="csharp"] public class Foo { public int AddsNumbers(int x, int y) { return x + y; } } public class FooTest { public static IEnumerable<object[]> Expectations { get { yield return new object[] { 1, 2, 3 }; } } [Theory] [...
8 min read
About 2 years ago I was building a .NET desktop application, and needed an easy way to allow it to auto-update itself. I looked for libraries that do that, and all I could see was either complicated, commercial, or geared towards a very particular (usually common) use case. I didn't want anything of...
5 min read
Traditionally, Content Management Systems are about Content. Whenever Data that is not simply a content page was going to be persisted in a CMS, you'd somehow fit it in a Content entity, keeping the thought process always at "how would it look to the end user", never treating it as actual data. Sure...
2 min read
Or: Introducing Spatial4n
The Lucene spatial contrib module has been a nice addition to Lucene, but for a while now too many bug reports have been piling up, and it got to a point where it was clear something was broken somewhere deep inside. Luckily, a bunch of good people started writing their own...