Friday, June 26, 2009

Rants: Browsers and Stupid SAF Stuff

Well, here goes the usual rantings again and it's generally about what is happening to web browsers that I personally feel and also about the stupidly and badly designed SAF POS terminals in cookhouses.

Web browser
Well, web browsers are generally growing and becoming more bulky and stuffed up with all too many stuff it shouldn't have. A browser is simply a tool to browse web pages and display contents, rather than the millions of external plugins and tools (etc... Last.fm plugins, Opera Unite features ...etc...) which all major web browsers, including MSIE/IE have.

Hey, can't we just get back to the usual web browser that meets the ACID standards rather than all too much junk? It always takes a bit of a time to startup a browser (regardless of the browser type) because simply, it has lots of stuff to load these days compared to those of olde.

So those designning browsers, it's best to keep it light because that's what people really want (not just me).

SAF Cookhouse POS terminals
I have used the cookhouse POS terminals to scan my identity before getting my food for months and I am totally not impressed by the crappy design. It's just too rough around the edges, buggy and totally inefficient in many circumstances.

For those SAF agents prowling the internet to look out for blog postings, I would keep this particular rant rather abstract because I am sure some paranoid agents might want to come after me if I put the rant in too much detail. Don't worry, there's no pictures going to be included and nothing that leaks any secrets or breech any rules on the Official Secrets Act.

Firstly, the POS terminal for the usual user and the admin user is just crap. I know it's SAF stuff but hey, can't there be at least some efforts in the all too plain GUI design ? Next, when the 'ID card' gets scanned and you are choosing some options or doing something, when someone barge in and scan their 'ID' too, the system gets confused and interrupted.

The system can become rather lag when all the POS terminals are in use... so make it more robust. The admin console is not easy to use, you have to select a virtual keyboard (because it has no keyboard physcially), choose the type of food you are eating , select this and that... for the admin terminal for those who didn't bring their 'ID' to scan and need to type in details on their own. How about making all these little gui interaction more smooth than the current one that breaks any user work flow? Maybe an embedded virtual keyboard should be activated and present all the time rather than having to press a button to call it up?

When a person already entered into the system, let's say for lunch, I have already scanned my 'ID' and took my lunch but someone enters my 'ID' again for lunch, I guess the system is going to get into trouble, else why would someone try to stop us? Ok... this situation is not clear since I can't talk too much about it so go and get guessing.

Mass entry of users have to be done manually and very taxing, why isn't there an easier way like a gui to select all from a name list ?

I think that's as much as I can say for the SAF POS terminal.

That's all for this post.

Saturday, June 6, 2009

H2 simplicity

The H2 database start off is purely brainless. You just click on the H2.jar or something like that and you are off, it launches an internal server (web and servlet server and database server) and your default web browser just pops up a web servlet for you to connect to your database and you are in. You manipulate tables and data using the servlets and forms. I love the pure simplicity and brainlessness of using H2.

The build of H2 jars can be a bit complex since you need to setup JAVA_HOME and paths here and there but these are the fault of Sun Java because they don't automatically provide these setups and leave users hanging there and to figure out for themselves. Otherwise, when all thes eenvironment values are up, the building of different H2 jarfiles for different uses are purely brainless too. Just open a console and 'cd' to the 'bin' folder and type 'build xxx' where xxx is whatever kind of jar you want to build. Simple isn't it ?

If you like consoles to access databases, H2 also provides console (main jar rather than the rebuild jarSmall version). The console is as simple as just 'java -jar h2.jar' . What else can you expect ?

Look at other databases... do they provide such simplicity and luxury ? Java DB aka Derby ... I wanted to learn how to use it but just a glance at the manuals and it put me off...

Overly complex and untidy documentations. Looks of setups here and there, console without any GUI... not simple to use in general. Derby really need to do something to make it's manuals easy to use. I know some have gotten use to the doc in Derby but how about beginners ? Given the choice of H2 and Derby, I think people would prefer H2.

I am not bias towards H2, but the fact is H2 clearly won hands down by it's simple, brainless , usability. When I started to find a java database, H2 and Derby are the options I have. But I move towards H2 and consequently use H2 as my default database whether for storing data or for using them in my software products since it's so easy to handle compared to Derby.

H2 have consistently always try to be considerate to it's users by making it easy to use and that is the very strength of H2.

If you don't believe, try downloading the latest H2 database and use it and also download a Derby and use it. Within seconds after you install or unzip H2, the next thing up and running is a H2 ... or maybe let's leave it for you to experiment and see for yourselves.

manutil 0.1.1 and my first git experience

Well, two things to rant today, firstly about a short intro to manutil 0.1.1 and then about my first experience using git connecting to the sourceforge git version control I am using for my new project, dbDir.

manutil 0.1.1
Finally, manutil for Makagiga have moved itself out of 0.1 alpha to 0.1.1 as I have deemed it ready to move forward. A thing I added into 0.1.1 is the function to open HTML help manuals (help manuals written in HTML files) to provide more diversity to how developers want their help files to present themselves and the format. It opens these HTML help files in an internal HTML browser built into the latest makagiga versions (3.5 and 3.6 version). It uses the cobra engine used by the Lobo Web browser project. The rendering is admittingly pretty off because the cobra engine isn't really mature yet but that's the best engine that could be found in the open source written in Java to be used. All else of manutil works fine as they should. Give feed backs about manutil 0.1.1 to kdt, the creator of makagiga or me. I have given manutil a custom icon too. It's a bit rough around the edge but this is the first version. Better ones would come in the next versions when I get time to experiment more graphic effects for the icon desgin.

My first experience using Git
I have created a new project called dbDir in sourceforge and set git as my default version control.It wasn't easy nor straightforward. Since I am using Linux, you don't really expect any GUI unlike the Windows version but I tried the Windows' version of git using the GUI and it is equally not easy to understand how to use. Simply, the documentations in Git pretty much isn't good. I had to figure out what I have to do to connect my already created Git repo in my machine to sf.net's one and upload my first commit of codes.

I finally got already it a bit by reading a blog post at http://rwmj.wordpress.com/2009/03/06/git-fatal-no-matching-remote-head/ .

Git, like SVN , is not easy to understand when you just started because you don't know how to start it and how to approach and what the codes or even the manuals are talking. They are either too cryptic or abstract but when you got it, you can move on. So for developers of git and SVN and other softwares, make sure the user (presuming they are noobs) have to understand and find it easy to navigate and how to start off. A good example that fulfil the above 'easy to start off' is the H2 database. I would make a new post to talk about the pure brainlessness of H2, it's strenght.

SO back to Git, I have to 'cd' to my directory containing my codes , use 'git init' and I tried to 'git clone' the url sf.net provided me for my personal access to my git in sf.net and it throws some weird error of whatever remote headers. I had to play around and add files to the git on my machine and do a commit and then go one round to edit some git config and connect again upload and push the uploads. I have forgotten much of the steps but finally it worked. It shows the complexity developers just like to put into the use. Why not something simple ?

Git , seems simpler to use after you have set it up... so, good for it.

That's all for now, folks.