می خواهم در مورد موجودی شگفت انگیز به نام برنامه نویس صحبت کنم. اغلب مردم فکر می کنند برنامه نویس ها موجودات غیر انسانی و شگفت انگیز هستند که می توانند با کامپیوتر خودشان جادو کنند. همه ی ما در فیلم های هالیوود، مشابه چنین افرادی را دیده ایم که گاهی قهرمان هستند و گاهی شرور؛ و بیشترشان هم توسط مردم عادی درک نمی شوند.
قصد ندارم در این مطلب، علم، هوش و توانایی برنامه نویس ها را زیر سوال ببرم. اما فکر می کنم لازم است باور های غلط اصلاح شوند و به عنوان یک برنامه نویس می توانم برخی از آن ها را روشن کنم.
در دنیایی که هر روز به فناوری وابسته تر می شویم، نیاز به افراد متخصص در همه ی حوزه ها احساس می شود و به طور حتم تعدادی از آن ها، مهندس های نرم افزار و برنامه نوس ها هستند.
شرکت های بزرگ برای پیدا کردن افراد حرفه ای تر با هم رقابت می کنند. اما هنوز جامعه باور های غلطی در مورد این افراد دارد. در این جا می خواهم چند مورد از مهم ترین باور های غلط درباره برنامه نویس ها را با شما در میان بگذارم.
1- برنامه نویس ها می توانند وب کم من را هک کنند.
قبول دارم که شنیدن این جمله سرگرم کننده هست و ممکن هست ما را به فیلم های هالییودی ببرد.
برنامه نویس کسی است که کد کامپیوتر را می نویسد و برنامه های نرم افزاری ایجاد می کند. او (به طور حتم) یک متخصص امنیتی نیست که از همه نقص ها و نحوه بهره برداری از آن ها آگاهی داشته باشد. حتی اگر هم بود، به این معنی نیست که او این کار را به خاطر نشان دادن خودش به دیگران انجام می دهد.
البته یک برنامه نویس می تواند متخصص امنیت باشد. بیشتر متخصصان امنیتی سعی می کنند از سیستم ها در محیط کنترل شده بهره برداری کنند و یا به دنبال خرابی هایی هستند که ممکن است نیاز به رفع داشته باشند. در این جا نمی خواهم وارد این حوزه شوم. قصدم این است که نشان دهم همه برنامه نوس ها، متخصص امنیت نیستند.
اگرچه یک برنامه نویس می تواند نحوه انجام این کار را یاد بگیرد، اما بیشتر آن ها کارهای بهتری نسبت به هک کردن وب کم شما دارند.
2- برنامه نویس ها زندگی ندارند.
بیشتر توسعه دهندگانی که من افتخار آشنایی با آن ها را داشته ام حرفه ای ترین، پر اشتها ترین ، سرگرم کننده ترین برنامه نویس هایی بودند که تا به حال شناخته ام. البته قبول دارم در بین آن ها، کسانی وجود داشتند که نمی توانستم درکشان کنم.
برنامه نویس ها دوست دارند بعد از یک هفته یا چند روز کار سخت، معاشرت و استراحت کنند و حتی دسته جمعی به مسافرت بروند. آن ها نیز خانواده دارند و برای فراهم کردن نیاز های خانوادهاشان، تلاش می کنند.
3- برنامه نویس ها می توانند رایانه/چاپگر شما را تعمیر کنند.
بیشتر مردم هنوز فکر می کنند که کسی که در رشته کامپیوتر تحصیل کرده، باید همه چیز راجع به کامپیوتر بداند، از سخت افزار گرفته تا نرم افزار، لوازم جانبی، بهترین مشخصات رایانه در بازار، چه تلفن همراهی باید خرید و ... .
آیا شما از یک معمار می خواهید که دیوار ریخته شده را تعمیر کند، کف را سرامیک کند، کاغذ دیواری نصب کند؟
پس چرا از یک برنامه نویس می خواهید کامپیوتر خراب شما را درست کند؟ چرا فکر می کنید همه کار هایی که در حوزه فناوری هست را یک برنامه نویس باید بداند.
4- برنامه نویس ها افراد بسیار باهوشی هستند.
برای مردم عادی، بسیاری از موضوع های فناوری کمی پیچیده است. آن ها فکر می کنند چون برنامه نویس ها به راحتی می توانند درک کنند و مسئله حل کنند، پس افراد باهوشی هستند. بدتر این که فکر می کنند آن ها عقل بیشتری دارند که موضوع های سخت را درک می کنند.
شک نکنید که این طور نیست. هر کسی در هر تخصصی، با تمرین و تلاش و مطالعه و کار سخت، به آن تخصص رسیده هست. یک خیاط، با چند اندازه گیری و کشیدن چند خط، برای شما لباس های زیبا طراحی می دوزد. یک آشپز خوب، با استفاده از چند ادویه ساده که هر روز از آن ها استفاده می کنیم، می تواند یک سس عالی درست کند در حالی که حتی تصور آن طعم از آن ادویه ها نمی رفت.
همه افراد در جایگاه خودشان افراد باهوشی هستند و ذهن های روشنی دارند. حتی خیلی از شما ها انسان های خلاقی هستید که فقط کد نویسی بلد نیستید اما ایده های جذابی برای پیشرفت دارید.
برنامه نویس ها موجودات برتر با مغز بزرگ نیستند.
5- برنامه نویسی، شغل یک مرد است.
از آن جایی که من یک مرد نیستم، تا به حال چنین باوری نداشتم و در کنار همکارانم نیز، این باور به من القا نشده است. اما به هر حال در مقاله ای به آن اشاره شده و به احتمال زیاد تعدادی از مردم این باور را دارند. در آن مقاله ذکر شده که بسیاری از خانم ها فکر می کنند که برنامه نویسی مناسب خانم ها نیست و یک کار مردانه هست. این طرز فکر نه تنها غلط هست بلکه با عرض پوزش بسیار، خیلی هم مسخره هست.
در عصری که همه برای حقوق برابر، فرصت های برابر و حقوق برابر مبارزه می کنند، داشتن کسی که مسیر شغلی خود را کنار می گذارد، به این دلیل که "کار مردانه است"، قابل قبول نیست.
آیا این رشته در دانشگاه فقط مختص مردان هست؟ شاید مردان تمایل بیشتری داشته باشند که البته این جمله هم صحت ندارد اما
آیا این بدان معناست که خانم ها باید آن شغل را کنار بگذارند؟ به طور حتم نه. به همان دلیلی که یک مرد نباید از رفتن به رشته پرستاری یا آشپزی احساس ترس یا خجالت کند. هیچ دلیلی وجود ندارد که خانم ها این حرفه را کنار بگذارند.
6- برنامه نویس ها در ریاضیات عالی هستند.
مهندس های کامپیوتر در دانشگاه، نیاز به مطالعه مهارت های ریاضی به صورت پیشرفته را دارند اما این موضوع در بسیاری از رشته های دیگر نیز وجود دارد و حتی در برخی رشته ها بیشتر نیز هست. اما برنامه نویس های زیادی هستند که در دوران کار حرفه ای خود، خیلی به مسائل ریاضی نیاز نداشتند. البته به کاری که می کنند، بستگی دارد.
برای مثال اگر در توسعه بازی های کامپیوتری کار کنند، به مهارت های ریاضی پیشرفته نیاز خواهند داشت. اما بیشتر برنامه های کاربردی سازمانی هستند که نیاز به تعمیر و نگهداری و ویژگی های جدید دارند نه مهارت های پیشرفته ریاضی.
اگر در ریاضیات بد هستید و می خواهید برنامه نویس شوید، دوران بدی را در دانشگاه خواهید گذراند (اگر به دانشگاه بروید)، اما تاثیری زیادی بر روی حرفه شما نخواهد داشت.
7- برنامه نویس ها تمام وقت خود را صرف برنامه نویسی و نگاه به صفحه های سیاه می کنند.
اگر به شما بگویم روزهایی دارم که حتی یک خط کد ننوشتم باور می کنید؟ به احتمال زیاد می پرسید: "پس چه کار می کنی؟"
کار یک مهندس نرم افزار بسیار بیشتر از نوشتن کد است. قبل از شروع به نوشتن کد، تیم باید برنامه ریزی، برآورد و تجزیه و تحلیل آن چه باید انجام شود را انجام دهد.
ما جلسه های زیادی داریم که در آن، اعضای تیم برای تصمیم گیری در مورد چگونگی حل یک مشکل خاص، صحبت می کنند. همچنین بررسی کد و جلسه های هماهنگی با تیم های دیگر را نیز انجام می دهیم.
برنامه نویس باید مطالعه زیادی داشته باشد. هم در زمینه کاری که قرار است انجام دهد و هم برای پرورش ذهن خود تا بتواند در هنگام پیاده سازی، مسائل را حل کند و از آن مهم تر، ایده پرداز خوبی باشد.
اگر از من بپرسید چه زمانی از وقتم را برای نوشتن کد استفاده می کنم، پاسخم این است که حدود 40 تا 50 درصد و بقیه زمان ها، من فعالیت های دیگری را انجام می دهم که برای ادامه کارم، نیاز دارم.
8- برنامه نویس ها همه ی syntax کد را از حفظ می دانند.
چالش بزرگ در فرایند کد نویسی این است که مانند یک ماشین فکر کنید و کارهایی را که می خواهید، برای دستگاه بنویسید.
هیچ برنامه نویسی به همان سرعتی که در فیلم ها می بینید، نمی نویسد و همه ی قواعد را از حفظ نمی داند. برنامه نویس ها در تعامل با یکدیگر هستند و با استفاده از بستر اینترنت می توانند تفکر و روش های برنامه نویس های کل دنیا را مطالعه کنند.
البته منکر نمی شوم، پس از مدتی استفاده از دستورات یکسان به صورت بارها و بارها، بسیاری از آن ها در ذهن برنامه نویس می نشیند و ناخود آگاه آن ها را حفظ می شود. اما نیازی نیست خودتان را مجبور کنید که آن ها را حفظ کنید.
با وجود ده ها زبان برنامه نویسی، نمی توان syntax همه آن ها را حفظ کرد. البته syntax اکثر زبان ها شبیه هستند و قواعد یکسانی دارند.
حرف پایانی
برنامه نویس ها موجوادت شگفت انگیزی نیستند اما برنامه نویس هایی داریم که شگفتی خلق می کنند. همه انسان ها، می توانند در هر حرفه، شگفتی خلق کنند.
ممکن است در آینده، برنامه نویسی به یکی از درس های مدرسه تبدیل شود مثل درس تاریخ. با گذشت زمان، همه افراد به درک بهتری از برنامه نویسی می رسند و باور های غلط محو می شوند.
در ضمن با آموزش کودکان در این حرفه، در آینده ای نه چندان دور، متخصصان زیادی وارد بازار کار خواهند شد. پس می توانید از همین امروز شروع به خلق شگفتی کنید و یک موجود شگفت انگیز شوید.