برے کوڈ کے خلاف بچوں کا دن

برے کوڈ کے خلاف بچوں کا دن

پوسٹ بچوں کے دن کے لیے وقف ہے۔ کوئی بھی اتفاق اتفاق نہیں ہوتا۔

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

چند ہفتے پہلے میں نے Yandex.Money کے اپنے ساتھیوں سے پوچھا کہ اب وہ ایک ایسے بچے کو کیا مشورہ دیں گے جو آئی ٹی کا ماہر بننا چاہتا ہے، اور پھر مجھے اپنے بارے میں کچھ یاد آیا۔ اس طرح یہ عبارت سامنے آئی۔ میرا مشورہ ہے کہ ہم اس کے بارے میں بات کریں۔

میں انتخاب کی اذیت پر بہت زیادہ توانائی خرچ کرنے کی سفارش نہیں کرتا ہوں؛ یہ بہتر ہے کہ ہر چیز کو آزمائیں اور سب کچھ کریں۔ جب آپ سمجھتے ہیں کہ عام اصطلاحات میں کیا ہے، تو آپ خود فیصلہ کر سکتے ہیں کہ آپ کو کس سمت میں جانا ہے اور کس سمت کو ترک کرنا بہتر ہے۔

سرجی، جونیئر پروگرامر

بچپن

جب ابھی تک انٹرنیٹ نہیں ہے تو پروگرامر کے طور پر سب سے زیادہ مزے کی چیز کیا ہے؟

میرے پاس ان میں سے دو تھے - "روسی میں 800 گیمز" ڈسک سے تمام گیمز کو "Everything a Hacker Needs" ڈسک کے تمام پروگراموں کے ساتھ الگ کرنا، اور پھر ان تمام گیمز کو دوبارہ لکھنا جن پر میں نے شروع سے 10 گھنٹے سے زیادہ گزارے۔ BASIC میں اس سے کوئی فرق نہیں پڑتا کہ کیا ہوتا ہے، چاہے یہ اس طرح نکلے۔

برے کوڈ کے خلاف بچوں کا دن

آپ اسے لیں، اسے آزمائیں، بلاکس کو دوبارہ ترتیب دیں، تجربہ کریں اور ہر اس چیز تک پہنچیں جس تک آپ پہنچ سکتے ہیں۔ آپ ونڈوز کو پھاڑ دیتے ہیں، ونڈوز کو واپس رکھنے میں 10 گھنٹے لگتے ہیں۔ کیا آپ ڈرائیوروں کو واپس لینے کی کوشش کر رہے ہیں؟ آپ سمجھتے ہیں کہ DOS کیسے کام کرتا ہے۔ آپ اندازہ لگاتے ہیں کہ جمپرز کی پوزیشن کیسے ہونی چاہیے تاکہ آپ کی ہارڈ ڈرائیو کسی دوست کے کمپیوٹر میں شروع ہو جائے (وہاں 200 میگا بائٹس نئے گیمز موجود ہیں!) آپ سافٹ ویئر کو موڑ دیتے ہیں، ہارڈ ویئر کو موڑ دیتے ہیں، کمپیوٹر کو جدا اور دوبارہ جوڑتے ہیں۔ آپ 13 سالوں سے فٹ بال سمیلیٹر لکھ رہے ہیں۔

جب کچھ نہیں ہوتا تو اس کی وجہ سے آپ خوش ہوجاتے ہیں۔

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

یہ، بلاشبہ، کسی حد تک تجریدی مشورہ ہے، لیکن اگر مجھے فوراً معلوم ہوتا۔

اور میں آئی ٹی میں کسی ایک شعبے پر توجہ مرکوز کرنے کی سفارش نہیں کرتا ہوں۔ یہاں، افق بھی اہمیت رکھتا ہے۔

انا، سینئر سسٹم تجزیہ کار

школа школа

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

В крупную компанию ищутся программисты PHP:

Для того, чтобы понять, стоит ли вам приходить на собеседование, выполните несложное задание: напишите программу на php, которая находит такие целые положительные числа x, y и z, чтобы x^5+y^5=z^5. (^ - степень).

Отвечать можете здесь.

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

Реально чет странное. Да и комп нужен неслабый, штоб ето найти...
Ибо от x,y,z <=1000 таких чисел нет-эт во первых (сел набросал в vb, большего ПОКА не дано), во вторых комп подсаживается намертво.

Не все равно чето нето, ИМХО.

ہاں، یہ ایک مذاق ہے، نئے آنے والوں کے لیے ایک جال ہے، ہاں، یہ ایک کمینے ہے، تو کیا؟ ظاہر ہے، میں نے ایک سادہ اسکرپٹ پر کافی وقت صرف کیا، لیکن میں فرمیٹ کے تھیوریم کے وجود کے بارے میں مکمل طور پر بھول گیا - جسے تھریڈ کے مصنف، قابل احترام The_Kid نے بالکل آخر میں واضح کیا۔

Итог печален - в П. практически нет людей, знающих математику, но каждый второй мнит себя мего программистом. За три часа, на все форумах на которых я разместил сообщение, было суммарно около двух сотен просмотров... и всего два правильных ответа. А теорема Ферма - это ведь школьная программа, и условия ее настолько просты, что должны бросаться в глаза. Кстати, параллельно при опросе в аське 6 из 6 знакомых новосибирских студентов ответили «Это же теорема Ферма».
И кого после этого брать на работу?

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

اور یہ مکمل طور پر واضح نہیں ہے: اگر ایک بڑی کمپنی میں کوئی ملازم نہیں ہے، تو آپ کو کون ہونا چاہئے؟ کیا کرنا ہے؟ کہاں بڑھنا ہے؟

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

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

یہ یونیورسٹی کے بارے میں ہے۔ ایک شخص کے پاس ابھی بھی اپنی باقی زندگی استعمال شدہ مہارتوں کو استعمال کرنے کے لیے ہوگی۔

اولیگ، نظام کے معروف تجزیہ کار

یونیورسٹی

آپ "پلس" میں کوڈ لکھتے ہیں، آپ جاوا میں کوڈ لکھتے ہیں۔ آپ اسمبلر کو چھوتے ہیں، اپنا ہاتھ ہٹاتے ہیں، Qt میں پھنس جاتے ہیں اور سوچتے ہیں کہ وہ آپ کے ساتھ ایسا کیوں کر رہے ہیں۔ چوتھے کورس تک، کوئی بھی پرواہ نہیں کرتا کہ آپ اگلی اہم لیبز پر کیا لکھتے ہیں - اساتذہ کسی نہ کسی طرح کوڈ کو دیکھتے ہیں۔

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

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

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

جان، فن لینڈ کے ماہر۔ نگرانی

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

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

برے کوڈ کے خلاف بچوں کا دن

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

ایرک، ٹیسٹ انجینئر

ہم سب ترقیاتی منصوبے لکھتے ہیں - ہمیں کیا مطالعہ کرنے کی ضرورت ہے، مستقبل قریب میں کیا کرنا ہے اور خود کو کیسے بہتر بنانا ہے۔ لیکن ایسا لگتا ہے کہ ہم سب اپنے ماضی کے نام خط لکھنے سے فائدہ اٹھا سکتے ہیں — یہ میرا ہے۔

  1. اپنا وقت نکالیں، ایک کتاب تلاش کریں اور Ubuntu ڈسٹری بیوشن انسٹال کریں جو کینونیکل نے آپ کو مفت میں بھیجا تھا۔ واضح طور پر کچھ آسان مسئلہ ہے، اوبنٹو ہر جگہ شروع ہوتا ہے۔ اور لینکس آپ کے لیے بہت مفید ہوگا۔
  2. کنسول سے مت ڈرو۔ Volkov کمانڈر، بلاشبہ، ایک فلاپی ڈسک پر فٹ بیٹھتا ہے، لیکن یہ جاننے کی کوشش کریں کہ آپ کو ان تمام کمانڈز کی ضرورت کیوں ہے، کمانڈ لائن سے واقف ہوں۔ اور فلاپی ڈسکیں مر جائیں گی۔ ڈسکیں مر جائیں گی۔ فلیش ڈرائیوز بھی مر جائیں گی۔ زیادہ فکر نہ کرو۔
  3. الگورتھم کے بارے میں پڑھیں، چھانٹنا، درختوں اور ڈھیروں کو سمجھیں۔ کتابیں پڑھیں.
  4. بنیادی باتوں کو سمجھنے کے لیے آپ کو ادا شدہ کورسز کی ضرورت نہیں ہے۔ یوٹیوب جلد ظاہر ہوگا - آپ حیران رہ جائیں گے۔
  5. BASIC پر مت لٹک جائیں۔ دنیا میں ایک سو ٹیکنالوجیز ہیں جو آپ کی توجہ کے قابل ہیں، اور دس لاکھ چیزیں جو ایک بار پھر ایکسل میں صارف کے فارم بنانے سے زیادہ دلچسپ ہیں۔ صرف ازگر کو لے لو اور آپ کو اس کا پتہ چل جائے گا۔
  6. Git استعمال کرنا سیکھیں، تمام ذرائع کا بیک اپ لیں۔ یہ سمجھنے کے لیے کم از کم ایک کلائنٹ سرور ایپلیکیشن لکھیں کہ وہ کیسے کام کرتے ہیں۔ نیٹ ورکس، سوئچز اور راؤٹرز کو سمجھیں۔
  7. اور اگر آپ ابھی یہ پڑھ رہے ہیں تو اس کا مطلب ہے کہ سب کچھ بیکار نہیں ہے۔

ہمیں کمنٹس میں بتائیں کہ آپ اپنے ماضی کو کیا لکھیں گے؟ کیا آپ کے پاس موجودہ اسکول کے بچوں اور طلباء کے لیے کوئی مشورہ ہے جو اب بھی ایک چوراہے پر ہیں اور اپنا راستہ تلاش کرنے کی کوشش کر رہے ہیں؟ آئیے اس بارے میں بات کرتے ہیں۔

ماخذ: www.habr.com

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