حقیقت هایی در مورد برنامه نویسی

نویسنده : مرتضی گنج | تاریخ انتشار : 2019/12/22 | بخش : برنامه نویسی

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

 

با این حال کامپیوترها برای انجام دستورات به کد نیاز دارند این بدین معناست که برنامه نویسی یک شغل حتمی برای حال و آینده است.ولی کسانی که از بیرون به این شغل نگاه می کنند همچنان تصورات غلط بسیاری در مورد کار برنامه نویسان دارند.

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

 

۱۲ تصور غلط شایع در حوزه تکنولوژی

۱.شما حتما یک کد نویس آماتور هستید

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

۲.شما باید یک ریاضیدان با استعداد باشید

هرچند این گفته ۱۰۰درصد درست نیست ولی همچنان نمی توانیم آن را کاملا اشتباه فرض کنیم.ارتباط بین برنامه نویسی و ریاضیات در این حقیقت بازتاب دارد که در هر دوی آنها نیاز به تفکر منطقی است تا بتوان به یک راه حلی قطعی دست یافت.

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

توسعه دهندگان وب باید مجموعه ای از مهارت هارا داشته باشند.با تمام اینها ،هدف برنامه نویسی نوشتن کد است،نه حل کردن مسئله های ریاضی.

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

نابلد بودن در ریاضیات به این معنا نیست در برنامه نویسی خوب نخواهید بود.همانطور که عالی بودن در ریاضیات به معنای یک برنامه نویس عالی بودن نیست.

۳.شما نیاز به سطح هوشی MENSA-Caliber دارید.(بالاترین سطح هوشی در جهان)

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

در برنامه نویسی نیاز دارید خلاق باشید و به دنبال راه حل برای مسئله ها بگردید.چیزی که هرکسی در بهره هوشی خود دارد. زبان برنامه نویسی همانطور که اسمش نشان می دهد،زبان هستند و این بدین معناست که اگر شما توانستید زبان خودتان یا زبان خارجه را یاد بگیرید همینطور هم می توانید کد نویسی را یاد بگیرید. زبان هایی مثل جاوا ،c،c++ و پایپتون توسط آدم فضایی ها از یک سفینه دیگر درست نشده اند بلکه افراد معمولی آن را ساختند.

۴.می توان زبانی را بعنوان بهترین زبان برنامه نویسی انتخاب کرد

برخلاف زندگی روزمره ،وقتی حرف از برنامه نویسی است،نمی توان گفت بهترین زبان کدام است.برای اینکه هر زبان برنامه نویسی برای دستیابی به هدف خاصی نوشته شده است.

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

اینکه کدامیک از این سه برنامه بهترین انتخاب است کاملا به شما و مسئله ای که در حال حل آن هستید بستگی دارد.

۵.برنامه نویسی را فقط باید در دانشگاه آموخت

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

البته دوره های آموزشی دانشگاه بهتر است،چون استاد و دستیارانش در هر مرحله از راه شما را راهنمایی می کنند و درس ها به گونه ای ساخت یافته هستند که ابتدا به شما یاد می دهند چگونه فکر کنید و سپس همه ی آنچه آموخته اید را با آن همراه کنید.

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

۶.برنامه نویسی شغل خانم ها نیست

اینجا وارد بحث فمینیسم می شویم،ولی ادعای اساسی وجود ندارد که بگوید زن ها نمی توانند مانند مرد ها برنامه نویس شوند.برای مثال اولین برنامه نویس در جهان یک زن بوده است. ماریسا مایر،مدیر ارشد یاهو! از اولین برنامه نویس های استخدام شده توسط گوگل بود.همچنین پرس هوپر کسی که نه تنها بعنوان یک برنامه نویس شهرت دارد،بلکه بعنوان شخصی که دوره “bug ” و مفهوم آن را به آن صورت که امروزه می دانیم،مطرح کرده است،می شناسیم.

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

۷.شما برای یادگیری کد نویسی بسیار جوان هستید.

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

کودکان بیشتر بصورت تجسمی فکر می کنند و این چیزی ست که باید در انتخاب اولین زبان برنامه نویسی در نظر گرفت.

۸.شما برای یادگیری کد نویسی پیر هستید.

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

این به این معناست انها باید تا زمان بازنشستگی ادامه دهند.اگر آنها می توانند این کار را کنند پس شما هم می توانید.اگر علاقه مند باشید سن فقط یک عدد است.

۹.هزاران خط برای کد نویسی بسیار زیاد است.

اگر شما به برنامه نویسی علاقه مندید یا قصد شروع این کار را دارید،نگاه انداختن به کدهای منبع که۱۰۰۰۰ خط دارند بشدت ترسناک بنظر می رسد یا کاملا غیر ممکن است.ولی خوشبختانه اینطور نیست.

اگر نگاه دقیق تری به همه ی کد ها بیاندازید متوجه می شوید بخش هایی تکراری هستند و کد نویس قسمتی از کد ها را بارها در جاهای مختلف استفاده کرده است.بنابراین هزار خط کد مختلف نیست.

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

۱۰.سال ها طول می کشد تا یک زبان برنامه نویسی یاد بگیرید.

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

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

پس وقتی نگاهی به بازه زمانی می اندازید به این نتیجه می رسید که نیاز به کار سخت چند ماهه هست نه سالها.

۱۱.سال ها طول می کشد تا بتوانید به درآمد یک برنامه نویس برسید.

همانطور که اشاره کردیم ،یاد گرفتن برنامه نویسی سال ها طول نمی کشد و همچنین کسب درآمد با مهارت های کد نویسی نیاز به سال های زیادی ندارد.البته نباید انتظار داشته باشید با یاد گرفتن c++، یک ساله شغلی در مایکروسافت پیدا کنید،ولی شغل های دیگری هستند که با توجه به مهارت ها و سطح تجربه تان برایتان مناسب خواهد بود.کار در بعضی جاها نیاز به تجربه دارد که شما ندارید،پس بخاطر نداشتن تجربه نمی توانید در آنجا شاغل شوید.برای شروع یک کار ،دوره اینترنتی شاید ایده خوبی باشد.

اینگونه علی رغم مسایل مالی ،می توانید تجربه هم بدست بیاورید،به اضافه اینکه همیشه شانسی وجود دارد که استخدام تمام وقت شوید.همچنین همیشه می توانید تلاش کنید مستقل شوید و مشتری های خودتان را پیدا کنید،که راه بدی برای بدست آوردن پول نیست.

۱۲.ساعات زیادی طول می کشد.

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

البته می توانید مستقل شوید و برای خود تون ساعت کاری و سرعت کار تنظیم کنید.

اگر همه ی این باورها درست بود،تعداد کمی حاضر بودند برنامه نویس شوند.درحالی که خلافش درست است.

قطعا برنامه نویسی شغلی در آینده است و شما می توانید بدون در نظر گرفتن سن،جنسیت،مقام یا سطح هوشی قسمتی از این آینده باشید.

همه ی اون چیزی که نیاز هست کار سخت و شوق به آموختن هست.و این چیزیه که کاری با هیچکدوم از دسته بندی های بالا نداره.