CodeGym /جاوا بلاگ /Random-UR /کیا آج کوڈنگ 10-15 سال پہلے کی نسبت آسان ہے؟ ٹولز اور تکن...
John Squirrels
سطح
San Francisco

کیا آج کوڈنگ 10-15 سال پہلے کی نسبت آسان ہے؟ ٹولز اور تکنیکیں جنہوں نے اسے بنایا

گروپ میں شائع ہوا۔
چونکہ ٹیکنالوجی کی صنعت آگے بڑھ رہی ہے اور اسے تیزی سے بڑی تعداد میں اہل سافٹ ویئر ڈویلپرز کی ضرورت ہے، اس لیے یہ پیشہ ہر اس شخص کے لیے بھی زیادہ قابل رسائی ہو جاتا ہے جو پروگرامنگ سیکھنا چاہتا ہے اور ٹیلنٹ کی زیادہ مانگ اور اجرت کے فوائد سے لطف اندوز ہونا چاہتا ہے۔ پروگرامنگ کے کئی دہائیوں کے تجربے کے حامل سافٹ ویئر ڈویلپمنٹ کے تجربہ کار اکثر اس بات کی کہانیاں شیئر کرتے ہیں کہ یہ پیشہ کتنا مختلف نہیں تھا، جب پروگرامنگ کی زبانوں اور ترقی کے عمل کے بارے میں معلومات محدود تھیں اور صرف چھپی ہوئی نصابی کتب میں دستیاب تھیں، بعض اوقات مشکوک معیار کی بھی۔ یہاں تک کہ بزرگ جنہوں نے صرف 10-15 سال پہلے پروگرامنگ شروع کی تھی اس بات سے اتفاق کرتے ہیں کہ آج سافٹ ویئر ڈویلپر بننا بہت آسان ہے، اور یہ سچ ہے جب کوڈنگ کی مہارت حاصل کرنے اور اس کے بعد اصل کام انجام دینے میں آسانی دونوں کی بات آتی ہے۔ کیا آج کوڈنگ 10-15 سال پہلے کی نسبت آسان ہے؟  ٹولز اور تکنیک جن سے یہ ہوا - 1لیکن 2021 میں، آج ایک پروگرامر بننے (اور بننے) کو اصل میں کیا چیز بناتی ہے، اس سے کہیں زیادہ آسان، آئیے، بیس سال پہلے، 2001 میں؟ ہم نے سوچا کہ یہ مزید تفصیل سے دیکھنے کے لیے ایک دلچسپ موضوع ہو سکتا ہے اور اب ہم یہی کرنے جا رہے ہیں۔

سافٹ ویئر ڈویلپر کے کام کو پہلے سے کہیں زیادہ آسان بنانے والے ٹولز

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

1. گٹ اور گٹ ہب۔

گٹ ایک مفت اور اوپن سورس تقسیم شدہ ورژن کنٹرول سسٹم ہے جو چھوٹے سے لے کر بہت بڑے پراجیکٹس کو رفتار اور کارکردگی کے ساتھ ہینڈل کرنے کے لیے ڈیزائن کیا گیا ہے۔ ابتدائی طور پر 2005 میں جاری کیا گیا، Git تیزی سے ایک صنعت کا معیار بن گیا، جس سے ڈویلپرز کو سافٹ ویئر پروجیکٹس کے کوڈ اور ورژن میں ہونے والی تبدیلیوں پر زیادہ بہتر کنٹرول حاصل کرنے کے ساتھ ساتھ متعدد کوڈرز کے تعاون کو بہت زیادہ، زیادہ موثر اور منظم بنانے کی اجازت دیتا ہے۔ GitHub ورژن کنٹرول اور تعاون کے لیے گٹ کوڈ ریپوزٹری ہوسٹنگ پلیٹ فارم ہے۔ سب سے پہلے 2008 میں لانچ کیا گیا، GitHub جلد ہی دنیا کا معروف سافٹ ویئر ڈویلپمنٹ پلیٹ فارم بن گیا۔ GitHub ڈویلپرز کے لیے اوپن سورس پروجیکٹس میں تعاون اور تعاون کرنا، کوڈ کے لیے مناسب دستاویزات بنانا، اپنے کام کو دوسروں کے سامنے ظاہر کرنا، وغیرہ کو بہت آسان بناتا ہے۔ "میں پہلے اپاچی سبورژن (SVN) استعمال کر رہا تھا، جو مرکزی ہے یعنی تمام تبدیلیاں ایک سرور میں محفوظ ہیں۔ اس کا مطلب ہے کہ جب آپ عہد کرتے ہیں تو آپ کی تبدیلیاں براہ راست اپ لوڈ ہوجاتی ہیں۔ مجھے یاد ہے کہ یہ بعض اوقات کافی دباؤ کا شکار ہوتا ہے، اور "مجھے یقین نہیں ہے کہ یہ کام کرتا ہے یا نہیں لیکن میں اس کوڈ کو بہتر طور پر محفوظ کرتا ہوں" کے لمحات سے نمٹنا واقعی مشکل تھا۔ جب کہ Git کے ساتھ آپ بعد میں آگے بڑھنے کے بارے میں صرف عزم اور فکر کر سکتے ہیں (اور، اگر شک ہو تو، آپ ہمیشہ برانچ کر سکتے ہیں)،" Guillaume Elias، ایک تجربہ کار C++ ڈویلپر، یاد کرتے ہیں ۔

2. IntelliJ IDEA اور دیگر IDEs۔

IntelliJ IDEA ایک مربوط ترقیاتی ماحول ہے جو جاوا میں لکھا گیا ہے اور دیگر زبانوں کی ایک بڑی قسم جیسے SQL، JPQL، PQL، HTML، JavaScript، Kotlin، وغیرہ کو سمجھنے اور انٹیلیجنٹ کوڈنگ امداد فراہم کرنے کے قابل ہے۔ یہ متعدد دیگر زبانوں کو بھی سپورٹ کرتا ہے، بشمول اسکالا، زنگ، پی ایچ پی، روبی اور دیگر، پلگ ان کے ذریعے۔ اگرچہ پہلا IDE - Microsoft's Visual Basic (VB) - 1991 میں دوبارہ شروع کیا گیا تھا، اصل IDEs کو ڈویلپرز کی طرف سے اچھی طرح سے پذیرائی نہیں ملی تھی۔ یہ 2000 کی دہائی میں 2001 میں IntelliJ IDEA کی ریلیز کے بعد تبدیل ہوا کیونکہ اس نے طاقتور خصوصیات اور انضمام کو شامل کرنے کے ساتھ 2000 کی دہائی کے اوائل میں اپنانا شروع کیا۔ نتیجتاً، 2010 کی دہائی تک IDEs، اور خاص طور پر IntelliJ IDEA، سافٹ ویئر ڈویلپرز کی اکثریت کے لیے ایک ڈی فیکٹو معیار بن گیا۔ "میں نے 1980 کی دہائی میں شروعات کی تھی، جب کمانڈ لائنز اور میک فائلز معیاری تھے۔ مربوط سورس لیول ڈیبگر کے ساتھ ایک IDE (میرا پہلا لائٹ اسپیڈ سی تھا) ایک بہت زیادہ بہتری تھی۔ اس کے بعد سے ہر بہتری میں اضافہ ہوتا رہا ہے۔ زیادہ مربوط افعال کے ساتھ بہتر IDE نے ترقی کے عمل کو بہتر کیا ہے لیکن یہ صرف اضافہ ہے۔ سورس ڈیبگنگ کے ساتھ IDE ایک کوانٹم لیپ فارورڈ تھا، جس کا موازنہ اسمبلر سے آگے پروگرامنگ زبانوں کی ترقی سے کیا جاسکتا ہے،" ولیم ہیمبری، ایک ریٹائرڈ سافٹ ویئر ڈویلپر اور کمپیوٹر سائنس کے معلم نے کہا ۔

3. اسٹیک اوور فلو۔

جب کوڈنگ سے متعلق معلومات حاصل کرنے کی بات آتی ہے، تو 2000 کی دہائی کے آخر میں - 2010 کی دہائی کے اوائل میں ڈویلپرز کے لیے نئے میسج بورڈز اور کمیونٹی پلیٹ فارمز کی بڑھتی ہوئی تعداد کے ساتھ بہت کچھ بدل گیا ہے۔ اسٹیک اوور فلو ڈویلپرز کے لیے سب سے زیادہ مقبول آن لائن کمیونٹی ہے، جسے ہر ماہ 50 ملین سے زیادہ کوڈرز دیکھتے ہیں۔ 2008 میں شروع کیا گیا، اسٹیک اوور فلو نے پروگرامرز کے لیے علم کا تبادلہ کرنا اور ایک دوسرے کے ساتھ بات چیت کرنا آسان بنا دیا، اور کوڈنگ شروع کرنے والوں کے لیے سیکھنے کے عمل کو آسان بنایا۔ "پہلی چیز جو میرے ذہن میں آتی ہے وہ ہے اسٹیک اوور فلو۔ اب، آپ کہیں گے، یہ ایک آلہ نہیں ہے، لیکن یہ ہے. یہ معلومات کا ایک انمول ذریعہ ہے جو 2008 سے پہلے کے لوگوں کے پاس نہیں تھا۔ ہمارے پاس دستورالعمل، کتابیں، اور سرپرست (سینئر ڈویلپرز) موجود ہیں، اور یہ بہت کچھ ہے کہ لوگ SO سے پہلے چیزیں سیکھتے اور شیئر کرتے تھے،" کروشیا کے ایک سینئر سافٹ ویئر انجینئر، انتونیو نیسک نے نشاندہی کی ۔

4. منظم کلاؤڈ سروسز۔

منظم کلاؤڈ سروسز کے بڑھتے ہوئے اختیار نے بھی جدید دور کے پروگرامرز کے کام کو آسان بنانے میں اہم کردار ادا کیا۔ 2006 اور 2008 میں بالترتیب شروع ہونے والی Amazon Web Services اور Microsoft Azure جیسی کلاؤڈ سروسز کے دستیاب ہونے اور بڑے پیمانے پر اپنانے کے بعد، پروگرامرز کو سسٹم کے کام کرنے کے لیے سرورز اور نیٹ ورکس کو ترتیب دینے اور برقرار رکھنے کے لیے اب اتنے زیادہ لوگوں کی ضرورت نہیں رہی۔ کلاؤڈ سروسز نے سافٹ ویئر کی ترقی کو بھی بہت زیادہ موثر بنایا ہے کیونکہ آج ترقی پذیر ٹیمیں انفرادی سطح پر چھوٹی اور زیادہ پیداواری ہو سکتی ہیں۔ "جب میں نے ڈائنامک ویب پروگرامنگ شروع کی، تو ایک ASP تھا، اور میں ASP.NET کے بارے میں بات نہیں کر رہا ہوں، جو .NET کے لیے ایک اوپن سورس ویب فریم ورک ہے، لیکن اچھا پرانا کلاسک ASP جو MS Access ڈیٹا بیس کا استعمال کرتا ہے۔ ہاں تم نے مجھے اچھی طرح سنا ہے۔ اس نے MySQL، یا MSSQL یا اس سے ملتی جلتی کوئی چیز استعمال نہیں کی۔ آپ اس کے ساتھ ایک MS Access ڈیٹا بیس منسلک کریں گے۔ اور پھر آپ کے پاس ایک سرور اور کلائنٹ ہوگا۔ اور یہ تھا. اتنا ہی سادہ۔ ان دنوں آپ کے پاس DigitalOcean, Linode, Google Cloud, AWS, Azure وغیرہ ہیں۔ اور ان سب کے پاس آپ کے سافٹ ویئر کے پیمانے میں مدد کرنے اور کم سے کم ڈاؤن ٹائم کے ساتھ کام کرنے کے لیے ان کے ہتھیاروں میں بہت ساری چیزیں موجود ہیں۔" Antonio Nesic مزید کہتے ہیں۔

5. پروجیکٹ مینجمنٹ اور کمیونیکیشن ٹولز: جیرا اور سلیک۔

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

سافٹ ویئر ڈویلپر بننا آج پہلے سے کہیں زیادہ آسان کیوں ہے۔

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

  • مفت پروگرامنگ سبق۔

جزوی طور پر تعاون کے زبردست ٹولز اور پلیٹ فارمز کی دستیابی کی بدولت اور تیزی سے بڑھتی ہوئی ڈویلپر کمیونٹیز کے نتیجے میں، آن لائن اور آف لائن، آج پروگرامنگ زبان سیکھنے کے خواہشمند ابتدائی افراد آن لائن سے سیکھنے کے لیے متعدد مفت ٹیوٹوریلز تلاش کرنے کے قابل ہیں۔ یہ خاص طور پر سچ ہے جب یہ بڑے پیمانے پر مقبول پروگرامنگ زبانوں جیسے جاوا کے لئے آتا ہے. بہت سارے مفت جاوا ٹیوٹوریل آن لائن دستیاب ہیں۔ اوریکل سے جاوا کے سرکاری ٹیوٹوریلز یقینی طور پر ایک سفارش کے قابل ہیں۔ کچھ دوسرے بہت اچھے انٹرایکٹو آن لائن جاوا ٹیوٹوریلز LearnJavaOnline.org , JavaBeginnersTutorial.com ہوں گے اور جو آپ کو ٹیوٹوریلز پوائنٹ پر مل سکتے ہیں ۔

  • اعلی درجے کی آن لائن سیکھنے کے کورسز۔

سیکھنے کے منصوبوں، گیمیفیکیشن عناصر، سماجی خصوصیات کے ساتھ اعلی درجے کے پروگرامنگ سیکھنے کے کورسز کا وجود، اور طلباء کو بیکار تھیوری کی بجائے قابل اطلاق ہنر سکھانے پر زور ایک اور چیز ہے جو آج سافٹ ویئر ڈویلپمنٹ کی تعلیم میں فرق پیدا کرتی ہے۔ غیر معمولی نہ ہو، لیکن CodeGym ممکنہ طور پر ایک اعلی درجے کی آن لائن سیکھنے کے کورس کی بہترین مثال ہے جو مکمل طور پر شروع کرنے والوں کے لیے اچھا ہے اور ایسے فارغ التحصیل افراد کو فراہم کرنے کے قابل ہے جو مکمل طور پر فعال جاوا ڈویلپر ہیں۔ CodeGym یہ سیکھنے کے لیے بہترین ہے کہ سب سے زیادہ مؤثر طریقے سے کوڈنگ میں بہتر طریقے سے کیسے حاصل کیا جائے — پریکٹس کے ذریعے، اس میں بہت کچھ۔ CodeGym کے پہلے سبق سے شروع کرتے ہوئے، آپ آہستہ آہستہ جاوا کی بنیادی باتیں سیکھیں گے، جس میں بہت سے متنوع کام (پہیلیاں) ہیں جو آپ کو عملی مہارتوں کے ساتھ نظریاتی علم کی مدد کرنے کے لیے ڈیزائن کیے گئے ہیں۔

  • پروگرامنگ پریپ پلیٹ فارم۔

آن لائن تیاری کے پلیٹ فارمز جہاں کوڈنگ شروع کرنے والے مشق کر سکتے ہیں اور نوکری کے انٹرویوز کے لیے تیاری کر سکتے ہیں ایک اور قابل ذکر نیا پن ہے جو 2000-10 کی دہائی تک موجود نہیں تھا۔ کچھ مشہور پریپ پلیٹ فارمز LeetCode ، انٹرویو کیک اور HackerEarth ہیں ۔ CodeGym، اس کے 1200 سے زیادہ کاموں کے ساتھ، ویسے بھی ایک پریپ پلیٹ فارم کے طور پر درجہ بندی کی جا سکتی ہے۔ پلیٹ فارم استعمال کرنے کے لیے ایک گیمفائیڈ اور تفریح، کوئی بھی شامل کر سکتا ہے۔

  • پروگرامنگ کے بارے میں یوٹیوب چینلز، بلاگز اور پوڈ کاسٹ۔

بہت سارے صارف کے تیار کردہ مواد کے ساتھ نیا میڈیا سیکھنے میں اضافے کا ایک بہترین ذریعہ ہو سکتا ہے، جو ابتدائی افراد کو YouTube چینلز ، بلاگز اور پوڈکاسٹ کے ذریعے اپنے شعبے کے ماہرین سے براہ راست معلومات حاصل کرنے میں مدد کرتا ہے۔ مثال کے طور پر، آج کوئی جاوا کے ابتدائی افراد کے لیے بہت سے بہترین YouTube چینلز تلاش کر سکتا ہے ، جیسے Derek Banas ، Programming with Mosh ، Oracle's Java چینل ، Adam Bien ، اور vJUG ۔

  • کوڈنگ گیمز۔

آخر میں، کچھ واقعی زبردست کوڈنگ گیمز جاری کیے گئے۔ جیسا کہ ہم جانتے ہیں، اور CodGym ایک زندہ ثبوت ہے، گیمیفیکیشن آپ کے سیکھنے کو بااختیار بنانے اور اس عمل میں لطف اندوز ہونے کے ساتھ ساتھ بہتر پیش رفت حاصل کرنے کا ایک بہت اچھا طریقہ ہو سکتا ہے۔ جب کوڈ کرنے کا طریقہ سیکھنے پر لاگو کیا جاتا ہے، تو یہ ابتدائی افراد کو پروگرامنگ کے مشکل تصورات اور تکنیکوں کے جوہر کو جلدی اور کم محنت کے ساتھ سمجھنے میں مدد کرتا ہے۔ کیا آپ اس بات سے اتفاق کرتے ہیں کہ پروگرامنگ سیکھنا اور سافٹ ویئر ڈویلپر کے طور پر کام کرنا آج پہلے سے کہیں زیادہ آسان ہے، یا کیا ہم نے مخالف نقطہ نظر کو ثابت کرنے میں کوئی کمی محسوس کی؟ ہمیں ذیل میں تبصرے کے سیکشن میں بتائیں۔
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION