Чи можна наситити ринок IT, навчаючи дітей програмуванню

Програмування в Україні - це вудка , за допомогою якої можна ловити жирну рибу . Багато татуся - програмісти це розуміють, тому ще до народження своїх первістків починають фантазувати про те, як доця в три рочки напише свій перший скриптик на JS . Зрештою, якщо це вдалося 53-річному Обамі , то що вже говорити про дітей, які вбирають знання, як губка Боб ? Особливо якщо вдома сидить батько - програміст, а шафи так і ломляться під старовинними підручниками з С ++ , Unix і TCP/IP.

Виростити з дитини програміста

Наскільки це реально ? На цьому питанні сперечальники поділяються на два табори: консерваторів і прогресивних . Перші вважають , що людина народжується з певними навичками, і так і живе з ними все життя. Другі впевнені, що всьому можна навчитися. Довгий час наука була на боці консерваторів. Це засмучувало тих , кому генетика сказала: « не в цьому житті , друже! » , І радувало тих, хто , виявивши свій талант, думав : « яке щастя , що в мене талант до малювання (вставити своє) ! - Те, чого немає в інших ». Хоча, звичайно, консерваторам теж доводиться несолодко : знайти і розвинути свій талант - та ще задача. Але останні 30 років цій темі приділялася все більше уваги, що вилилося в дослідження , оформлені в бестселери на кшталт Talent is Overrated і Talent Code . Виявилося, що не генетикою єдиною: можна дуже радикально прокачати мозок і тіло в будь-якому напрямку , якщо грамотно до цього підійти і створити потрібні умови. Так що, хто знає, може , мою кішку вдасться таки навчити парсити XML (ті самі , що скребуть руху лапою біля лотка ) .

Когнітивний розвиток дітей

Діти мислять символами і образами - інакше б вони не грали в нудні (з точки зору дорослих) гри з бездушними предметами, які в їхній уяві обов'язково оживають. Здавалося б - ось воно , абстрактне мислення ! Але абстрактне мислення вимагає більшого - здатності використовувати концепції , оперувати складними абстрактними поняттями і висновками , здатності розуміти узагальнення, вміти абстрагуватися і будувати зв'язки між явищами і поняттями. Так що одні лише символи й образи ніяк не потягнуть на абстрактне мислення, без якого в програмуванні - нікуди. Для початку потрібно розжитися бодай логікою. Згідно теорії Піаже, дитина до 4-7 років все ще не може повною мірою використовувати логіку. Наприклад, йому складно одночасно тримати в голові дві концепції про одну ситуацію . Якщо чотирирічної дівчинці показати картинку з вісьмома собаками і трьома кішками (вона здатна визначити на ній котів і собак) , а потім запитати - « Тут більше собак або звірів? » , То вона з великою часткою ймовірності відповість « собак більше». Це відбувається через те , що дитині важко сфокусуватися одночасно на двох підкласах і класі в один і той же час. Так що логіка почне давати кіптяви тільки починаючи років з семи. До цього часу залишається задовольнятися хіба що символами і образами. У період 7-11 років дитина починає належним чином використовувати логічний апарат . Але про абстрактному мисленні в цей час говорити ще рано: воно щосили починає розвиватися тільки в 11-12 років , дозволяючи дитині робити узагальнення, висувати гіпотези і припущення. У цьому віці мислення шибеника дозволяє йому , нарешті , повною мірою відірватися від конкретних об'єктів. Тобто оптимальний вік для початку навчання програмуванню сферичного дитини у вакуумі - 7-8 років. Цю гіпотезу підтверджує намір міносвіти Великобританії ввести в школах програмування вже починаючи з п'ятирічного віку. Чи не занадто рано? Ніяк немає. Навряд чи що-небудь перешкодить вчителям давати концепції програмування поступово, від року до року нашаровуючись все нові і нові поняття . Зрештою , чому б не пройти « Hello, World! » Ще в дитинстві ? Крім того, в школах вже з першого класу починають викладати математику - вельми абстрактну науку. Якщо дитина комфортно себе почуває на уроках арифметики, то напевно в нього вийде проводити ті ж обчислення на уроках інформатики . Тільки не в зошиті, а на екрані.

Працює такий підхід?

Як знати . Наприклад, , який завдяки батькові почав програмувати в 7, вже до 13 років відчув, що серйозно просунувся в програмуванні : починав він з Visual Basic 6 , потім познайомився з HTML, а в 9-10 років уже студіював C #. Зараз він навчається в Прінстонському університеті на факультеті інформатики , вивчає ASP.NET і готується випустити пару сайтів: для універу і для місцевих музикантів . Сам Максим радить батькам в якості pet - project для дитини придумати що-небудь більш візуальне , де більше картинок, - щоб заінтригувати . У цьому плані пошуковий движок програє який-небудь барвистою ігруліне . Історія Максима - успішний приклад програмування з дитинства, яке до чогось привело. З іншого боку, наявність батька -програміста і мами - сисадміна не гарантує світле майбутнє в Кремнієвій долині . Яблуко від яблуні недалеко падає тільки в тому випадку, якщо яблуня росте на рівнині, а не, скажімо, на пагорбі або скелі. Діти бувають зовсім схожими на своїх батьків як за характером , так і за інтересами. Звичайно, сім'я впливає на дитину і є ймовірність, що він прогнеться в сторону предків , але може бути і навпаки : дитина , надивившись на щодня стирчать у ноутбуків тата і маму , подумає : «ну ні, я краще буду більше рухатися і спілкуватися з людьми, піду-но в ріелтори !». Дитина може вибрати іншу стезю як з протесту , всупереч родом діяльності батьків, так і просто тому що йому, наприклад, більше сподобається грати на скрипці , ніж лопатити код . І цілком можливо, що на кожну дитину, яка отримав комп'ютер і підручники і став програмістом, знайдеться дитина, у якої все це було , але програмістом він не став. Та й навколо чимало прикладів людей, яких з дитинства навчали фортепіано, а вони його потім усе життя ненавидять.

Може, ми дітей не так вчимо ?

Якщо спиратися на школи з їх вічно позіхати викладачами з інформатики, блудними блок -схемами і чахнущіе процесорами , то діла не буде. Становлення дитини як програміста в такому середовищі відбувається не завдяки, але всупереч. Очевидно, що потрібно підвищувати якість викладання . Проблема лише в тому , що школи , як і будь-які державні структури, дуже інертні для швидких і якісних перетворень. Негоже чекати біля моря погоди - тому батьки , які хочуть виростити програміста , вибирають шлях домашньої освіти : або навчають самостійно, або запрошують раз на тиждень ментора . Такий підхід не може не дати хоч яких-небудь плодів. Виходячи з тих же принципів « 10 тисяч годин », « deliberate practice » і « practice makes perfect » , які вчуваються з безлічі книг і досліджень на тему здібностей і таланту , дитина буде приречений підвищити свої навички в програмуванні. Та й не тільки дитина.

Кадровий голод на ринку IT

Щоб зрозуміти, як вирішити питання браку фахівців , подивимося, як СРСР тамував свій кадровий голод у сфері науки. Адже, з одного боку, з чим-чим , а з наукою в СРСР все було в шоколаді. Коли до правлячої верхівки дійшло, що в школах слід піднімати технічну освіту, у багатьох ВНЗ Союзу почали створювати факультети загальнотехнічних дисциплін і праці, які могли б готувати кваліфікованих викладачів . У 1956 році почався випуск « Юного Техніка». Ще через десять років став виходити журнал по дитячому технічної творчості «Моделіст - конструктор ». Юний советиш не тільки отримав можливість записатися в конструкторське бюро при школі, але і, починаючи з 1968 року, міг брати участь у регулярно проводяться всесоюзних змаганнях ракетомоделістів -школярів . Справжній конструкторський рай - тільки встигай збирати на сміттєзвалищах будматеріал для конструкторської діяльності . Та й гуманітарні факультети ломилися від натовпів бажаючих і приблатнених , тому на технічні спеціальності , де потрібно думати , вступити було навіть в якомусь сенсі простіше, ніж на інші . Всі карти в руки майбутньому вченому !

Але чи була вона - велика наука?

Ось що з цього приводу у своїй книзі «За фасадом імперії» говорив Олександр Ніконов : З одного боку, все виглядало чудово . Число вчених в СРСР неухильно зростала. Студенти прагнули в науку, в аспірантуру були конкурси. З іншого боку , я сам працював в науці , і мені байки лудити про передову радянську науку не треба. Я не з чуток знаю про десятки нікому не потрібних НДІ , які готували нікому не потрібні проекти та звіти. Знаю про хронічне відставання нашої науки від науки західної. Знаю, що падіння рівня знань у випускників вузів, на яке зараз багато нарікають, почалося не вчора. Про науку в СРСР висловився і нобелівський лауреат з фізики Віталій Гінзбург : Не треба ідеалізувати радянську науку ! Дійсно, вона в деяких областях , типу фізики і математики, була на дуже високому рівні. Ну, це і зрозуміло : від фізики комуністам потрібна була бомба , тому й гроші були великі у фізиків . Пам'ятаю, коли американці вперше підірвали атомну бомбу , у мене зарплата відразу ж виросла рази в три. Але були в радянській науці області абсолютно провальні , найяскравіший приклад тому - біологія , кібернетика . Очевидно , що радянський підхід не спрацював. Намагалися взяти кількістю : вийди на радянську вулицю, кинь каменем - потрапиш в інженера. Намагалися взяти якістю - не вдалося. Навіть кидаючи всі ресурси на озброєння і науку, СРСР була не наздогнати Захід . Хоча, здавалося б , у той час у дітей, а потім - у студентів були всі карти на руках.

Чи буде воно - «велике IT » ?

Всі ці ініціативи батьків і державні програми рано чи пізно впираються в одну і ту ж проблему - людський фактор. Одного хлібом не годуй - дай покопатися в електроніці, іншого не чіпай , залиш у полотна, третього спокушай зарплатою програміста, а він , негідник , маючи всі козирі для переходу в IT, так і буде сидіти в НДІ, вирощуючи свої водорості, тому що йому це цікаво . Чи зможе масова популяризація програмування серед дітей підняти рівень їх розвитку та розширити кругозір ? 100%. Чи виросте з насіння соняшника помідор, якщо його посадити в парник , давати йому підручники з помідороведенію і доглядати за ним , як за помідором ? Може бути . Генна інженерія творить чудеса, та й людина відмінно вміє адаптуватися і підлаштовуватися. Інше питання , чи буде йому це приносити задоволення. Адже де немає винагороди у вигляді задоволення, там немає довгострокового прогресу. Так що спробувати дитини якщо і не навчити , то хоча б познайомити з програмуванням - благородна справа ( скупа сльоза ностальгії за «Енциклопедії професора Фортрана »). Ну, а далі все буде залежати від рівня демократії в сім'ї і бажань самої дитини. Що ж стосується насичення ринку IT , то тлумачних людей завжди було мало, тому перспективу втамувати кадровий голод в IT слід розглядати більше в площині збільшення кількості кодеров , які могли б виконувати прості і рутинні завдання , ніж в площині збільшення кількості реальних програмістів.

Опубліковано: 26/01/15 @ 11:27
Розділ Різне

Рекомендуємо:

6 лютого, Одеса - Ciklum Odessa Speakers Corner : « Зустрічайте SDET в Одесі! »
29 січня - Курс "Менеджмент в IT"
56-річний фізик - програміст: втекти з совка , виграти грант , стати американцем
27 січня - Курс "Менеджмент в IT"
PHP Дайджест # 2. тестування