For the past several years I’ve focused on just researching SQL Server design patterns and speaking at conferences, user groups, seminars, writing (SQL Server 2008 Bible – 1,688 pages – will be at DevLink and in the bookstores Aug 24), and I’ve had a blast. SQL Server is about as much fun as a person can have (apart from marriage).
As a research project, I’ve been playing with object-relational designs for the past 4-5 years. But I’ve found little traction with Nordic. Only about 50 people have ever emailed me asking questions about it. It seems the .Net crowd isn’t interested in a smart database, and the database group isn’t interested in objects.
It’s time to make an oblique turn in my career. I‘ve pulled Nordic from CodePlex and I’m launching a micro-ISV focused on meeting the information organization needs of organizations that serve children in developing nations.
To the original Nordic code I’ve added Data Policies – rules that track questionable data, Business Process Eventing – several things can trigger an event which creates alerts and actions, and Snapshots – some data is relatively static (e.g. DOB, name, place of birth), but lots of data is really a snapshot in time (e.g. height, weight, health, diet, education level). Nordic now has multiple types of snapshots that can be defined for any class. Snapshots really open up the data modeling for an object database. They can hold data like annual audits, annual profiles, and applications. And, snapshots can serve as roles. Of course, since I’m a huge believer in object databases all these features support inheritance. Another cool thing about the generalization of an object database is that all these features – workflow states, associations, snapshots, data policies, alerts, and events are all generically searchable. I’ve gone through a few dozen iterations of the search proc adding more flexibility. All in all, I’m having a very fun summer.
Monday I’m presenting a demo to a mid-sized client. I’m excited about having a real product that solves real problems. As much as I enjoy talking about SQL Server, I much more enjoy developing.