در این مقاله قصد داریم درباره تاریخچه آموزش برنامه نویسی کودکان صحبت کنیم .
ابتدا بیایید ببینیم برنامه نویسی چیست ؟
در دنیای امروز دیگر شاید نیازی به معرفی برنامه نویسی نباشد و جزء شغلهایی است که هر کسی آشنایی جزئی با آن دارد. یکی از بهترین مشاغل جهان در حال حاضر برنامه نویسی است. شاید بپرسید از چه نظر ؟ اولین موضوعی که به ذهن مخاطب می آید معمولاً درآمد است. و باید گفت برنامه نویسی هم شغلی است که درآمد قابل توجهی دارد.
اما این نکته به این معنی است که پروژه و موقعیت مناسبی هم برای این شغل وجود دارد . یعنی اگر کار کافی برای این شغل وجود نداشت درآمد خوبی هم در کار نبود .
به دلیل افزایش تعداد استارت آپ های اینترنتی ، فروشگاه های آنلاین ، ارائه خدمات به شکل آنلاین ، رشد روز افزون تکنولوژی های مبتنی بر وب ، توسعه گوشی های همراه و نرم افزارهای مبتنی با آن ، افزایش استفاده از دستگاه های اتوماتیک مثل ربات ها در جامعه و تمام چیزهای مشابه این ها هر روز نیاز به نیروی متخصص و زبده برنامه نویس بیشتر و بیشتر می شود .
از آمارهای استخراج شده از یکی از وب سایت های کاریابی خارج از کشور (۱) فرصت های شغلی برتر بر اساس میزان درآمد در سال ۲۰۱۹ اعلام شده است . در بین این فهرست ۲۰ تایی ۶ شغل به طور مستقیم به حوزه برنامه نویسی مربوط می شوند و بقیه مشاغل حوزه IT و … هم به طور غیر مستقیم ارتباط معناداری با این رشته از کسب و کار دارند . مشاغل :
- توسعه نرم افزار
- مهندسی نرم افزار
- معمار نرم افزار
- مدیریت توسعه دهندگان نرم افزاری
- معماری داده
- متخصص اسکرام
به ترتیب پر درآمد ترین مشاغل حوزه برنامه نویسی سال ۲۰۱۹ هستند .
امروزه استارت آپ های بزرگ و کسب و کارهای آنلاین مطرح در کشور ایران گاهی برای ارتقاء تیم های برنامه نویسی خود مجبور می شوند نیروی متخصص خارجی استخدام کنند .
در ایران هم با اینکه قانون کپی رایت اعمال نمیشود(فقط برای محصولات خارجی) اما باز این شغل پرطرفدار است. و حتی می شود کسانی که هیچ گونه تحصیل دانشگاهی در کامپیوتر نداشتهاند را دید که برنامه نویسان موفقی هستند. (دلیلش این است که برای یادگیری برنامه نویسی میتوانید در صدها دوره آنلاین داخلی و خارجی شرکت کنید) و البته بسیاری از این برنامه نویسان صاحب کسب و کار خود هستند.
به طور خلاصه برنامه نویسی یعنی فرآیند نوشتن کد جهت توسعه نرم افزار یا کنترل ماشین آلات و دستگاه ها چه با واسط نرم افزاری و چه بدون آن ،
تمامی نرم افزارهایی که میبینید توسط زبانهای برنامه نویسی مختلف و با همت برنامه نویسان تهیه گردیده است .حتی نرم افزاری که بر روی تلویزیون شما قرار دارد . ممکن است نرم افزاری تولید نشود. ولی درون یک ماشین یا یک ربات کلی کد نوشته شده باشد که بتواند آن را بدون دستکاری انسان کنترل کرد . مثل جارو برقی های هوشمند که خودشان در سطح خانه می چرخند و بدون دخالت شما کف خانه را تمیز می کنند .
برنامه نویسی به بخشهای مختلف تقسیم شده است و هر روز این بخشها بزرگتر میشود. از بخشهای اصلی آن میتوان به کدنویسی ، خطا یابی ، معماری نرم افزار و آزمایش نرم افزار اشاره کرد .
ما تعریف مختصری از برنامه نویسی داشتیم اما موضوع مهمی که اکنون به آن میپردازیم برنامه نویسی نیست. بلکه برنامه نویسی کودکان است! بله برنامه نویسی کودکان چیزی که در دنیای امروز واقعا نیاز است و بسیار مهم!
البته شاید برایتان سوال پیش بیاید که برنامه نویسی را چطور میشود به کودکان یاد داد ، در حالی که بسیاری از فارغ التحصیلهای رشته نرم افزار هم این هنر را ندارند ؟! ما در این مقاله هم درمورد این موضوع بحث خواهیم کرد و هم اینکه چرا باید برنامه نویسی را به کودکان آموزش داد. حتما مختصری از تاریخچه آموزش برنامه نویسی کودکان را بررسی خواهیم کرد .
تاریخچه آموزش برنامه نویسی به کودکان
اگر بخواهیم از ابتدای تاریخچه واقعی برنامه نویسی کودکان شروع کنیم حتما باید از ژان پیاژه و تفکر ساختار گرایی او یاد کنیم . چرا که شروع روشی خوب برای آموزش برنامه نویسی به کودکان همین جا بود .
نظریه ساختار گرایی یعنی اینکه که لزومی ندارد دانشی که ما کسب میکنیم حتما از عوامل بیرونی باشد ، چرا خودمان نباید آن را بسازیم ؟ یعنی اصلاً احتیاجی نیست که حتما معلم شما به شما بگوید که تفکر چیست ؟ شما خودتان میتوانید فکر کنید ، اکتشاف کنید ، تجربهها و دانش پیشین خودتان را با هم مخلوط کنید و مطلب را به طور کامل بفهمید. (به طور کامل مفهوم تفکر را درک کنید) .
هدف از این بحث مروری بر تاریخچه برنامه نویسی کودکان است نه تعریف نظریه ژان پیاژه پس موضوع را ادامه میدهیم اما در مقاله دیگری درباره همین نظریه ژان پیاژه نیز نوشته ایم که می توانید آن را با شرح و بسط بیشتری مطالعه کنید .
زبان برنامه نویسی LOGO
سال ها بعد از نظریه پیاژه یک دانشمند برجسته کامپیوتر ، ریاضیدان و مربی کامپیوتر آفریقای جنوبی به نام سیمور پاپرت (۱۹۲۸-۲۰۱۶) در دانشگاه MIT یک زبان برنامه نویسی مبتکرانه را ایجاد کرد به نام LOGO .
کودک با این زبان برنامه نویسی خلاقانه یک ربات لاک پشتی شکل به نام (turtle) را که مجهز به قلم بود با یک کیبرد گرافیکی برنامه ریزی می کرد تا یک تصویر را خلق کند که روی صفحه نمایش یا در دنیای واقعی روی کاغذ نقش می بست . این اولین بار بود که کودکان می توانستند با نوشتن یک برنامه یک چیز که در اینجا یک ربات بود را کنترل کنند و در حین بازی با آن یک نتیجه خلاقانه بیافرینند .
کودکان چگونه بهتر یاد می گیرند ؟
در مثال LOGO و ربات (turtle) :
۱) کودکان با انجام کار یاد می گیرند .
۲) اشیاء ملموس از روش های مشخص تفکر پشتیبانی می کنند .
۳) ایده های قدرتمند می توانند فرد را توانمند سازند .
۴) خود اندیشی به کودکان کمک می کند تا تفکر و ارتباط خود با محیط پیرامون خود را روشن کنند .
ربات لاک پشتی Tortis
پس از آقای پاپرت نسخه بعدی ربات لاک پشتی هم ساخته شد. و از ۱۹۷۰ به بعد آموزش برنامه نویسی به کودکان پیشرفت های زیادی داشت . در سال ۱۹۷۴ لاک پشت Tortis منتشر شد . پس از Tortis آجرهای برنامه نویسی قابل لمس MIT محصولی دیگر در این راستا بودند که در سال ۱۹۹۰ که به عرصه آموزش برنامه نویسی کودکان وارد شدند.
LEGO Mindstorm
البته در سال ۲۰۱۳ LEGO Mindstorm سومین و آخرین نسل از ابزار آموزشی بودند که به بچه ها اجازه می داد ربات هایی را بسازند و برنامه ریزی کنند . در این بین می توان به بلوک های آجری شکل چوبی Cubetto به عنوان ساده ترین ابزار آموزش برنامه نویسی برای کوکان اشاره کرد .
Cubetto مجموعه ای بلوک های آجری ، نقشه و سیری داستانی و نیز یک ربات چوبی به همین نام است که با بلوتوث کنترل می شود . در این مسیر افرادی همچون فردریش فروبل (۱۹۵۲-۱۷۸۲) و ماریا مونتسوری (۱۸۷۰-۱۹۵۲) نیز نقش پررنگی در طراحی بازی های چوبی برای درک محیط پیرامون ، رنگ ، وزن ، ابعاد و … در کودکان داشتند .
scratch
در سال ۲۰۰۷ دانشمندان آزمایشگاه رسانهMIT زبان برنامه نویسی را طراحی کردند به نام اسکرچ (scratch). که بسیار شبیه به اسباب بازیهای لگو است و میتوان گفت با الهام از همین بازی طراحی شده است.
این زبان برنامه نویسی کودکان بصورت تصویری یا گرافیکی است . و روش آن این گونه است که کودک شما باید شکلهای خاصی را با هم جفت کند(تمامی شکلها با هم جفت نمیشوند) تا یک برنامه بسازد. در این روش کودک اصلا با سختی کار برنامهنویسی روبرو نیست بلکه در حال تجربه کردن لذت یک بازی است.
منابع :
(۱) اطلاعات و داده های مربوط به میزان درآمد و آمار ارائه شده از وب سایت www.glassdoor.com که یک سایت کاریابی است انتخاب شده است .
http://www.theoldrobots.com
https://www.scratchjr.org