Thursday, 30 January 2020

#LearnedToday 1 to 10

I learn a lot of things every day, about diverse topics. Will write these things daily, even if it's obvious-to-the-level-of-dumb for the world. 
— Shakeeb Ahmad, from My New Year Resolution

LearnedToday #1

An operation as simple as copying the data to user's clipboard is not that straightforward. It requires a secure origin — either HTTPS or localhost (or disabled by running Chrome with a flag). [SO]

Packages are available for most frameworks out there, which handle clipboard operations (copy to and paste from). Can be used to exploit though. [Wiki]

Terms: Clipboard hijacking, Pastejacking
tags: Computer Science, Cyber Security

LearnedToday #2

  • Nothing matters until you finish some actual projects in a field. What you can mention on your resume (and to the world) is NOT a load of languages, frameworks and skills you only know the basics of; but the completed projects using them. 
  • Switch to other stuff after fulfilling basic functionalities. Fine-tuning can be done in updates.
  • Do your best before jumping to Stack Overflow.

Ref: and its comments.
tags: Self Help, Computer Science

LearnedToday #3

حالیہ جاری احتجاجی مظاہروں میں فیض کی نظم”ہم دیکھیں گے “ کافی مشہور ہوئی ہے۔ درست موقف کی بحث ایک طرف، سر پیٹنے والی بات یہ ہے کہ کچھ بے ذوق لوگوں کی طرف سے مذکورہ نظم کو ”فرقہ وارانہ “ قرار دیا گیا ہے۔ 
لگتا یوں ہے کہ صنائع و بدائع، کنایے، محاوروں، ضرب الامثال اور استعاروں سے مزین میر اور غالب کی شاعری پر سر دھننے والی یہ ”جینیس جنریشن“ دراصل ڈھونگی ہے اور ان اساتذہ کو محض ”کول“ لگنے کے لیے پڑھتی اور سنتی ہے۔
بحیثیت ایک ادنیٰ شاعر اور ادب کے طالب علم کے، میں غور کرنے پر مجبور ہوں کہ شاعری کا اتنا سطحی مطالعہ کرنے والوں کے لیے کیا سزا تجویز کی جائے؟

हालिया जारी एहितजाजी मुज़ाहिरों में फ़ैज़ की नज़म"हम देखेंगे" काफ़ी मशहूर हुई है। दरुस्त मौक़िफ़ की बेहस एक तरफ़, सर पीटने वाली बात ये है कि कुछ बेज़ौक़ लोगों की तरफ़ से मज़कूरा नज़म को फ़िर्कावाराना क़रार दिया गया है.
लगता यूं है कह सनाए-ओ-बदाए, कनाए, मुहावरों, ज़रबुल अमसाल और इस्तिआरों से मुज़य्यन मीर और ग़ालिब की शायरी पर सर धुनने वाली ये "जीनीयस जनरेशन" दरअसल ढोंगी है और उन असातिज़ा को महिज़ "कूल" लगने के लिए पढ़ती और सुनती है.
बहैसीयत एक अदना शायर और अदब के तालिब-इल्म के, में ग़ौर करने पर मजबूर हूँ कि शायरी का इतना सतही मुताला करने वालों के लिए किया सज़ा तजवीज़ की जाये!

Ref: Javed Akhtar, Munawwar Rana etc. on IIT's case
tags: Politics, Thoughts

LearnedToday #4

Learning regex is a better option to go for, rather than mastering language-specific methods for simple string manipulation.

Also, on a more general note: Instead of forcibly modifying every problem to meet your knowledge-level, you should try to learn available methods (i.e. functions) and data types in a language.

tags: Computer Science, Programming

LearnedToday #5

YouTube is sucking a lot of our time right now. Like a lot a lot. Even if it is for the sake of entertainment, we're using it no less than 4 hours. Physical entertainment seems a thing of the past now. Even when we meet friends, the conversation revolves around the same. Sad!

Told this to Muzammil and Mubashir many times, that we scroll through useless feeds all day. If we start reading books instead, we'd have a sense of accomplishment. A feeling of enlightenment, a wow moment... it can be anything, but would benefit us someday. After all, we all want to do something we could be remembered for. At least I do.

tags: Self Help, Philosophy, Thoughts

LearnedToday #6

Averse vs. Adverse
”Adverse” is used to refer to unfavourable while ”Averse” refers to the state of being reluctant.

The adverse effects of alcohol.
A good number of people are averse to sleep at work.

tag: English Language

LearnedToday #7

My guess about hyperinflation was correct. We don't always face the inflation problem if we (the government) just print money and get rich. In fact, if USA as a developed economy wants to purchase oil, it CAN just print money and do that without the fear of hyperinflation. 
Reason? USD is the standard currency using which most of the world trade today.

The government has tricked us to believe that more money means more income. On an abstract level, that is true, but in reality, the vegetable plant your mother has grown in the backyard is the actual wealth.

Ref: Economics StackExchange, Reddit, Wikipedia, Quora
tag: Economics

LearnedToday #8

Stupidly obvious. In order to properly use a hand dryer, you have to rub your hands. Don't just put your hands under it. 😁

The goal is to spread the water out as much as possible to increase its surface area and thus the evaporation rate.

Ref: Reddit
tags: Life Hack

LearnedToday #9

Remember Dijkstra algorithm?

In English, the Dutch name Dijkstra is normally pronounced DYKE-struh, in IPA /ˈdɑɪkstɹə/. It is a Dutch name, where the 'j' is always silent or pronounced like a 'y'. So the name should be 'dyk(bike, hike in English) -stra'.

tags: Computer Science, English Language

LearnedToday #10

People don't care about your struggles. They're just going to judge you by the results. Why should we exhaust ourselves if an easier alternative is present there already?

Be it a small routine task, a project or the life as a whole, the final outcome would be the only thing you'll be judged by. The route to that destination is usually not smooth, but who cares? That struggle story would only be inspiring if you reach the success.

tags: Philosophy, Thoughts

Tuesday, 31 December 2019

My New Year Resolution for 2020

New Year Resolution 2020 by Shakeeb Ahmad

End of 2019 now. The last post as you can see on this blog was of March 2017. I was in my final year of Engineering then. At the end of the previous year, I bought this domain “” and thought at least this will motivate me to finally drop a post. But nah! 

A little history of this blog

Let me tell you why I created this blog in the first place. My friends on Facebook, WhatsApp and a few forums, especially Urdu Mehfil, were asking for a place where they could read all my work. (Sounds fancy, doesn't it?) Being a polite person that I am ( :cough: ), I complied. But unfortunately, I couldn’t post anything for the reasons I still don’t. (More on these “reasons” in a while.)

The first thing which finally pushed me to move my lazy bottom (not literally, of course) was a report which I was asked to write. To be honest, I wasn’t going to write anything if that workshop would not have turned that astounding.

I dropped a few more posts and then just stopped posting anything on this blog; wasted a lot of time procrastinating (which I love BTW). On the request of few very close friends, I created the Urdu blog and posted a chunk of my tutorial/essay “How to be a good Urdu poet” as 4 blog posts, then parked the Urdu blog at the sub-domain “”,  (ur is ISO 639-1 standard for Urdu). I did publish few other posts there too, but still, most of them were not even part of my plan.

In every month or so, I kept checking on this  blog's stats  for some reason, and kept wondering who are these people and why are they reading these 5 posts?
Shakeeb Blog traffic

Look at that. Russia? Seriously? I hope they are all bots.

I've had a long list of things to finish in 2019, most of which are still pending, or have made its place at the far bottom of my priority list.

Priorities change. Mine did too. But it’s not reasonable to abandon the tasks altogether, leaving them incomplete for the sake of your new interest. That’s why my new year plan is to do A LOT in the least time possible.

Problems and their possible solutions

Coming to the difficult part. Let me list down the reasons why I couldn’t complete the tasks:

1. Perfection: I have the constant urge to present the things in the best way possible, which is not a wrong inclination in itself, but have somehow kept me from publishing my work. Throwing the work in pending-bucket just because you will sooomeday make it presentable and publish – is pure laziness. 
Present it, then refine it whenever you get the time. And for the urge part, you know you’ll not present it cringe-level-bad anyway.

2. What: The most difficult thing for me is to decide what to post. No, I'm not out of ideas. It’s the opposite. I have too many of them. In fact, as mentioned above, I’ve a lot of them incomplete. So, the issue expands to deciding what to post / complete / begin with. 
Pick whatever appeals you at the moment. Don’t wait. Do it.

3. Where: Each platform (social media, forums, blogging services, Q&A sites) has at least one plus point, so like a normal CS student, I am signed up for almost all of them. Every time you get something to post, the chaos starts in the mind and the post sits back in a corner, frightened. 
Use “length” as the deciding factor. Also, use website as the central hub.


I'm listing down my plans here publicly, because one –This post will be a reference for me in the coming days, I’ll look for this post whenever I’ll lose my focus; and two – somebody from the readers will keep poking me about something s/he is excited to see completed.

I've not added the specifics right now, and will add them as and when required.

Here goes the list:

  • Maintaining my personal log/diary/rant etc. 
  • LearnedToday – I learn a lot of things every day, about diverse topics. Will write these things daily, even if it’s obvious-to-the-level-of-dumb for the world.
  • Weekly – Start posting the stuff I learn every week
  • Sharing – Personal experience + Psychology + Self-help + Philosophy etc.
  • Works – Posting previous works/ completing work in progress + Properly arranging and maintaining ongoing projects (Website, GitHub)
  • Tutorials for absolute beginners (because why not?)
  • Reading – Minimize the time spent on useless crap of Facebook / WhatsApp and read the books I’ve left unfinished for years now

Accordingly, categories would be:

  • Personal (blog, interests)
  • Nostalgia
  • Reviews
  • Tutorials
  • Self-help
  • Religion
  • Politics
  • Works (My poetry, prose, books, software, apps etc)

We all make plans. The question is, do we stick to it? This time, I hope I will. 

What are your plans for the year 2020? And what are the things you should’ve completed in 2019 but are still left in the to-dos? Share in the comment below.

Saturday, 18 March 2017

Programming Challenge #1: Add Up To Second Number

Hello programmers. I am starting a series of programming challenges for beginners here. I'll post the problems with some explanation, screenshot of the final output and a little bit of hint if it is really needed. Solve your problems using any programming language you are comfortable with.

Here goes the first problem.

Programming Challenge #1: Add Up To Second Number

Details: Write a program which asks users to input two numbers. Your task is to add all the consecutive numbers from first number to second.
Input 1: 1
Input 2: 10
Answer: 55

Additional Task(optional): Show the numbers being add. 

Final Output Screenshot:

Monday, 23 January 2017

Teachers I got...

This is what I feel about them...

Note: Names in the below list are given in alphabetical order. Please notice, this is NOT a “Top 10” list. I've listed only the teachers who have taught me and inspired me a lot. All views and opinions are personal.

From First Year

1. M.D.Mehre
2. R.R.Pais

From My Department [CSE]
3. Ashish Jaiswal
4. G.J.Tripathi
5. Nilesh Shelke
6. R.S.Khokale
7. Swati Dhabarde
8. Vaishnavi Ganesh

9. Pallavi Chavhan
10. Aniruddha Pathak

1. M.D.Mehre:
He taught Physics to us in the first year, both in 1st and 2nd semesters. Besides teaching, he used to guide the students and make them aware of their future. Who can forget this line, “4 saal ki degree 4 saal meN nikaalo, naukri kaise nahiN milegi.”

I was fond of his “Bhaashans”. I had once recorded his inspirational words. I remember the preparation leave before 2nd sem exams. I could not focus my mind on studies. Sitting on the terrace of my house, I tried to read at least half a unit, but couldn't help myself. Then I searched for the audio I had had in my phone, I listened to it and unbelievably, got my focus back on study.

And that rare conversation which is still making me smile while writing these lines. He saw a girl smiling during his lecture and asked her....

“Why are you smiling miss <name>?”

“Nothing sir!” she replied.

Then with a smirk on his face, he said “Smiling without any reason is not a good symptom for your health.”

His teaching style was fixed and seemed like everything he is teaching is preplanned. He was my favorite in the first year definitely.

2. R.R.Pais:
She was our class teacher in first year and I thank God that she was. Motivation is in her blood. Very few people motivate and encourage like her. She used to constantly push the students to do something ( she called it “dhakka” ).

Coming to teaching, she teaches from heart. It was obvious. The best teachers teach from the heart, not from the book. No one will forget her “dhakkas” which she used to make to make students open themselves up, come forward and share their thoughts. It is fact that when you face something second time, you feel quite familiar and comfortable with it which helps reducing the anxiety. Knowing that fact, she used to force the students for the first time. She took lots of effort teaching us. “Communication Skills” was a practical subject. I've never seen any practical subject being taught with that much effort.

One of my classmates had some arguments with a teacher at the end of the semester (I’ll not name the names of both of them). It might have had some effect on internal marks of him. When Pais mam came to know this, she tried very hard that their personal matter should not affect his internals. So caring she is.
She is from Department of Humanities, and hence has deep knowledge of human psychology and knows how to make students work hard. She was the first person one would choose to approach to if he is having some problem.

3. Ashish Jaiswal:

I’m sure if you will define him, “friendly nature” will surely come in the definition. Smiling most of the time, he hardly needs any time to get comfortable with anyone. I’ve never noticed him being angry except one or two occasions where it was really necessary to be so and take strict action. His “good-for-everyone” type of nature makes it very easy for him to have a hold on most of the situations.

He taught us in three semesters consecutively. Most important characteristic of his teaching is he explains the topic so extensively that one just has to revise it at the time of exams.

Interestingly, someone from our senior batch told me that Ashish Sir was not this polite when he joined. He used to scold too much and was aggressive. I don’t know why, but it seemed like a joke for me. I can’t imagine him being aggressive.

4. G.J.Tripathi:

She is well known for her elegant style. I personally like her English very much. She is definitely one of the teachers who I admire the most.

She has taught us for three semesters and it’s fourth time now in 8th Sem. That was the 5th semester when she taught us DBMS. She never [as far as I remember] dictates anything. Just use to enter in the classroom, put the book on the desk and starts teaching what she has prepared herself for. (Seriously, she never teaches without preparation.) I used to take notes during the lecture (in 5th sem specifically). And then I noticed something which I’d not noticed anywhere else… I came to know that she don’t speak a sentence from which you can’t extract something new.  Every sentence is unique, worth to be added in your Knowledge “Database”.

Oh, and one more. I am fond of her examples (which I used to quickly pen down.) I am actually planning to upload my handwritten notes of DBMS on my blog. I think them worth sharing.

5. Nilesh Shelke:

“Energetic” is enough to describe him in one word. He has got kind of “do-something-before-you-have-no-chance” nature. And being of the same nature, I never miss telling this to others. So is he. He hates sitting idle.
Let me tell you how I came to know this. He was our project guide in 6th sem. I’ll not forget that day when I first met him with my group to discuss the project ideas. I had just started working in C# in after-exam vacation of 5th sem as per my own interest and was a beginner in it. I had collected some of the project ideas to build a software program. One of the ideas was “an automatic C code generator”.

We met him and I started to explain the functioning of that “tool” I had built. He was just smiling all the time and later asked some of the bitterest questions I never knew he would ask. And those questions were not actually the questions; they were actually to mean “This doesn’t worth being a mini project.” (Yeah, I know a little bit of human psychology).

Why to lie… I hated him at that moment. I hated the way he disapproved the project. I wanted some appreciation for the work I did as a beginner. I was not meeting the gaze with him (that’s what I do when I’m angry with someone).
Then he started putting his ideas in front of us. And even in that angry mood, I liked one of the ideas very much and that’s what our project is. We started our work on it.

Sir didn’t know while disapproving my “C Code Generator tool” that I was a beginner in the language. He just got the “idea” behind it and found nothing appealing in it.

And in 6th sem external practicals, when we got the obvious complement from the external examiner about our project (which was chosen by sir), I realized that ‘my idea’ was really not appealing comparatively.  I realized that I was angry for the wrong reason. I wrote him an email explaining every detail of the external exam. But those were the “Words” of the email… One who can read “in between the lines” can easily comprehend what that email was for.
Well, this was quite an emotional part. Coming to his teaching style, he is frank with the students and therefore no one hesitates to say ‘no’ when he asks “Are you getting?” if they didn’t get it. : cough:

 Moreover, I love the grin he has while explaining something. And that lovely line…

“Samajh rahe ho kya maiN kya bataane ki koshish kar raha huN?”
[Are you getting what I’m trying to say?]

6. R.S.Khokale:

Khokle sir is our Head of the Department. Want to learn in simplest possible way? Want to have your concepts clear? Reach to him; he will do it for you. I wonder sometime if he has some inference engine in his mind which takes the complex language as input and generate “easiest” language as output. Notice the superlative degree. Every lesson seems like an introduction. Let me speak technically, while teaching, his “level of abstraction” for explaining the concept is always high.

Recently, we were discussing about the subject after his lecture while I took out the printed copy of syllabus which I always have with me. I was checking out how much syllabus has been covered yet. And there came an awe moment for all of us. We were amazed to see that we have finished our first unit, even every tiny detail of it. Then I came to know his strategy. He uses to teach like we are having a discussion on some general topic, while he cleverly covers the syllabus points with them. It’s may be because of the subjects he get to teach, but still I love that strategy.

And yes, I am impressed with the quick real life examples he give which perfectly matches the topic being covered and make it even more easy to grasp what is being explained.

7. Swati Dhabarde:

Who can forget those OOP concepts? Ask anyone of my classmates, “What is Polymorphism?” I guarantee the answer will be same…rarely mismatching any word. Here it is…

“Poly means many… Morphism means forms… So the ability of a function to take more than one form is called polymorphism.”

You must have gone through a word “Abstraction” above. How do I remember that? That word was introduced to us by her and it’s in our minds now and will probably never go away. I can still see that word written in my notebook, the simple-language meaning I had written there in Urdu. I can still hear her voice echoing in my ear, like I’m in the classroom of 5th semester.

She always used to say, “We are going to study <topic name>, and it is really very simple.” We laughed on it sometimes. But seriously, it became simple even if it really was not. That’s how human psychology is.

And obviously noticeable, her listening skill is really good. She is really a good conversationalist.

8. Vaishnavi Ganesh:

She reminds me of Ghatole mam from first year. Difference is, Vaishnavi mam speaks even more clearly… rolling and chewing the words in her mouth. Her dictation tone and speaking tone has no difference. You can’t spot any difference between her dictation tone and speaking tone.
That day, probably it was the first week of the college in 8th semester. She was dictating. After finishing a sentence…

“The book you have to refer in this semester is…” she said writing the names of authors on the blackboard. The whole class burst into laughing as they just realized that it is not the part of dictation. Mam too giggled.

She teaches Operating Systems primarily. If simple technique to teach is not working, she turns the teaching into an imaginary conversation between a “Processor and Resource” or a “Server and Client”. It seemed funny, but telling honestly, those imaginary conversations helps a lot to understand the concept. Believe it or not, while writing these lines, I’m having lots of concepts running in my mind she taught us in previous semesters.

9. Pallavi Chavhan:

It was the seminar of her subject. She had distributed the topics of a unit between us and every group of five had to give the seminar on assigned topic. Her listening skill is remarkable. She was on the very first system while all other students were behind her sitting scattered all around the room. She never moved from there and her gaze never missed the speaker, no matter who he is and how his English is. I even noticed the time when none of the students were listening to the speaker but she still was… interest in her eyes, nodding her head slightly and appreciating him. I was impressed. Rather I should say, “dhak se impresss hona” would be more proper here (that’s how one of my classmate say it.)

She taught us Mobile Computing. And we all loved the smoothness and clarity of her voice. Her pronunciation was very pleasant. She used to give real life examples often to make the subject all interesting and understandable.

10. Aniruddha Pathak:

He is not from our teaching staff but I'll not forget him. Actually we had attended a two day workshop by him. He is quite enthusiastic. I really loved his energy and was impressed by his public speaking skills so much that I wrote a report/review about the workshop taken by him. You can check it here.


About Author: Shakeeb Ahmad is a blogger, poet, enthusiast programmer, student of comparative religion and psychology, public speaker, singer and Vedic Maths expert. He loves playing with the numbers and invented a method to square the numbers at the age of 16. In sports, football is root to his happiness. He lives it.

Thursday, 5 January 2017

Aap Ki Maanind Sab Rind NahiN HaiN Shakeeb - Ghazal By Shakeeb Ahmad

Aap ki maanind sab rind nahiN haiN Shakeeb - Ghazal by Shakeeb Ahmad
Aap ki maanind sab rind nahiN haiN Shakeeb - Ghazal by Shakeeb Ahmad

You can read this Ghazal in three scripts. Click to go for the language of your choice. Let me know if you have any difficulty in understanding some word. And please don't forget to give the feedback. Enjoy!

In Arabic Script [Urdu]

عاشق و موسیٰ میں اب ایسا بھی کیا امتیاز؟
ہم بھی ہیں مشتاق کر، ہم سے بھی راز و نیاز

سود و زیاں سے پرے، صرف خدا کے اسیر
اہلِ تصوف وہ ہیں، جن پہ ہے خالق کو ناز

طیش میں وہ ہیں تو کیا، ایک یہی در تو ہے
اور کہاں پر کریں دستِ سوالی دراز

ذاتِ حبیبِ حزیں، تیری تڑپ کے نثار
سب کے لئے جاں گسل، سب کے تئیں جاں گداز

پیرِ حرم کیا کرے ؟ قوم کی دانست میں
نقلِ فرنگی ہے آج کارگر و کارساز

کشمکشِ زندگی سے ہے عروجِ امم
جہدِ مسلسل میں ہے رفعتِ قومی کا راز

آپ کی مانند سب رند نہیں ہیں شکیب
دیجیے گا کب تلک بادہ کشی کا جواز

In Devanagari Script [Hindi]

आशिक़-ओ-मूसा में अब ऐसा भी क्या इमतियाज़?
हम भी हैं मुश्ताक़ कर, हमसे भी राज़-ओ-नयाज़

सूद-ओ-ज़ियाँ से परे, सिर्फ़ ख़ुदा के असीर
अहल-ए-तसव्वुफ़ वो हैं, जिन पे है ख़ालिक़ को नाज़

तैश में वो हैं तो क्या, एक यही दर तो है
और कहाँ पर करें दस्त-ए-सवाली दराज़

ज़ात-ए-हबीब-ए-हज़ीं, तेरी तड़प के निसार
सब के लिए जांगुसिल, सब के तईं जांगुदाज़

पैर-ए-हर्म क्या करे ? क़ौम की दानिस्त में
नक़्ल-ए-फ़रंगी है आज कारगर-ओ-कारसाज़

कशमकश-ए-ज़िंदगी से है उरूज-ए-उमम
जहद-ए-मुसलसल में है रिफअत-ए-क़ौमी का राज़

आपकी मानिंद सब रिंद नहीं हैं शकीब
दीजिएगा कब तलक बादाकशी का जवाज़

In Roman Script [English]

Aashiq-o-moosa meN ab aisa bhi kya imteyaaz?
Ham bhi haiN mushtaaq kar, ham se bhi raaz o niaz

Sood-o-ziyaaN se parey, sirf Khuda ke aseer
Ahl-e-tasawwuf woh hain, jin pe hai Khaaliq ko naaz

Taish mein woh haiN to kya, ek yahi dar to hai
Aur kahaN par kareN dast e sawaali daraaz

Zaat-e-habeeb-e-hazeeN, teri tadap ke nisaar
Sab ke liye jaaN gusal, sab ke taeeN jaaN gudaaz

Peerِ haram kya kare? qaum ki daanist meN
Naqlِ-e-firangi hai aaj kaargar-o-kaarsaaz

Kashmakash-e-zindagi se hai urooj-e-umam
Johdِ-e-musalsal meN hai rif'at-e-qaumi ka raaz

Aap ki maanind sab rind nahiN haiN Shakeeb*
Dijiye ga kab talak baadah kashi ka jawaaz?

*The last couplet of a Ghazal normally have Pen Name of poet called "Takhallus" and the couplet containing the Takhallus is called "Maqta". Pen Name can be different than the original name of the poet, but I've chosen my own name as my Takhallus.

Tuesday, 3 January 2017

Qaafiyah Expert - A freeware tool for poets by Shakeeb Ahmad

What if you'll get lots of rhyming words just with a click of a button? Here it is. Qaafiyah expert is to do exactly that. 

I actually did that for myself, but I thought it'll be really good to share it with my friends. So, I refined the code, added some more functions and features like number of characters a Qaafiyah should have, saving them in a text file and auto-selecting the Urdu keyboard etc. and shared on some websites. And the response this tool got was unbelievable for me.

This application was my first step towards "Urdu Application Programming". I am thankful to my beloved chacha(that's what I call him) Aijaz Ubaid (Haidrabad) whose dictionary is used as the back end of this application. I would also like to thank Mr. Rana to tell me the power of C# language using which this application is programmed.


Back end: Flat File Database (FFD

Programming Language: C#.Net

IDE used: Visual Studio 2010

.Net Framework Version Required: Version 4

Interface Language: Urdu

Developer: Shakeeb Ahmad

Note: Qaafiyah is the word for "Rhyming word" in Urdu. Though this tool is designed specifically to give you Rhyming words in Urdu, you can also use it for Hindi if you know the Arabic Script (in which Urdu is written). You can also transliterate from Hindi to Urdu if you don't know the script and paste it in the text box of the software which says Talaash KareN(Search).

Following is the description of the tool along with screen shots. As the tool is intended to be used by Urdu audience, the description is given in Urdu.

 قافیہ ایکسپرٹ1.1
•    ڈاٹ نیٹ فریم ورک۴ .Net Framework4) (
•    اردو کی بورڈ
•    سافٹ ویئر کو درست طور پر دیکھنے کے لیے آپ کے کمپیوٹر پر جمیل نوری نستعلیق فانٹ کی موجودگی کو یقینی بنائیں۔  

۱۔ سافٹ ویئر لوڈ ہونے سے پہلے Splash Screen کے منظر (جو تین سیکنڈز تک موجود رہتا ہے) کو اوپر موجود ”x“ کی سائن پر کلک کر کے بند کیا جا سکتا ہے۔

(Psychologically, people love you… [oh sorry, your ‘software’] if you give this option to them)

۲۔مین  سافٹ ویئر لوڈ ہوتے ہی آپ کے کمپیوٹر کا ”اردوکی بورڈ“ خود بخود سیلیکٹ ہوجاتا ہے۔( Altr + Shift وغیرہ کی کوئی ضرورت نہیں)نیز کرسرCursor  ”تلاش“ کے بازو والے ٹیکسٹ باکس میں آ موجود ہوتا ہے۔
۳۔ دائیں سے بائیں اور نستعلیق کی سپورٹ تاکہ سافٹ ویئر کا انٹر فیس گراں نہ گزرے۔
۴۔  تمام متن کو کاپی کرنے کی سہولت جسے آپ با آسانی کسی اور جگہ پیسٹ کر سکیں۔
۵۔ نیز آپ کے قافیوں کو بطور ٹیکسٹ فائل محفوظ کرنے کی سہولت۔

۶۔ ٹیکسٹ فائل کو خود کار طور پر مناسب نام دینے کی سہولت تاکہ بعد کے ریفرنس میں آسانی ہو۔
•    ”تمام دکھائیں“ کے آپشن کے ساتھ آنے والے نتیجہ/رزلٹ کو قافیے کے اخیر حروف کے نام سے محفوظ کیا جائے گا۔ مثلاً ”اط کے قافیے“
•    ”تعین کریں“ کے آپشن کے ساتھ آنے والے نتیجہ کو قافیے کے اخیر حروف اور آپ کی تعین کردہ سیٹنگز کے ساتھ محفوظ کیا جائے گا۔ مثلاً ”ام کے قافیے-صرف 4حروف“
یہ محض ایک آپشن ہے، ظاہر ہے آپ خود کار طور پر آنے والے نام کو اپنی پسند کے نام سے تبدیل کر سکتے ہیں۔

۷۔ ”قوافی میں حروف کی تعداد کتنی ہو؟“ کے تحت ”تعین کریں“ کے آپشن پر کلک کرتے ہی کرسر Cursor ٹیکسٹ باکس میں آ موجود ہوتا ہے اور  آپ کا کی بورڈ لے آؤٹ (جو پہلے اردو تھا) خود بخود انگریزی میں بدل جاتا ہے تاکہ آپ حروف کی تعداد کو با آسانی بغیر کی بورڈ چینج کیے ڈال سکیں۔ واپس قافیوں کے ٹیکسٹ باکس میں جاتے ہی کی بورڈ پھر اردو ہو جاتا ہے۔
۸۔ نتیجہ کے طور پر حاصل ہونے والے قوافی کی تعداد ”کل ریکارڈز کی تعداد“ میں دیکھی جا سکتی ہے۔
طریقہ کار:
•    کسی لفظ کا قافیہ معلوم کرنے کے لیے ٹیکسٹ باکس میں اس کے آخر کے حروف داخل کریں اور ”تلاش“ کا بٹن دبا دیں۔

•    مثال:  اگر آپ نے ایسے تمام قوافی معلوم کرنے ہیں جو ”اط“ پر ختم ہونے ہوں(مثلاً  ”نشاط“)تو ٹیکسٹ باکس میں ”اط“ داخل کریں اور تلاش کا بٹن دبا دیں۔ سافٹ ویئر تمام قوافی کی لسٹ ظاہر کر دے گا۔
•    ان قوافی میں سے مناسب الفاظ کا انتخاب (بحیثیتِ شاعر) آپ کا کام ہے۔
•    زیادہ قوافی موجود ہونے کی صورت میں سافٹ ویئر تلاش میں وقت لے گا، اس میں پریشان ہونے کی ضرورت نہیں۔ جب تک ماؤز پوائنٹر Mouse Pointer لوڈ نگ ظاہر کرنے والا دائرہ بناتا رہے،  آپ سمجھ جائیں کہ ابھی تلاش جاری ہے۔
•    بائیں جانب موجود ”قوافی میں کتنے حروف ہوں“ کے آپشن میں آپ کو یہ سہولت دی گئی ہے کہ آپ قافیوں کے حروف کے تعداد کا تعین کر سکیں۔ ڈیفالٹ آپشن ”تمام دکھائیں“ کو سیلیکٹیڈ رکھا گیا ہے۔ اگر آپ چاہتے ہیں کہ حروف کی تعداد کا تعین کریں تو ”تعین کریں“ کے ریڈیو بٹن پر کلک کر دیں۔  اس کے بعد ڈراپ ڈاؤن لسٹ میں سے ایک آپشن چنیں(پہلے آپشن “زیادہ سے زیادہ“ کو ڈیفالٹ رکھا گیا ہے) بازو میں دیے گئے ٹیکسٹ باکس میں حروف کی تعداد ڈالیں اور ”تلاش کریں“ کے بٹن پر کلک کر دیں۔ آپ کا رزلٹ فلٹر ہو چکا ہوگا۔

•    مثال: ”اش“ پر ختم ہونے والے تمام قافیے جو کم از کم تین حروف پر مشتمل ہوں(زیادہ سے زیادہ کتنے بھی حروف ہو سکتے ہیں) کے لیے درج ذیل سیٹنگز رکھیں۔
1.    تلاش کے بٹن کے بازو والے ٹیکسٹ باکس میں”اش“ لکھیں۔
2.    ”قوافی میں کتنے حروف ہوں؟“ کے ذیل میں ”تعین کریں“ کے ریڈیو بٹن پر کلک کریں۔
3.    ڈراپ ڈاؤن لسٹ میں سے ”کم از کم“ کو منتخب کریں۔
4.    حروف کی تعداد کے ٹیکسٹ باکس میں ”3“ کا عدد ڈال دیں۔
5.    ”تلاش کریں“ کے بٹن پر کلک کر دیں۔
Known Bugs:    
Counting ‘a’raab’ as one character.
اگلے ورژن میں ممکنہ اضافے :
۱۔ اردو کی بورڈ کی غیر موجودگی میں بھی اردو ٹائپ کرنے کی سہولت دی جا سکتی ہے :
    اول: براہ راست کی بورڈ سے
    دوم: آن سکرین On Screen کی بورڈ سے
۲۔ ڈکشنری (اعراب کے ساتھ) اور موجودہ ڈکشنری کا امتزاج کیا جا سکتا ہے۔
( یاد رہے کہ موجودہ ورژن میں بھی ڈکشنری کو بدل کر اعراب والی ڈکشنری کو استعمال کیا جا سکتا ہے جس سے سافٹ ویئر میں کوئی تبدیلی کیے بغیر اعراب کے ساتھ قافیے دیکھ سکیں گے۔ لیکن دونوں ڈکشنری کے سنگم میں زیادہ سہولت بھی ہوگی اور معرب اور غیر معرب الفاظ کی مطابقت سے سافٹ ویئر کو اسے اڈاپٹ کرنے کے قابل بنانا ، ناگزیر ہوگا۔)

مزید کسی اضافے کی تجویز اگر آپ کے ذہن میں ہو تو ضرور بتائیں۔
کسی بھی قسم کی تجاویز اور مسائل کے لیے اس ای میل پتہ پر رابطہ فرمائیں:
shakes ڈاٹ ahmad ایٹ gmail ڈاٹ com
یا فیس بک پر:
قافیہ ایکسپرٹ کے بارے میں اپنی رائے ضرور دیں۔
دعا گو و دعا جو
شکیبؔ احمد

Wednesday, 14 December 2016

Aah yeh ishq bhi kaisa hai tera...Ghazal by Shakeeb Ahmad

Aah yeh ishq bhi kaisa hai tera...Ghazal by Shakeeb Ahmad

You can read this Ghazal in three scripts. Click to go for the language of your choice. Let me know if you have any difficulty in understanding some word. And please don't forget to give the feedback. Enjoy!

In Arabic Script [Urdu]

جب سے تو عاملِ فرمودۂ اسلاف نہیں
نام انصاف کا باقی ہے پہ انصاف نہیں

ضربِ شمشیر، بجا! نعرۂ تکبیر درست!
سب ہے! بس تجھ میں مجاہد سے وہ اوصاف نہیں

کیا بہانہ ہے مرے قلب کو ٹھکرانے کا
کرچیاں دیکھ کے کہتے ہیں کہ “شفاف نہیں!”

یا خدا! امتِ احمد بھی وہی تو بھی وہی
کیا سبب ہے کہ وہ پہلے کے سے الطاف نہیں

آہ! یہ عشق بھی کیسا ہے ترا جس میں شکیبؔ
عشق کا عین نہیں شین نہیں قاف نہیں

In Devanagari Script [Hindi]

जब से तू आमिले फरमूदा-ए-अस्लाफ नहीं
नाम इन्साफ का बाक़ी है पे इन्साफ नहीं

ज़रब -ए- शमशीर, बजा! नार -ए- तक्बीर दुरुस्त
सब है! बस तुझ में मुजाहिद से वो औसाफ़ नहीं

क्या बहाना है मेरे क़्लब को ठुकराने का
किरचियां देख के कहते हैं के “शफ़फ़ाफ़ नहीं!”

या ख़ुदा! उम्मते अहमद भी वही तू भी वही
क्या सबब है के वो पहले के से अलताफ़ नहीं

आह! ये इश्क़ भी कैसा है तेरा जिस में शकीब*
इश्क़ का ऐन नहीं शीन नहीं क़ाफ़ नहीं

In Roman Script [English]

Jab se tu aamil-e-farmooda-e-aslaaf nahiN
Naam Insaaf ka baaqi hai peh insaaf nahiN

Zarb-e-shamsheer baja, naara-e-takbeer durust
Sab hai, bas tujh meN mujaahid se wo ausaaf nahiN

Kya bahaana hai mere qalb ko Thukraane ka
KirchiyaaN dekh ke kehte haiN ke shaffaaf nahiN

Yaa khuda, ummat-e-Ahmad[1] bhi wohi, tu bhi wohi
Kya sabab hai ke wo pehle ke se altaaf nahiN

Aah! Ye Ishq bhi kaisa hai tera jis meN Shakeeb*
Ishq ka ain nahiN sheen nahiN qaaf nahiN

[1] Ahmad is referred to Prophet Muhammad [P.B.U.H]
*The last couplet of a Ghazal normally have Pen Name of poet called "Takhallus" and the couplet containing the Takhallus is called "Maqta". Pen Name can be different than the original name of the poet, but I've chosen my own name as my Takhallus.