Skip to main content

Story of a code review

To whom it may concern

کل جو بیٹھے Junior کا Code Review کرنے ہم۔
قہر بن کر ہم پہ ٹوٹی وہ بلائے شامِ غم۔

کھول کر دیکھا جو I.D.E پہ اس عفریت کو۔
یعنی بے ہنگم سی Lines of code کے سنگیت کو۔

بھک سے سارا اُڑ گیا Experience مثلِ غبار۔
سر سے Leadership کا زائل ہوگیا سارا خمار۔

Spaghetti Code ہے، بریانی ہے، یا Soup ہے؟
ہم کہیں کھچڑی جسے۔۔۔ اُس کے مطابق OOP ہے۔

View اور Model میں کوئی ربط تک دکھتا نہیں۔
ایسے Java Bean مسٹر بین بھی لکھتا نہیں۔

گاہے گاہے گر Design change ہی مقصود تھا۔
نام Project کا عزیزم کیوں نہ پھر گرگٹ رکھا؟

Task میں لکھا کہیں بھی فائلیں بھرنا نہ تھا۔
کیوں لکھے بے کار Method کال جب کرنا نہ تھا؟

ایک گھنٹہ پی گیا Function جو اک بہروپ تھا۔
ہم Recurrence سمجھے بیٹھے۔ Nested وہ Loop تھا۔

ہر جگہ پر ٹھونسنا Maven کی Nature کفر ہے۔
شرع پروگرامنگ میں ایسا Architecture کفر ہے۔

اک منٹ! یہ کیا کہا میں نے۔۔۔ کہاں ہے کفر ادھر؟
کفر ہی ہوتا مگر ہے Architecture ہی کدھر؟

Role جس کا Guest تھا Access دیا سارا اُسے۔
تھا جسے Encrypt کرنا، Hash کر مارا اُسے۔

جانے کیسے سانس لے گا Live Server زیر بار۔
ایک Package، دو Classes اور سطریں دس ہزار!!!

یہ پتا چلتا ہمیں Function کے پھیلاؤ سے ہے۔
As is چھاپا ضرور Stack Overflow سے ہے۔

صد مشقت سے نتیجہ لایا جب Compiler۔
لال پیلی Warnings کا ڈھیر تھا پیشِ نظر۔

چل رہی ہے Back-ground میں کہیں ماں کی دعا۔
کھانستا، لنگڑاتا، روتا Code آخر Run ہوا۔

ایک بھی Exception ہونے نہ پائے گی فرار۔
چوکیاں ہیں Try-catch اور Finally کی خار دار۔

Catch جب ہوجاتی Exception ہے تو Throw کیوں کریں؟
تو بتا ہمدم کہ اس منطق پہ روئیں یا ہنسیں؟

بالیقیں کہتا ہوں پڑھ لیتی جو Debug Trace کو۔
قلب کا پڑ جاتا دورہ Ada of Lovelace کو۔

یا الہی میری توبہ اب کبھی ڈالوں نظر۔
اس قسم کی مشق سے آئیندہ سو بار الحذر۔

Comments

Popular posts from this blog

Playing in Amazon's Clouds - Introduction to Elastic Computing Cloud - Part 1

A really brief Intro.. Researcher, Trying to execute an extremely computationally resource hungry experiment? App developer, unsure of how much data you'll be collecting from the users? Student, tasked to build your FYP (final year project) on distributed computing environment? Just an ordinary techie trying to catch up with the world? If you're any of these, you cannot escape the fact that Cloud computing is storming in and you have to engage yourself actively in it. Adopt it, or perish. I'm a newbie (better say wannabe) in this massive web of computing, and here just to share some experiences I'm having - successes and failures. First of all, Cloud computing is nothing new, it has been there for over 3 decades and was referred with names like Grid computing  and Distributed computing . It was business people that came up with a catchy name to attract business. The idea behind distributed computing is simple. We create a network of computers t...

How to detach from Facebook... properly

Yesterday, I deactivated my Facebook account after using it for 10 years. Of course there had to be a very solid reason; there was, indeed... their privacy policy . If you go through this page, you might consider pulling off as well. Anyways, that's not what this blog post is about. What I learned from yesterday is that the so-called "deactivate" option on Facebook is nothing more than logging out. You can log in again without any additional step and resume from where you last left. Since I really wanted to remove myself from Facebook as much as I can, I investigated ways to actually delete a Facebook account. There's a plethora of blogs on the internet, which will tell you how you can simply remove Facebook account. But almost all of them will either tell you to use "deactivate" and "request delete" options. The problem with that is that Facebook still has a last reusable copy of your data. If you really want to be as safe from its s...

Yet another Blog on Query Optimization for MySQL Server

If you have been into MIS development for some time, then you may have realized that buying latest, multi-thousand-dollar Machine, stuffed with a top notch processor and an army of memory chips is not sufficient to your needs when it comes to processing large data, especially when your DBMS is MySQL Server. In this article, I have tried to input  the tips and techniques to-be-followed - some in general and some specific to MySQL Server; but I would, as every blogger, repeat the same common phrase that " in the end   it all depends on your scenario ". The results you are going to see will mostly be in milliseconds so before thinking "is it worth the effort if the result is in a few milliseconds?", do know that these results are derived using a very very simple database with not more than 100000 records in a table.  With complex databases and records in millions, the effort will pay you back. Coming straight to topic, here are some points you should not ign...