My new app AfsaneDB (Beta) is now in PlayStore!

Those who love reading classic literature can now enjoy literary masterpieces in this beautifully designed app.

Thursday 31 December 2020

My New Year Resolution for 2021


 Off you go 2020! Quite a year it was, wasn't it? 

It started with the best thing happened to me till date, the journey to the Holy cities of Mecca and Medina, Saudi Arabia, for 'Umrah. It was overwhelmingly wholesome. Alhamdulillaah! [1] I'm yet to document the experience, but I do have the poetry ready, which you will see on the blogs soon.

Then just about a month later, the covid pandemic started and finally the lock-down. Ramazan [2] came and went by, we couldn't offer prayers in the mosques. Eid-ul-fitr was same. So was Eid-ul-Azha. [3] Sad sad times those were. 

It did bring some positive changes too. We had a lot of free time. People actually started working on things they were passionate about. 

Resolutions

First of all, note that making resolution DOES help. 10/10 recommended. It keeps you focused. It gives you a list to work on. It tells you where to concentrate your efforts. 

When you make one, it might not seem realistic at first, even to yourself. Rather, specially to yourself. But the motivation and consistency it provides easily make you more productive than you were before. 

The key is being motivated. They say, around 90% of people who make resolutions drop them by the end of January. You don't want to be one of them. 

2020

Even when a lot of things which were in the resolution of 2020 are still in pending, I was pleasantly surprised by how much I did finish off. 

The only thing I miserably lagged in was "writing" stuff. I put more effort in development and left the actual writing behind. I miss it. 

2021

  • Releasing new apps consistently, many of which are in the queue right now, about ready for production
  • Hifz (Memorizing Quran)
  • Publishing book-reviews on blogs
  • Finishing incomplete Novel, Translations, Books/Booklets etc.
  • Magazines - Sarbakaf and Personal Bi-Weekly
  • Publishing Videos
  • Interviews
  • Portals Management
  • + Resolutions from last year

Last Words

As I'm writing this, the third decade of the 21st century is on the verge of knocking the doors of times - bringing joys and cries, hope and despair, turning the pages of  everyone's destiny. 

I don't know what this new year will bring, but I am nothing but my dreams. I will continue chasing after them.

________

Footnotes

[1] Alhamdulillah - An expression loosely equivalent to "Thank God", used for gratification/achievement. See Alhamdulillah.

[2] Ramazan is considered a holy month, 9th month as per Islamic Hijri calendar, which is observed worldwide as a month of fasting. See Ramadan.

[3] Eid-ul-Fitr and Eid-ul-Azha are the 2 major Muslim festivals celebrated worldwide.

Shakeeb Ahmad Maharashtra, India

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 shortcut method to square the numbers at the age of 16. In sports, football is root to his happiness. He lives it.

iPhone Users! Here's a Web App for Qaafiyah Expert


Tldr;

If you are in a hurry, here's the link to Qaafiyah Expert - Web:

The Web App and its Journey

Right from the beginning when I launched an android app for Qaafiyah Expert (an app to assist Urdu poets with rhymes, meter, dictionary, diary, designing and much more), people were requesting the same for iPhone users. As I was using the cross-platform approach for the app, building the same thing for iPhone wouldn't have taken so long. But the problem was, apple AppStore's pricing. I couldn't afford it. Well, most of us can't.

Anyway, after some research on pricings, I decided to go for a PWA (Progressive Web App), which is an installable app, but you don't need to pay a single penny to Google or Apple whatsoever. 

It does bring some drawbacks, but there are alternatives for most of the incompatible native-app functionalities. For a naïve user though, PWAs and native Android/ios apps are indistinguishable. For instance:

  • Visiting a Progressive Web App asks you to "Add it to Home Screen", which is alternative to "Installing an app"
  • It does have an icon, just like a native app
  • It can work offline using service workers etc.
This PWA for Qaafiyah Expert had been hosted on my domain 'q.shakeeb.in' for quite a while now, as you can see in the "first commit" here. But some of the features were not working as expected, so I didn't announce it "officially." Now that the android app has been completely rewired, performance is improved and speed is optimized, I decided to use the new code-base, modified it for the web-app and deployed it. iPhone users can now finally use this app.

If you are an android user though, I strongly recommend the android version, which has some cool extra features and obvious UX advantages.

Once again, here's the link to the web-app:

Qaafiyah Expert - Live Demo

Hope this will assist in your poetry-writing journey. 

Rab raakha! 👋

Shakeeb Ahmad Maharashtra, India

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 shortcut method to square the numbers at the age of 16. In sports, football is root to his happiness. He lives it.

Thursday 24 December 2020

Rekhta Content Scraper by Shakeeb Ahmad | For Programmers Only


Note: This is not yet available for non-programmers. Soon I'll make an easy-to-use version for all, iA.

This scraper with Node.js works for both prose and poetry. Check the GitHub repo for installation instructions.

You would need a text file with all the links you want to download the contents from. To get the list of links, you could manually collect all which interests you, or use the following to scrape all links from an author/poet page.

Bookmarklets - One Click Solution to get the links etc.

Rekhta loads 50 links at a time, and if user scrolls, it adds more content to the DOM. This extra fetch has not been automated in my code yet. (Well I tried, but parsing it wasted so much time that I preferred using manual scroll. Just let the page load, then press "end" on your keyboard. Wait for a moment, it will add all the remaining links.)

Anyway, once you have the complete list on the page, you can use the bookmarklets below to copy all of them with a click.

I've been testing this in browser console for a while now, i.e. open browser console, then paste the script, then change the page text to only what I need, then select and copy them manually. 

Later on I decided to use magic of bookmarklets to automate these tasks I've been doing repeatedly: 

  • Copy all the links from the Poet/Author page.
  • For LitUrdu specifically, turn them into an "object" with required properties (title, author, link, description, text) and copy it.
  • Use the "object" to automatically fill-in text-boxes on new Blogger post.
Ultimate plan is to use Blogger API and post it directly, but this bookmarklet approach doesn't hurt much because most of the things I'm doing are just a click away.

Bookmarklets
Drag and drop the links to the bookmarks bar in your browser. (Ctrl+Shift+b to toggle the bar)
Use on author/poet's page to copy all the links to their enlisted work
Use on individual poem/story page to copy an object with properties (title, author, link, description, text). Modify as per your needs.
Use on a new Blogger post after pasting the "object" from rekhta in console. This will fill in all the required fields in the new post automatically.

Shakeeb Ahmad Maharashtra, India

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 shortcut method to square the numbers at the age of 16. In sports, football is root to his happiness. He lives it.