من در این نوشته قصد دارم توضیح دهم چرا این کارآموزی مهم است و چرا باید جدّی گرفته شود. بازار کار در ایران و جهان متلاطم شده و کار پیدا کردن اصلاً مانند پدرانمان ساده نیست. پدران ما با فروش نفت روزگار میگذراندند امّا این فرصت از ما سلب شده است. البته دلیل این همه عقبماندگیهای ما در ایران نیز همین است. از شاه پهلوی که مردم انگلیس را انسانهایی میدانست که «خوب کار نمیکنند» و یا قصد گشایش «دروازههای تمدّن» را داشت، تا جمهوری اسلامی که قصد «صادرات انقلاب و مدیریت جهانی به دنیا دارد»؛ همه اینها نشان میدهد که پول نفت چه توهمی در ما ایجاد کرده است.
این مقدمه لازم بود، زیرا با خودتان فکر نکنید که خیلی کار میکنید یا کارتان خیلی مهم است. انسانهایی در این کره خاکی زیست کردهاند که صدها برابر من و شما نبوغ به خرج دادهاند و هم زندگیشان را برای علم صرف کردهاند و نامشان برای اکثر مردم دنیا ناآشناست. امّا علم را رها نکردهاند زیرا میدانستند علم و منطقِ علمی ارزشمند است. این کارآموزی به شما نشان میدهد که مسیر علم چیست؛ این تنها دستاوردی است که من به شما میتوانم تضمین دهم، زیرا به خودم مسیر را نشان داده است. این آن بخش ۲۰٪ کار من است که مسیر غلط پیش پای شما نگذارم و مانند دانشگاه شما را به بیراهه نکشم. از طرفی رفتن در این مسیر و وقت نهادن در این راه نمیتواند کار من باشد؛ این آن بخش ۸۰٪ است. البته این ۲۰٪ ساده بدست نیامده، نگارنده باید بسیاری چیزها را صحیح و خطا میکرد تا به آن برسد. برخی بخشها لازم است تا شما همان صحیح و خطاها را بکنید زیرا مسیر آموزش از آن میگذرد و در برخی دیگر راه برای شما هموارتر است زیرا میتوانید از تجربه گذشتگان استفاده کنید.
در کشورهای جهان سومی مانند ما طی کردن مسیر علم دشواریهای فرهنگی نیز دارد. مثلاً از شکست میترسیم در حالی که شکست مسیر رسیدن به موفقیت است و شکستها کارآمد هستند؛ یا نیاز است که انسانها به درک مشترکی از توسعه دستیابند که هنوز وجود ندارد. گفتمانهای جامعه ما به سرعت به سمت اتهامات همگرا میشود که خود گونهای از مریضی اجتماعی است. من قصد ندارم کسی را محکوم و یا راهحل نشان دهم بلکه تنها هدفم این است که اصل «حُسن نیّت» را پررنگ کنم. به نظر من ما در گفتمانهایمان اعتماد به هم را از دست دادهایم؛ برای اینکه بتوانیم رشد کنیم نیاز داریم تا «نیّتخوانی نکنیم». از طرفی دیگر باید بسیار پوستکلفت باشیم. در جهان سوم «حسادت» وجود دارد و همه ما شکلی از آن را در خود داریم، منتها به سبب آن که بیماری دینی باعث شده درباره آن حرف نزنیم، به سرطان بدخیمی تبدیل شده است؛ مثلاً برای حذف انسانها دست و پا میزنیم که دانشگاهایمان به مرحله فروش پایاننامه رسیدهاند. اگر در یک جمله بخواهم همه این مطالب را خلاصه کنم میگویم:
عرض ادب خدمت شما خوبان؛ قبل از هر چیزی لازم میدانم ورود شما را به خانواده NRTC تبریک عرض میکنم و امیدوارم بنیان این خانواده علمی از هم نگسلد و هر روز شاهد پیشرفت شما باشیم.
اوّل لازم دانستم درباره آنچه که فراروی شماست توضیحهایی ارائه دهم. داستان از کارآموزهای سال قبل آغاز میگردد و نوشتههایی که معرفی خواهم کرد حاصل گروه قبل است. این کار از گروه قبل به شما به ارث رسیده است. شما نیز باید میراثی برای آیندگان بگذارید که آرایش و پیرایش متن گروه قبل است. شما این متن را باید قبل از شروع هفته اوّل بخوانید. فایده خواندن این متن پیشرفت در سرعت یادگیری شما خواهد بود؛ امّا آفتی نیز وجود دارد و آن «درست پنداشتن» است! این آفت همانی است که فکر میکنیم استادهایمان درست میگویند. امّا اینجا اینگونه نیست و خودتان نیز باید دست به کار شوید و مشکلات متن را بنویسید. خیلی اهمیّت دارد که مسئولیّت کاری که به شما سپرده شده است را دریابید.
لینک «آموزش سریع«:
https://github.com/NRTC/quick-start-guide
لینک چگونگی گذاشتن کامنت:
https://www.youtube.com/watch?v=Y-fvNYzgQ2Q
اوّل باید به عضویت گروه درآیید ツ. برای این کار یک ورقه حقوقی است که باید امضا کنید و چند سایت هست که باید عضو شوید. ورقه حقوقی از این بابت است که کپیرایت کدهایی که در حین کارآموزی برای شرکت مینویسید برای شرکت باشد. دلیلش هم مشخص است زیرا اگر کار شما خوب باشد ما از کدهای شما در محصولاتمان استفاده خواهیم کرد و ما نمیخواهیم هر بار برای این کار از شما اجازه بگیریم پس لازم است کپیرایت آن برای ما باشد. از طرفی ما این کدها را به صورت عمومی و با پروانه آزاد GPLv3 انتشار خواهیم داد و نمیخواهیم برای این کار نیز دستمان بسته باشد. متن حقوقی که قرار است امضا کنید برایتان ارسال خواهد شد و میتوانید با دقّت مطالعه کنید و یا اگر حقوقدان دارید با او مشورت کنید ツ. سایتهایی که باید عضو شوید به شرح زیر است:
Task Manager Website: Trello https://trello.com/
Instant Messenger: Telegram https://telegram.org/
Code Repository: Github https://github.com/
عضویت در این سایتها اجباری است زیرا بخشی از فرآیند کار است. بعد از عضویت ایمیلی را که ساختید به من بدهید تا عضو گروهتان کنم. طول کل این پروژه ۳ ماه است و باید در همین مدّت به انجام برسد. یک لپتاپ که پردازنده آن به تکنولوژی مجازیسازی مجهز باشد لازم است و همچنین روی آن باید یکی از توزیعهای دبیان یا فدورا یا جنتو نصب باشد.آرچلینوکس توزیع مناسبی نیست و بهجای آن میتوان Debian Sid نصب کرد. از اوّلین جلسه تمرین برای نوشتن وجود دارد. همینجا بگویم که نوشتن در ماکروسافت ورد و ارسال آن با فرمت آن مجاز نیست. متأسفانه ورد پلتفرم بسیار بدی دارد و فرمت آن بسیار نامناسب است. برای ارسال متن از فرمتهای txt یا فرمتهای استاندارد LibreOffice استفاده کنید.
هفته اوّل:
• Computer Hardware (CPU, RAM, Motherboard, Interfaces)
• Computer Architecture (X86, ARM)
• Operating Systems
• Compiler (GCC, LLVM Compiler Infrastructure, Intel Compiler)
• git SCM
• Kernels Introduction (Linux & BSD)
• Build Automation
هفته دوم:
• More advance topics on compilers (FMA, Vectorization, Assembly)
• Numerical Libraries
• Hands on GCC
• Hands on Python
• Compile and Installation of Software Packages
• (If possible) Make Debian Package
هفته سوم:
TBD
این برنامه سه هفته است. در شرط ورود به هفته دوم انجام تمرینات هفته اوّل است و شرط ورود به فرآیند کارآموزی انجام همه تمرینهاست (اگر کسی تمرین انجام ندهد حذف میشود ولی به لیست سیاه نمیرود). بعد از این سه هفته کارها شروع میشود و با کمک هم باید آنها را تمام کنیم. البته در ادامه کار هم این مفاهیم را بهتر یاد میگیرید و هم میتوانید درک بسیار بهتری مفهوم رایانش داشته باشد و در پروژههای بزرگ [حتی در دنیا] کار کنید. درک دیگری که پیدا میکنید این است که مانند شاه و شیخ متوهّم نباشید و ببینید ملّتها چقدر زحمت کشیدهاند تا به اینجا رسیدهایم!