Too much flexibility hurts, really…

Eclipse supports more than one way of referencing libraries, for example MyEclipse hibernate support adds related jars in a separate item which is not in referenced libraries. You see another item in the package explorer under your project.

The result? Almost always, Google Web Toolkit refuses to load these libraries. Apparently the best thing to do is to create a local folder like libs or something, copy the jars into it, and add them from the build path configuration. Otherwise, running the deployed code becomes a nightmare.

There is a really, really thin line between flexibility and complexity, but that’s the one to watch for.

Another universe, in which I was a kid

There was this TV show which I used to love. I was fascinated actually. It was about a family who has accidentally passed onto some alternative reality. They were trying to get back, while escaping from some guy , and they were trying to fit into weird cities they were travelling.

It is one of those things that is carved into your mind when you were a little kid. I do not know why, but I felt an urge to find what it was actually called, for it was aired when I was a little kid, and I found it. Check it out here in case you want to know about a series called otherworld.  I’ve always been a fan of science fiction, and this one was fun. Too bad it is not possible to have a dvd set of the series.

Looking for trouble? Try Bayesian Artificial Intelligence…

Ok, I’ll be honest, I’ve always been into probabilistic methods, for they somehow “fit” into my way of thinking. There is something about probabilistic methods, and probability theory; you are either suitable to work with it or not; you either love the field, or hate it.

I’m the kind of guy who has some love hate relationship with it. I certainly like the field, but the overall concept is so deep and abstract that I can get lost very easily. Something that makes perfect sense seems like Chinese the next day, but I still can’t let go.

On top of that, I’ve been working on integrating probability based methods to my work in data mining and decision support, and finally I found myself working on Bayesian AI. Trust me; it “is” hard. It requires you to cover a vast amount of subjects and even then there is always something missing. Still, I have not given up, and I’m about to reach a point where I can build simple but practical applications for medical informatics. Bayesian AI is basically probabilistic modeling for building (semi)autonomous systems. After Judea Pearl wrote the book Probabilistic Reasoning in Intelligent Systems, an army of researchers rushed to the field, but still the field seems much less crowded compared to well known AI, neural networks etc. If you’d like to have an idea of what I’m talking about; MIT has a very good web page in OpenCourseWare which you can find here . I have been looking around to find some frameworks which I can use, and the work in the field has few complete, well polished outcomes. Most of the projects seems to be dead or incomplete, but there are a few worth mentioning, but I’ll do that later.

Bayesian AI provides a set of very strong tools when you have a  heap of raw data and chaos, which is an acceptable definition of health informatics. I’m very clear about one thing; I’m tired of building things that somehow collect and save data. Most of the time what we call information is nothing more than a set of fancy reports, and we are quite far away from using existing data for decision making. I really believe that there exists a requirement for a new generation of tools that will be based on modeling of healthcare domain so that we can forecast the outcomes of our choices, at least at a primitive level. Even the simplest of such tools would make a huge difference. I should say that it is very, very hard to build them, but it seems like a more justified effort than building another version of an already existing EHR system or HIS. There are a lot of bright people working on these fields, why very few people choose to work on modeling and forecasting is a mystery to me.

The world is not a perfect place. Well, not yet…

Ruby on Rails is nice. It’s really nice. For most of my web development, I would not hesitate to use it. There are some aspects of it that I really like, and you can read a lot of things written by many others, explaining why rails is nice.

The major problem is about scalability, and the way people see rails. It’s a young technology, and for those of us who have projects with certain demands, there is not much to do when it comes to choosing technology. For a large scale healthcare project that will use millions of records, I’d really like to use rails, but I know that it would be an adventure to talk about this in a meeting where there are people who will pay the money. Probably (actually most of the time. these days ) they will not be aware of ruby or rails, and when they hear that the project for which they will be paying will be built on a technology that they have never heard of, they will not be happy. The problem is not always about the technology, but also about the maturity of it, the brand of the technology. When you say Java or .NET, people do not usually object. Both of these technologies, especially Java has been a dependable, mature solution for quite some time.

The thing is, I want to use good features of rails, and be able to provide scalability and stability. There are many out there who claim that this is possible with rails, and I think it can be done after some work on rails setup. However, Sun Microsystems has been supporting JRuby for a while, which is a complete implementation of ruby language in Java. It is now at a point where you can run a rails application and deploy it to a J2EE application server. Now this is great news! Develop using the productivity enhancing aspects of rails, deploy on an industrial strength java application server. Along the way, you also have the option of using millions of Java components and libraries, which can be accessed by jruby.

If this initiative takes off, web development in enterprise shops will have a very strong option in the near future, next to existing ones. More to come on this one. For the impatient, this might be interesting.

Finally, live on Slicehost!

Well, I have been thinking about this for  a long time, and I have managed to do it finally. I have a few domain names, for which I always have some thoughts, and of course I never have the time to work on those thoughts. This time I have made a change and bought myself a nice warm slice from slicehost. I have a linux server on my own now, and it is much more fun than any other shared hosting service you might have.
One thing though : it  is not easy to set it up! Still, after quite a bit of work, I have managed to put together all my domain names on one box, and so far, I am very happy with what I have. More to come on this, just wanted to say from my new home.