Русский
Русский
English
Статистика
Реклама

Преподавание

Информационная безопасность как предмет история преподавателя GeekBrains

20.10.2020 18:21:10 | Автор: admin

Привет, Хабр. Меня зовут Владимир Душкевич, я специалист по информационной безопасности, преподаватель факультета Информационная безопасность. Несколько лет назад я присоединился к команде GeekBrains и хочу рассказать об этом. В конце статьи будет небольшой анонс для тех читателей, кто тоже хотел бы стать частью нашей команды. Но это потом, а сначала моя история.

Все началось в 2018 г. тогда я впервые услышал о GeekBrains. И, решив подтянуть навыки программирования, устроился на курсы. Тогда же узнал, что компания ищет преподавателя по информационной безопасности, и меня это заинтересовало. В то время я уже преподавал в Архангельском колледже телекоммуникаций (АКТ (ф) СПбГУТ) и карьера преподавателя в офлайне меня вполне устраивала. Но было интересно узнать, как все происходит, когда преподаешь по удаленке.

Немного о себе


Вуз я закончил еще в 2008 г. по специальности Физика с дополнительной специальностью Информатика в Поморском Государственном университете им. М.В. Ломоносова. Потом неоднократно получал дополнительное образование: в сфере информационной безопасности, Linux, сетевых и web-технологий. Профессионалу постоянно нужно учиться, чтобы знания и опыт не устарели я это хорошо понимал и понимаю. В IT по-другому просто нельзя. К примеру, нельзя быть специалистом по защите информации без знания настройки антивирусной сети, поэтому последним сертификатом, который я получил, стал сертификат компании DrWeb по администрированию DrWeb Enterprise Security Suite v.11. С другой стороны, бывает полезно взглянуть на безопасность со стороны злоумышленника, поэтому пришлось изучать техники, используемые в сетевых атаках. В частности, иногда приходится изучать подозрительные файлы, поэтому без знания техник не обойтись.


Среда для динамического анализа вредоносного ПО.

К сожалению, курсы по программированию, которые я решил пройти в GeekBrains, закончить не удалось, поскольку преподавательская работа в колледже отнимала массу времени. У нас как раз проходила аккредитация специальности 10.02.02 Информационная безопасность телекоммуникационных систем, и мне пришлось составлять большое количество документов. То есть бюрократическая работа просто не оставила времени на учебу.

Теперь о том, как я попал в GeekBrains. В мае 2018 г. на портале hh.ru увидел вакансию преподавателя по информационной безопасности с дистанционным форматом работы. Захотелось попробовать себя в новом деле, и я решил откликнуться на вакансию. Со мной связался методист, сообщил, что нужно провести пробную трансляцию на YouTube с небольшим уроком. Я провел ее успешно, после чего меня пригласили преподавать.

Моя работа в GeekBrains


Сейчас я читаю два курса: безопасность серверной и клиентской части web-приложений. Первый курс посвящен общим вопросам информационной безопасности и ряду уязвимостей серверной части web-приложений. В частности, рассматриваются:

  • методологии поиска уязвимостей;
  • pentest и Bug Bounty;
  • разведка;
  • разведка 2.0;
  • security misconfiguration;
  • inclusion;
  • remote code execution;
  • non-RCE vulnerabilities.

На втором курсе рассматриваем уязвимости клиентской части и возможные способы защиты. Это интерактивный курс, на котором мы изучаем:

  • что такое XSS;
  • контексты XSS;
  • классификацию XSS;
  • эксплуатацию XSS;
  • обход WAF;
  • CSRF;
  • content security policy;
  • прочие уязвимости на клиенте.

Достоинства онлайн-преподавания


Мне очень нравится работать удаленно. Кроме того, учебный процесс стал гораздо активнее, поскольку я стараюсь разбирать больше практического материала.

Например, мы рассматриваем на практике сценарии поиска уязвимостей OWASP Top 10, чего часто не хватает в образовательных учреждениях.


Уязвимая среда Owasp Mutillidae используется на курсах для демонстрации уязвимостей.

На малое количество практики в колледжах и вузах жалуются как студенты, так и преподаватели. Я работал в колледже девять лет, поэтому знаю, о чем говорю.

Для преподавателя удаленная работа хороша еще и тем, что здесь минимум бюрократии. В вузе или колледже постоянно приходится заполнять какие-то документы, готовить бумажные методические пособия, отчеты и т.п. Плюс в обычной ситуации преподаватель может использовать лишь узкий спектр методов работы. На удаленке все не так: здесь нет бюрократии, методы и средства решения задач выбирает сам преподаватель (в соответствии с концепцией курсов, конечно).

Например, на курсе мы используем Kali Linux (и утилиты из ее состава), а на моей предыдущей работе к использованию этой операционной системы относились скорее отрицательно.


Сканер Nikto используется у нас на курсах для поиска уязвимостей.

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

Я описываю не только положительный опыт, но и проблемы, которые могут возникнуть в работе специалиста по компьютерной безопасности. Например, эффект от использования некоторых утилит очень сильно зависит от настроек системы. Если чего-то не хватает, то привычный инструмент работать не будет. Об этом нужно рассказывать, демонстрируя все на практике. К примеру, можно заблокировать использование многих нежелательных утилит для анализа сервера и поиска информации на нем. Идея заключается в том, что у многих утилит значение поляUser_Agent является уникальным. Один из методов блокировки через файл .htaccess при наличии установленного и активированного модуля mod_rewrite. Содержимое файла будет таким (на примере Apache 2):

RewriteEngine onRewriteCond %{HTTP_USER_AGENT} curl [NC,OR]RewriteCond %{HTTP_USER_AGENT} ^$ [NC,OR]RewriteCond %{HTTP_USER_AGENT} ^Acunetix [NC]RewriteRule ^.* - [F,L]

Где:

  • curl означает, что слово curl должно встречаться в поле User_Agent;
  • ^ означает начало строки, то есть ^Acunetix строка, которая начинается на Acunetix;
  • ^$ означает пустоту;
  • RewriteRule ^.* [F,L] страница 403 (Forbidden, опция [F]); она возвращается, если выполняется хотя бы одно из условий.

В итоге запрос, содержащий User_Agent утилиты curl, будет заблокирован:


Заблокированный запрос утилиты curl.

Что получает выпускник курса по информационной безопасности?


Если говорить обо всем курсе, то по завершении обучения студент получает:

  • навыки работы с операционной системой Linux, азы программирования на Python и знание основных компонентов, из которых состоит web: URL, HTTP, HTML, JavaScript, Same Origin Policy и т.д.;
  • навыки поиска уязвимостей в клиентской части web-приложений, эксплуатации клиентских уязвимостей, знание способов защиты, понимание принципов работы основных web-протоколов и механизмов защиты браузера;
  • навыки поиска server-side-уязвимостей и понимание особенностей Bug Bounty, что позволит зарабатывать деньги с помощью Bug Bounty;
  • навыки использования проводных и беспроводных сетей, понимание их устройства, знание способов обеспечения безопасности в сетях и умение тестировать параметры их безопасности;
  • навыки обратного инжиниринга приложений, поиска и эксплуатации бинарных уязвимостей, знание основ криптографических протоколов.

Что касается направлений, которые я веду в рамках курса, то студенты:

  • учатся находить уязвимости в клиентской и серверной части web-приложений;
  • тестируют и проверяют различные уязвимости;
  • выбирают механизмы защиты и составляют рекомендации по их внедрению;
  • изучают виртуальный патчинг уязвимостей web-приложений, позволяющий настроить хорошую защиту от ряда известных опасных атак;
  • рассматривают причины, которые приводят к возникновению уязвимостей, и признаки, позволяющие обнаружить проблему;
  • изучают методы, использующиеся при сборе информации о web-приложении, что позволяет эффективнее тестировать найденные уязвимости или планировать защиту, закрывая уязвимую среду от злоумышленника.

В качестве заключения


Достоинств у онлайн-преподавания много, наверное, даже больше, чем при работе в вузе или колледже. По крайней мере, если говорить о моем опыте работы.

А теперь тот самый анонс. Если хотите присоединиться к команде GeekBrains, то сейчас есть хорошая возможность: компания ищет новых преподавателей, авторов и ревьюеров, от backend-разработчиков до data scientist, от тестировщиков до специалистов по информационной безопасности. Все это можно совмещать с основной работой. Узнать подробнее, а также подать заявку, если предложение вас заинтересовало, можно по этой ссылке.
Подробнее..

SRFI-213 Поддержка курса SICP. Обсудим?

05.11.2020 14:15:50 | Автор: admin

TL;DR: Я написал и выложил на всеобщее обсуждение Scheme Request for Implementation 216. Он нацелен на то, чтобы одна из самых известных в мире учебных программ по Computer Science, Structure and Interpretation of Computer Programs, стала выполнимой в полном объёме не только на MIT/GNU Scheme, но и на других интерпретаторах и компиляторах, в частности, на вашем любимом. И если раньше запрос в багтрекер "сделайте, пожалуйста, поддержку SICP" звучал бы расплывчато, то после принятия данного SRFI, поддержка SICP должна стать намного более общепринятой.

Чтобы написать этот документ, я проработал SICP целиком (что потребовало более 700 рабочих часов и заслуживает отдельного поста), выделил части, до сих пор не вошедшие в стандарт, и сформулировал их в качестве двух документов, SRFI-203 (принят в сентябе 2020), и данного, SRFI-216, к которому я и приглашаю всех присоединиться.

За техническими деталями и подробностями, прошу под кат.

Что такое "Структура и Интерпретация Компьютерных Программ"? (Structure and Interpretation of Computer Programs)

Это одна из самых известных учебных программ по "общему программированию", ранее преподаваемая в Массачусеттском Технологическом Институте (MIT), в качестве вступительной, а ныне перенесённая на старшие курсы из-за гигантского объёма и глубины, которая, как считается более программисту не требуется. Курс проводит студента от однострочной программы, которая складывает два числа, до написания собственной реализации Scheme, включающей компилятор и интерпретатор. Первое издание книги, в которой изложена программа, было выпущено в 80е годы, второе вышло в 1996 году. В книге более 350 задач. Существует русский перевод. Книга была одной из первых, к которым стал прилагаться веб-сайт. (Который работает до сих пор.)

Чем она хороша?

Эта программа, как будто бы, ставит перед собой две цели. Одна -- это построить мостик через пропасть абстракции, зияющую между "вычислениями на базовых вычислительных элементах", таких, как сумматор и ячейка памяти, и высокоуровневыми абстракциями вида "если слово отсутствует в словаре, подчеркни его красным". Вторая -- это познакомить программиста с наиболее важными программными архитектурами, разработанных инженерами за много лет.

Чем она не устраивает сейчас?

За исключением двух программных систем, (MIT/GNU Scheme и Racket, из которых только одна (MIT) является Scheme-системой в полном смысле этого слова) SICP непроходима на большинстве Схем, которые встречаются в живой природе. Представьте, что книжка, "Язык Си" позволяла бы вам выучить только Intel C.

Вернее, для человека, который умудрился пройти в SICP достаточно далеко, слово "непроходима" является скорее вызовом, чем препятствием, однако задачи, требующие отсутствующего функционала, встречаются в программе раньше, чем приходит ощущение всемогущества.

Зачем проходить SICP на других Scheme-системах?

Одно из главных достоинств SICP -- это то, что он рассказывает, как построить "систему искусственного интеллекта" (в данном случае под ней понимается язык программирования высокого уровня) на практически любом Тьюринг-полном субстрате. Но тем более обидно осознавать, что проработать её в полной мере можно исключительно на двух программных системах, одна из которых не поддерживает Windows (MIT, по крайней мере, официально), а вторая вообще заявляет, что не является Scheme.

К тому же, основная сила Scheme в наши дни -- это не сила языка общего назначения ( программы общего назначения тоже получаются отличные, а компания Cisco до сих пор поддерживает собственный оптимизирующий интерпретатор), а возможность встраивания его как языка расширения в практически любой программный продукт, написанный на любом языке. Есть Схемы, работающие на JVM, CLR, Fortran, JavaScript. Схема является языком написания расширений расширения таких проектов как GNU Debugger, GNU GIMP и GNU Guix.

Для заинтересовавшегося программиста логичнее осваивать SICP на той Scheme, которая лучше всего встраивается в ту инфраструктуру, к которой он привык.

На реализацию этой цели и направлен данный SRFI.

Что же делать?

Поскольку автор сих строк всё-таки приобрёл (ложное) ощущение всемогущества, он решил поставить пару бетонных опор для того мостика, о котором говорилось несколькими абзацами выше. Конкретно это выразилось в написании документа Scheme Request For Implementation, под номером 216, в котором собран список требований, которым должен удовлетворять интерпретатор Scheme для того, чтобы на нём запускался полный набор примеров программного кода из SICP.

Конечно, сам факт наличия документа ещё ничего не гарантирует, необходимо, чтобы функционал был реализован в программных системах, однако документ сопровождается "возможной реализацией", которая работает как минимум на одной программной системе, отсутствующей в списке выше (Chibi-Scheme).

Что входит в SRFI-216?

Функционал, требуемый для прохождение SICP, но не общепринятый.

Случайные числа.

Предлагается функция (random x), которая генерирует случайное целое число меньше заданного. В связи с тем, что Схема спроектированна так, чтобы работать в том числе на CPU, не имеющих ни доступа к часам, ни источника энтропии, средства для работы со случайными числами не входят в стандарт R7RS-small. (Но будут входить в -large, вероятно.)

Доступ к дате и времени.

Предлагается функция (runtime), возвращающая значение текущего времени. По причинам, эквивалентным указанным выше, функционал для работы с датой также не входила в базовый стандарт в течение долгого времени, а когда был принят, имена функций не совпадали с таковыми из 1996 года.

Булевы значения.

В связи с тем, что Схема очень старый язык, работа с логическими выражениями была в разных реализациях осуществлена по-разному. Например, в каких-то реализациях символ #f, существует, а в каких-то нет. Также, во некоторых системах, по традиции LISP, пустой список также является "ложным" значением.

Для большей абстракции, таким образом, SICP нигде не использует ложное выражение само по себе, а пользуется переменными/константами true и false, которые гарантированно имеют, соответственно, верное значение, и ложное значение.

Эти две константы также реализуются в данном документе.

Многопоточное программирование.

Вопрос многопоточного программирования был крайне популярен в те годы, когда выпускался из института (десять лет назад), и хотя некоторый прогресс заметен, до сих пор нельзя сказать, что какая-то конкретная модель мультитрединга победила все остальные.

Тем не менее, у любой многопоточной модели есть два базовых компонента, без которых она не может существовать: параллельное выполнение задач и упорядочивание входа в критические места.

SICP, соответственно, требует существование двух примитивов, parallel-execute и test-and-set!, которые ровно эти две концепции и призваны прояснить.

Сама же по себе многопоточная модель Scheme сходна с таковой в Java.

Streams.

"Стримы" -- это бесконечные структуры данных, схожие с генераторами/итераторами в языке Python (или использовавшимся ранее xrange), только несравнимо более гибкие.

В принципе, они реализуемы в текущем стандарте, и не должны бы попадать в данный документ, однако, реализация базового примитива cons-stream, не может быть функцией, потому что не вычисляет свой второй аргумент. Про встроенные механизмы же синтаксического расширения SICP не говорит ничего.

Соответственно, эта структура также реализуется в данном proposal.

Что насчёт графики?

Работа с графикой не затрагивается в данном документе. Возможные примитивы опубликованы в SRFI-203.

Чем я могу помочь?

Во-первых, существование качественных стандартов невозможно без изучения их большим количеством людей. Очень нужны ревью предложения и кода.

Если у вас уже есть любимая реализация Scheme, поинтересуйтесь у людей, которые за неё отвечают, возможна ли реализация данного стандарта в вашей любимой системе.

Расскажите своим друзьям, студентам и энтузиастам, о том, что учиться по SICP не обязательно должно быть процессом, полным боли.

Если вы преподаёте программирование, или функциональное программирование, или у вас есть знакомые преподаватели, предложите им взглянуть на предлагаемое расширение, их фидбек будет в высшей степени ценным.

Ну, и надо сказать, что я просто считаю Схему отличным языком. Пользуйтесь Схемой, это можно делать на громадном количестве платформ, включая Plan9, Android, WebAssembly, и встраивать в другие программы.

Как именно можно присоединиться к обсуждению, можно найти по ссылке: https://srfi.schemers.org/srfi-216/

Контакты

Если вам показался этот пост полезным, на мои заметки можно подписаться, или задонатить без подписки:

Подробнее..

Зачем IT-специалисты преподают на курсах и к чему готовиться, если решил стать спикером

12.02.2021 16:06:23 | Автор: admin

Зачем и как становятся преподавателями в IT, какие спикерам курсов нужны компетенции, как совмещать преподавание и работу, должен ли преподаватель быть шоуменом, обо всём этом рассказывает в интервью Ольга Скобина, методист Слёрма.

Спикеры наших курсов тоже поделились своими мыслями о пути к преподаванию и мотивации.

Ольга Скобина на интенсиве Слёрм DevOpsОльга Скобина на интенсиве Слёрм DevOps

Что нужно, чтобы преподавать в IT? Какие понадобятся компетенции?

Насколько я понимаю, сейчас в России высшее образование не даёт представления о том, что в IT-сфере нужно будет делать на работе. Получается, многие айтишники отучатся, потом устраиваются на работу и там учатся заново, узнают о новых технологиях и решениях. Вот поэтому, мне кажется, сейчас есть большой спрос на опытных IT-спецов, у которых есть чем делиться. В качестве преподавателей востребованы специалисты с хорошим запасом собственных кейсов и интересных практик.

Есть документация, доступная всем, а есть жизнь. Документация это как карта, а жизнь это как пойти в путешествие по этой карте. Задача преподавателя быть своего рода гидом в таком путешествии. Сказать студентам, где нужно сделать привал, где будет тяжело, если положить в рюкзак слишком много вещей и т. д. То есть главное делиться своим практическим опытом.

И второй момент, хотя он достаточно спорный: нужно любить преподавать, любить людей и вообще хотеть делиться знаниями.

Если вы часто отвечаете на вопросы коллег, и они продолжают ходить к вам с вопросами, задумайтесь может быть в вас спит отличный преподаватель. Ну если, конечно, у коллег есть альтернатива у кого бы ещё спросить :)

Виктор Попов, спикер интенсива по Docker

Получается, преподаватель обязательно должен любить общаться и взаимодействовать с людьми?

Конечно, это классно, когда спикер любит общаться с людьми и с интересом к ним относится. Потому что если ты к ним относишься с интересом, то и они к тебе с интересом. Так и учиться проще.

В целом в IT способность учить других людей это очень востребованный скилл. Даже если сейчас вы не задумываетесь о преподавании, может возникнуть ситуация, когда коллегам понадобится ментор, стажёрам наставник, нужно кого-то обучить внутри компании. И тогда навыки коммуникации и преподавания очевидный плюс.

Но, с другой стороны, в современном мире, мне кажется, успешны те люди, которые могут научиться в любой ситуации. То есть если студент осознанный, если он понимает, зачем он идёт на мероприятие, то он почерпнёт знания, даже если преподаватель не очень интересно рассказывает. У таких студентов преимущество, они быстрее развиваются, быстрее учатся и растут профессионально.

Поэтому, конечно, можно говорить, что препод должен любить студентов, разные методы применять, развлекать. Но я, если честно, считаю что ключевое это контент, а всё остальное приятности.

Почему опытные специалисты хотят преподавать? Откуда берётся мотивация?

Во-первых, это момент самореализации. У меня такое ощущение, что однажды любой профессионал приходит к чему-то более масштабному. У него появляется потребность в миссии. Преподавание это крутая миссия. Ты можешь способствовать профессиональному росту многих людей, тем самым повышать качество IT-индустрии в целом.

Мне нравится видеть результат моего преподавания. Я получаю кайф, когда люди понимают то,что я объясняю, задают классные вопросы, могут применять то, про что я рассказывал. Это позволяет понять, что я делаю полезные вещи. Что люди после моего курса повысили свой профессионализм, что они смогут решать более сложные задачи, что в итоге их жизнь может измениться к лучшему.

Марсель Ибраев, спикер курсов по k8s

Во-вторых, это возможность получить новый опыт, развить новые скиллы. Бывает так, что на работе засиделся в своей должности, хочется попробовать что-то новенькое.

Марсель Ибраев на интенсиве Слёрм DevOpsМарсель Ибраев на интенсиве Слёрм DevOps

Когда мы учим других, мы делимся и получаем много энергии.

Ещё одна причина возможность учиться самому, систематизировать знания. Когда готовишься, начинаешь выстраивать свой опыт, что-то дополнительное читать, что-то исследовать, углубляться. Вообще, когда есть задача кому-то что-то объяснить, то лучше сам свой опыт осознаёшь.

Это позволяет лучше разобраться в каких-то вещах, структурировать знания. Когда изучаешь для себя, часто удовлетворяешься тем, что нужно для задачи. А тут думаешь: А если студент спросит почему ХХХ? что я ему отвечу? И копаешь дальше.

Виктор Попов, спикер интенсива по Docker

У нас в Слёрме практически все курсы делаются командой спикеров.Так появляется возможность самому узнать что-то новое от коллег из других компаний.

Какой опыт должен быть за спиной, чтобы можно было учить других? Сколько лет? Проектов?

Здесь я не буду называть какие-то конкретные цифры, не буду говорить,сколько лет или проектов нужно. В целом можно на какое-то внутреннее ощущение ориентироваться, когда человек чувствует, что ему есть, чем поделиться, что он уже накопил опыт и готов передать его другим.

У нас есть базовый курсы и продвинутые, для опытных специалистов. От сложности курса и от аудитории тоже зависит, какой опыт должен быть у преподавателя. Очень опытные преподаватели-гуру могут провести любой курс, но темы для новичков им будет скучно объяснять. К тому же их навыки уже настолько автоматизировались, что это даже иногда мешает донести простые вещи студентам.

Для базовых курсов отличный вариант, когда преподаватель имеет уже свой опыт в несколько проектов, но ещё помнит, как быть новичком. С одной стороны, он уже говорит, опираясь на свою практику, а с другой стороны, понятно раскладывает для начинающих.

Про хард скиллс вроде всё понятно. А какие софт скиллы точно понадобятся, чтобы начать преподавать?

На мой взгляд, самое важное это проектировочные скиллы. Когда проектируешь образовательное мероприятие, важно подумать про учебный результат. С чем наши студенты выйдут с курса, чему они научатся.

Тогда проще понять, какой контент и какая практика нужны. Важно же не весь свой опыт вылить на головы людей и все свои знания, а действительно чётко понять, что дать, чего не давать, где будет уже перебор. Уметь построить логику курса и ввести по этой логике.

Вот как раз наша работа с преподавателями, методическая работа, помогает спроектировать курс. Мы делаем прогоны уроков или пересматриваем видеозаписи и задаём спикеру этот вопрос: вот вы сейчас это рассказываете, а давайте вспомним, зачем это мы.

Для того чтобы проводить качественное обучение, мало быть экспертом в своей области. Нужно научится доходчиво объяснять сложные вещи простыми словами. Нужно понимать, как строить программу обучения, в какой момент и про что рассказать. Для меня всё это в своё время было открытием и целой новой наукой.

Марсель Ибраев, спикер курсов по k8s

Ещё часто говорят про ораторское искусство, но я не считаю, что это очень важно. Нужно просто уметь объяснить простым человеческим языком, потому что многие уходят в такой профессионализм Может быть, из-за того, что чувствуют себя неуверенно. Начинают очень много терминов использовать, так студенты могут вообще ничего не понять, если ещё не в теме. Там, где можно не усложнять, лучше не усложнять человеку и так тяжело учиться.

Один из важных аспектов преподавания для меня это развитие софт скиллс. Так или иначе, тебе приходится уделять внимание тому, как ты говоришь, как ты формулируешь. Приходится и фантазию развивать, и говорить просто о сложном, и много раз повторять одно и то же. И, хочешь или не хочешь, приходится взаимодействовать с теми, кто пришёл учиться. А эти умения сейчас становятся не менее важными, чем технические знания и умения. Сейчас важна командная работа, а если ты не умеешь объяснять, не умеешь формулировать свои мысли, то ты плохой командный игрок. И, по моим наблюдениям, всё чаще компании делают выбор в пользу кандидатов с сильными софт скиллами.

Владимир Гурьянов, спикер видеокурса по мониторингу и логированию в k8s

Вот ты говоришь красноречие не так важно. А как тогда удерживать внимание, как зацепить студентов?

Все спикеры разные. Кто-то шутит классно, кто-то,наоборот, серьёзный и это хорошо. Я всегда учу чувствовать себя, чувствовать свою сильную сторону, свою уникальность и на ней уже строить выступления. Не надо пытаться играть какую-то роль, всё равно не получится это делать долго.

Удерживать внимание помогает не только яркая речь. Есть много приёмов. Можно в презентацию картинки прикольные вставлять, можно формулировать классные вопросы для аудитории и вести диалог. Можно истории из жизни рассказывать или интересные метафоры подбирать.

Это такое искусство найти приёмы, которые легко тебе использовать. Не нужно заниматься насилием над собой и перестраиваться в кого-то непонятного. Гораздо проще и приятнее понять, что получается использовать, и на этом строить манеру преподавания.

Для преподавателя так важна практика, но как совместить преподавание и основную работу?

Это, наверное, самый сложный и тяжёлый вопрос. Преподавание своего рода инвестиции. Когда человек четко понимает, зачем он идет преподавать, он находит время. И мне кажется, здесь важно найти какой-то свой определённый драйв.

Вообще, нужно чётко себе отдавать отчёт, что это дополнительная нагрузка. Но она приносит всё то, что мы выше перечисляли. Очень многое построено на самоорганизации. Так что преподавание это про осознанный выбор. Если человек думал, что сможет все совмещать легко и непринужденно, может, конечно, внутри возникнуть диссонанс. Здесь, оказывается, работать надо.

Получается, что кто-то на выходных работает, кто-то в нерабочее время. Нужно для себя спланировать изначально, что энное количество часов будет уходить на преподавание.

Я из тех, кто считает, что у (очень) хороших инженеров есть активность на Гитхабе, статьи на Медиуме или Хабре, выступления на митапах и конференциях и прочее. Поэтому, если есть время и возможность, я стараюсь заниматься факультативными активностями. Это и продвижение личного бренда, и способ получить опыт совершенноиного толка, чем на основной работе. Конкретно преподавание ещё и способ самому более глубоко изучить тему.

Тимофей Ларкин, спикер видеокурса по CI/CD

Это можно сравнить с собственным обучением, когда мы, например, на какой-нибудь дополнительный курс записываемся, мы же понимаем, что он стоит дополнительного времени. И когда кто-то покупает курс, но это дополнительное время не закладывает, он просто перестаёт ходить, бросает, потому что другие дела отвлекали. А если человек спланировал и понял, что для него это важно, он выделит дополнительные три часа в неделю и пройдёт курс до конца.

Ещё хорошо помогает организоваться и выделить время работа в команде, с методистом, продактом курса и другими спикерами. У нас есть еженедельные синки, прогоны, репетиции. Всё это помогает понять, что ты не один где-то в вакууме создаёшь абстрактный курс, понять, какая цель, какой сейчас прогресс. Это такой поддерживающим механизм.

Сейчас есть много новых образовательных методик, например, эдьютеймент обучение как развлечение. Пробуете ли вы в Слёрме новые подходы?

По-моему, сейчас некоторые айтишники немного уходят в шоументсво. Это и необычные костюмы, и яркие розовые сайты... Я не против такого контента. Но мы не идём в эдьютеймент, мы хардовые.

Всегда надо сначала понять, какая у нас цель, а потом понять, какая под эту цель нужна форма. Если к нам приходят серьёзные спецы учиться, их развлекательный компонент будет скорее раздражать. А для начинающих это круто. Важно не идти за трендами, а понимать, что нужно для конкретного мероприятия и аудитории.

Мы создаем определённую приятную атмосферу, где безопасно учиться. Для насэто главное в современном образовании. А ещё нам нравится строить обучение на осмыслении полученного опыта.

На обучении через осмысление опыта построены и наши интенсивы по SRE и service mesh, там максимум кейсов и практики, через которые студенты проходят. Так проще актуализировать знания и получить новые.

Подробнее..

Что не так с современным преподаванием информатики

28.05.2021 18:18:56 | Автор: admin

Привет, Хабр! Меня зовут Анна Агабекян, я ментор и автор курсов по направлениям "Тестировщик-автоматизатор на Python" (QAP-тестирование) и Fullstack-разработчик на JavaScript в SkillFactory, а также преподаю физику и информатику в лицее. Параллельно с преподаванием я веду научную работу, посвящённую проблемам образования, и на её основе решила сделать статью для Хабра, так как, на мой взгляд, проблема качественного образования в области информатики и IT сейчас стоит очень остро, но остаётся неосвёщенной. Как преподаватель я вижу, что сейчас процесс развития образовательных организаций отстает от требований IT-сферы. Хотела бы с вами поделиться своим видением данной проблемы и возможных путей решения.


Одной из основных проблем преподавания информатики и информационных технологий в средней школе становится цикл жизни учебника, который совершенно не соответствует постоянно ускоряющемуся циклу жизни технологий.

Некоторые учебники, использование которых в школах рекомендовано, попросту стыдно давать в руки ученикам, настолько архаичным и смешным для современного ребенка является то, что в них написано. Особенно этим грешат описываемые в этих учебниках программные продукты или операционные системы. В учебном плане, составляемом по этим учебникам, практически не остаётся времени для рассмотрения реальных или перспективных технологий и тенденций развития ИКТ и технологий программирования. Хотя именно они должны стать базой для углублённого изучения на уроках информатики.

Зачастую в современных школах обучение информатике происходит преимущественно на пользовательском уровне. Детей учат делать простые презентации, редактировать изображения, создавать документы, работать в таблицах, придумывать надёжные пароли. Уроки по изучению устройства компьютера или созданию рисунка в редакторе Paint превращаются в бессмысленное занятие, ничего не дают уму и в целом расхолаживают обучающегося, закладывают негативное отношение к предмету и в целом к школьным занятиям, работая на снижение мотивации к содержательной учебной деятельности.

Хотелось бы написать, что в высшей школе дела идут лучше, но нет, там те же проблемы устаревающие госстандарты образования и хромающая организация учебного процесса. Самый показательный пример устаревания образовательных программ древние языки программирования.

Языки программирования, используемые в учебных заведениях

Когда-то наиболее популярными языками программирования в школах мира были Бейсик и Паскаль. Бейсик всегда считался самым простым языком программирования, а Паскаль самым подходящим языком для обучения программированию. Но теперь это не так. Да, Бейсик прост. Но он создавался во времена, когда человечество не имело никакого опыта создания компьютерных систем, и основан на устаревших и не оправдавших себя принципах. Собственно, никакой фундаментальной целостной идеи в основе Бейсика не лежит.

Эволюция языков программированияЭволюция языков программирования

Если спросить детей, какой язык они изучают на информатике, рейтинг ответов будет таким:

  • Паскаль;

  • Бейсик;

  • Кумир;

  • Fortran;

  • Алгоритмический язык.

  • Вы имеете в виду английский?

Как мы видим, детям даются знания по языкам, которые не используются сейчас в профессиональной разработке. С точки зрения кадров, это, наверное, правильно, потому что не нужно переучивать преподавателей и переписывать учебники. Но ни Паскаль, ни Бейсик, ни блок-схемы сейчас не нужны в профессиональном программировании разработческая мысль давно шагнула вперёд.

Паскаль лишь только помогает преподавать алгоритмику, но писать современные программы на нём крайне сложно, и вот почему:

  • нет инструмента для быстрого создания интерфейса программы;

  • слабая графическая часть, которая может рисовать только простейшие объекты;

  • ограничения по размеру используемой памяти в переменных и циклах;

  • нет встроенной поддержки web-сервисов и страниц;

  • Паскаль не знает, как работать с современными базами данных, протоколами обмена, облачными хранилищами и сервисами.

Как альтернативу для изучения можно рассмотреть целую экосистему языков программирования, которые постоянно эволюционируют, расщепляются и сливаются. Их необходимо отбирать по следующим критериям:

  1. Чистота и ясность кода, читаемость кода.

  2. Чистота и целостность парадигмы, заложенной в основу языка.

  3. Многогранность и гибкость, возможность писать сложные программы кратко и красиво.

  4. Простота синтаксиса, прозрачность интерпретации языковых конструкций.

  5. Наличие стандартных библиотек и средств интеграции проектов друг с другом и с другими системами и технологиями.Озвученным критериям вполне соответствует Python. Так почему бы не использовать его в качестве образовательного базиса?

Согласно предъявляемым госстандартом требованиям к предметным результатам освоения базового курса информатики ученик должен владеть умением понимать программы на выбранном универсальном алгоритмическом языке и владеть приёмами написания программы для решения стандартной задачи с использованием основных конструкций и отладки таких программ.

Под универсальным алгоритмическим языком следует понимать любой императивный язык программирования, что не противоречит использованию языка Python. Python обладает стандартными алгоритмическими конструкциями и имеет гибкую систему отладки программ.

Таким образом, преподаватель имеет право выбрать язык программирования Python в качестве средства обучения основам алгоритмизации и программирования. Для большей наглядности давайте сравним Python с одним из широко используемых сейчас в школах и вузах языком.

Сравнение ЯП, используемых в обучении программированию

Разберём главные отличительные особенности языка программирования Python и проведём сравнение с Паскалем.

1. Простой синтаксис и низкий порог входа.

Python вместо знаков препинания или ключевых слов (в Паскале такими словами являются begin и end) использует отступы для обозначения выполнения блока. Программы, написанные в одну строку или с другими нарушениями в структуре, не смогут быть выполненными в Python. Такая особенность позволит сократить размер кода и увеличить читаемость программы. Синтаксис Python приучит школьников писать красивый код, что улучшит написание и понимание кода. Так, например, различаются записи цикла на Паскале и Python (таблица ниже).

Сравнение синтаксиса цикла с предусловием в Паскаль и Python

Паскаль

Python

while s + n < 150 do

begin

s := s + 15;

n := n - 5

end;

writeln(n)

while s + n < 150:

s = s + 15

n = n - 5

print(n)

2. Динамическая типизация.

Python обладает динамической типизацией. Это означает, что переменная связывается с типом во время присваивания значения, а значит, нет необходимости заранее объявлять переменную. Это упрощает понимание типов данных и разрешает путаницу в различных длинах целочисленных и вещественных, строковых и символьных типах, а также сокращает размер кода (таблица ниже).

Сравнение синтаксиса объявления переменных в Паскаль и Python

Паскаль

Python

var s, n: integer;

begin

s := 0;

n := 75;

end.

s = 0

n = 75

3. Лаконичный и изящный код.

Одно из очевидных достоинств языка. Python компактность программного кода. Например, решение задачи поменять местами значения двух переменных на языке Паскаль решается в три оператора, в Python в одну строку (таблица ниже):

Сравнение синтаксиса переприсвоения переменных в Паскаль и Python

Паскаль

Python

c := a;

a := b;

b := c;

a, b = b, a

4. Высокоуровневые типы данных.

Python, будучи языком очень высокого уровня, имеет встроенные типы данных высокого уровня, такие как динамические массивы (списки) и словари.

В языке Python нет массивов в привычном понимании этого термина, но есть списки, которые можно считать расширением понятия динамический массив. Мы можем работать отдельно с каждым элементом списка, а можем выполнять операции со всем списком, например добавлять и удалять элементы, копировать части списка, сортировать. Рассмотрим пример на заполнение массива одинаковыми значениями (таблица ниже). Python справляется с этой задачей в одну строку, продублировав массив, состоящий из одного нуля.

Сравнение синтаксиса заполнения массива в Паскаль и Python

Паскаль

Python

const n = 100;

var a: array[0..n - 1] of integer;

for i := 0 to n - 1 do

a[i] := 0;

n = 100

a = [0] * n

5. Широкое применение.

Используется для разработки веб-приложений, игр, удобен для автоматизации, математических вычислений, машинного обучения, в области Интернета вещей. Существует реализация под названием Micro Python, оптимизированная для запуска на микроконтроллерах (можно писать инструкции, логику взаимодействия устройств, организовывать связь, реализовывать умный дом).

На основании данных отличий можно сделать вывод, что синтаксис и структура основных алгоритмических конструкций в Python во многом схожи с Паскалем. Однако они приведены в совершенный вид, код стал чище и короче, кроме того, Python поддерживает современные типы данных и необходимые функции для работы с ними. Это делает язык подходящим для первого знакомства с программированием, в особенности для школьников и студентов, и лёгким для изучения самим преподавателем.

Так как же можно всё поправить?

В случае школы одним из решений могло бы стать видоизменение самого предмета "Информатика" в новую дисциплину под названием Информатика и IT-технологии, где это не уроки по использованию офисного пакета, а изучение принципов алгоритмики, computational thinking тех основ, которые не меняются годами.

Разумеется, для такого "эволюционного" скачка необходимо повышение квалификации преподавателей. Если в плане перевода из одной системы счисления в другую или составления блок-схем всё весьма статично, то новые технологии, веяния, языки программирования и их парадигмы всё это меняется очень быстро, и, чтобы учитель мог приводить интересные примеры и составлять урок качественно, он должен знать уйму вещей.

Например, если учебная программа подразумевает преподавание только языка Паскаль, преподавателю должен понимать и другие современные, промышленные языки, особенно если в классе есть ученик, заинтересованный в программировании. Иначе создаётся ситуация, как сейчас, когда уже немолодой преподаватель монотонно подаёт информацию о том, что нужно для того, чтобы в Turbo Pascal возвести x в степень 14.

И, конечно, не обойтись без изменений в местных органах Министерства образования и самой школе. У них должны быть механизмы и ресурсы для отправки преподавателя на дополнительное обучение, в том числе и на частных платных курсах, даже за рубежом. Также не стоит забывать о книгах и иных источниках новой, полезной информации. Необходимо предоставить больше свободы преподавателям-энтузиастам, которые хотят, например, дать своим ученикам Python или C++, а не навязывать Паскаль, как в новых учебниках для 1011 классов, где по ФГОСам есть только упомянутый язык. К сожалению, в нынешних реалиях России всё это выглядит утопией. Хотя по-прежнему будут существовать разработчики, использующие устаревшие языки, нужно учитывать, что в ближайшем будущем они будут заменены более распространёнными.

Ещё одним из средств решения проблем может служить разработка современного интерактивного онлайн-учебника, в котором знания будут максимально актуальны и сжаты и который будет регулярно обновляться (как, например, документация к проекту).

Я верю, что переосмысление подходов к IT-образованию сделает светлое цифровое лучше, независимо от того, захотят ли наши дети начать свою карьеру в сфере IT. Каким бы ни было будущее, становится всё более и более очевидным, что программирование способность читать и писать код на нескольких распространённых языках становится новой грамотностью.

Узнайте, как прокачаться и в других специальностях или освоить их с нуля:

Другие профессии и курсы
Подробнее..

Почему я преподаю и вам тоже стоит начать это делать

29.07.2020 10:12:50 | Автор: admin
Это история о бывшем вузовском преподавателе, который нашел свое призвание в ИТ, но не перестал обучать молодых специалистов. Знакомьтесь Андрей Трубицын, Solution Architect, уже практически 5 лет сотрудничает с EРАМ. За его плечами 8 лет преподавания в ВУЗе и сейчас он задействован сразу в нескольких образовательных проектах компании. Андрей не стремился к преподаванию, но жизнь раcпорядилась иначе. Итак, далее рассказ от первого лица.



С чего все началось


В детстве увлекался произведениями фантастов Азимова, Лема, Стругацких, мечтал создавать роботов. С момента, когда в доме появился 8-разрядный ZX Spectrum, все мои мысли были только о программировании. В лицее я впервые познакомился с компьютерами из Европы, первые 286-е машины. Именно там в 11 классе у меня случился первый опыт преподавания. Я рассказывал пятиклассникам о Norton Commander, как копировать файлы, запускать игры, считывать информацию с дискеты. Изучая математику в вузе (механико-математический факультет в Харьковском национальном университете им. В.Н.Каразина), как и многие студенты, я постоянно подрабатывал решал лабораторные по программированию. Параллельно поступил в аспирантуту. Оказалось, преподавателей математики много, а информатики нет. Поэтому в 22 года я начал читать лекции по программированию. Читал курс по языкам программирования С++, Java, базы данных, спецкурсы по шаблонам проектирования, криптографии. Вначале было страшно в аудитории мои вчерашние приятели. Сложно воспринимать себя в новой роли, но это как раз был отличный период развития soft skills.



К программированию на мехмате относились как к гуманитарному предмету, единицы по-настоящему хотели учиться. Я работал только с теми студентами, кто интересовался, от других требовал минимум знаний. Сейчас по-другому, когда я преподаю, вижу отдачу. Люди понимают, что программисты зарабатывают выше по рынку, и это мотивирует. Иногда я встречаю своих бывших студентов среди тестировщиков, программистов, хотя в свое время они обещали никогда не заниматься программированием. За обещание я ставил им тройки.
По окончанию вуза я работал в Институте комплексной автоматизации, который разрабатывал программы для атомных станций. Кстати, парочка моих программ до сих пор вертится на Хмельницкой, Ивано-Франковской АЭС. Пока я писал кандидатскую и преподавал, другой институт попросил построить систему учета мониторинга роста и изготовления кристаллов. На тот момент таких специалистов было мало либо уехали за рубеж, либо ушли в коммерцию. Мне, молодому 24-летнему парню, выпала крутая возможность создавать продукт для крупного института, который зарабатывал миллионы на экспорте кристаллов. Благодаря этому сотрудничеству, институт прошел сертификацию на ISO, а я занялся фрилансом на различных платформах. Когда появилась семья, родилась дочь, стало ясно: надо что-то менять. Так в моей жизни появилась аутстафинговая компания Muranosoft и потом ЕРАМ. Началась моя карьера программиста и на пять лет приостановилась карьера преподавателя.

Как построить карьеру преподавателя в бизнесе


EPAM быстро растет, постоянно присоединяются новые ребята, которых нужно обучать. И вот я, уже архитектор, снова преподаю. Хотя я бы не сказал, что это совмещение карьер: обучение других это часть моей работы инженера. Я начинаю новые проекты и хочу, чтобы ко мне приходили те, кто понимает архитектуру, умеет читать диаграммы, может брать ответственность за часть работы, помогая мне добиваться целей. С 2016 года в компании существует Solution Architecture School (SAS), где я обучаю. Цель программы за 5 месяцев дать фундаментальные знания по этой дисциплине и помочь ребятам перейти на новый карьерный уровень в компании. Но профессия архитектора это, откровенно говоря, сложно. А 180 часов обучения немало, поэтому до конца доходят не все. Те, кто смогли, стали лучше выстраивать процессы и делать дизайн некоторых частей решения, анализировать требования на проектах и документировать решение. Чтобы я сам мог перейти на более высокий уровень Senior Architect, директор по технологиям или Lead Architect мне нужно подготовить смену, чем я и занимаюсь.

С прошлого года работаю также над внешней образовательной программой Masters degree Program, которая создана ЕРАМ в партнерстве с одним из престижных ВУЗов Украины Киево-Могилянской Академией. Это магистерская программа подготовлена специально для опытных разработчиков, которые мечтают о развитии карьеры в IT и она доступна абсолютно всем вне зависимости от проживания и места работы. Вместе с коллегами я разрабатывал модуль по Solution Architecture на основе опыта в SAS. Но, если в школе архитекторов больше внимания уделялось оффлайновым встречам, то в MsDP упор на онлайн формат и воркшопы. Новый формат требует адаптации учебной программы сделать опросники, квизы, задачи для отбора, разработка домашних заданий и т.д. Сейчас, когда половина обучения прошла, признаюсь, группа подобралась отличная. Ребята разные есть разработчики, менеджеры, директора. Есть руководитель IT-отделения банка, которому важно не стать архитектором, но понять внутренние процессы своего IT-отдела. Интересно, что пара ребят приехали из Белоруси, самостоятельно оплачивая программу и дорогу. Я был поражен их целеустремленностью. Невзирая на то, что программа насыщенная только один модуль длиться более 400 часов участники крайне мотивированы. Возможно, потому что обучение платное и отношение другое. Ситуаций, когда кто-то не сделал домашку не бывает. Как не бывает и сессий без вопросов. Студенты требуют ответов, погружаются в глубину темы, им нужны детали. Когда отдаешь знания и кому-то они нужны преподаватель счастлив. Кстати, в преподавательском составе MsDP специалисты очень высокого уровня. В Киев приезжали выступать IT-звезды несколько СТО, топы ЕРАМ, а также приглашенные преподаватели, среди которых Бертран Мейер, выпускник Стэндфорда, создатель языка программирования Eiffel. Это люди, которые много добились, у них огромный опыт, широкий взгляд на происходящее. Эти встречи очень популярны.



Также я участвую в менторинговой программе. Она полезна для специалистов, которые приходят с рынка и не всегда владеют экспертизой, необходимой для проекта. Наставник может помочь быстрее включиться в работу. Иногда приходят опытные специалисты, которые хотят пройти ре-трейнинг своих навыков. Вместе мы готовим персональный план развития, цели, которые ученик хочет достичь за определенное время. Обычно такое сотрудничество длится 2-6 месяцев. Это хороший опыт, но прежде всего очень важно сначала проговаривать, зачем это ментору и зачем это менти. Вообще, хорошая привычка всегда думать, зачем мы что-то делаем. Как-то работал одновременно с 7 ребятами, но быть наставником для такого количества это трудно. Позже мои менти разошлись по проектам, некоторые исполняют функции архитектора, некоторые до сих пор работают со мной, мы поддерживаем связь. Пока что они не стали архитекторами, но понимание архитектурной работы у них есть.

Но все же, для чего преподавание мне? Все достаточно прагматично это возможность капитализировать себя как специалиста и признание моей экспертизы. Чтобы развиваться и зарабатывать больше, мне нужно делать то, чего не делают другие, идти на более сложную позицию. Для этого мне нужно оставить после себя стабильную ситуацию, компетентных специалистов. Также мне, как и любому человеку, важна потребность в самовыражении и признании. Когда меня слушают, спрашивают, появляется чувство востребованности. Преподаватели знают, о чем я.



Но кроме того, мы все продаем свои компетенции на рынке. Из двух кандидатов на позицию с практически одинаковым резюме, с похожим опытом и навыками, мы выбираем известного того, кто выступал на конференциях, хакатонах, профильных мероприятиях. Взять просто хорошего специалиста или же кандидата, который сможет работать и обучать других разработчиков до уровня мидлов, сеньйора, архитектора? Ответ очевиден. Так же и софт скилами: можно взять разработчика со слабыми коммуникационными навыками, но к нему еще и менеджера. Или одного архитектора, который и общаться умеет, и в разработке силен, что будет выгодно в финансовом плане и компании, и самому архитектору.

Кто он хороший преподователь?


В заключении, я бы хотел, чтобы вы задумались кто такой хороший преподаватель. На каждого из нас в свое время оказал влияние учитель. Вспомним тандем Александра Македонского и Аристотеля. Что объединяет людей, которых мы называем хорошими учителями? И что нужно для того, чтобы быть похожим на них?

Во-первых, это понимание того, зачем ты преподаешь. О своих мотивах я уже рассказал выше.

Во-вторых, что ты преподаешь. Речь о технических знаниях. Я почувствовал это, когда на курсе криптографии появлялись элллиптические кривые и алгоритмы, основанный на них. Откровенно, я не до конца понимал тему. И вопросы от умных ребят были особенно горячие. Пришлось разобраться.

В-третьих, терпение это, наверное, самое важное в преподавании. Эта добродетель особенно испытывалась в вузе, когда студенты в период сессии пробовали манипулировать через здоровье, другие жизненные обстоятельства, лишь бы получить зачет. Кроме того, терпение и принятие понадобиться и в других случаях. То, что очевидно для вас, требует времени на осмысление у студента. Поэтому, преподавая, никогда нельзя скатываться в подход я покажу, как правильно и делай, как я. Чтобы подготовить людей мыслящих, используйте другой метод сделай, покажи мне и я подскажу, как это сделать лучше. Да, это приводит к тому, что у каждого инженера формируется свой стиль. Но мне кажется, это к лучшему, ведь разнообразие это то, что делает IT индустрию, да и мир в целом, прекрасней.
Подробнее..

Алиса обучает английскому

04.05.2021 12:13:46 | Автор: admin

В этой короткой заметке (несколько абзацев, фотографий, и коротких видеороликов) показано как можно использовать Алису (голосового помощника от Яндекса) в преподавании английского языка. Идея заключалась в том, чтобы создавать навыки (так называются приложения сторонних разработчиков для Алисы), которые могли бы одновременно быть и интересны детям, и нести образовательную нагрузку. Короче говоря - немного отдыха с пользой.

Занятия с использованием Алисы проводились в студии английского языка ABC Friends (ссылка на их группу в VK). Вот несколько фото.

И пара коротких видеороликов. В первом - дети играют с навыком Алисы "Русская загадка английскаяразгадка", а во втором - с навыком "Угадайцветок".

Кстати, в Яндексе также отметили эти (и другие) навыки Алисы -- недавно в их Инстаграме появилась заметка на эту тему:

Это была небольшая иллюстрация применения Алисы при обучении английскому языку, и у меня нет сомнений, что имеются сотни иных способов использования Алисы в образовательных целях. Надеюсь, что эта заметка сподвигнет кого-нибудь на размышления и деятельность в этом направлении.

На сегодня это всё. Другие материалы следуют. Кому подобное читать интересно - подписывайтесь на уведомления о новых публикациях. Подписаться можно на этом сайте (кнопка Подписаться внизу), или на Telegram-канал IT Туториал Захар, или на одноимённое сообщество в VK, или Twitter @mikezaharov.

Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru