
انجمن علمی beginner friendly علوم کامپیوتر؟ 😀
انجمن کامپیوتر ساینس 12، انجمنی علمی-کاربردی هستش که به صورت بگینر فرندلی شروع به فعالیت میکند. این انجمن قصد دارد که در مدتی کوتاه که به آن *فاز یکِ cs12* میگویند، افراد علاقه مند به برنامه نویسی و علوم کامپیوتر را در کنار هم جمع کند و تا پایان **فاز یک** قصد دارد که یک بیس و پایه ی خوب از علوم کامپیوتر را برای افراد حاضر در انجمن به وسیله استفاده از منابع دست اول بسازد...
چرا به CS12 نیاز داریم ؟
در دنیای امروز، علوم کامپیوتر به عنوان یکی از ارکان اصلی توسعه فناوری و نوآوری شناخته میشود. با این حال، در ایران، دانشجویان در دوره لیسانس و حتی افرادی که برای یادگیری کامپیوتر و برنامه نویسی به دانشگاه نمیروند به جای یادگیری مباحث بنیادی، بیشتر به استفاده از ابزارهای موجود میپردازند؛ به عبارتی ابزارمحوری بیداد میکند.
این رویکرد نه تنها باعث کاهش کیفیت آموزش میشود، بلکه در درازمدت به بدنه تکنولوژی کشور آسیب میزند. عدم آشنایی با مباحث پایهای علوم کامپیوتر، مانع از توانمندی برنامه نویسان و دانشجویان در ایجاد نوآوری و پژوهشهای علمی میشود.
همچنین، تحریمها و محدودیتهای اقتصادی، دسترسی به منابع آموزشی و پژوهشی را دشوارتر کرده است؛ از این رو جامعه ی کامپیوتر ایران به نوعی منتور های بسیار کمی رو در خودش جا داده و از طرفی اغلب به دلیل مهاجرت بسیاری از فراد با سواد منتور هایی که بتوان به شکل حضوری در مجامع برنامه نویسی دید را از دست داده ایم.
از طرفی منابع به زبان فارسی به شدت کم هستند و استاد محوری باعث کاهش یادگیری جمعی و جمع گرایی در ایران میشود.
در این شرایط، نیاز به یک انجمن که بتواند به آموزش و پژوهش در این حوزه بپردازد، بیش از پیش احساس میشود. این انجمن میتواند به عنوان یک جمع تکمیلی برای آموزش و یادگیری علوم کامپیوتر تلاش کند و در نهایت در فاز دوم cs12 که فاز پروژه هست به ساخت پروتکل ها و پژوهش های علمی و ... بپردازد.
از این رو، افرادی که در نشست های انجمن حضور داشته باشند میتوانند پس از گذراندن فاز یک و یادگیری پایه ای علوم کامپیوتر و مباحث بنیادی؛
در فاز دوم این انجمن شروع به ساخت رزومه ای پویا و علمی کنند.
چرا که در فاز دو؛ پروژه ها به صورت تیمی اجرا میشوند و سپس برای هر پروژه مقاله ای طرح میشود تا با کار کردن روی پروژه و تکمیل شدن هر پروژه مقاله هایی در رابطه با مباحثی مثل بهینه سازی و ... نیز در گیت هاب بچه ها ایجاد بشود.
این انجمن چه اهدافی دارد ؟
هدف اصلی این انجمن، ارتقاء سطح دانش و مهارتهای پایهای در حوزه علوم کامپیوتر برای دانشجویان و افراد تازهکار است.
ما به دنبال ایجاد بستری مناسب برای آموزش مباحث بنیادی علوم کامپیوتر، از جمله ریاضیات گسسته و الگوریتمها هستیم.
همچنین، با آموزش مباحث پایهای، هدف ما این است که افراد تازهکار را به یک حد پایه از دانش علوم کامپیوتر برسانیم تا بتوانند هزینههای ساخت نرمافزار را از طریق بهینهسازی و درک عمیقتر کاهش دهند.
همچنین، ما به ترویج پژوهش و نوآوری در زمینه تولید نرمافزارهای زیرساختی و استانداردهای جدید در ایران میپردازیم.
با ترجمه کتابهای علمی و طراحی وبسایتهای آموزشی، سعی داریم دسترسی به منابع آموزشی را تسهیل کنیم.
در نهایت، ما به دنبال ایجاد یک جامعه علمی پویا و همکار هستیم که در آن افراد از هر قشر و دانشگاهی بتوانند به یادگیری و تبادل دانش بپردازند.
برای رسیدن به این اهداف قصد داریم به یادگیری در مورد مباحث زیر بپردازیم :
1. برنامهنویسی: اولین قدم این است که یاد بگیریم چگونه با این موجود عجیب و غریب (کامپیوتر) صحبت کنیم و بتوانیم ایده ها و مباحثی که میخواهیم انجام دهیم را به اون بگوییم تا انجام دهد.
2. معماری کامپیوتر: بعد از یادگیری نحوه ارتباط با کامپیوتر و چگونگی صحبت با اون، باید یک مدل ذهنی از ساختار و نحوه کارکرد کامپیوتر برای خودمون بسازیم تا بفهمیم که کامپیوتر چگونه کار میکند.
اگر این کار رو نکنیم تمام مفاهیم انتزاعی که در سطوح بالا تر بلدیم شکننده و کمی نا واضح میشوند.
4. درک رفتار کامپیوتر: پس از ساخت مدل ذهنی، باید نحوه رفتار کامپیوتر را به صورت رویهای درک کنیم. در این مرحله نیاز به ریاضیات پایه، کمی از گسسته و جبری که تا به امروز خواندهایم داریم. (برای این موضوع سعی داریم که مسائل رو به کمک برنامه نویسی و دنیای کامپیوتر یاد بگیریم.)
5. الگوریتم و دیتا استراکچر: در این مرحله، یاد میگیریم که چگونه پردازشها به پایان میرسند و چطور میتوانیم سریعتر و بهتر کارها را پیش ببریم و استریم دیتا را کنترل کنیم
(داستان از این قراره که الگوریتم ها و دیتا استراکچر ها سنگ بنای دنیای کامپیوتر به شدت بدرد بخور و تعیین کننده در حتی فروش و استفاده از یک برنامه هستند.)
6. سیستم عامل: حالا که رفتار، ساختار و نحوه ارتباط با کامپیوتر را یاد گرفتهایم، باید سیستم عامل را بشناسیم. سیستم عامل جایی است که کدهای ما نوشته و اجرا میشود و ارتباط ما با سختافزار را مدیریت میکند .
7. شبکه: شبکهها در واقع گرافهایی هستند که گرههای آن کامپیوترها هستند. باید نحوه ارتباط بین این سیستمها را مطالعه کنیم و یاد بگیریم چگونه از طریق سیستم خود با سیستمهای دیگر ارتباط برقرار کنیم داستان از این قراره که تا مرحله ی 5 ، ما تقریبا یک سیستم رو به طور کافی شناخته ایم. حالا وقتش هست که یاد بگیریم که چطوری میتونیم از یک سیستم استفاده کنیم تا به سیستم دیگری درخواست انجام کاری رو بدیم و از قدرت پردازش و فضا و منابع دیگر سیستم ها استفاده کنیم.
8. دیتا بیس ها
9. زبانهای برنامهنویسی و کامپایلرها: در اینجا یاد میگیریم که زبانهای برنامهنویسی چگونه نوشته میشوند و کامپایلرها چگونه کار میکنند. این دانش به ما کمک میکند زبانهای جدید را راحتتر یاد بگیریم.
10. سیستمهای توزیع: در نهایت، باید با سیستمهای توزیع آشنا شویم که امروزه کاربرد زیادی دارند و درک پایهای از آنها میتواند مفید باشد.
11. توسعه فردی: پس از این مباحث، اعضا میتوانند به مطالعه عمیقتر در هر زمینهای که به دنیای کامپیوتر مربوط میشود بپردازند و ایدههای خود را به عمل برسانند. (فاز دو cs12)
فاز یک رو چگونه اجرا میکنیم ؟
به طور کلی فاز یک یعنی یادگیری مباحث پایه ای رو قصد داریم به شکل زیر اجرا کنیم :
به طور هفتگی نشست هایی رو برگزار میکنیم که در این نشست ها به یادگیری مباحث دست اول در رابطه با موضوعات فوق میپردازیم، از کتاب ها گرفته تا لکچر های دانشگاه های معتبر و حتی منابع دیگر در مورد موضوع مورد بحث.
به صورت ماهانه یا هر دو ماه یک بار یک نشست بزرگتر رو برگزار میکنیم تا مباحث قبل که در نشست های هفتگی مطالعه کردیم رو در یک نشست به طور خلاصه بیان کنیم تا دوره ای بشه برای بچه ها و همینطور اگر سیاست غلطی رو در یادگیری به کار بردیم با هم دیگه درستش کنیم.
هر سال یک رویداد بزرگ داریم که سعی میکنیم در اون رویداد به اتفاقاتی که در نشست های گذشته افتاد بپردازیم و ببینیم که تا اون روز چه کار هایی کردیم ، و چه سیاست هایی رو باید جایگزین سیاست های قبلی کنیم و در نهایت به چه موفقیت هایی رسیدیم و چه شکست هایی داشتیم.
از هر نشست ویدیو هایی تهیه میشه و با ادیت در یوتیوب و سایت های مشابه گذاشته میشه، ویدیو ها دارای کات خواهند بود. بعلاوه که فایل اسلایدی و گزارشی از خلاصه هر جلسه در شبکه های اجتماعی و وبلاگ انجمن گذاشته میشه.
در وبلاگ انجمن بخش هایی وجود داره که به طور روزانه سعی میکنیم که اموزش های متن محور در رابطه با زبان c و bash و ... رو بگذاریم.
اگر اینترنت یاری کنه ، به استریم و لایو پخش کردن هر رویداد و نشست ها هم میپردازیم (قول نمیدیم.)
در هر نشستِ هفتگی یک تیمِ دو یا سه نفره وجود داره که وظیفه وریفای کردن و سنجیدن درستی مطالبی که ارائه دهنده میگه رو به عهده داره که اگر احیانا ارائه دهنده اشتباه بحثی رو بیان کرد باعث کج فهمی نشه.
همینطور اگر سوالی در جلسه مطرح بشه که ارائه دهنده قادر به پاسخگویی نباشه تیم وریفایر با سرچ و جستجو سعی در پاسخ دادن به اون مطلب میکنه و اگر تیم وریفایر نتونست به اون سوال پاسخی بده.
همگی با هم دست به کار میشیم تا یادش بگیریم.
به ما بپیوندید :
بیاید اینجا : کلیک