Pull to refresh
23
0
Send message

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

Reading time 8 min
Views 19K

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

Читать далее
Total votes 70: ↑35 and ↓35 0
Comments 274

Как решать «упрямые» уравнения?

Reading time 9 min
Views 13K

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

Приятного чтения
Total votes 29: ↑25 and ↓4 +21
Comments 32

Как протестировать блокноты Jupyter с помощью pytest и nbmake

Reading time 8 min
Views 3.1K

Файлы блокнотов Jupyter, в смысле количества одного из самых быстрорастущих типов файлов на Github, предоставляют простой интерфейс для итераций при решении визуальных задач, будь то анализ наборов данных или написание документов с большим объёмом кода. Однако популярность блокнотов Jupyter сопровождается проблемами: в репозитории накапливается большое количество файлов ipynb, многие из которых находятся в нерабочем состоянии. В результате другим людям трудно повторно запустить или даже понять ваши блокноты. В этом руководстве рассказывается, как для автоматизации сквозного (end-to-end) тестирования блокнотов можно воспользоваться плагином pytest nbmake.

К старту флагманского курса о Data Science — области, в которой блокноты Jupyter незаменимы — делимся переводом статьи из блога CI Semaphore о том, как при помощи Semaphore проверить, что ваши блокноты Jupyter находятся в рабочем состоянии и для этого больше не запускать блокноты вручную.

Читать далее
Total votes 8: ↑8 and ↓0 +8
Comments 3

Цифровая паяльная станция своими руками

Reading time 12 min
Views 35K

В этом посте мы будем делать в домашних условиях недорогую цифровую паяльную станцию Hakko 907! Она способна поддерживать переменную и постоянную температуру (до 525 °C). Для создания паяльной станции потребуются несколько компонентов общей стоимостью всего 7 долларов (не считая блока питания, но можно использовать уже имеющийся блок питания). Мне не удалось найти подробные инструкции по созданию такой станции, поэтому я решил подготовить собственный туториал с подробным описанием процесса.

Приятного крафтинга!
Total votes 34: ↑31 and ↓3 +28
Comments 35

Как сфера Дайсона поможет нам достигнуть бессмертия

Reading time 9 min
Views 11K

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

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

Приятного чтения
Total votes 26: ↑14 and ↓12 +2
Comments 113

Кибервойна. Когда 500 Кб кода страшнее межконтинентальной ракеты

Reading time 6 min
Views 23K

Привет, Хабр! Мы искренне поздравляем всех хабровчан с Днём защитника Отечества! И сегодня подготовили интересный тематический материал.

«Война никогда не меняется». Думаю, все узнали интро из Fallout. Но действительно ли это так? Ведь за последние 20 лет военная сфера изменилась настолько сильно, что практически не имеет ничего общего с масштабными конфликтами прошлого века. Сегодня мы поговорим о современных высокотехнологичных элементах военных действий – так называемой «кибервойне».

Приятного чтения!
Total votes 19: ↑16 and ↓3 +13
Comments 55

10 полезных расширений для дата-сайентистов

Reading time 5 min
Views 14K

Каждый специалист по Data Science тратит большую часть своего времени на визуализацию данных, их предварительную обработку и настройку модели на основе полученных результатов. Для каждого исследователя данных именно эти моменты – самая сложная часть процесса, поскольку хорошую модель можно получить при условии, что вы точно выполните все эти три шага. И вот 10 очень полезных расширений Jupyter Notebook, которые помогут вам выполнить эти шаги.

Приятного чтения!
Total votes 19: ↑19 and ↓0 +19
Comments 0

Нужно больше датасетов. Музыка, IT-скилы и котики

Reading time 10 min
Views 4K

Привет, Хабр! Совсем недавно мы писали про открытый датасет, собранный командой студентов магистратуры «Наука о данных» НИТУ МИСиС и Zavtra.Online (подразделение SkillFactory по работе с университетами) в рамках первого учебного Дататона. А сегодня представим вам целых 3 датасета от команд, которые также вышли в финал.

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

Приятного чтения!
Total votes 13: ↑12 and ↓1 +11
Comments 1

Стучимся в дверь к Тьюрингу: квантовые компьютеры и машинное обучение

Reading time 18 min
Views 10K


Нули, единицы, положительные и отрицательные значения. Переключатели, одни из которых включены, а другие выключены. Мы все привыкли видеть компьютеры и пользоваться ими. Каждый год гиганты индустрии – Intel, AMD, ARM и NVIDIA – выпускают следующее поколение своих топовых кремниевых соединений, расширяя возможности традиционных компьютеров, которые мы знаем сегодня. Но даже их вычислительным возможностям есть определенный предел. Пробить этот «стеклянный потолок» возможно помогут квантовые технологии, детальный обзор которых и представлен в этой статье.
Приятного чтения!
Total votes 15: ↑12 and ↓3 +9
Comments 31

Почему алгоритмы ML так трудно настраивать?

Reading time 9 min
Views 4.3K


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

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

Приятного чтения!
Total votes 13: ↑10 and ↓3 +7
Comments 4

Как воскресить раннюю электронную музыку с помощью Arduino?

Reading time 7 min
Views 5.7K

Этот проект вдохновлён ранней электронной музыкой и звуковыми эффектами, созданными радиофонической мастерской BBC в 1960-х годах. До того как синтезаторы стали обычным делом, чтобы услышать невиданные звуки, использовали сочетание промышленного испытательного оборудования и фокусов с магнитной лентой. Тестовые генераторы и «найденные звуки» давали сырой аудиоматериал, который зацикливался, реверсировался, ускорялся и замедлялся с помощью нескольких магнитофонов, чтобы получить жуткие, неестественные звуки, сопровождающие радио- и телепрограммы того времени.

В своём проекте с помощью микроконтроллера Arduino я смоделировал три винтажных тестовых генератора; весь проект можно собрать меньше чем за 15 фунтов стерлингов [около полутора тысяч рублей]. Исполнению не хватает эстетического очарования и аналогового звука реальных вещей, но я сохранил тактильное управление руками, которого нет в программных плагинах, и по самой его сути все потроха проекта можно хакнуть, отремонтировать и обновить.

Приятного чтения!
Total votes 11: ↑11 and ↓0 +11
Comments 1

Как отслеживать производительность веб-приложения с JavaScript и Performance API

Reading time 5 min
Views 8K
В сентябре этого года у меня была возможность присоединиться к Forest Admin, компании, которая выполняет всю тяжёлую работу по созданию панели администратора любого веб-приложения и предоставляет платформу на основе API, чтобы реализовать все ваши конкретные бизнес-процессы. Моей первой задачей было реализовать мониторинг времени загрузки приложения, а также мониторинг времени запросов, сделанных нашими клиентами в их административном бэкенде, который я разработал.

Цель такой функции – иметь возможность ориентироваться на проекты, работая с которыми пользователи сталкиваются с длительной загрузкой, чтобы оптимизировать конфигурацию своего интерфейса. Это делает навигацию и взаимодействие с приложением плавнее и, таким образом, улучшает взаимодействие с пользователем. Для этого первым делом нужно выяснить, как мы собираемся реализовать такую функцию.


Приятного чтения!
Total votes 23: ↑23 and ↓0 +23
Comments 0

Как я изучал структуры данных и алгоритмы для собеседования в FAANG

Reading time 12 min
Views 60K
Продолжая тему устройства в FAANG, которую уже мы поднимали в нашем блоге, и специально к старту нового потока нашего курса по алгоритмам сегодня делюсь описанием пути Эско Обонга, старшего инженера-программиста Uber.

Эта история началась в 2015 году, когда стартап, к которому я присоединился как «сотрудник-основатель», закрылся через шесть месяцев после первого раунда инвестиций, и я искал новую работу. Первое моё собеседование было с  Codecademy, где на этапе телефонного разговора меня заверили: «Не волнуйтесь, мы не задаём сумасшедших вопросов об алгоритмах или что-то в этом роде». И я им поверил…


Приятного чтения!
Total votes 61: ↑55 and ↓6 +49
Comments 71

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

Reading time 6 min
Views 2K

Для команд специалистов DS сломанные конвейеры данных, шаткие информационные панели и пожарные учения в 5 часов утра – это норма, особенно потому, что рабочие процессы принимают всё больше и больше данных из разрозненных источников. Черпая вдохновение в разработке программного обеспечения, мы называем это явление простоем данных – но как упреждающе, в первую очередь предотвратить появление плохих данных?

В этой статье я поделюсь тремя ключевыми стратегиями, которыми пользуются некоторые лучшие компании Data Science, чтобы восстановить доверие к своим данным.
Приятного чтения!
Total votes 20: ↑19 and ↓1 +18
Comments 0

Хабравыжимка #1: Софт скилы для разработчика

Reading time 9 min
Views 18K
Современный специалист подобен швейцарскому ножу — владения только одним навыком всегда будет недостаточно. Но если с хард-скилами более-менее понятно, для каждой специальности они известны, то с софт скилами всё не так очевидно. Но мы же на Хабре — тут пишут про всё, правда, в этом потоке контента несложно и запутаться. Поэтому, чтобы облегчить жизнь всем и составить представление о том, какие же «мягкие навыки» наиболее актуальны, я собрал подборку лучших постов про них. А помогли мне в этом руководитель Центра карьеры SkillFactory Юлия Пушкина и наш карьерный консультант Эльмира Салимова.


Приятного чтения!
Total votes 29: ↑21 and ↓8 +13
Comments 40

Разговор с дата-сайентистом — гроссмейстером Kaggle

Reading time 6 min
Views 13K
Ранее у нас в блоге уже был материал про лучших в Kaggle, а сегодня представляю вам интервью с признанным дата-сайентистом и гроссмейстером Kaggle Филиппом Сингером, который поделится своим опытом, вдохновением и и достижениями. Беседа призвана мотивировать и воодушевить других людей, которые хотят понять, что нужно, чтобы стать гроссмейстером Kaggle. Также в этом интервью мы узнаем больше об академическом прошлом Филиппа, его увлечении Kaggle и о его работе в качестве дата-сайентиста.


Приятного чтения
Total votes 28: ↑23 and ↓5 +18
Comments 11

Как сделать Data Science приложение для Windows (и не только) с графическим интерфейсом с помощью PySimpleGUI

Reading time 6 min
Views 32K
Работать с Data Science в Jupyter, конечно, очень приятно, но если вы хотите пойти дальше и развернуть свой проект или модель на облачном сервере, то здесь есть много отличных решений — с помощью Flask, Django или Streamlit. Хотя облачные решения по-прежнему самые популярные, часто хочется создать быстрое приложение с графическим интерфейсом. Например:

  • Модель ML тестируется на различных наборах данных. Вы можете перетащить файлы CSV в модель и отрисовать кривую AUS/ROC. Здесь GUI проявит себя прекрасно, правда?
  • Построить случайную переменную или статистическое распределение в заданном диапазоне и динамически управлять параметрами с помощью графического интерфейса.
  • Быстро запустить некоторые задачи обработки или предварительной обработки данных в наборе с помощью GUI вместо того, чтобы писать кучу кода.

В этой статье мы покажем, как создать такой графический интерфейс, потратив минимум усилий на изучение библиотеки Python.


Приятного чтения!
Total votes 28: ↑26 and ↓2 +24
Comments 10

Разрабатываем и развёртываем собственную платформу ИИ с Python и Django

Reading time 11 min
Views 23K
Взлёт искусственного интеллекта привёл к популярности платформ машинного обучения MLaaS. Если ваша компания не собирается строить фреймворк и развёртывать свои собственные модели, есть шанс, что она использует некоторые платформы MLaaS, например H2O или KNIME. Многие исследователи данных, которые хотят сэкономить время, пользуются этими инструментами, чтобы быстро прототипировать и тестировать модели, а позже решают, будут ли их модели работать дальше. 

Но не бойтесь всей этой инфраструктуры; чтобы понять эту статью, достаточно минимума знаний языка Python и фреймворка Django.  Специально к старту нового потока курса по машинному обучению в этом посте покажем, как быстро создать собственную платформу ML, способную запускать самые популярные алгоритмы на лету.


Портрет Орнеллы Мути Джозефа Айерле (фрагмент), рассчитанный с помощью технологии искусственного интеллекта.
Приятного чтения!
Total votes 27: ↑23 and ↓4 +19
Comments 3

Как я готовился к собеседованию в Google

Reading time 9 min
Views 48K
Каждый инженер-программист стремится впечатлить людей своим техническим мастерством. Технологические гиганты этого мира — прекрасное место для работы технарей, которые могут предоставить услуги миллиардам пользователей. На моём недавнем собеседовании было несколько раундов, я получил предложения от Google и Amazon. В последние несколько лет онлайн-сообщество очень помогло мне в подготовке к собеседованиям. В этом посте я поделюсь всем о моём пути к собеседованию и верну вклад общества в моё обучение.


Приятного чтения!
Total votes 55: ↑50 and ↓5 +45
Comments 77

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

Reading time 5 min
Views 74K
Собеседование инженера программиста сегодня часто включает в себя некий тест или упражнение на программирование, и я думаю, что это очень плохая вещь. Вот почему.


Приятного чтения!
Total votes 94: ↑73 and ↓21 +52
Comments 283

Information

Rating
Does not participate
Works in
Registered
Activity