Какво не учат децата ни в час по ИТ — и защо трябва да го променим
Въведение: Гледната точка на един технически изпълнител
Работата на технически екип, който ежедневно внедрява съвременна ИТ инфраструктура — мрежово оборудване, сървъри, системи за видеонаблюдение, VPN решения, защитни стени — те неизбежно те среща с хора на различна възраст и с различно образование. Понякога това са зрели специалисти с дълъг стаж. Понякога са млади хора, току-що завършили средно или висше образование, с диплом по „Информационни технологии“ или „Компютърни системи“. И тъкмо при последните се забелязва нещо, което не може да бъде пренебрегнато: дълбока и системна пропаст между наименованието на специалността и реалните познания.
Тази статия не е обвинителен акт. Тя е опит за честен разговор — от позицията на хора, които работят с технологиите всеки ден, и които виждат какви знания липсват на младите специалисти, влизащи в бранша. Учителите не са виновни. Виновни са учебните програми. И докато не го кажем ясно, нищо няма да се промени.
Какво виждаме на практика
Когато посетим училище, техникум или малко предприятие, за да инсталираме мрежова инфраструктура, почти навсякъде картината е еднаква: редици компютри с Windows, пакетът Microsoft Office и антивирусна програма. Учебният час по „Информационни технологии“ означава: отваряш Word, пишеш писмо, форматираш текст, вмъкваш таблица в Excel, правиш презентация в PowerPoint. Края.
Нищо повече.
Когато попитаме млад завършил „какво е IP адрес“, отговорът нерядко е: „нещо като адрес в интернет“. Когато попитаме „какво е DNS“, срещаме погледи, сякаш сме задали въпрос на непознат език. Когато споменем думата „Linux“ — недоумение. Когато кажем „TCP/IP“ — тишина.
Това не е изолирано наблюдение. Това е закономерност, видяна в десетки градове и стотици разговори с млади хора, завършили средно образование или техникум с профил ИТ.
Грешната представа за света на ИКТ
Проблемът не е просто в пропуснатото знание. Проблемът е в изградената грешна представа за това какво представляват информационните и комуникационните технологии.
Когато единственото, което един ученик е виждал е Windows — той вярва, че Windows е „компютърът“. Не операционна система. Не един от многото варианти. А самият компютър. Когато единствената програма, с която е работил е Microsoft Word — той мисли, че ИТ специалистът е човекът, който знае повече Word функции.
Тази представа е не само непълна — тя е опасна за бъдещата реализация на тези млади хора.
Защото реалният свят на ИТ изглежда различно:
- Над 96% от сървърите в интернет работят под Linux или Unix-базирани операционни системи.
- Целият интернет — от DNS сървърите до BGP маршрутизацията — работи на протоколи и стандарти, за чието съществуване средностатистическият български ученик не е чувал.
- Всеки смартфон в джоба на тийнейджъра работи под Android — базиран на Linux ядро. Всеки Mac компютър работи под macOS — Unix-базирана система. Всеки сървър на Google, Facebook, Amazon, Netflix работи под Linux.
- Мрежовото оборудване на Cisco, Juniper, MikroTik, Ubiquiti — маршрутизатори, суичове, защитни стени — управлявано от командни интерфейси, за чиято концепция нашите ученици нямат никаква представа.
С други думи: учим децата си да работят с инструмент, който не заема по-голямата част от реалната ИТ екосистема, и им казваме, че това е всичко.
Какво би трябвало да знае един ученик с ИТ профил
Нека бъдем конкретни. Не говорим за университетски курсове. Говорим за базови познания, без които е невъзможно да разбереш как работи интернет и съвременните технологии.
1. Операционни системи — не само Windows
Учениците трябва да знаят, че съществуват различни операционни системи с различно предназначение:
- Linux — основата на интернет, сървъри, cloud инфраструктура, Android, умни устройства, индустриални системи. Дистрибуции като Ubuntu, Debian, CentOS са повсеместни в бизнеса.
- macOS — Unix-базирана система, широко използвана в дизайн, медия и разработка на софтуер.
- Windows Server — да, Microsoft има роля в корпоративния свят, но тя е само една от ролите, не единствената.
Базово запознаване с Linux командния ред — ls, cd, ping, traceroute, cat, grep — не е „програмиране за хакери“. Това е функционална грамотност в 21-ви век, равностойна на умението да четеш и пишеш.
2. Как работи интернет — от кликването до зареждането на страницата
Ето един въпрос, на който всеки ученик с ИТ профил трябва да може да отговори: Какво се случва от момента, в който напишеш „itservice-bg.net“ в браузъра до момента, в който страницата се зареди?
Отговорът е изключително поучителен и обхваща множество концепции:
- DNS резолюция — браузърът пита DNS сървъра: „Кой е IP адресът на itservice-bg.net?“ DNS (Domain Name System) е като телефонния указател на интернет. Без него никой не може да достигне до даден сайт по неговото име.
- TCP трипосочно ръкостискане (Three-way handshake) — след като е известен IP адресът, браузърът установява TCP връзка: изпраща SYN пакет, сървърът отговаря с SYN-ACK, браузърът потвърждава с ACK. Едва тогава е установена надеждна комуникация.
- TLS/SSL — ако сайтът е HTTPS (а всички сериозни сайтове са), се извършва криптографско договаряне — TLS Handshake — за осигуряване на шифрована връзка.
- HTTP заявка — браузърът изпраща HTTP GET заявка: „Дай ми съдържанието на началната страница“.
- Сървърна обработка — сървърът (Apache, Nginx или друг) получава заявката, обработва я — евентуално с PHP, Python, Node.js, бази данни — и връща HTML отговор.
- Рендиране — браузърът получава HTML, CSS, JavaScript и ги рендира като визуална страница.
Всяка от тези стъпки е тема за отделен урок. Всяка е разбираема дори за 14-годишен ученик с правилно поднесен материал. Нито една от тях не се преподава в средното образование.
3. Мрежови протоколи — основите, без които нищо не работи
Следният списък от протоколи и концепции не е „специализирано знание за мрежови инженери“. Това са основни механизми, върху които е изградена цялата съвременна дигитална комуникация:
- TCP (Transmission Control Protocol) — гарантирана, наредена доставка на данни. Използва се от HTTP, HTTPS, SMTP, FTP.
- UDP (User Datagram Protocol) — бърза, ненадеждна доставка без потвърждение. Използва се от DNS, DHCP, видеострийминг, онлайн игри.
- IP (Internet Protocol) — адресирането и маршрутизирането на пакети в мрежата. IPv4 и IPv6.
- DNS (Domain Name System) — превод на имена в IP адреси. Йерархична, разпределена система с root сървъри, TLD сървъри и authoritative сървъри.
- HTTP/HTTPS — протоколите за уеб комуникация. GET, POST, статус кодове (200, 301, 404, 500).
- DHCP — автоматично разпределение на IP адреси в мрежа.
- NTP (Network Time Protocol) — синхронизация на времето. Без точно време не работят SSL сертификати, логове, Kerberos автентикация.
- SNMP (Simple Network Management Protocol) — мониторинг и управление на мрежово оборудване.
- BGP (Border Gateway Protocol) — протоколът, по който интернет провайдърите „договарят“ маршрутите в глобалния интернет. Backbone-ът на цялата световна мрежа.
4. OSI моделът — архитектурата на комуникацията
OSI (Open Systems Interconnection) моделът е концептуалната рамка, без която невъзможно да разберат взаимодействието между мрежовите протоколи. Седемте слоя — Physical, Data Link, Network, Transport, Session, Presentation, Application — са учебна рамка, която позволява систематично мислене за мрежовите проблеми.
Когато казваме „проблемът е на Layer 2“ или „Layer 7 firewall“ — говорим на общ технически език, разбираем навсякъде по света. Нашите ученици никога не са чували тези думи.
5. Мрежово оборудване — не само „кутията с кабелите“
Cisco, Juniper, MikroTik, Ubiquiti, Huawei — тези имена са повсеместни в корпоративния ИТ свят. Рутери, суичове, защитни стени (firewall), точки за безжичен достъп (access points) — всичко това се конфигурира с команди, скриптове и конфигурационни файлове. Базовото разбиране за маршрутизация, VLAN-и, QoS, NAT е умение, което всеки технически специалист трябва да притежава.
6. Бази данни и програмиране — не само „Excel с повече редове“
MySQL, PostgreSQL, SQLite — релационните бази данни стоят зад всеки уебсайт, всяко приложение, всяка бизнес система. Базово разбиране на SQL (SELECT, INSERT, UPDATE, JOIN) е задължителна функционална грамотност в ИТ сектора.
Програмирането — дори на базово ниво, в Python, Bash или JavaScript — развива логическото и алгоритмичното мислене. Не за да станат всички разработчици, а за да разбират как мислят машините.
Защо учителите не са виновни
Важно е да бъдем честни: учителите по информатика и ИТ в България не са проблемът. Много от тях са компетентни, всеотдайни хора, които работят в условия на хронично недофинансиране, остаряло оборудване и твърди учебни програми, спускани отгоре.
Учителят преподава онова, което е в учебната програма. Учебната програма е написана от хора, много от които нямат досег до съвременната ИТ индустрия. Оттам идва разминаването.
Допълнително, системата за атестиране и кариерно развитие на учителите не ги стимулира да въвеждат иновации извън одобрената програма. Рискът е голям, а наградата — нулева. Трудно е да изискваш от учителя да учи деца на Linux, когато в учителската стая всеки компютър е с Windows и той самият никога не е работил с командния ред.
Проблемът е системен, не индивидуален.
Какво правят другите
Не е нужно да измисляме колелото. Достатъчно е да погледнем как подхождат страни с развит ИТ сектор:
- Естония — от 2012 г. програмирането е задължителна дисциплина от 1-ви клас. Страната е призната за световен лидер в дигиталното управление и киберсигурността.
- Финландия — интегрира изчислителното мислене (computational thinking) в общообразователната програма на всички нива.
- Великобритания — смени предмета „ICT“ (фокусиран върху офис приложения) с „Computing“ — програмиране, мрежи, алгоритми, кибербезопасност.
- Германия — техническите гимназии включват задължителни курсове по мрежови технологии, Linux администрация и бази данни.
- Израел — киберсигурността е национален приоритет и се въвежда в образованието от ранна възраст.
Всички тези страни са разбрали нещо просто: дигиталната грамотност на 21-ви век не е „умея да пиша в Word“. Тя е разбиране на принципите, върху които е изграден съвременният свят.
Конкретни предложения за промяна
Критиката без предложения е само оплакване. Затова предлагаме конкретни стъпки, реализируеми в рамките на съществуващата образователна система:
1. Ревизия на учебните програми с участие на индустрията
Министерството на образованието трябва да създаде постоянен механизъм за консултация с ИТ компании при разработване и актуализиране на учебните програми. Не веднъж на десет години, а системно. Бизнесът знае какви умения са нужни — нека бъде чут.
2. Въвеждане на Linux като втора задължителна операционна система
Linux е безплатен, надежден и повсеместен. Ubuntu Desktop е лесен за инсталиране и използване. Въвеждането му в учебния план не изисква допълнителен бюджет — изисква единствено политическа воля и обучение на учителите.
3. Базов курс по компютърни мрежи
Дори и само в 11-ти или 12-ти клас за профилираните паралелки: IP адресиране, OSI модел, DNS, HTTP, основи на маршрутизацията. Cisco предлага безплатни онлайн курсове чрез Cisco Networking Academy (NetAcad) — програма, достъпна за всяко училище с интернет.
4. Програмиране от 5-ти клас
Не е нужно да учат Java или C++. Python е четим, логичен и безплатен. Scratch е визуален и достъпен за деца. Алгоритмичното мислене — условия, цикли, функции — трябва да бъде обучено преди да са навършени 12 години.
5. Партньорства с ИТ компании за стажове и практики
Нищо не замества реалния опит. Ученик, прекарал дори две седмици в реална ИТ среда, разбира повече за как работи технологията отколкото след три години Word и Excel. Дуалното обучение работи — нека се разшири.
6. Актуализиране на хардуера и преминаване към open-source
Вместо да плаща скъпи лицензи за Microsoft Office, всяко учебно заведение може да инсталира LibreOffice (безплатен, съвместим), Linux и отворен код. Спестените средства могат да отидат за по-добър хардуер или за обучение на учители.
Послание към младите хора
Ако си ученик или студент, четящ тези редове, имаме важно послание: не се ограничавай от учебната програма.
Интернет е пълен с безплатни ресурси. Linux може да се инсталира безплатно. Python може да се научи безплатно. Cisco NetAcad предлага сертификационни курсове безплатно. YouTube, GitHub, StackOverflow, Linux man pages — това е безкрайна библиотека, отворена 24 часа.
Светът на ИТ е меритокрация: не те питат откъде си завършил, а какво можеш да направиш. Хората, които понастоящем управляват инфраструктурата на интернет, в по-голямата си част са самоуки. Любопитството и настойчивостта са по-ценни от всяка диплома.
Заключение: Имаме нужда от системна реформа
България не може да си позволи да изнася програмисти и внася ИТ специалисти. Не може да си позволи да влиза в дигиталната икономика с образователна система, проектирана за 1990-те. Не може да си позволи да продължава да учи децата само на Word и Excel, докато останалият свят учи своите деца на мрежи, сигурност, програмиране и системно мислене.
Промяната не е невъзможна. Тя е въпрос на приоритети.
Ние, като технически компании, сме готови да участваме — с лекции, стажове, учебни материали, консултации. Готови сме да седнем на масата и да кажем: „Ето какво трябва да знае един младеж, за да работи в нашата индустрия.“
Въпросът е: готова ли е системата да слуша?
— Екипът на АЙТИСЪРВИС