Saturday, October 23, 2010

to dB or not to dB

Personally not a big fan of Database technologies. I have only been exposed to PostgresSql and MySql and Oracle but haven't done anything advanced which I can call it as a skill. From what I remember the most screwy query that I have executed is importing and exporting about 2 gigs of some DBpedia file in postgres and still screwed up the DB pretty well.

Exploring as usual I stumbled upon this MongoDB what caught my eye was JSON-style documents with dynamic schemas offer simplicity and power. Already aware of JSON format and having worked on a JSON-RPC kinda modules, I assumed it was some sort of retrieval format of data. Clicking leads me to BSON specs (scroll to the examples and drag the mouse over the BSON format). Going back to MongoDB I goto the obvious tutorial section which leads me here http://try.mongodb.org/ . What an awesome tutorial !!! 
soon :
sudo apt-get install mongodb

sudo easy_install pymongo

didnt work so easily had to get help something about error while loading shared libraries: libmozjs.so, I am guessing the xulrunner package issues.
So here goes :

Have fun playing around with this new schemaless, document-oriented, NoSQL database and its abundant array of drivers.

PS : I found a link to http://expressjs.com/ ... I have read few things about Node.js but what is this now !!!

Tuesday, October 5, 2010

Javascript top 11 websites

REBLOGGED FROM Angus Croll's blog http://javascriptweblog.wordpress.com/

These are the JavaScript blogs that I am repeatedly drawn to. Their emphasis is on the language itself. Real code, real situations. Enjoy!

Dmitry Baranovskiy, author of famed Raphael vector graphics engine. Updated fairly infrequently but always high quality
http://dmitry.baranovskiy.com/

Juriy Zaytsev (aka kangax) part of the Prototype.js team and all-round JavaScript good-guy. JavaScript wisdom from the master. Also best URL ever.
http://perfectionkills.com/

Alex Young et al. My first stop every morning. True to the URL – new stuff daily. Crystal clear JavaScript commentary and new product info. Added bonus – every Thursday Alex talks you through building his very own JavaScript framework.
http://dailyjs.com/

Peter Michaux. I came across this site fairly recently but already finding plenty of absorbing content. This one, for example, is a gem
http://peter.michaux.ca/

Andrea Giammarchi. Sometimes hard to follow – often controversial, but the product of a brilliant and fiercely independent mind. Well worth the effort
http://webreflection.blogspot.com/

Dion Almaer et al. My other daily fix. I hesitated to add this at first because its less JavaScript centric than the other sites, but its the best site for keeping up with the latest HTML5 and CSS trickery and also shares some very nifty JavaScript solutions.
http://ajaxian.com/

Ben Cherry. Great coder, intrepid investigator, skillful communicator, great attitude. I learned a lot.
http://www.adequatelygood.com/

Oliver Steele. Mr Functional JavaScript himself – a huge inspiration to me, he seems to be on the front end of almost every javascript-lambda pattern out there. Discovering his Functional.js library was like finding gold. Plenty of other goodies in here too.
http://osteele.com/

Nicholas C. Zakas. Author of a slew of excellent JavaScript books. A new gem every week and takes the time to explains some of those pesky JavaScript quizzes that are popping up everywhere (including his own)
http://www.nczonline.net/

Robert Nyman. I came here for this (read it!) and stayed for the rest. Look for “JavaScript series” in the sidebar (there’s much more of interest besides)
http://robertnyman.com/

Thanks Angus for the awesome list and yea the 11th its his blog itself http://javascriptweblog.wordpress.com/

Saturday, October 2, 2010

Stackoverflow

My first question at Stackoverflow !!!

http://stackoverflow.com/questions/3846631/c-vs-python-precision


I got the solution in minutes later !!! thanks TOR VALAMO

AWK, SED, GREP, FIND

The basics of these 4 utilities is a must know !!! I have found a few tutorials which atleast taught me the basics which HELPS a lot !!!




GREP : http://www.readylines.com/linux/grep/basics You will find a lot on grep but this one of the most basic one I could find.


Well after all this I couldnt resist but googling up python appended to each of these commands and well a few things to read ....




Friday, October 1, 2010

MozGnowser

Our final year project MozGnowser done under the guidance of Dr. Nagarjuna ( chairman of FSF India). His blog http://gnowgi.org/ is a must visit. After completing a mini project of a Mozilla toolbar to connect to http://www.gnowledge.org/ we were given the task of making a GUI for Gnowsys (http://lab.gnowledge.org/Software) as a Mozilla extension.

Gnowsys : Gnowledge networking and Organizing System (GNOWSYS) is the flagship software project. Its main objective is to implement a theory of meaning (neighbourhood theory of meaning) represented in the form of a structure of memory.

Initially all the attempts to make Cross site XML-RPC requests from a remote client was fruitless. Then writing a JSON-RPC server on client side and then using it as a sub domain was the next choice. While googling for python and XPCOM landed to the beautiful solution called PyXPCOM (http://pyxpcomext.mozdev.org/index.html). Creating python stubs and using jquery and jquery-ui we were able to make all requests and with python's power at the backend helped create a powerful application. We faced issues with rendering the SVG which was the most crucial part of the project and to make it interactive with the rest of the UI. The SVG generated at the server side by the Gnowsys app itself. Stumbling onto yet another SVG library http://www.dotuscomus.com/svg/lib/library.html which took a lot of time modifying for making a suitable for the NozGnowser. We used the python backend to completely rewrite the SVG to make it suitable to the DOM interactions we needed.

Proxy settings feature and using the THREAD manager to make the JS scripts run in parallel so that no more UNRESPONSIVE SCRIPT warnings due to slower connections was also implemented. Then the GnowQL Shell where developers can write the python gnowql commands to obtain the pythonised results was also added.


some snapshots of the project :







Sunday, August 22, 2010

C.S.I

Rahil messaged me "we raised our sponsorship amount to nearly 1 lakh !!!" I couldn't have been more happier. It was great to know the juniors have started to put all their efforts in growing the Frcrce C.S.I to greater heights. Then he lied about missing me in the council. I miss the running around and the chance to teach and learn among technical illiterates like me. The hustle bustle and the brunt of professors down our throats and being held responsible for screw ups and no gratitude for the accomplishments over the years are the most cherished memories of my 4 year technical massacre.
Some images of the C.S.I - OS installation seminar with Sasha Mac-ing away. Best of luck guys
Location Fr.C.R.C.E Bandra (w). Purpose was to make it easy for ignorant users to learn easy ways to install different OS's in an attempt to learn different systems and analyse their pros and cons.










Wednesday, August 18, 2010

Mouse


NOW IT WORKS !!!

P.S : thanks JJ for the mouse

Thursday, July 22, 2010

iPhone 4 : My take on it

I am not going to give an in depth analysis of the apple product but a different perspective on the 4th generation of iPhone . My reference for the points to elaborate is the Apple iPhone website itself . SO HERE GOES ...

FaceTime
A iPhone specific feature and moreover only over WiFi . So if you want to video chat with a person that person has to be an iPhone owner and connected to a WiFi network which is highly unlikely . With respect to the concept of video chatting how many of us have turned away from calling up to texting and Twitter . Is video calling an actually needed function ? Can one have an actual conversation looking at someones face on a small display ? It doesn't matter how impressive it may seem , I really doubt its viability. Apparently Apple is willing to open up its standards for FaceTime which means the developers on other platforms can also connect provided they meet the "necessary requirements"

Retina Display
One word that explains what I have to say : AWESOME .
I am blown away by all the videos and images I have seen of the iPhone 4's display . Truly brilliant . There have been a few complaints about yellowness creeping in but nevertheless the Retina Display sets a higher standard for the phones to come .

Multitasking Done the Right Way
Hardly the right way . Apple has made a mockery out of the whole concept of true Multitasking . After denying the support for it Apple succumbs to the users needs but still manages to fail drastically . Here they freeze the application whenever there is a switch with the exception of Music , VoIP services and GPS applications . So there is no task completion in the background rather just a saved state . If one has to achieve this the developer has to use a special task completion API . So iPhone users have to stare at a YouTube video as it buffers (Now fixed with an update ).
Wait there is LESS !!!
Steve Jobs said ,"When it comes to multitasking if a user has to use a task manager they blew it" clearly pointing out Windows task manager . Even the iPhone only switches between tasks and moreover its poor implementation . An app initialised adds it to the tray and the only way to close it is to press and holding the icon , and then clicking the top left corner of the app one needs to close . So if one opens up a lot of apps the tray becomes a clutter .

HD video Recording and Editing
The recording part well every other vendor is upto it . Everybody is on the same level when it comes to quality recording . Editing : Quote from the Website , "Then edit and create your own mini-masterpiece right on iPhone 4 using the new iMovie app — with Apple-designed themes, titles, and transitions. It’s available on the App Store for $4.99." YOU HAVE TO PAY !!!
How many of us would end up editing videos on the phone ?

5 Megapixel Camera with LED flash
WHAT how is this a feature ? Camera is equally important as the Phone Radio chip on the PHONE isn't it ?

Gyro+accelerometer
Another benchmark for the newer phones to come . Introducing the gyro MEMS is a great step in handling the phone and enabling the 6 degrees of freedom for applications to use .


Now the Design ... Apple has one of the the Best Design Team on the Pale Blue Dot .
It is one heck of a sexy looking device undoubtedly . The stainless steel body and the chemically strengthened glass are sight for sore eyes .

The antenna issues are all over the Internet and Apple has reacted to it in a very unethical manner by pointing out fallacies that may or may not exist in their competitors . The HowTo hold the iPhone articles are hilarious .

The no support for Flash decision just shows how Apple wants its complete dominance over the market . Flash is a huge part of the Web today and thus the iPhone users will fall short in experiencing the flash content so widely available .
The true motive behind this not that flash burns up battery life or its unstable rather developers can market media or applications just by embedding it on the website thus skipping the App Store completely . Simple concept : Apple is not in favor of compensating control .

That winds up my take on it .
NJOY !!!

Sunday, July 18, 2010

mountRB : Disk mounter for Rhythmbox

A very much needed feature that is missing in Rhythmbox the default music player in Ubuntu , mounting the drives that are part of the music library in Rhythmbox.

Having a huge music library and spread out in multiple drives it was quite irritating to mount the drives again and again at every startup whenever rhythms had to be outboxed :) . So I wrote a python script to parse through the rhythmbox library and mount the drives mapping the labels to the respective drives and a bash script to call this python script and also startup rhythmbox. A shortcut to launch the bash script added to the gnome panel made music a one click stop .



MAKE SURE TO HAVE LABELS ON EVERY DRIVE !!!

njoy !!!

PS: my first attempt