Sunday, May 26, 2013

The Girl who Cried Error

Although I staunchly refuse to learn anything practical, important or serious from life in general and my life in particular, there are some observations I have made over the years. One of these deals with the fear of failure, which ought to have a proper name in my opinion.
 Now it might be an unusual thing to say but I believe that failure is, for the majority of population, beneficial. It introduces human beings to humbleness, which all but very few of people I have come across direly need. It is one of the best teachers around, for there is no better way to learn something then to attempt it and fail in the attempt.
 Forgive me, my reader, if I seem to be generalizing too much. What I mean to say is that there is no better way to learn programming than to write code with errors. Wait, there is: to write code with bugs. Oh, the joy of inserting print statements line by line! Though HDLs belong to a group of nice languages, their status cannot be compared to the eternally beloved C++, just because they do not possess the simple print statement.
I might have written something about a final year project some time ago. Thing is, it is a rather important and necessary part of my otherwise-devoid-of-important-things life. The poor thing might get a full post to itself one of these days.
So, as I was saying, there is a project and I am responsible for a part of it.To be honest, I am rather the I.T. girl of the team, the one who configures software and debugs problems related to the os, the underlying kernel and the io ports. Things that normal people consider too boring for their time.
Anyways, I have often observed that fear of failure can hold you back way more than actual failure can. Some time ago, I was climbing down a flight of stairs. There was a long wire in my way.Now it so happened that I was trying so desperately to avoid getting tangled in the wire that I actually slipped on the stairs and slided down some 5-6 steps.
A normal person might have been humiliated, I guess. Not yours truly. I just got up with my head held high, ignoring the pain in my knee and the dirt all over my clothes and said 'I am all right' to my mother in a reassuring tone.
Of course, normal people might be embarrassed if their mother would say in a shop loudly while looking at a pair of elegant shoes 'Dimagh durust hay! Dobara girna hya kia!'.
Again, yours truly is just irked,  not embarrassed.
So our project was put on hiatus due to a problem we supposedly had. The size of the data we had to process was larger than the memory block allocated by the underlying API. So I decided, of course, to change the default memory mapping of the system. I tried this, and I tried that, and nothing worked. By now I am qualified to write a book on '101 ways of changing memory map for API X'. It goes without saying that all these methods are unsuccessful, and almost all of them cause the processor to throw tons of error and hang.
Other steps taken by the persistent spook:
1. I bugged my team mates and told them that we might be stuck at this problem forever, when I am quite aware of a member's horror for infinite loops.
2.I dragged my team mates to a far away place in the sweltering heat of May and bugged some outsiders there. A nice person really tried to help us.
3. Then I tried to make some sense of the entire thing, something I absolutely despise. The only thing I am any good at are 'jugaars'; in fact, the entire project is nothing but a collection of jugaars.
Now that is a skill I might add to the list of my professional skills. Reminds me, I have a serious interview in a couple of days. The guys at that place better hire me, or I shall suffer from a broken heart. Need I remind anyone of he 'hell hath no fury....' saying? If they don't employ me, I'll have my revenge. When I am the commissioner of the city.
As for the mapping problem, there wasn't a solution because, as it turns out , there wasn't a problem at all. The default configuration worked like a charm, once I tried it, for in my over-zealous state, I had messed with it without any regard for the actual, physical memory of the system.
Tip for the future: before getting hyper about a problem, be sure to confirm that the problem exists in the real world.

Sunday, May 12, 2013

کنڈل ٹچ عرف شکر

خدا ہر شکر خورے کو شکر دیتا ہے، اور وہ بھی اس کے پسندیدہ برانڈ کی۔ تو مجھے بھی میری شکر مل ہی گئی۔ اب لامحدود خوشی کے لیے کوئی تحفہ دینا چاہے تو کم کم آپشنز باقی ہیں۔ ایف پی جی اے یا ٹھیک چھ انچ ہیل کے جوتے۔

اس میں اردو کے حروف کچھ ایسے دکھائی دیتے ہیں:۔

 اپڈیٹ: اس میں اردو کی ٹیکسٹ فائلیں بھی بالکل درست دکھائی دیتی ہیں، اگر ان کو درست فارمیٹ میں تبدیل کر لیا جائے۔
میرا ایک پرانا خواب تھا، ایک ایسی کتاب کے بارے میں جو کبھی ختم نہیں ہوتی۔ دراصل زیادہ کہانیاں پڑھنے سے ، پڑھنے کی رفتار وہاں تک جا پہنچتی ہے کہ ضخیم سے ضخیم ترین کتاب بھی اس کا ساتھ نہیں دے پاتی۔ ڈھونڈنے پر بھی ایسی کتاب نہ ملی۔
خیر یہ تو پرانی بات تھی۔ اب کچھ عرصہ پہلے خیال آیا کہ کتابیں تو دنیا میں لامحدود ہیں، اصل باٹل نیک انسان کی پہنچ اور استطاعت ہے۔ پھر اندازہ ہوا کہ اس قدر کتابیں ایک عدد زندگی میں نہیں پڑھی جا سکتیں۔ کس قدر پریشان کن اور وحشت ناک خیا ل ہے!۔
جب کچھ عرصہ موبائل کی چمکدار سکرین پر کتابیں پڑھ پڑھ کر آنکھیں پھوڑ لیں تو فیصلہ ہوا کہ کوئی  بہتر متبادل تلاش کرنا چاہیے۔ اب امیدوار دو رہ گئے تھے، ٹیبلٹ اور ای ریڈر۔ ٹیبلٹس کی خوبی یہ ہے کہ یہ بڑے سائز میں بھی دستیاب ہیں۔ ان پر اردو کی سکین شدہ کتابیں بہتر طریقے سے پڑھی جا سکتی ہیں۔ ان کے لیے بہت سی ایپس دستیاب ہیں۔ رنگینی کا عنصر بھی ٹیبلٹس میں ہی موجود ہے۔
لیکن مجھے چونکہ بنیادی طور پر صرف کتابیں پڑھنی ہیں اس لیے ای ریڈر کا انتخاب کیا۔ اس کی ای انک ٹیکنالوجی آنکھوں پر بوجھ نہیں بنتی اور ڈسپلے میں بہت کم پاور استعمال ہوتی ہے۔ روز روز بیٹری کون چارج کرتا پھرے۔
امیزون کا کنڈل ٹچ میری توقع سے بہتر نکلا، یہاں تک کہ دیکھنے میں بھی۔اس میں صفحہ پلٹتے ہوئے ایک جھماکہ ہوتا ہے، جسے پہلی بار دیکھنے پر میں بہت خائف ہوئی۔ لیکن اس کی آدھے گھنٹے میں ہی عادت ہو جاتی ہے۔
اردو کی کتابوں کا مسئلہ ہم اردو والوں کی طرح ذرا ٹیڑھا ہے۔ سکین شدہ پی ڈی ایف کو نوے درجے پر گھما کر یعنی پورٹریٹ موڈ میں پڑھنا پڑتا ہے۔ اور ایک صفحہ بہت سے ٹکڑوں میں بٹ جاتا ہے۔ اب مجھے شاید اس حقیقت کو تسلیم کرنا پڑے گا کہ اردو پر ہنوز ٹیبلٹس کی اجارہ داری ہے۔ شاید کوئی پی ڈی ایف ایڈیٹر ڈھونڈ ڈھانڈ کر خود ان فائلوں کی کاٹ چھانٹ کرنی پڑے۔
ایک دلچسپ بات یہ ہے کہ اردو کی ٹیکسٹ فائل بڑے مزے سے کھل جاتی ہے۔ فانٹ بھی دلکش ہے، بہ نسبت اس بھیانک پچکے ہوئے فانٹ کے جس میں اردو عام کمپیوٹرز میں دکھائی دیتی ہے۔ فانٹ کو بخوبی چھوٹا بڑا کیا جا سکتا ہے۔
بیٹری ٹائم ابھی تو کافی خوش کن ہے۔بارہ چودہ گھنٹے کے آف لائن استعمال کے باوجود اس کے بیٹری آئکن کا صرف ایک سیل کم ہوا ہے۔ اگر یہ لگاتار چار دن میرے پڑھنے کا ساتھ دے سکے تو کیا ہی بات ہو۔ اگر ایک ہفتہ چل گیا تو اس پر بیعت ہونا پڑے گا۔ امیزون والے اشتہار میں بڑا بڑا لکھتے ہیں :' بیٹری ٹائم، دو مہینے' نیچے منحنی سے فانٹ میں لکھا ہے: 'روزانہ آدھے گھنٹے کے آف لائن استعمال کی بنیاد پر' ۔ حد ہو گئی بھئی۔ کیا پریشر ککر ہے کہ روزانہ صرف آدھا گھنٹا استعمال ہو گا۔
کنڈل ہے تو اسے روٹ بھی کیا جائے گا، کبھی نہ کبھی۔ فی الحال یہ نیا ہے اور اس کا معاشرے میں ایک مقام ہے۔ چھوٹے بچوں کو اسے ہاتھ لگانے کی اجازت نہیں، وہ صرف اسے دور دور سے دیکھ سکتے ہیں۔
ملا تو یہ پاس آؤٹ ہونے کے تحفے کے طور پر ہے مگر اب پاس ہونا ذرا مشکوک ہے، خصوصاََ کنٹرولز میں۔ خدا خیر کرے اور تمام نالائق بچوں کو ان کی اماں کی دعاؤں کے طفیل پاس کرے، آمین۔ ویسے یہاں شک پہلے بھی تھا، سمسٹر کے پہلے دو ہفتوں سے۔ اب جب کہ بی ایس ختم ہونے والا ہے تو اندازہ ہو رہا ہے کہ امتحان اور ٹیسٹ دینے اور اسائنمنٹس بنانے کے لیے مجھے نہیں بنایا گیا۔ جب سے یہ میرے ہاتھ لگا ہے اس وقت سے دنیا کے تمام کار ہائے نمایاں و غیر نمایاں ٹھپ پڑے ہیں۔ مثال کے طور پر ایک چیز جسے فائنل ائیر پراجیکٹ کہتے ہیں، کھانا کھانا، رات کا کھانا پکانا بلکہ رات کو اشیائے خوردونوش کا ستیاناس کرنا وغیرہ وغیرہ۔ اس کو کہانیاں بھی نہیں سنائی جا سکتیں۔ اس پر کہانیاں پڑھنے سے فرصت ملے ، تو نا :۔
تھا جی میں کہ دشوارئ ہجر اس سے کہیں گے
پر جب ملے ، کچھ رنج و محن یاد نہ آیا