Вопросы, которые вы не узнали в школе/вузе, но стоило бы знать? (из сферы IT)

Как дополнение к вопросу уточняю.
Я веду кружок информатики и у меня есть 3-4 ученика которые точно идут на IT.
  • Вопрос задан
  • 5950 просмотров
Пригласить эксперта
Ответы на вопрос 9
Godless
@Godless
Очень много мыслей в голове… У меня есть тоже некоторый опыт преподавания (6 лет репетиторства, 1 год практики в вузе после выпуска). Я вынес оттуда примерно вот что:
  • В детей нужно закладывать максимум принципов, законов, идей. Факты тоже необходимы, однако (личное мнение) считаю именно «идею» самой важной, а только потом «факты»
  • Обязательно нужна практика. Сферические слова в вакууме не запоминаются. И чем больше практики, тем лучше.
  • Школьник/учащийся/студент — должен самостоятельно делать какие-то задания, придумывать себе их. САМ. Эффекты от «сделал сам» и «показали как сделать» представляете я думаю.
    По этому поводу, кстати, наш геометр говорил так (талантливый преподаватель, с десятилетиями опыта): «когда ребенок сам понял, или вывел какой-нить закон, факт, что угодно — он не забудет это никогда. Если ему рассказать про него — он это забудет сразу же после того как перестанет использовать.».
  • «Есть вещи, которые нужно пощупать самому помимо теории, так сказать ручками потрогать, а есть такие, что надо узнать как делать правильно и делать так.» — Прямо вот так и скажите =) к последним относятся всякие техники, модифицирующиеся со опытом поколений. Не нужно повторять старый опыт. О нем можно почитать в интернетах.

Про себя могу сказать, что мне очень помогала структурировать знания в ИТ и выдирать оттуда логику математика, особенно геометрия. Я знаю что в некоторых школах у нас по городу, скажем так, чуть-чуть опускают доказательства теорем. Потерянные в голове рассуждения и возможность выводить одно из другого нужно как-то восстанавливать. Про принципы — полезно рассказать, показать про «восходящее/нисходящее» программирование, плюсы минусы, MVC. В общих словах как использовать фреймворки, библиотеки. примеры, задачи можно даже сделать на какой-нить библиотеке. Нужно знать разные алгоритмы, не обязательно уметь реализовывать сложные. Важно, чтоб они понимали что такие уже придуманы и наверняка где-то в сети есть реализация… Просто необходимо знать как хранятся данные в памяти. Да, вот прямо так вот побайтово понимали что как и где. «Младший байт по младшему адресу» и т.п. Про виртуализацию, как целиком ОС, так и устройство Java машины и других… естественно в общих чертах. Безопасность. Как распространяются вирусы, что где как и почему, что такое уязвимости и т.п. (не забыть упомянуть про УК РФ) Многие боятся этого слова, но… Ассемблер! я начал в 10м классе. считаю абсолютно свободно его можно давать на таких курсах. пусть даже азы. желательно под винду конечно же… хотя DOS программы чисто для ознакомления скомпилить можно тоже. Я даже не могу передать как он мне помогал потом учить C++.

ну… всему не обучишь… я думаю вы выберете то что вам больше подходит…

ЗЫ: почитал что получилось… Несколько сумбурно. Просто вспомнил себя в школьные годы, так не хватало человека, который бы помогал бы мне учиться быстрее, делился своим опытом, чтобы я не повторял его ошибок… видимо хочу в этих школьников, осознанно идущих на ИТ, втолкать больше чем было во мне =)
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Вообще я бы хотел в университете еще узнать о такой штуке как функциональное программирование. Для школы может рановато-то, а вот универ — самое то. Ибо на данный момент по большей части преподают только императивные. Даже с ООП функциональный подход годится. В конце концов внутри методов то функциональное программирование используется.

Вобщем, суть в том, что бы показать что для решения одной задачи можно использовать координатно другой способ.
Ответ написан
silvansky
@silvansky
Мне в университетском курсе сильно не хватало базовых структур данных и алгоритмов. А так же тонкостей хотя бы какого-нибудь ЯП, а не только «присвоение-условие-цикл-функция». Смешно, но нам даже про указателя вскользь рассказывали.
Ответ написан
Комментировать
Boleg2
@Boleg2
Сразу пришло в голову то, что в своё время узнал лишь после школы, а хотелось бы познавать основы на уроках:
— IPv4 адресация и маски;
— понятие «портов» у каждой машины в сети, зачем и что с этим можно делать;
— области применения и профит от виртуальных машин, в общих словах;
— плюсы и принципы ООП, в общих словах;

Вообще мысль такова, что имеет смысл давать ученикам некую мета-информацию, зачастую из личного опыта/знаний, дабы заинтересовать и показать, что далеко не всё «слишком сложно» и ограничивается теорией в толстенных книжках =)
Ответ написан
@vm916
Я считаю, что вообще с 10-11класса, после проф.ориентации, необходимо давать изучать CCNA Exploration (первую и вторую части курса). Жаль, я поздно узнал что существуют подобные курсы. Отличие от обычной книжки по сетевым технологиям огромное. На виртуальных лабораторных работах можно понять как это работает, начиная с самых азов.
Люди же делятся на:
визуалов
аудиалов
кинестетитков
Некоторым достаточно 1 раза услышать, другим же необходимо обязательно «потрогать».
Ответ написан
Комментировать
Wott
@Wott
IT -шнику надо в первую очередь учиться самому находить информацию.
А в школе и на первых курсах мне остро не хватало интернета, потому что он тогда был текстовый :) и поисковиков не было даже в планах.
Ответ написан
Комментировать
Являюсь студентом 5 курса и хотел бы сказать, что сейчас нормальным IT-шником можно стать только при полном самообучении. Нам в лучшем случае давали только 2 дисциплины нормально (просто повезло с преподавателями), остальные дисциплины читали «преподаватели», которых лично я не считаю таковыми.
Ответ написан
Комментировать
bogolt
@bogolt
На мой взгляд многих отталкивает от программирование его безликое преподавание, задачи в стиле: «сортировка массива, умножение матриц»… Задания должны быть в первую очередь наглядными, создающими нечто реальное.
Лично я до третьего курса не верил что смогу стать программистом оттого что мы занимались подобными хоть и полезными но совершенно непрактичными, далекими от жизни вещами.
Если бы задачи были в стиле «Написать простейший http сервер, файловый менеджер, игру… » обучение стало бы более полезным. Ведь в контексте любой программы можно объяснить практически любые принципы программирования, но зато сам факт написания чего-то большого, а главное полезного заставляет взглянуть на свою работу совсем иначе, и куда лучше оценить свои реальные умения.
Ответ написан
На нынешних уроках информатики, я бы после общих принципов работы компа давал бы общие принципы работы сетей вообще и www (http) в частности, чтобы было базовое понимание, что такое адрес, порт, протокол, прокси, нат, белый, серый, чёрный IP, днс и т. п. В общем чтобы понимали процессы происходящие при наборе адреса в адресной строке браузера (и знали, что это такое вообще).

На кружке бы на http более сильно заострился, вплоть до разработки простейших http серверов на чём-то вроде node.js, скрывая детали типа сокетов, но раскрывая процесс работы по http вплоть до «ручного» разбора запросов и формирования ответов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы