Thursday, January 13, 2011

Different levels of progress

To start: I got my Windows Phone. I have the Samsung Focus, and I'm loving it. I never pictured myself as one to become so committed to using a device for so much of my daily activities, but it has certainly integrated quickly and deeply into my life. The Focus is one of the few models that supports memory expansion, but I have yet to do so because of the uncertainty on supported models. Not that I've run out of memory... yet.

Running my GEDCOM Viewer app on the phone is just so much better than in the emulator. It's a completely different experience to have the code running where it's meant to instead of just as a theoretical application. That doesn't mean it's done, though; it has a few more functional bits to be added for a first release, and a LOT of user interface stuff to work on.

I've picked up three books for Christmas: Silverlight 4 in Action, Learning XNA 4.0 and XNA Game Studio 4.0 Programming. The first will hopefully help me learn a little more about the layout in Silverlight, though I really need to bunker down and go through Mike Taulty's Blend Bits series as well.

I've got a few game ideas for the phone, one trivial and silly, another more educational and involved. The first I will likely whip up while reading the XNA books, but the other will be an ongoing project on the side both as I learn the XNA required as well as the educational material behind it.


Back to the GEDCOM Viewer. It started off with a nonsense project name early on, but as I approached completeness (of functionality), I thought it needed a name, albeit a boring one, so attempted to do a rename in all of the pertinent places. That did not go well, and I ended up creating a brand-new project with the correct name and cut-n-pasting code over. It was a mixture of namespaces, manifests and metadata that just didn't mesh with a brute-force rename. Lesson learned...

...or is it? I follow a variety of genealogy sites and mailing lists, mainly ones that discuss the data standards that are used for recording genealogical data. This is an ongoing debate, because while the hobbyist genealogist is ultimately concerned with how they're related to some distant historical figure, serious genealogists (which I'm trying to become) are concerned about the different relationships of the DATA, not just of the people. While the hobbyist might find a document showing a marriage or a birth taking place and just say "X married Y" or "Z was born to X and Y", professionals want to say "this document says X and Y married. I have A and B, and I conclude/suggest/believe that A==X and B==Y."

This changes the way that information is kept. The GEDCOM format stores conclusions (A was born there and then, A married B), perhaps with citations to source documents, but they're all recorded as fact, not supposition or theory. Researchers, especially when dealing with historical data, don't want to claim certainty on anything, but want to provide all of the information available to the next researcher to make an educated decision on whether they believe the same conclusion or not. A handful of attempts have been made to make an interchange format for this kind of data, to allow sharing of research, but none have become popular. One group, though, the International OpenGen Alliance, is trying to change that, and I'm hoping to be able to take part in the process, if not in the capacity of a researcher (because I'm still a relative amateur, and likely don't have the insight into all of the needs of professional researchers), but for any programming APIs and data standards that are developed, because that is something I *do* have a lot of experience in.

If you're reading this blogpost because of mention of genealogy or GEDCOM, you might want to take a look yourself:

OPENGEN.ORG - Genealogy Standards Alliance

The reason I mention this is that while the first version of my app is a GEDCOM viewer, I'd really like to support other formats, especially if they become standards in the field. The problem there? I've done that rename to "GEDCOM Viewer", which won't be accurate if I can support some OpenGen format in the future. Perhaps I'll have figured out the renaming magic by then?


I can blame a lack of UI in my app as the reason why I haven't finished, and it's a good excuse, but not one that I shouldn't be able to surmount. Personal events (selling the house, new child on the way) don't provide a lot of free time either, but a sizeable hurdle that, frankly, has left me a little unmotivated, is the process of getting set up with the Marketplace.

Being in Canada, there are concerns about how you get paid out if your app should ever make any money. By default, Microsoft takes their cut, and unless you've gone through the paperwork, will also withhold money for the IRS. This means that I will get $0.49 on the dollar, which will also get taxed by the CCRA here, to the point where I'd see around $0.35 in my pocket for every dollar in gross sales.

Microsoft's entitled to their cut, and the Canadian Government, I suppose, can have theirs. But there are ways to not have to share with the IRS. In theory. But what a pain! I won't detail the hassle so far (and still on-going), but being in this state of "couldn't really earn my money anyway" hasn't been hastening my fingers to finish the app and submit it.

That's nonsense, of course. I could submit the app (and have it refused a hundred times, if you believe some of the developers I follow) and (full with optimism) have it sell without having finished the financial portion of the Marketplace registration, just letting my pennies accrue until I've sorted everything out with the IRS. And, if I recall, Microsoft doesn't pay out until you've earned $200, which on a $0.99 app would be 286 sales... as popular as my genealogy viewer can hope to be, that's a lot of sales to dream about. So it would mean a second app, a third app, a first/second/third game, before I got to that point.


I should really just finish this app and start the submission process, find out what little things I missed in the list of rules, and while sorting that out, get started on the next app or game. The biggest motivation should be that the rebate deal is going to expire in a month's time, and there's a good chance that the money I "make" from that is going to amount to more than I'll ever make from the apps themselves.

No comments:

Post a Comment