Reject dirty data! Don’t let it in, no matter what happens

More of a note to myself. Just working on the JSF bindings of the soon to be announced openEHR framework, and due to nature of my persistence model, once bad data finds its way into db, it messes the whole form entry. It is possible to modify the persistence mechanism for immunity to bad data, but is that something I should do? I guess not.

When bad data appears in the system, it should stop the execution. You (I) should find why that happens, and fix it. I’ll keep the persistence a little bit fragile intentionally. Better to discover potential problems now, then trying to find them in production system.

Very sad state of Eclipse GUI designers

I have just realized that the VE (Visual Editor) project does not support Eclipse versions above 3.2. Moreover, the project seems to be dead, and even if there are a few people who seems to be active in the project mail list, the overall look scene is not very promising.

I am just starting a new project which will be open source, and it will use Java Swing for the UI. There is simply no free UI designer that I can use for Eclipse 3.3 or 3.4.

Matisse4MyEclipse is supported by MyEclipse (I’m one of their customers) and Instantiations have their very impressive Window Builder product. However, none of these give me the ability to just put my source online so that other people can download it and play with it using the same set of tools that I’ve used. Eclipse has become a very solid and rich platform, but UI designer functionality is in a very sad state.

Just because of this, I’ll have to use Netbeans, because I can not expect people to hand code Java Swing UI in the year 2008! Instantiations provides open source licences, but this would not allow people who download my code to use the same set of tools (I guess)

As a result, whatever I do will have to be done on Netbeans instead of Eclipse only because of this situation. I cant’ believe that there  is no single free UI designer for Eclipse now.

London

The title is simple, but means a lot for me at the moment. I’ve moved to London for starting a PhD in University College London, CHIME. It took a a lot of steps, it took quite a lot of time, and there is a lot that must be done here.  This is a short entry, for I have no idea how to talk about this change in detail. So many things to say…

OpenVPN, lessons learned

I’ve just setup OpenVPN on a windows xp machine, and found out that there are both good and bad sides of it. Good thing is; if you do not deviate from the well known scenario, follow the howtos, you’ll mostly make it fairly easily on windows.

Bad thing is; I rarely stay within well known scenarios, and I wanted a bridging setup. This means creating a virtual adapter and bridging it with an existing phsyical adapter. Lesson learned: on a windows machine with 2 nics, choose the one with default gateway to internet for bridging with the virtual adapter. You can use the other nic too, but I could not figure out how to connect that subnet to internet so that I can relay all traffic over vpn.

Routing seems to be a little hard to configure in MS, or with a better description of situation; I could not see many docs that migh help me out in this specific context. Anyway, I got it working, and I’m pretty happy with the performance. I’ll try to fix that subnet routing issue too.

One minute rant about Facebook!

Ok, will write this and go back to coding a Facebook app. Facebook, why on earth do you claim that you are giving an API to developers? There are so many quirks that one has to deal when building Facebook app, that you feel like there is a camera hidden somewhere in th office, and Facebook staff is laughing at you while watching you suffer.

The ajax infrastructure does something with the calls, so that your servers receive an ajax request three or four seconds later. If your server needs to get a piece of information (like friends of someone), than you can add another 3-4 seconds (at best). How can I claim that ajax improves user experience when a call takes 15 seconds? There is no surprise so many people are using iframe apps.

Now if you excuse me, I have to re-write some code that took almost 8 hours to write in the first place. All that time is gone to make sure that Facebook ajax functionality can not cover my requirements, which is a very, very basic case of ajax. I hate dealing with other people’s code, and software development has become almost all about it lately. Ok, ranting is over, time to code…