جب سب میری سالگرہ منا رہے تھے، میں صبح تک کلسٹر کو ٹھیک کر رہا تھا - اور ڈویلپرز نے اپنی غلطیوں کا الزام مجھ پر لگایا

جب سب میری سالگرہ منا رہے تھے، میں صبح تک کلسٹر کو ٹھیک کر رہا تھا - اور ڈویلپرز نے اپنی غلطیوں کا الزام مجھ پر لگایا

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

جس کمپنی نے یہ لکھا وہ ڈیٹا اینالیٹکس کمپنی تھی۔ وہ روزانہ ہزاروں درخواستوں پر کارروائی کرتی تھی۔ وہ ہمارے پاس ان الفاظ کے ساتھ آئے: دوستو، ہمارے پاس کلک ہاؤس ہے اور ہم اس کی ترتیب اور تنصیب کو خودکار بنانا چاہتے ہیں۔ ہم Ansible، Terraform، Docker چاہتے ہیں اور ان سب کے لیے Git میں محفوظ کیا جائے۔ ہم چار نوڈس کا ایک کلسٹر چاہتے ہیں جس میں ہر ایک کی دو نقلیں ہوں۔

یہ ایک معیاری درخواست ہے، ان میں سے درجنوں ہیں، اور آپ کو اتنا ہی اچھا معیاری حل درکار ہے۔ ہم نے کہا "ٹھیک ہے"، اور 2-3 ہفتوں کے بعد سب کچھ تیار ہو گیا۔ انہوں نے نوکری قبول کر لی اور ہماری افادیت کا استعمال کرتے ہوئے ایک نئے کلک ہاؤس کلسٹر میں جانا شروع کر دیا۔

کوئی بھی نہیں چاہتا تھا یا نہیں جانتا تھا کہ کلک ہاؤس کے ساتھ ٹنکر کیسے کیا جائے۔ پھر ہم نے سوچا کہ یہ ان کا بنیادی مسئلہ ہے، اور اس لیے کمپنی کے سروس اسٹیشن نے میری ٹیم کو کام کو زیادہ سے زیادہ خودکار کرنے کی اجازت دے دی، تاکہ دوبارہ خود وہاں نہ جانا پڑے۔

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

ہم نے مل کر بیک اپ بنانے کا فیصلہ کیا۔ میں نے فوراً اصل ڈیٹا کا بیک اپ لینے کا مشورہ دیا۔ بس اسے لے لو، اسے زپ کریں اور خوبصورتی سے اسے کچھ c3 میں پھینک دیں۔ خام ڈیٹا سونا ہے۔ ایک اور آپشن تھا - منجمد اور کاپی کا استعمال کرتے ہوئے، کلک ہاؤس میں خود میزوں کا بیک اپ لینا۔ لیکن لینیا نے اپنا حل نکالا۔

اس نے اعلان کیا کہ ہمیں دوسرے کلک ہاؤس کلسٹر کی ضرورت ہے۔ اور اب سے ہم ڈیٹا کو دو کلسٹرز میں لکھیں گے - مین اور بیک اپ۔ میں اس سے کہتا ہوں، لینا، یہ بیک اپ نہیں ہوگا، بلکہ ایک فعال نقل ہوگا۔ اور اگر پروڈکشن میں ڈیٹا ضائع ہونا شروع ہو جائے تو آپ کے بیک اپ پر بھی ایسا ہی ہوگا۔

لیکن لینیا نے اسٹیئرنگ وہیل کو مضبوطی سے پکڑ لیا اور میرے دلائل سننے سے انکار کر دیا۔ ہم نے اس کے ساتھ کافی دیر تک چیٹ میں گپ شپ کی، لیکن کرنے کو کچھ نہیں تھا - لینیا پروجیکٹ کی انچارج تھی، ہم صرف گلی سے بچوں کو کرایہ پر لے رہے تھے۔

ہم نے کلسٹر کی حالت کی نگرانی کی اور صرف منتظمین کے کام کے لیے چارج کیا۔ ڈیٹا میں حاصل کیے بغیر خالص کلک ہاؤس انتظامیہ۔ کلسٹر دستیاب تھا، ڈسکیں ٹھیک تھیں، نوڈس ٹھیک تھے۔

ہمیں بہت کم معلوم تھا کہ ہمیں یہ آرڈر ان کی ٹیم کے اندر ایک خوفناک غلط فہمی کی وجہ سے ملا ہے۔

مینیجر ناخوش تھا کہ کلک ہاؤس سست تھا اور بعض اوقات ڈیٹا ضائع ہو جاتا تھا۔ اس نے اپنے سروس اسٹیشن کو اس کا پتہ لگانے کا کام مقرر کیا۔ اس نے اس کا بہترین اندازہ لگایا اور یہ نتیجہ اخذ کیا کہ ہمیں صرف کلک ہاؤس کو خودکار کرنے کی ضرورت ہے - بس۔ لیکن جیسا کہ یہ جلد ہی واضح ہو گیا، انہیں ڈیوپس کی ٹیم کی ضرورت نہیں تھی۔

یہ سب بہت، بہت تکلیف دہ نکلا۔ اور سب سے ناگوار بات یہ تھی کہ یہ میری سالگرہ پر تھا۔

جمعہ کی شام. میں نے اپنے پسندیدہ شراب خانے میں بکنگ کروائی اور گھر والوں کو مدعو کیا۔

جانے سے تقریباً پہلے، ہمیں ایک تبدیلی پیدا کرنے کے لیے ایک ٹاسک موصول ہوتا ہے، ہم اسے مکمل کرتے ہیں، سب کچھ ٹھیک ہے۔ الٹر پاس ہو گیا، کلک ہاؤس کی تصدیق ہو گئی۔ ہم پہلے ہی بار میں جا رہے ہیں، اور وہ ہمیں لکھتے ہیں کہ کافی ڈیٹا نہیں ہے۔ ہم نے حساب لگایا کہ لگتا ہے کہ سب کچھ کافی ہے۔ اور وہ جشن منانے چلے گئے۔

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

گیارہ کے قریب وہ فون کرنے لگے۔ یہ کمپنی کے سربراہ تھے... "شاید مجھے مبارکباد دینے کا فیصلہ کیا ہے،" میں نے بہت ہچکچاتے ہوئے سوچا، اور فون اٹھایا۔

اور میں نے کچھ ایسا سنا: "آپ نے ہمارے ڈیٹا کو خراب کیا! میں آپ کو ادائیگی کرتا ہوں، لیکن کچھ بھی کام نہیں کرتا! آپ بیک اپ کے ذمہ دار تھے، اور آپ نے کوئی برا کام نہیں کیا! آئیے اسے ٹھیک کریں!" - صرف یہاں تک کہ بدتمیز۔

- تم جانتے ہو، بھاڑ میں جاؤ! آج میری سالگرہ ہے، اور اب میں پیوں گا، اور جون میں آپ کے گھٹیا اور لاٹھیوں سے بنی گھریلو مصنوعات میں مشغول نہیں ہوں گا!

میں نے یہی نہیں کہا۔ اس کے بجائے، میں نے اپنا لیپ ٹاپ نکالا اور کام پر لگ گیا۔

نہیں، میں نے بمباری کی، میں نے جہنم کی طرح بمباری کی! اس نے چیٹ میں کاسٹک "میں نے آپ سے کہا" ڈالا - کیونکہ بیک اپ، جو بالکل بھی بیک اپ نہیں تھا، - یقیناً، کچھ بھی نہیں بچا۔

لڑکوں اور میں نے سوچا کہ ریکارڈنگ کو دستی طور پر کیسے روکا جائے اور سب کچھ چیک کیا جائے۔ ہم نے اصل میں اس بات کو یقینی بنایا کہ کچھ ڈیٹا نہیں لکھا گیا تھا۔

ہم نے ریکارڈنگ روک دی اور روزانہ وہاں ہونے والے واقعات کی گنتی کی۔ انہوں نے مزید ڈیٹا اپ لوڈ کیا، جن میں سے صرف ایک تہائی ریکارڈ نہیں کیا گیا۔ ہر ایک میں 2 نقل کے ساتھ تین شارڈز۔ آپ 100.000 قطاریں داخل کرتے ہیں - 33.000 ریکارڈ نہیں ہیں۔

مکمل الجھن تھی۔ سب نے ایک دوسرے کو باری باری بھاڑ میں جانے کو کہا: لینیا پہلے وہاں گئی، اس کے بعد میں اور کمپنی کا بانی۔ صرف سروس اسٹیشن جو شامل ہوا اس نے ہماری چیخنے والی کالوں اور خط و کتابت کو مسئلے کا حل تلاش کرنے کی طرف موڑنے کی کوشش کی۔

کوئی نہیں سمجھ رہا تھا کہ واقعی کیا ہو رہا ہے۔

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

میری سالگرہ بھی کوڑے دان میں پھینک دی گئی۔ ہم بار پر بیٹھ کر خیالات پیدا کرتے، اس پہیلی کو حل کرنے کی کوشش کرتے جو ہم پر پھینکی گئی تھی۔ کلک ہاؤس کے زوال کی وجہ واضح نہیں تھی۔ شاید یہ نیٹ ورک ہے، شاید یہ لینکس کی ترتیبات ہے۔ ہاں، آپ جو چاہیں، کافی مفروضے موجود ہیں۔

میں نے ڈویلپر کا حلف نہیں اٹھایا، لیکن لائن کے دوسرے سرے پر لڑکوں کو چھوڑ دینا بے ایمانی تھی - چاہے وہ ہم پر ہر چیز کا الزام لگا دیں۔ مجھے 99 فیصد یقین تھا کہ مسئلہ ہمارے فیصلوں میں نہیں، ہماری طرف سے نہیں۔ 1% موقع جو ہم نے خراب کیا تھا وہ پریشانی سے جل رہا تھا۔ لیکن اس بات سے کوئی فرق نہیں پڑتا کہ مصیبت کس طرف تھی، اسے طے کرنا تھا. صارفین کو چھوڑنا، چاہے وہ کوئی بھی ہوں، اتنے خوفناک ڈیٹا لیک کے ساتھ بہت ظالمانہ ہے۔

ہم صبح تین بجے تک ریستوراں کی میز پر کام کرتے رہے۔ ہم نے ایونٹس کو شامل کیا، سلیکٹ داخل کیا، اور ہم خلا کو پُر کرنے چلے گئے۔ جب آپ ڈیٹا کو خراب کرتے ہیں، تو آپ اس طرح کرتے ہیں: آپ پچھلے دنوں کا اوسط ڈیٹا لیتے ہیں اور انہیں خراب شدہ میں ڈالتے ہیں۔

صبح تین بجے کے بعد، میں اور میرا دوست اپنے گھر گئے اور شراب کے بازار سے بیئر کا آرڈر دیا۔ میں لیپ ٹاپ اور کلک ہاؤس کے مسائل لیے بیٹھا تھا، ایک دوست مجھے کچھ بتا رہا تھا۔ نتیجے کے طور پر، ایک گھنٹے کے بعد وہ ناراض ہوا کہ میں کام کر رہا ہوں اور اس کے ساتھ بیئر نہیں پی رہا، اور چلا گیا۔ کلاسک - میں ڈیوپس کا دوست تھا۔

صبح 6 بجے تک، میں نے دوبارہ میز کو دوبارہ بنایا، اور ڈیٹا بھرنے لگا۔ سب کچھ بغیر کسی نقصان کے کام کرتا رہا۔

پھر یہ مشکل تھا. سب نے ایک دوسرے کو ڈیٹا کے نقصان کا ذمہ دار ٹھہرایا۔ اگر کوئی نیا بگ ہوتا تو مجھے یقین ہے کہ فائرنگ کا تبادلہ ہوتا

ان لڑائیوں میں، ہم نے آخر کار سمجھنا شروع کیا - کمپنی نے سوچا کہ ہم وہ لوگ ہیں جو ڈیٹا کے ساتھ کام کرتے ہیں اور میزوں کی ساخت کی نگرانی کرتے ہیں۔ انہوں نے منتظمین کو ڈیلرز کے ساتھ الجھایا۔ اور وہ ہم سے ایڈمنز سے کچھ مختلف پوچھنے آئے تھے۔

ان کی بنیادی شکایت یہ ہے کہ کیا، آپ بیک اپ کے ذمہ دار تھے اور انہیں صحیح طریقے سے نہیں کیا، آپ ڈیٹا کو ضائع کرتے رہے۔ اور یہ سب ریوائنڈنگ میٹ کے ساتھ۔

میں انصاف چاہتا تھا۔ میں نے ہر ایک کے خط و کتابت اور منسلک اسکرین شاٹس کو کھود لیا، جہاں لیونیڈ نے اپنی پوری طاقت کے ساتھ انہیں بیک اپ بنانے پر مجبور کیا جو بنایا گیا تھا۔ میرے فون کال کے بعد ان کے سروس سٹیشن نے ہمارا ساتھ دیا۔ بعد میں لینیا نے اپنے جرم کا اعتراف کیا۔

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

بات چیت نفرت، پوشیدہ اور غیر پوشیدہ جارحیت کے ساتھ چھلک رہی تھی۔ مجھے نہیں معلوم تھا کہ کیا کرنا ہے۔ سب کچھ ٹھپ ہو کر رہ گیا ہے۔ اور پھر انہوں نے مجھے سب سے آسان طریقہ بتایا - مینیجر کو ذاتی پیغام لکھنا اور اس کے ساتھ ملاقات کا بندوبست کرنا۔ اصل زندگی میں لوگ اتنے تیز نہیں ہوتے جتنے وہ چیٹ میں ہوتے ہیں۔ باس نے میرے پیغام کا جواب دیا: آؤ، کوئی سوال نہیں۔

یہ میرے کیریئر کی سب سے خوفناک ملاقات تھی۔ کلائنٹ سے میرا اتحادی - STO - وقت نہیں مل سکا۔ میں باس اور لینا کے ساتھ میٹنگ میں گیا۔

میں نے بار بار اپنے ممکنہ مکالمے کو اپنے سر میں دہرایا۔ میں بہت جلد پہنچنے میں کامیاب ہو گیا، آدھا گھنٹہ پہلے۔ مجھے گھبراہٹ ہونے لگی، میں نے 10 سگریٹ پیے، میں سمجھ گیا، یہ بات ہے - میں اکیلا چود رہا ہوں۔ میں انہیں قائل نہیں کر پاؤں گا۔ اور اس نے لفٹ میں قدم رکھا۔

جب وہ اٹھ رہا تھا تو اس نے لائٹر کو اتنا زور سے مارا کہ وہ ٹوٹ گیا۔

نتیجے کے طور پر، لینا میٹنگ میں نہیں تھا. اور ہم نے باس کے ساتھ ہر چیز کے بارے میں زبردست گفتگو کی! سرگئی نے مجھے اپنے درد کے بارے میں بتایا۔ وہ "کلک ہاؤس کو خودکار" نہیں کرنا چاہتا تھا - وہ "سوالات کو کام کرنا چاہتا تھا۔"

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

سرگئی کو کرائے کے لیے چند ڈیوپس کی ضرورت نہیں تھی۔ ان کا مسئلہ بہت بڑا نکلا۔

میں نے کہا کہ میں اس کے مسائل حل کر سکتا ہوں - یہ بالکل مختلف کام ہے، اور میرا ایک دوست ہے جو اس کے لیے کام کرتا ہے۔ اگر ہمیں شروع سے معلوم ہوتا کہ یہ ان کے لیے ایک ڈیل ہے تو ہم بہت کچھ ٹال دیتے۔ دیر ہو چکی ہے، لیکن ہم نے محسوس کیا کہ مسئلہ بنیادی ڈھانچے میں نہیں، ڈیٹا مینجمنٹ میں ہے۔

ہم نے مصافحہ کیا، انہوں نے ہماری تنخواہ ڈھائی گنا بڑھا دی، لیکن اس شرط پر کہ میں ان کے ڈیٹا اور کلک ہاؤس کے ساتھ مکمل طور پر گڑبڑ اپنے لیے کروں گا۔ لفٹ میں، میں نے اسی ڈی آئی آدمی میکس سے بات کی اور اسے کام سے منسلک کیا۔ پورے جھرمٹ کو بیلنا ضروری تھا۔

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

ہمارے اندرون خانہ ڈویلپرز نے اپنا حسب ضرورت ڈیٹا داخل کرنے والا بنایا ہے۔ اس نے اس طرح کام کیا: اس نے فائلوں کو بیچ دیا، اسکرپٹ چلایا اور ڈیٹا کو ٹیبل میں ضم کیا۔ لیکن اصل مسئلہ یہ تھا کہ ایک سادہ سی درخواست کے لیے ڈیٹا کی ایک بڑی مقدار قبول کر لی گئی۔ درخواست ہر سیکنڈ میں ڈیٹا میں شامل ہوتی ہے۔ سب ایک نمبر کی خاطر - فی دن کی رقم۔

اندرون خانہ ڈویلپرز نے تجزیاتی ٹول کا غلط استعمال کیا۔ وہ گرافانہ کے پاس گئے اور اپنی شاہی درخواست لکھی۔ اس نے 2 ہفتوں کا ڈیٹا اپ لوڈ کیا۔ یہ ایک خوبصورت گراف نکلا۔ لیکن حقیقت میں، ڈیٹا کی درخواست ہر 10 سیکنڈ تھی. یہ سب ایک قطار میں ڈھیر ہو رہا تھا کیونکہ کلک ہاؤس نے آسانی سے پروسیسنگ نہیں کی تھی۔ اس کی اصل وجہ یہیں چھپی تھی۔ گرافانا میں کچھ کام نہیں ہوا، درخواستیں ایک قطار میں کھڑی تھیں، اور پرانا، غیر متعلقہ ڈیٹا مسلسل پہنچ رہا تھا۔

ہم نے کلسٹر کو دوبارہ ترتیب دیا، اندراج کو دوبارہ کیا۔ اندرون خانہ ڈویلپرز نے اپنے "انسرٹر" کو دوبارہ لکھا، اور اس نے ڈیٹا کو درست طریقے سے شیئر کرنا شروع کیا۔

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

درحقیقت، یہیں سے ہم الگ ہو گئے تھے - ہم نے وہ کیا جو ہم کر سکتے تھے۔

اس تاریخ کے علم اور حکمت سے بھرپور، ہم نے اپنا کاروبار کھولا اور اپنے لیے کئی اصول بنائے۔ ہم اب کبھی بھی اس طرح کام شروع نہیں کریں گے جیسا کہ ہم نے پہلے کیا تھا۔

DJ Max اس پروجیکٹ کے بعد ہمارے ساتھ شامل ہوا، اور ہم اب بھی ساتھ مل کر بہت اچھا کام کرتے ہیں۔ کلک ہاؤس کیس نے مجھے سکھایا کہ کام شروع کرنے سے پہلے مکمل اور مکمل انفراسٹرکچر آڈٹ کیسے کیا جائے۔ ہم سمجھتے ہیں کہ سب کچھ کیسے کام کرتا ہے اور تب ہی کاموں کو قبول کرتے ہیں۔ اور اگر پہلے ہم فوری طور پر انفراسٹرکچر کو برقرار رکھنے کے لیے جلدی کرتے، اب ہم سب سے پہلے ایک وقتی پروجیکٹ کرتے ہیں، جس سے ہمیں یہ سمجھنے میں مدد ملتی ہے کہ اسے کام کی حالت میں کیسے لایا جائے۔

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

PS لہذا اگر آپ کے بنیادی ڈھانچے کے بارے میں سوالات ہیں، ایک درخواست چھوڑنے کے لئے آزاد محسوس کریں.

ہمارے پاس ہر ماہ 2 مفت آڈٹ ہوتے ہیں، شاید آپ کا پروجیکٹ ان میں سے ایک ہو۔

ماخذ: www.habr.com

نیا تبصرہ شامل کریں