Posts

Showing posts from 2024

Allama Iqbal Poetry that I Like

گزر جا عقل سے آگے کہ یہ نور  چراغ راہ ہے ۔ منزل نہیں ہے ----   دلِ بینا بھی کر خدا سےطلب آنکھ کا نور دل کا نور نہیں --- حلاج کی لیکن یہ روایت ہے کہ آخر  اک مرد قلندر نے کیا رازِ خودی فاش --- تو اے اسیرِ مکاں! لا مکاں سے دور نہیں وہ جلوہ گاہ ترے خاک داں سے دور نہیں --- خضر کیونکر بتائے، کیا بتائے اگر  ماہی  کہے  دریا  کہاں  ہے --- بالائے سر رہا تو ہے نام اس کا آسماں  زیر پر آ گیا تو یہی آسماں، زمیں !  ---- دل میں ہو سوزِ محبت کا وہ چھوٹا سا شرر نور سے جس کے ملے رازِ حقیقت کی خبر ---  جُراؑت ہے تو افکار کی دنیا سے گزر جا  ہیں بحر خودی میں ابھی پوشیدہ جزیرے کھلتے نہیں اس قُلزُم خاموش کے اٗسرار  جب تک تو اسے ضربِ کلیمی سے نہ چیرے  --- تری نگاہ میں ثابت نہیں خدا کا وجود  مِری نگاہ میں ثابت نہیں وجود ترا  وجود کیا ہے۔ فقط جوہرِ خودی کی نمود کر اپنی فکر کہ جوہر ہے بے نمود ترا  ---   ہر اک منتظر تیری یلغار کا  تری شوخی فکر و کردار کا  یہ ہے مقصد گردش روزگار  کہ تیری خودی تجھ پہ ہو آشکار ---  پروانہ تجھ سے کرتا ہے اے شمع! پیار کیوں یہ جان بے قرار ہے تجھ پہ نثار کیوں پروانہ، اور ذوقِ

17 Key Insights from Muhammad Raza Saeed's Podcast: Leadership, Innovation, and Pakistan’s Growth

  Just watched a podcast of Muhammad Raza Saeed, CEO Confiz and PakWheels at Thought Behind Things . It was around 2 hours session, here are my 17 take-aways. 1. Everything must be done in a propey way. Processes, not individuals, should drive a company to ensure consistency and quality management. 2. Whatever you do, identify patterns in your service, its where you would find new ideas to work on, areas to innovate by creating products. 3. Software is means to an end, and that end is "the problem it solve". Focus on problems identification and then building solutions to fix them. Digitalization globally is only at 15-20%, offering abundant opportunities for software businesses. 4. Large software platforms are complex and every business is different in operations, even when they are doing same stuff. People are needed to customize platforms to meet specific requirements. Here is the opportunity you can tap. 5. Business opportunities lie not only in grand challenges but also i

How to start freelancing in software development?

A student asked about how to start feelancing at reddit. Here are a couple of points I shared. I found it a bit cool, so I thought to share with broader audience: 1. Pick one skill and master it thoroughly by learning from 3-4 different sources (e.g., Coursera, Udemy, edX, YouTube, etc.). Complete 2-3 academic projects to apply what you've learned. Try to incorporate most of the features or tools often demanded in related projects within the chosen tech stack. Start by selecting a technology that has good demand nowadays and in which you already have some experience (this is recommended but not required). Choose something you enjoy working with. Once you've made your choice, stick with it for at least 3-4 years. This could be MERN, MEAN, React Native, Shopify, Odoo, Java/Spring, Flutter, .NET, Laravel, Salesforce, ERPs, Blockchain, Web3, integrations, ML/AI, automation, web scraping, data processing, crypto, or something else. The key is to pick one and stick to it unless you h

Express JS - Basic Web Programming Tasks

Below listed programming tasks are designed to practice different concepts of server side web programming using Express JS and related modules. These are to make the understanding of concepts along with their implementation clear, some of them may not represent practical requirements. Make a header in header.ejs and include this header in all EJS pages. Add /home link in header. In same way, make a footer in footer.ejs and include this footer in all EJS pages. Make a handler /queryhandler, it shall display all query string parameters sent to server at server console. Make another handler i.e. /queryhandler2, on GET reuquest, it shall display all submitted request parameters to user screen using show.ejs Create a form to Add New Book and serve at /add-book on GET request. Take Title, Author Name, Published Year, and Publisher Name as input fields from the user. Handle form submission using POST at same URL i.e. at /add-book, the handler shall display the submited data on user browser us

Create an Address Book using Express and EJS

 Create an application using Express, the application shall have following features: Make a JSON file named users.json. It shall be an array of objects where each object shall represent a contact person detail. Only 2-3 records are sufficient. Use following fields for each object: name, gender, email, city, phone number. Below given description is about different operations that you shall implement in your app to perform CRUD operations on file. List all records:  At /home ... list only contact persons' names in tabular form. The table shall have columns: ID, Name, Operations. Display user ID in ID column, Operations column shall have two links or buttons i.e. Update, Delete. When these links or buttons are clicked, pass user id to /update and /delete handler. Update Record When user click Update link or button, GET request shall be sent to server to URL pattern /update. Pass user id as query-string e.g. /update?id=10. The /update handler shall open the Update Form where earlier co

Event Handling and DOM Manipulation - Basic Tasks

Here are a couple of tasks related to event handling and DOM manipulation. These are very basic and micro level tasks. I suggest to complete these before moving to complex ones or JavaScript assignment. Most of these tasks are designed to practice common use cases of form handling, event handling and DOM manipulation. So do not worry, if you feel, a task do not represent genuine requirement. Task 1 Get a number from user in a text field. Add a standard button below that field. When the button is clicked, in alert box, show the square of number. e.g. if user entered 6, in alert, show 36. Task 2 Create two text input fields to get two numbers from user. Make a group of radio buttons with options: Add, Subtract, Multiply, and Divide. Then, add a standard button labled "Calculate", when the button is clicked, perform the selected arithmatic operation and display the result in a div below the button. Task 3 Make a hyperlink and set values for following attributes: href, title, tar

AJAX and DOM Manipulation - Practice Task 2

If you know JQuery JavaScript library, you can use it to make AJAX calls and to manipulate DOM to fullfil below requirements. On page load, fetch users from http://192.155.90.208/users.json using AJAX and show only names in Column 1 of your web page. Each user name shall be in a separate div (so all names would be vertically stacked). Add an HTML form in Column 2 of you web page that shall have input fields i.e. name, gender, interests, country and city of type text, radio, checkboxes, and dropdown lists, respectively and a standard button labeled as Show Data . When a user name in Column 1 is clicked, populate the form’s all input fields accordingly. See users.json, only given values shall be listed as valid values for gender and interests in the form. (You can expect no other value for interest would appear or is valid, so feel free to hard code list of checkboxes, but if you create them dynamically, that is better but not required). Althought there would be multiple checkboxes, but

Bootstrap Practice Tasks

Task 1 Create a layout that shall have 4 info widgets.  On extra small devices, all shall be stacked On small and medium screen, there shall be 2 widgets in one row (hence there would be total two rows) On large and above, all columns shall come in single row Task 2 Create a layout that shall have 3 cells: On extra small and small devices, all shall be vertically stacked On medium and above, first row should have 2 cells and 2nd row should have one cell. Cell in 2nd row should be of 50% width and it shall coe in center of row. Task 3 Create a layout that shall have 6 cells. on extra small devices, all shall be vertically stacked.  On small and mediun devices, 2 cell per row.  On large and above, 3 cell per row Task 4 There shall be one “row” with 3 cells, all shall be vertically stacked on all devices, except extra small devices (means on extra small devices, all cells shall be of equal width and come in single row). Task 5 There shall be one “row” with 2 cells, each cell shall take 75