Как стать автором
Обновить
748.3
Рейтинг

Программирование *

Искусство создания компьютерных программ

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Потрясающе красиво: как отобразить десятки признаков в данных

Блог компании SkillFactory Python *Программирование *Визуализация данных Машинное обучение *
Перевод
Tutorial

Пока эксперты Хабра дегустируют наши курсы, пробуем алгоритм UMAP урожая 2018, раскрывающий тонкие оттенки данных высокой размерности.

Статья напомнит об этой прекрасной альтернативе t-SNE или PCA и поможет с визуализацией на флагманском курсе Data Science.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 583
Комментарии 0

Лучший язык программирования

Программирование *

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

Можно ли на него ответить?

Читать далее
Всего голосов 82: ↑79 и ↓3 +76
Просмотры 14K
Комментарии 37

Active learning для разметки своими руками

Python *Программирование *Машинное обучение *Искусственный интеллект

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

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

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

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 408
Комментарии 0

SQLite-песочница в браузере

Open source *JavaScript *Программирование *SQL *SQLite *

Чего мне всегда не хватало, так это аналога JSFiddle для SQLite. Онлайн-песочницы, в которой можно быстро проверить SQL-запрос и поделиться с другими.

Вот чего хотелось:

— Возможность загрузить готовую базу, а не писать SQL для создания таблиц.
— Подключать как локальные базы, так и удаленные (по url).
— Сохранять базу и запросы в облаке.
— Бесплатно и без регистрации.
— Свежайшая версия SQLite.
— Минимализм.

В итоге сделал сам
Всего голосов 38: ↑38 и ↓0 +38
Просмотры 2.8K
Комментарии 1

Рекомендации при реализации тестового Java проекта на REST API (и не только)

Программирование *Java *Учебный процесс в IT Карьера в IT-индустрии
Tutorial

Эти рекомендации - адаптированный под публикацию результат 5-летних проверок выпускных работ участников нашей стажировки "Enterprise Java-разработчик". Часть из них относится только к выполнению тестового задания при устройстве на работу: Java-приложение с REST API. Часть - к разработке на Java. И часть - к разработке любых приложений. Надеюсь, что каждый найдет что-то полезное. Буду рад обсуждению спорных тем в комментариях.

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Просмотры 1.3K
Комментарии 10

telebot быстро и понятно. Телеграмм бот

Python *Программирование *Учебный процесс в IT
Из песочницы

telebot(pyTelegramBotAPI) хорошая и лёгкая библиотека для создания бота на python для телеграмма.

Читать далее
Всего голосов 3: ↑1 и ↓2 -1
Просмотры 2.6K
Комментарии 3

Делаем базу знаний для .NET разработчиков

Блог компании Контур Программирование *.NET *Карьера в IT-индустрии Конференции

Мы вместе с DotNetRu решили сделать базу знаний для .NET разработчиков. Собрать доступные в открытом доступе материалы по .NET и выбрать из них лучшие. Разбить все это по категориям и сложности, выстроить порядок изучения. А еще пригласить известных экспертов в каждой из тем, чтобы они помогли выбрать материалы и рассказали, что и почему вам будет полезно изучить.

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

Читать далее
Всего голосов 15: ↑14 и ↓1 +13
Просмотры 2.5K
Комментарии 9

Темы оформления Visual Studio Code стали доступны в Visual Studio (+8 интересных тем)

Программирование *.NET *C++ *Visual Studio *C# *
Перевод

Microsoft выпустила новый инструмент, который преобразует темы VS Code для работы в Visual Studio. Теперь есть возможность выбирать паттерн оформления IDE из встроенных тем и тем сообщества в Visual Studio 2022.

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

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 2.3K
Комментарии 2

SRP-6a. Безопасная аутентификация по небезопасному каналу

Информационная безопасность *Программирование *
Tutorial

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

Узнать как →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 1.5K
Комментарии 3

Плагин Big Data Tools теперь поддерживает IntelliJ IDEA Ultimate, PyCharm Professional, DataGrip 2021.3 EAP и DataSpell

Блог компании JetBrains Программирование *Big Data *Data Engineering *

Недавно мы выпустили новую сборку плагина Big Data Tools, совместимую со свежими (2021.3) версиями IntelliJ IDEA Ultimate и PyCharm Professional. Когда в октябре выйдет DataGrip 2021.3, эта сборка тоже будет с ним работать. Более того, теперь мы умеем запускаться в DataSpell — новой IDE для Data Science.

Если вы используете старые версии Big Data Tools, сейчас самое время обновиться и попробовать новую версию плагина вместе со свежей версией IDE!

В этом году мы много чего улучшили и добавили совершенно новые фичи (например, запуск Spark Submit в виде Run Configuration). Вот небольшой список изменений за этот год. Этот список — лишь небольшая капля в море того, что изменилось с прошлого года.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 824
Комментарии 0

DOM, который построил Chrome. Или не построил? Или не Chrome? Или не DOM?

Разработка веб-сайтов *JavaScript *Программирование *Совершенный код *

Обычный, теневой, виртуальный, инкрементальный… Как получилось, что простой программный интерфейс доступа к элементам веб-страниц обзавелся таким количеством «родственников»? Чем современные фреймворки не устраивает стандартная объектная модель документа или просто DOM? Что и как на самом деле отрисовывает браузер в процессе рендера веб-страницы?

Всем привет, это Макс Кравец из Holyweb. Помните сцену из Матрицы, в которой один из юных кандидатов в Избранные наставляет Нео: «Не пытайся согнуть ложку. Первое, что ты должен понять — ложки не существует!»? Давайте переформулирую: «Не пытайся изменить DOM...». А вот о том, что прячется под многоточием, мы сегодня и поговорим.

Читать далее
Всего голосов 23: ↑21 и ↓2 +19
Просмотры 5.4K
Комментарии 23

ref в сравнении с out в C#

Блог компании OTUS Программирование *C# *
Перевод

C# ref в сравнении с out

Ключевые слова Ref и out в C# используются для передачи аргументов внутри метода или функции. Оба слова указывают на то, что аргумент/параметр передается по ссылке. По умолчанию параметры передаются в метод по значению. Используя эти ключевые слова (ref и out), мы можем передать параметр по ссылке.

Читать далее
Всего голосов 13: ↑3 и ↓10 -7
Просмотры 4.2K
Комментарии 11

Как использовать PHP для создания микросервиса?

Блог компании OTUS PHP *Программирование *
Перевод

В этой статье рассказывается, как использовать PHP для построения архитектуры микросервисов. Так как PHP идет в ногу со временем, он способен поддерживать микросервисные архитектуры для больших систем.

Читать далее
Всего голосов 12: ↑5 и ↓7 -2
Просмотры 4.4K
Комментарии 7

Как мы сделали доступными все технологии Сбера на единой платформе: итоги первого года работы SmartMarket

Блог компании Сбер Программирование *Интерфейсы *IT-компании Голосовые интерфейсы

Год назад, в сентябре 2020 года команда SberDevices выпустила семейство виртуальных ассистентов Салют. В семействе три персонажа — Сбер, Афина и Джой. Они доступны на умных устройствах Sber, устройствах под управлением Салют ТВ и в мобильных приложениях СберБанк Онлайн и Сбер Салют.

Вместе с этим запуском мы запустили первую версию платформы SmartMarket. С инструментами SmartMarket внешние разработчики и бизнес получили возможность создавать приложения для виртуальных ассистентов Салют. 

Иван Смирнов, руководитель NLP-Platform и SmartMarket рассказывает, как мы собрали вместе инструменты и технологии Сбера и к чему удалось прийти за год.

Читать далее
Всего голосов 8: ↑3 и ↓5 -2
Просмотры 1.5K
Комментарии 3

«Рынку нужны программисты»: братья-разработчики — о любви к профессии и преподаванию

Блог компании Skypro Программирование *Учебный процесс в IT Карьера в IT-индустрии

Найти любимое дело — мечта, пожалуй, каждого. Хорошо, если работа нравится и заряжает энергией. А решение сложной задачи — лучшая награда. Тогда развитие в профессии происходит быстрее. Наступает момент, когда хочется передавать знания другим. Готовить кадры, которые нужны отрасли, и помогать новичкам быстрее адаптироваться на работе. 

Так Илья и Фёдор Сазоновы объединили свой опыт в разработке и создали курс по Java для людей без бэкграунда в IT. Основная задача их программы — за 11 месяцев дать новичку необходимый набор знаний, чтобы после обучения он устроился junior-специалистом. В статье братья рассказали, как сами пришли в программирование и почему хотят обучать других.

Читать далее
Всего голосов 12: ↑8 и ↓4 +4
Просмотры 3.4K
Комментарии 4

Что происходит, когда вводишь url, или как работает интернет

Блог компании Karuna Программирование *IT-инфраструктура *Сетевые технологии *Стандарты связи

Об этом спрашивают на собеседованиях. Структурированное понимание этого может помочь вам, даже если вы давно строите сложные архитектурные процессы или кодите 20-ый год подряд. Я — программист уже много лет, последние пару из которых пишу на Go в Каруне. Работа работой, а внутренний исследователь не дремлет. И вот я наконец-то решил привести в порядок информацию, разбросанную по разным закоулкам чертогов разума, по добротным книгам и статьям на тему сетевых технологий.

Хочу представить краткую выжимку о работе протоколов. А если тема окажется интересной, могу продолжить работать с ней более детально. Рассмотрим простейший пример: вы ввели некоторый url в адресную строку. Поехали.

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Просмотры 9.6K
Комментарии 20

Основная проблема образования

Программирование *IT-стандарты *Управление проектами *
Recovery mode

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

Что же на самом деле не так?
Всего голосов 27: ↑18 и ↓9 +9
Просмотры 4.6K
Комментарии 27

Почему с using namespace std; может быть очень плохо

Программирование *Совершенный код *C++ *Компиляторы *
Перевод

То, что написано ниже, для многих квалифицированных C++ разработчиков будет прекрасно известной и очевидной вещью, но тем не менее, я периодически встречаю using namespace std; в коде различных проектов, а недавно в нашумевшей статье про впечатления от высшего образования было упомянуто, что студентов так учат писать код в вузах, поэтому давайте повторим очевидное еще раз.

Итак... многие слышали, что using namespace std; в C++ считается плохой практикой. Касательно недопустимости использования using namespace в header-файлах вопросов обычно не возникает, если мы хоть немного понимаем, как работает препроцессор компилятора: .hpp-файлы при использовании директивы #include вставляются в код "как есть", и соответственно using автоматически распространится на все затронутые .hpp- и .cpp-файлы, если файл с ним был заинклюден хоть в одном звене цепочки (на одном из сайтов это метко обозвали как "заболевание, передающеемя половым путем"). Но вот про .cpp-файлы все не так очевидно, так что давайте еще раз разберем, что же именно здесь не так.

Читать далее
Всего голосов 36: ↑31 и ↓5 +26
Просмотры 14K
Комментарии 29

Тесты своей реализации ассоциативных массивов vs хеш-таблица

Программирование *Алгоритмы *

Приветствую, читатель. Я являюсь автором языка программирования Shar. В стандартном модуле Shar есть несколько реализаций ассоциативных массивов и при написании данного модуль я подумал: "А какую структуру данных для реализации ассоциативных массивов мне выбрать?". Являясь любителем слушать различные конференции по программированию, я периодически натыкаюсь на выступления людей, принимающих участие в разработке популярных языков программирования. На основании таких выступлений, у меня сложилось субъективной восприятие того, что в большинстве случаев для реализации ассоциативных массивов используется хеш-таблица. Хеш таблица действительно является очень хорошим выбором, но тогда почему я начал задумываться о выборе подходящей структуры данных? А причина в том, что ...

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 2.3K
Комментарии 5

Алгоритмы поиска схожих объектов в рекомендательных системах

Python *Программирование *Алгоритмы *Машинное обучение *

«Досмотрю вот это видео на YouTube и пойду спать! Ой, в рекомендациях еще одно интересное. Сон, прости…». «Закажу в IKEA только стулья. Ах, сайт показал мне еще посуду, постельное белье и новую кухню в сборке. Когда там следующая зарплата?». «Бесконечный плейлист любимых музыкальных жанров в СберЗвуке заряжает меня позитивом! Как специалистам удается создавать выборку специально для меня?».

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

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

TL:DR

Статья описывает основные подходы к поиску схожих объектов в наборе данных и содержит вводный курс в мир рекомендательных систем. Представлены варианты подготовки данных. Информация будет полезна аналитикам, которые изучают python, и начинающим data-scientist’ам. Мы не будем останавливаться на подробном описании каждого метода и разбирать отличия контентных и коллаборативных рекомендательных систем. Базовая теоретических часть находится здесьздесь и здесь. Нас интересует применение алгоритмов матчинга (matching, англ. Поиск схожих объектов) в повседневных задачах. К статье прилагается ноутбук на платформе Kaggle с основным кодом, который рекомендуем запускать одновременно с изучением текста.

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 1.1K
Комментарии 1

Вклад авторов