چه میشد اگر برنامه نویسی آسان بود

بطور خاص «برنامه‌نویسی» برای همه بسیار سخت است. هیچ اشکالی ندارد وقتی میبینید کارها آنطور که باید پیش برود نیست. اگر بدانید چطور باید خود را آموزش دهید، در این کار موفق خواهید شد.


 برنامه‌نویسی برای همه سخت است


هیچ برنا‌مه‌نویسی وجود ندارد که از نخستین روز تولدش کُدنویس بدنیا آمده باشد. هیچ برنا‌مه‌نویسی وجود ندارد که با چشمان بسته شروع به نوشتن کُد کند و قبل از ناهار کارش را به پایان رسانده باشد و بعد از آن رو مُبل دراز کشیده باشد و منتظر پُر شدن حساب بانکیش باشد.


اگر برنامه‌نویسی کار ساده‌ای بود شرکت‌ها نیازی به جذب و نگهداری برنامه‌نویسان خود نبوند؛ اگر برنامه‌نویسی آسان بود با سه شماره مشکلات و باگ‌های پلتفرم برطرف میشد؛ اگر برنامه‌نویسی آسان بود شرکت‌ها دیگر نیازی نبود به دولوپرهای خود بیشتر از حقوق متوسط یک پزشک پرداخت کنند. 


برنامه‌نویسی به معنی خرد کردن کیبورد و تایپ هرچه سریعتر نیست؛  به معنی یاد گرفتن تک‌تک زبان‌های برنامه‌نویسی نیست؛ یک برنامه‌نویس خوب با مُدل - قیمت - نوع سیستم عامل و حتی ویرایشگرهایی که برای نوشتن کُد استفاده میکند شناخته نمیشود، به لطف فیلم‌های هالیوود قطعاً برنامه‌نویسی معادل هک نیست.


اما این بدان معنا نیست که برنامه‌نویسی یک کار غیر ممکن و بدون حل است؛ این فقط به این معناست آن برنامه‌نویس در نوشتن و اجرای کُد خود تنها یک بار تلاش کرده است و این ویژگی خارج از توانایی‌های شما است.




چیزهای زیادی هستند که از قبل به ما داده نشده است و «این طبیعی است». اما با این حال یاد میگیریم چطور آنها را انجام دهیم و گاهی اوقات هم به بهترین شکل ممکن آنها را انجام میدهیم.


به کارهایی که در طول روز انجام میدهید فکر کنید؛ و از خود این سوال را بپرسید که چقدر از این کارهایی که انجام میدهد بطور غریزی است. آیا از قبل توانایی دوچرخه سواری را داشته اید؟ آیا از قبل توانایی آشپزی را داشتید؟ 


این به معنای درک فوری آن چیز نیست؛ تنها به این معناست شما قادر به یادگیری چیزهای جدید هستید (صرف نظر از اینکه چند سال دارد و چقدر بی تجربه هستید).


یک قانون ساده و کلیدی وجود دارد؛

شما اگر بدانید «چطور یاد بگیرید» در آن صورت موفق خواهید بود.


برنامه‌نویسی جزو یکی از معدود زمینه‌هایی است که در آن خود آموزی می تواند شما را به اندازه تحصیلات رسمی برساند، در صورت که فقط بدانید چطور باید آن چیز را یاد گرفت.


برخی از افراد از دوره‌های آموزشی آنلاین برای یادگیری زبان برنامه‌نویس مورد نظر استفاده میکنند. آنها قادر هستند هر آنچه را که مدرس به آنها یاد داده است را برای ایجاد یک برنامه در مقیاس کامل استفاده کنند. اما برخی دیگر نیز به پایان همان دوره آنلاین میرسند اما قادر نیستند ارتباط بین نحوه نوشتن کُد و عملکرد آن را پیدا کنند و فقط به ویرایشگر کُد خالی خود خیره میشوند.


در سرتاسر وب مثل YouTube آموزش‌های جامع‌ای از چگونگی کُدنویسی وجود دارد. برخی از افراد قادر هستند آموزش را به انتها برسانند و بلافاصله آنچه را که آموخته‌اند را برای ساخت برنامه یا اعمال کردن آن بر روی کُد خود را انجام دهند. اما برخی نیز با وجود اینکه کل آموزش را به پایان رسانده‌اند ولی نمی‌خواهند کمی تلاش کنند تا به جواب سوال خود برسند و در آن صورت است که زیر هر ویدئو آموزشی با نظرهایی مثل "چطور رنگ آن را تغییر دهیم؟" مواجهه میشویم!


نکته اول این است که:

شما فقط بلد هستید یاد بگیرید اما در نشستن و فکر کردن و حل مسائله ناتوان هستید.


نکته دوم این است که:

لطفا مثل کسانی نباشید که از سوال پرسیدن واهمه دارند؛ من به شما قول میدهم که حتی بهترین برنامه‌نویسان back-end نیز که خود شما آنها را تحسین میکنید امروز حداقل یک سوال پرسیده‌اند.