استراتژی هایی برای یادگیری یک زبان خارجی و یک زبان برنامه نویسی!

استراتژی هایی برای یادگیری یک زبان خارجی و یک زبان برنامه نویسی!

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

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

حال ممکن است این ذهنیت برای برخی از علاقمندان به فراگیری زبان انگلیسی پیش بیاید که با دانستن برخی چیزها همچون Yes, No, OK, That`s it, Well, What is your name و غیره، زبان انگلیسی را فرا گرفته‌اند اما خبر ناامید کننده این است که خیر! این‌ها چیزهایی نیست که یک دانشجو با دانستن شان بتواند ادعا کند که زبان انگلیسی را می داند. اگر شما جزو آن دسته از دانشجویان زبان انگلیسی هستید که ادعا می‌کنید زیر و بم این زبان را می دانید، بهتر است خود را تست کنید و ببینید که آیا معنی اصطلاحات زیر را می‌دانید یا خیر؟

You can say that again
make sb`s day
in advance
call it a day
for good
for
in camera
day in day out
It`s a piece of cake

از سوی دیگر، آشنایی با انگلیسی محاوره یی و انگلیسی کتابی دو دنیای متفاوت هستند. برای درک بهتر این موضوع، دو مکالمه ی زیر را در نظر بگیرید به این صورت که مکالمه ی اول مابین دو ایرانی نیتیو است و مکالمه ی دوم مابین یک ایرانی نیتیو و یک فردی می باشد که خارجی است و زبان فارسی را فرا گرفته است:

مکالمه ی اول:
- بهزاد: سلام، خوبی؟ چه خبرها؟
- محمد علی: علیک. ای، شکر، می گذرونیم. مگه تو این مملکت جز تورم، آلودگی، استرس و … چیز دیگه یی هم هست! تو چه طوری؟
- بهزاد: نوکرتم. ای، مشغولیم. داشتم کد می‌زدم خسته شدم گفتم یه حال و احوالی کنم.
- محمد علی: ای بابا این چه حرفیه، خیلی مخلصیم و …

مکالمه ی دوم:
- بهزاد: سلام. خوبی؟ چه خبرها؟
- جورج: سلام خدمت شما. من خوب هستم و امیدوار است شما خوب باشید. در مورد خبر که سؤال فرمودید، آخرین خبری که دارم از بهبود روابط سیاسی ایران و غرب است! حال شما چه طور هستید؟
- بهزاد (با خودش می گه: این اوسکول چی داره می گه؟!): نوکرتم. ای، مشغولیم. داشتم کد می‌زدم خسته شدم گفتم یه حال و احوالی کنم.
- جورج: من نیاز به نوکر ندارم. خودم از عهده ی کارهایم بر می آیم. ممنون و …

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

اگر بخواهیم از دید علمی به این قضیه نگاه کنیم، در بحث فراگیری یک زبان خارجی مقوله یی داریم تحت عنوان Arnold`s Effect که از روی آرتیست معروف سینمای هالیوود، آرنلود شوارتزنگر نامگذاری شده است. به طور کلی، «اثر آرنلودی» به این مسأله اشاره می‌کند که آرنولد اصالتاً -اگر اشتباه نکنم- اهل کشور اتریش بوده و در سنین نوجوانی به ایالات متحده ی آمریکا مهاجرت می کند.

از دید زبانشناسی، مبحثی داریم تحت عنوان Critical Period یا «برهه ی حساس» که دانشمندان باور دارند که تا قبل از سن بلوغ، افراد در این برهه قرار دارند. این برهه هرچه که هست، حاکی از آن است که افراد اگر پیش از چنین سنی اقدام به یادگیری یک زبان خارجی کنند، به راحتی می‌توانند تمامی جنبه‌های آن زبان به‌خصوص لهجه ی آن را فرا گیرند. نیاز به توضیح نیست که آرنولد پس از سن بلوغ وارد ایالات متحده شد پس هرگز نمی بایست از ایشان انتظار داشت که توانسته باشد صد در صد شبیه به یک نیتیو آمریکایی لهجه گرفته باشد اما نکته ی جالبی که در مورد ایشان صدق می‌کند این است که او توانسته در سایر جنبه‌های زبان انگلیسی -البته ورژن آمریکایی اش- مثل خواندن، نوشتن، صحبت کردن، استفاده ی به جا از اصطلاحات، شوخی های رایج، زبان محاوره، تکیه کلام های خاص و غیره آنقدر خوب عمل کند که دانشمندان به یاد ایشان، Arnold`s Effect را ابداع کرده و هر کسی که بتواند یک زبان را همچون سایر گویشوران آن زبان مورد استفاده قرار دهد، می‌گویند که مثلاً فلان کس دارای Arnold`s Effect است خواه توانسته باشد لهجه ی آن زبان به‌خصوص را تقلید کند خواه نتوانسته باشد!

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

بسیاری از کسانی که اقدام به فراگیری یک زبان خارجی می کنند، این امکان را ندارند تا در کشوری که زبان مد نظرشان تکلم می‌شود حضور داشته و در محیط اقدام به فراگیری زبان کنند و بالاجبار به موسساتی مراجعه می‌کنند که مدرسین آن‌ها پایشان را آن طرف تر شابدولعظیم هم نگذاشته اند چه رسد به یک کشور خارجی! از همین روی است که ما نه تنها نمی‌توانیم Arnold`s Effect را در خود نهادینه کنیم، بلکه زبان محاوره یی رایج را هم در بیشتر مواقع یاد نمی گیریم!

چاره چیست؟
ارائه ی سالوشن برای یادگیری بهینه ی یک زبان خارجی به‌خصوص زبان انگلیسی نیاز به زمان بسیار بیشتری از یک مقاله ی این چنین دارد اما اگر بخواهیم یکی از موثرترین آن‌ها را نام ببریم، شرکت در کلاس‌هایی با معلم‌های نیتیو است که البته شهریه ی آن‌ها به نسبت بیشتر از کلاس‌های معمولی است؛ خب در چنین فضایی به مراتب بیشتر و بهتر می‌توان فضای یک جامعه ی انگلیسی زبان را شبیه سازی کرد و صد البته اثربخشی بیشتری هم خواهد داشت.

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

حال نوبت به بررسی استراتژی های فراگیری برنامه نویسی می رسد. کسانی که زبان می آموزند شعاری دارند با این مضمون که «زبان فرار است!» فعلاً کاری نداریم که این شعار واقعاً درست است یا غلط اما اگر فرض را بر این بگذاریم که زبان فرار است، پس بایستی بگوییم که یک زبان برنامه نویسی فرار است به توان 10!

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

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

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

در آموزشگاه‌های برنامه نویسی -که سکان آکادمی هم مستثناء نیست- در اکثر مواقع برنامه نویسی کاربردی آموزش داده نمی‌شود بلکه صرفاً یکسری مفاهیم پایه یی، اصول کار، مقدمات و کلیات مطرح می‌شوند و این در حالی است که مدیران شرکت های برنامه نویسی حاضر نیستند یک ریال بابت چنین دانشی حقوق پرداخت کنند!

فرض کنیم که شما دانشجوی دورهٔ بهینه سازی سایت برای موتورهای جستجو (سئو) در سکان آکادمی هستید. خب در این دوره، مفاهیمی همچون تأثیر شبکه‌های اجتماعی در سئو، استفاده از تگ های H1 و H2 در جای مناسب، یافتن کلمات کلیدی مناسب، تحلیل رقبا، چگالی کیوردها در صفحه و بسیاری مباحث دیگر مطرح می‌شود و به خوبی توضیح داده می‌شوند اما سؤال اینجا است که آیا شما پس از گذراندن این دوره، می‌توانید ادعا کنید که یک کارشناس سئو هستید و آیا می‌توانید برای یک شرکت طراحی سایت برای سمت کارشناس بهینه سازی سایت برای موتورهای جستجو Apply کنید؟ مسلماً پاسخ شما خیر خواهد بود!

شما زمانی می‌توانید ادعا کنید که سئو کار هستید که یک کیورد بسیار رقابتی را در بدترین شرایط به صفحه ی اول گوگل آورده باشید؛ مثلاً کیوردهایی از قبیل آموزش برنامه نویسی، بهبود رتبه ی الکسا، شارژ آنلاین، کلاس کنکور، سفارش کتاب از آمازون و … جزو کیوردهایی هستند که آوردنشان به صفحه ی اول کار دشواری است چه رسد به لینک اول شدن!

چاره چیست؟
چاره کمی به شانس شما هم بستگی دارد. اگر مقاله ی «تاثیر اولین شغل در شکل‌گیری DNA شما. دقت کنید!» را در سکان آکادمی مطالعه کرده باشید، بدون شک اگر شانس ورود به شرکتی حرفه یی همچون شرکتی که در این مقاله به آن اشاره شد را داشته باشید، بخش قابل توجهی از کار حل شده است چرا که بستر رشد برای شما فراهم است.

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

اگر سئو کار هستید و در دانشگاه هم مشغول به تحصیل، می‌توانید مثلاً روی سئوی مجله ی فرهنگی آنلاین دانشگاه کار کنید. 

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

اگر خواهر یا برادری دارید که هنرمند است -مثلا نقاش- می‌توانید یک گالری آنلاین برایش طراحی کنید که امکان آپلود عکس، گذاشتن کپشن، قابلیت لایک کردن، دسته بندی موضوعی و … داشته باشد. 

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

اگر هم ازدواج کرده باشید که الا ماشالا تا دلتان بخواهد سوژه برای کدنویسی دارید؛ از اپ Note Taking گرفته تا اپلیکیشن های تخصصی تر که برای سوژه های خاص کاربرد دارند. مثلاً فرض کنید که همسر آقای برنامه نویس باردار می شود. خب چه اپلیکیشنی از این بهتر که تاریخی که جواب آزمایش مثبت بوده را به آن بدهیم، سپس بر اساس الگوریتم خاص و حساب شده یی و بر اساس دیتایی که قبلاً وارد آن کرده ایم، به همسرمان بگوید که مثلاً الان تو در سه ماهگی خود به سر می بری، پس باید مثلاً منیزیم مصرف کنی؛ یا مثلاً الان در هفت ماهگی خود به سر می بری، دیگر نباید ورزش های سنگین انجام بدی و چنین اطلاعاتی را به در قالب Tipهای روزانه به همسر عزیز ارائه دهد (البته اپ های به مراتب تخصصی تر هم در این حوزه می‌توان نوشت که این رسانه فضای مناسبی برای تشریح بیشتر نیست!)

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

برای این که تأثیر این قضیه را متوجه شوید، داستان واقعی از خودم نقل می کنم. اولین پروژه ی طراحی سایتی که انجام دادم، با جوملا بود که الحق چیز ضایعی بود. کاری نداریم، روزی مدیر عامل شرکتی که سایت را برایش طراحی کرده بودم، از یک مشاور فنی باتجربه خواست تا سایت را تحلیل کند. لیست بلند بالایی بود از اشکالات فنی، ساختاری و ظاهری. علاوه بر این‌ها، آقای مشاور به من گفت که این سایت سئو نداره! من هم بدون تلف کردن زمان پاسخ دادم که خب مشکلی نیست، بگید از کجا بخریم، فوراً تهیه می‌کنم !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

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

این یک تهدید بزرگ بود اما آن را به شکل یک فرصت نگاه کردم و نتیجه این شد که سئو کار شدم و توانستم کیوردهای آموزش آنلاین برنامه نویسی، آموزش برنامه نویسی، آموزش جاوا، آموزش برنامه نویسی به کودکان، آموزش پی اچ پی، آموزش اندروید، آموزش اسکرچ، آموزش پایتون و … را به صفحه ی اول گوگل بیاورم آن هم از طریق سایتی که فقط و فقط دو سال از عمرش می گذرد (جهت تست صحت این ادعا، لطفا کلید های Ctrl + T را به طور هم زمان فشرده، وارد سایت گوگل شوید و تک تک کیوردها را وارد نمایید و نتیجه را مشاهده نمایید.)

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

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

نظر شما چیست؟ آیا راه کارهایی می‌شناسید که بتوانند به افراد مبتدی در حوزه های فوق الذکر کمک کند؟ نظرات خود را با سایر کاربران سکان آکادمی به اشتراک بگذارید.