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

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

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

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

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

 

چرا پایتون؟

۱. سوالی که خیلی وقتها از من پرسیده می‌شه اینه: چرا پایتون؟ چرا پی اچ پی نه؟ چرا دات نت نه؟ چرا جاوا نه؟ خب جوابهای متنوعی هست که می‌شه به این سوال داد. این جا یکیش رو می نویسم و امیدوارم که فرصت بشه از هر زاویه‌ای بررسیش کنم.

لوگو زبان برنامه نویسی پایتون

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

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

۴. کد‌های زیر رو نگاه کنید:

پایتون در مقابل سی و جاوا

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

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

 

  •  درواقع تلفظ درست اسم این زبان می‌شه پایثان. ث هم به صورت تلفظ عربیش منظورمه. ولی خب از اونجایی که این صامت توی زبان فارسی زیاد رایج نیست به ت بسنده شده. پس تلفظ معقول می‌شه پایتان. ولی خوب یا بد پایتون رایج تره و اینجا هم یکی درمیون از هردو اسم استفاده کردم که یکی به میخ و یکی به نعل خورده باشه.

۹۷ چیزی که هر برنامه نویس باید بداند

۱. کتابیه که اسمش کاملن واضح می‌گه محتوا چیه:‌ نود و هفت چیز که یه برنامه نویس باید بدونه. یا بهتره بگیم نود و هفت نکته که دونستنش به یه برنامه نویس کمک می‌کنه که برنامه نویس بهتری بشه. کارهای خورد و ریزی مثل کامنت گذاری و اهمیتش و شیوه‌ی درست انجام دادنش گرفته تا اهمیت استفاده از نرم افزار های ورژن کنترل(مثلن گیت) برای توسعه نرم افزار. یا مثلن این که کد زدن و مهارتهای مهندسی تنها عاملهای موفقیت نیستن و چیزای دیگه ای هم هستن که یه برنامه نویس باید حواسش بهشون باشه. درکل کتابیه که به شدت به هر کسی که برنامه نویسه یا می ‌خواد برنامه نویس باشه توصیه می‌شه. این رو هم بگم که هیچ کدوم از این نود و هفت چیز بیشتر از دو صفحه نیستن و خب زمان زیادی رو از آدم نمی گیرن. پیشنهاد شخصی من هم البته اینه که وقتی برین سراغ این کتاب که حداقل روی یه زبان برنامه نویسی مسلط باشین و یکی دو تا پروژه (چه بهتر که تجاری/واقعی/کاربردی باشن ولی پروژههای تمرینی هم قبوله) انجام داده باشین و تا حدودی با پروسه تولید نرم افزار آشنا باشین. این رو هم بگم که کتاب کاملن رایگان هست و هم روی گیتهاب و هم توی خیلی از سایتهای دانلود کتاب می‌تونید با خیال راحت پیداش کنید و دانلود کنید.

۹۷ چیزی که هر برنامه نویس باید بداند

۲. این جا تعدادی از تیتر ها رو می ذارم که شاید جذاب تر کنه خوندن کتاب رو:

  •  رعایت اصول بنیادی برنامه‌نویسی
  • از خود بپرسید کاربر – در این موقعیت- چکار خواهد کرد!‌ (شما کاربر نیستید)
  • زیبایی در سادگی ست
  • قانون پیشاهنگی
  • ابزار‌های خود را با دقت انتخاب کنید
  • مرور کد
  • کامنتی درباره کامنت ها
  • تنها چیزی را کامنت کنید که کد نمی تواند بیان کند
  • یادگیری مستمر
  • از خراب کردن چیزها نترسید
  • با دیتای تست نرم رفتار نکنید
  • ارور ها را نادیده نگیرید
  • به یاد گرفتن یک زبان بسنده نکنید،‌ فرهنگ آن را هم درک کنید
  • خودتان را تکرار نکنید
  • و …

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