Monday, 23 July 2007

It has been a hectic week lately. Which is why i have not posted for some time now. It has also been an opertunity to learn many new things. Like here is little howto on getting realplayer to work in ubuntu for raaga .
  1. Download realplayer 10 gold for linux from it homepage
  2. Place the .bin file in /opt & add executable permision to it & run the installation program.
    1. chmod +x filename.bin
    2. ./filename.bin
  3. This should create a dir realplayer in /opt . Then edit the realplay file (which is actually a shell script) & replace the first line which says /bin/sh to /bin/bash. & all the following to last line of /etc/bash.bashrc
    1. export GTK_IM_MODULE=xim
    2. If you use scim & you dont add the above line realplayer will not start. Now start the realplayer from command line to check for any error. If you get HELIX_LIBS not found error (or something similar) add the following line to the bash.bashrc file
    3. export HELIX_LIBS=/opt/RealPlayer
    4. We have changed the first line from /bin/sh to /bin/bash because ubuntu people have found a shell called dash (which i think is POSIX complaint) to much faster than the traditional bash. They feel bash is for yester-year computing, but this break lots scripts intented for bash. Their change to dash will only be successfull if others start accepting it as the default shell as ubuntu has done it. So far i dont see any signs of big wigs adopting it.
  4. Next check weather nphelix.so & nphelix.xpt are available in /usr/lib/firfox/components dir & copy those 2 files to ~/.mozilla/plugins dir.
    1. Now run realplayer 10 from Application menu -> Sound & Video -> Real Player 10. After the licence agreement part it should play the real media file in your hard disk & also play the streaming real media from bbc radio. After these check are complete goto raaga.com & play the song it should play well, except for the forward & reverse button. I found many advices on net telling us that real player performances well on tar ball obtained from nightly build. You may try that if you are not satisfied will the current package.



Compiz is more powerful than I initially thought, but the configuration options are hidden in cryptic gconf . It uses gconf-editor to configure compiz. configuration. A simple search on google for a tutorial on what the different keys in gconf means & what these keys accepts returns no clear results. This is the recent trend in most FOSS projects. Any one who uses Linux as his only OS would use alteast 10s of different OSS product(Example:OO.org). Most these are not small apps the core app itself run into millions of lines of code. Considering the code on commonly used plugins with apps it could easily turn to billions of lines of code. Therefore for most oridinary developer who is not a part of the project(considering the lack of good documentation , which i think is done intentional) would become be a uphill task to teak it to his needs. This claim is similar when fsf people claimed msxml is not truly open source as ooxml. That was b'cos msxml is more cyptic in nature than ooxml, hence no one truly benefit from msxml being open. I say thats exactly what free projects are doing. They have started to make free projects enough cryptic that no one can really benefit from the project other than tyhe project guys who benefit from selling support. So there are no multi vendor product but one vendor. Hence we are back to square one, SIngle vendor monopoly. Where is the freedom promised by free software movement. Has all the promises made by free software movement , just another marketing gimmick ??


The default scale windows to switch window is slightly akward. IIRC, the key comibation under ubuntu for compiz is [alt]+[ctrl]+[shift]+[up]. I changed this to [shift]+[tab] . To change this open configuration-editor . Application -> System-tools. Another way to edit is to hit [alt]+[f2]. This will open a dialog box in that type gconf-editor. After u have opened gconf-editor go to / > Apps > compiz > Plugins > Scale > AllScreen > options
then change the key "initiate_key " from the defualt value to "Tab". This value can be changed by double-click on value area & entreing this value in the dialog box that apperas.

Wednesday, 11 July 2007

initial observation of sqlite

Now-a-days i see many OSS projects adopting sqlite for their needs. One good example would be mozilla's firefox 3. Firefox is not a database centric project, but they do use it for their internal use in firefox3 . It seems to be the db of choice for use as embedded db. I dont know how far Oracle is going to tackle this. On the side of oracle they have many recently bought companies that deal in this area. Embedded db would be an interesting area to watch.

Now to some technical details i have found on sqlite.

SQLite has

  • incomplete support of:
    • triggers
    • Foreign keys
    • ALTER tables (only rename & add are supported)(not supported include drop, alter, add , etc)
    • joins
    • views (they are read only)
  • Not supported
    • Nested transaction. Only one transaction are allowed at a time.
    • Right outer join & full outer join.
    • Permissions such as grant and revoke . Since its a embedded db engine, such feature are highly unlikely to implemented.
Limits


  • Maximum length of a string or BLOB = 2147483647 Bytes
  • Maximum Number Of Columns = 32676 , default max = 2000
  • Maximum Number Of Tables In A Join = 64 tables
  • Default value of Maximum Depth Of An Expression Tree = 1000.
  • Maximum Number Of Attached Databases = 62 in 64-bit & 30 in 32-bit
  • Maximum Database Page Size = 32768
  • Maximum Number of Pages In a database file is normally set to few kilo bytes of memory or few megabytes. Currently it does not allow gigabyte sized memory.

Advantages

  • no setup or administration
  • Transactions are atomic, consistent, isolated, and durable (ACID) even after system crashes and power failures.
  • Implements most of SQL92
  • A complete database is stored in a single disk file. Database files can be freely shared between machines with different byte orders.
  • Supports terabyte-sized databases and gigabyte-sized strings and blobs.
  • Small code footprint: less than 250KiB fully configured or less than 150KiB with optional features omitted.
  • Well-commented source code with over 98% test coverage. Available as a single ANSI-C source-code file that you can easily drop into another project. Sources are in the public domain. Use for any purpose.


Source : http://www.sqlite.org/

Tuesday, 3 July 2007

These are the results of the star trek personality test i took at the site mentioned below.

Your results:
You are Geordi LaForge
































Geordi LaForge
80%
Spock
74%
An Expendable Character (Redshirt)
70%
Uhura
65%
Deanna Troi
60%
Chekov
60%
James T. Kirk (Captain)
60%
Worf
55%
Leonard McCoy (Bones)
55%
Mr. Sulu
55%
Jean-Luc Picard
50%
Data
45%
Beverly Crusher
45%
Mr. Scott
45%
Will Riker
40%
You work well with others and often
fix problems quickly. Your romantic
relationships are often bungled.


Click here to take the Star Trek Personality Test