بهترین زبان برنامه نویسی برای شروع

۱. برنامه نویسی شغل جذابیه. توانایی خلق کردن چیزیه که خیلی ها دوسش دارن و توی دنیای برنامه نویسی، خلق کردن رو به بهترین شکل می‌شه دید. اما مسیر برنامه نویس شدن چجوریه؟ به کی می‌شه گفت برنامه نویس؟ چیکار باید کرد برای برنامه نویس شدن. این اولین مطلبه درمورد برنامه نویس شدن. احتمالن ادامه دار هم باشه. این مطلب منحصرا درمورد انتخاب زبان برنامه نویسی صحبت می‌کنم. اگر قبلن با یه زبان برنامه نویسی کار کردین و چیزای مقدماتی رو می‌دونین، می‌تونین بند ۲ رو نخونید.

۲. انتخاب زبان برنامه نویسی مهمه. نکته اینه که زبان برنامه نویسی، درواقع به طرز فکر شخص برنامه نویس تا حدودی شکل می‌ده. اما همه چیز زبان نیست. همچنان شخص برنامه نویسه که باید مهارت پیدا کنه و حالا هر زبونی بود، بود. اما انتخاب درست زبان برنامه نویسی، کار سختیه. گزینه زیاده. پایتون، جاوا، سی شارپ، پی اچ پی، و… . کدوم رو انتخاب کنیم؟  این که کدوم زبان زبان اول باشه نسبتن مهمه. پایتون یکی از گزینه‌های خوبه. همه چیز رو سرراست کرده. ظاهر ساده ای داره و برای زبان اول بودن در کل مناسبه. من خودم با سی پلاس پلاس برنامه نویسی رو یاد گرفتم. اون هم می‌تونه گزینه‌ی خوبی باشه. شاید یکم سخت تر باشه در اول، ولی همچنان صلاحیتش رو داره.
زبونهایی مثل جاوا و گو و اسکالا شاید مناسب شروع نباشن. برای خو گرفتن با برنامه نویسی ساده بودن یکی از فاکتورای مهمه. مثلن توی زبان جاوا همه چی از بیخ کلاسه و حتی برای سلام دنیا(!) هم باید کلاس تعریف بشه. (اگر نمی دونید چیه، نترسید، سخت نیست) این پیچیدگی ظاهری، شاید کاربردی باشه اما مسئله اینه که در نگاه اول چشم برنامه نویس با کلی چیز جدید مواجه می‌شه که نمی‌فهمه. واسه همین پایتون زبان ایده آله و سی و سی پلاس پلاس هم همچنان قابل انتخابن.

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

۴. خلاصه مطلب اینه: یک زبان انتخاب کنید، باهاش برنامه نویسی رو متوجه بشید. اگر با مسیرتون سازگار بود، ادامه بدید اما اگر مثلن سی پلاس پلاس بلد بودید و هدفتون وب بود، خیلی راحت می‌تونین شروع کنید به یادگیری زبان جدید. شاید زبان اول چند ماه وقت ببره(چون همزمان دارید یه زبان و یه مفهوم کلی رو یاد می‌گیرید) اما زبان دوم خیلی سریع تر پیش میره. حمل بر خودستایی نباشه ؛) مثلن خود من یادم نیست چقدر طول کشید روی سی پلاس پلاس مسلط بشم، اما یادگیری همون مطالب توی جاوا برام کلن دو سه روز طول کشید. یا وقتی خواستم پایتون یاد بگیرم، توی دو روز کلیت قضیه رو یاد گرفتم. دلیلش این نیست که من خیلی باهوشم، دلیلش اینه که خیلی چیزها (توی سطوح پایین مخصوصن) بین همه ی زبونا مشترکه. مهاجرت از یه زبان برنامه نویسی به یه زبان دیگه کار واقعن راحت و دل نشینیه.

۵. مطالب بعدی حدس می زنم یکی انتخاب فیلد مناسب باشه‌(وب یا موبایل یا چیز دیگه؟) و شاید درمورد انتخاب زبان مناسب برای هر فیلد بنویسم.‌(همه کار رو با یه زبان نمی شه کرد.) همینطور درمورد چیزای دیگه ای که یه برنامه نویس باید بدونه(گیت، دیتابیس و هزار چیز احتمالی دیگه). امیدوارم خوب دربیاد از گل و مفید باشه.

تایپ ده انگشتی برنامه نویس حرفه ای

۱. نکته‌ی جالبی که درمورد حرفه‌ای شدن اینه که برای حرفه‌ای شدن، لازم نیست کار جادویی و خارق‌العاده‌ای انجام بده آدم. شایدم لازم باشه ولی مهم‌تر از اون، رعایت نکات ریز و پیش‌پا افتاده‌س. درمورد برنامه‌نویسا مثلن، تایپ ده انگشتی. شاید مسخره بیاد ولی تایپ ده انگشتی واقعن یکی از چیزاییه که برای برنامه نویس، حتی از خیلی مهارت‌های تخصصی مهم‌تره. بی‌نهایت بار تا حالا برنامه‌نویسای خوب و خلاقی رو دیدم که درعین حال که خیلی توی تخصصشون خبره بودن، ولی توی تایپ کردن اونقدر مبتدی و ناشی به نظر میومدن که آدم، حتی درمورد مهارتاشونم شک می‌کرد.  انقدر سوتی می‌دادن توی تایپ، یا انقدر موقع نوشتن خیره بودن به کیبورد که هی یه سلسله کاراکتر اشتباه رو می‌نوشتن و بعد مجبور می‌شدن که همه رو پاک کنن و از اول بنویسن، یا رایج ترین حالتش این که خیلی کند بودن. یه بار با یکی از برنامه‌نویسایی که ۳  ۴ انگشتی تایپ می‌کرد، این نکته رو مطرح کردم، واکنشش این بود که چیزای مهم تری برای یادگرفتن داره و نمی‌تونه وقتشو پای این چیزا بزاره. یه بارم یکی دیگه گفت که تا مجبور نشه شروع به یادگرفتن چیزی نمی کنه و الان هم در وضع فعلی،‌ نیازی به این کار احساس نمی کنه. عجیب‌ترین مورد هم ادعا می‌کرد که می‌تونه فقط با دو تا انگشت اشاره، از هرکسی سریع‌تر تایپ کنه.  تایپ ده انگشتی واقعن ممکنه. اگر دست من بود به عنوان یه نکته اضافه می‌کردمش به کتاب 97 چیزی که هر برنامه نویس باید بداند.

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

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

۳. برای یادگرفتن تایپ انگشتی کافیه یه متن ۲۰۰ کلمه‌ای رو بنویسید تا جای دکمه‌ها حفظتون بشه. یکی دو هفته هم اگر خودتون رو ملزم به ده انگشتی تایپ کردن کنید، بعد از اون حتی تصور استفاده از کمتر از ۹ انگشت برای تایپ کردن،‌ غیر ممکن می‌شه. سایتای زیادی هم برای یادگرفتن تایپ ده انگشتی هستن. فقط کافیه به انگلیسی گوگل کنید: Ten finger typing. یا مثلن به عنوان نمونه یه نگاهی به تایپینگ آکادمی بندازید که حروف کیبورد رو دونه دونه براتون میاره برای تایپ تا حفظ شدن جای حروف هم براتون راحت تر بشه. یه سایت دیگه هم هست به اسم تایپینگ با دومین خیلی بجای آی‌او که تایپ کردن رو مخصوص برنامه نویس ها یاد می‌ده و تمرین‌های باحالی هم برای کمک کردن به سریع شدن تایپ کردن داره.