Представитель Шуры Люберецкого в ЖЖ (brat_luber) wrote,
Представитель Шуры Люберецкого в ЖЖ
brat_luber

Categories:

Чтобы не пропало

Вот я тут в комментах у [info]mbr в очередной раз обосрал школьную информатику – но чтобы не пропало, вынесу сюда списочек “что должен знать интересующийся предметом старшеклассник”.

За “обязательный минимум” можно принять, скажем, COS 109 – курс Брайана Кернигана по “компьютерной грамотности” для студентов “нетехнических” специальностей в университете Принстона. Специально даю ссылку не на книгу (Understanding the Digital World), а на страничку курса – там есть довольно полезные “лабораторные работы” и наборы задач. В эти “лабораторные работы” входит, скажем, простой HTML, рисование фотожаб, работа с электронными таблицами, представление о программировании.

В этот минимум хорошо бы добавить еще умение пользоваться текстовым редактором и текстовым процессором (и понимание разницы между ними), какими-нибудь “мультимедийными” программами типа аудио- или видеоредакторов, 3D-редакторами, “переустановить винду” и вообще пользовательскую грамотность (не только применительно к ПК, но и для “мобильных устройств” с iOS или Android – как “перекинуть фоточки” и все такое).

Маленький дисклеймер – мне сейчас лениво искать образовательные стандарты и сравнивать их со своими представлениями о прекрасном – но скорее всего, “минимум” в моем представлении формально не покрывает даже “базовый” уровень (школьный курс информатики содержит немало странной фигни, почему-то считающейся обязательной), а следующая часть будет в отдельных случаях значительно перекрывать даже “профиль”.

Перейду теперь к “максимуму” – или “что должен знать юный программист”. По моему опыту, этот объем знаний вполне посилен интересующемуся школьнику, но намного превосходит то, что было бы разумно включить в школьную программу. В любом случае, от “начинающего программиста” хочется ожидать примерно следующего:

- знакомство с двумя-тремя (а может, и побольше) достаточно разными языками программирования; к примеру, я в старших классах, помимо стандартного школьного Паскаля, “пощупал” пару вариантов QBasic, Visual Basic, Delphi, C (и даже написал пару-тройку сравнительно больших программ под Windows), PHP (по статьям в журнале Ксакеп), пару “игрушечных” языков (из этой книжки) (RL – диалект Лиспа и “игру в схемы” – своеобразный HDL);
- к предыдущему пункту – знакомство, пусть даже поверхностное, на уровне “а это тоже можно программировать”, с парой разных “платформ” – скажем, можно пощупать “десктопные” приложения, браузерный Javascript, CGI-приложения, приложения для мобильников, прошивки микроконтроллеров;
- представление о различных алгоритмах и структурах данных – то есть все эти стандартные “сортировки пузырьком”, “красно-белые деревья” и все такое (к этому же пункту отнесу и “теоретическую информатику”, но возможно – в сильно урезанном даже по сравнению со школьной программой виде);
- представление о том, что такое реляционные базы данных, ER-модель, умение написать простой SQL-запрос;
- понимать, как работает современный веб – где выполняется Javascript, что такое веб-сервер, как работают CGI-приложения, как это все связано вместе;
- к предыдущему пункту – какие-то основы сетей – знать, что такое TCP, IP и еще куча буковок, уметь настроить WiFi-роутер и с помощью Wireshark подрезать чужой пароль;
- элементарные навыки работы/администрирования Unix-образных систем (”переустановить винду” относим к компьютерной грамотности) – поставить две ОС на одну машину, знать основные команды в терминале, уметь настроить веб-сервер, поставить Wordpress, вот это вот все;
- “практика с железом” – раньше я написал бы сюда “умение сделать нуль-модемный кабель для игры в Doom”, сейчас даже не знаю, что можно считать аналогичным – но что-то все равно надо;
- “как это все сломать” – условно говоря, основы хакинга – от SQL injection и cross-site scripting до использования ошибок типа переполнения буфера;
- знать полное собрание сочинений Дани Шеповалова.

Вот как-то так :)

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Subscribe

  • Про моторное масло

    Начитавшись блога Сергея Смирнова ( bmwservice), решил поменять моторное масло на какое-нибудь “ рекомендованное“. Выбрал из списка…

  • Про Яндекс, навигаторы и ралли

    Решил написать немного про летний “автоспортивный” сезон (это один из “ должков” в моем блоге) – и вспомнилась одна…

  • Видел московского стукачка

    Шел на днях по Люберцам, точнее – по “Городку Б” – той части города, которая непосредственно граничит с Москвой. Точное…

  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments