Социальные сети Рунета
Понедельник, 13 мая 2024

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

[Перевод] Пишем API для React компонентов, часть 6: создаем связь между компонентами Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

[Из песочницы] Функциональные компоненты с React Hooks. Чем они лучше? Относительно недавно вышла версия React.js 16.8, с которой нам стали доступны хуки. Концепция хуков позволяет писать полноценные функциональные компоненты, используя все возможности React, и позволяет делать это во многом более удобно, чем мы это делали с помощью классов. М...

[Из песочницы] Создаем свой компонент с микро-шаблонами Всем привет. Все кто так или иначе писал на фреймворке Angular сталкивался или работал с библиотекой Angular Material. Это очень хорошо написанная библиотека компонентов способная к гибкой стилизации, которая реализована через возможность создания различных тем вашего прилож...

[Перевод] Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

[Перевод] Модульные спрайтовые персонажи и их анимация Эта запись девлога целиком посвящена моей системе анимации персонажей, она наполнена полезными советами и фрагментами кода. За последние два месяца я создал целых 9 новых действий игрока (такие забавные вещи как блокировка щитом, уворачивание в прыжке и оружие), 17 новых но...

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

Пишем на Rust + CUDA C Всем привет! В данном руководстве хочу рассказать как подружить CUDA C/С++ и Rust. И в качестве примера напишем небольшую программу на Rust для вычисления скалярного произведения векторов, вычисление скалярного произведения будет производиться на GPU с использованием CUDA ...

[Из песочницы] NeoBook: среда программирования для непрограммистов NeoBook: среда программирования для непрограммистов Для кого эта статья Статья написана, в первую очередь, для тех, кто не является профессиональным программистом, но хочет уметь создавать свои собственные компьютерные программы для компьютеров с Windows. Программирование ...

Общие компоненты силами разных команд. Доклад Яндекса Создание и сопровождение общих компонентов — процесс, в котором должны быть заняты множество команд. Руководитель службы общих компонентов Яндекса Владимир Гриненко tadatuta объяснил, как их разработка переросла выделенную команду «Лего», как мы сделали монорепозиторий на ба...

[Перевод] Пишем API для React компонентов, часть 5: просто используйте композицию Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

[Перевод] Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенЭтот пост — перевод первой статьи ...

[Перевод] Советы для кандидатов от программиста, проводящего собеседования в Facebook В прошлом году я провел бессчетные часы на собеседованиях с кандидатами на разные должности в компании Facebook. И, так как теперь мне довелось побывать по обе стороны процесса отбора, я хотел бы помочь вам – студентам, которые пытаются попасть на первую в жизни интернатур...

Морти, мы в UltraHD! Как посмотреть любой фильм в 4K, дорисовав его через малоизвестную нейросеть Наверное, вы слышали про технологию Яндекса DeepHD, с помощью которой они как-то раз улучшили качество советских мультфильмов. Увы, в публичном доступе ее еще нет, а у нас, рядовых программистов, вряд ли найдутся силы написать свое решение. Но лично мне, как обладателю Retin...

[Из песочницы] DDS Синтезатор на Verilog В этом посте я поделюсь тем, как разбирался с написанием DDS синтезатора на Verilog. Он будет использован для генерации синусоидального колебания, частоту и начальную фазу которого можно регулировать и рассчитан для использования с 8-битным однополярным ЦАП. О том, как рабо...

[Из песочницы] Три относительно честных способа создания Flutter проекта Итак, с презентацией Google первой стабильной версии Flutter, которая случилась 4 декабря 2018 г. начался процесс изменения ландшафта на полях мобильного программирования. Появился новый игрок, способный изменить правила самой игры. Теперь из одной базы кода можно создават...

Как школьники с нарушениями слуха осваивают программирование Веб-разработка – одна из самых перспективных областей знаний, которая открыта для изучения в том числе ребятам с особенностями развития. В этом убедились воспитанники самарской школы им. Т.С. Зыковой для обучающихся с ограниченными возможностями здоровья. Еще по теме: Н...

Первые шаги в IT: как Meet and Code объединяет единомышленников Европейская неделя программирования объединяет IT-энтузиастов, которые помогают юному поколению сделать первые шаги в мире программирования. В российских городах проходят хакатоны, воркшопы и мастер-классы. Как школьники осваивают технологии и что для них значит цифровое тв...

[Перевод] Создание игры для Game Boy, часть 2 Несколько недель назад я решила поработать над игрой для Game Boy, создание которой доставило мне большое удовольствие. Её рабочее название «Aqua and Ashes». Игра имеет открытые исходники и выложена на GitHub. Предыдущая часть статьи находится здесь. Фантастические спрайты...

[Из песочницы] Под капотом у React. Пишем свою реализацию с нуля 


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

JUnit в GitLab CI с Kubernetes Несмотря на то, что все прекрасно знают, что тестировать свой софт важно и нужно, а многие давно делают это автоматически, на просторах Хабра не нашлось ни одного рецепта по настройке связки таких популярных в этой нише продуктов, как (любимый нами) GitLab и JUnit. Восполним...

[Перевод] Почему я не использую веб-компоненты Я пишу это в основном для себя в будущем, чтобы у меня было куда сослаться, когда кто-нибудь спросит меня, почему я скептичен в отношении веб-компонентов и почему Svelte не компилируется в веб-компоненты по умолчанию. (Тем не менее, он может компилироваться в веб-компоненты,...

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

E-Dobavki — веб-сервис поиска пищевых добавок на Java и Spring Boot, написанный моими студентами Введение Так получилось, что последние почти два года я преподаю программирование в одной из IT школ Киева. Занялся я этим Just For Fun. Когда-то я вел блог по программированию, потом забросил. Но желание рассказывать полезные вещи заинтересованным людям никуда не делось. Мо...

[Перевод] Прекратите использовать Else в ваших программах Когда я только начинал программировать, хотел бы я, чтобы тогда нашёлся кто-то, кто мог бы рассказать об основных подводных камнях, с которыми я столкнусь при создании моего первого сайта. Тогда одной из проблем было чрезмерное использование else при написании условных выраж...

Инфраструктура как код, выигрываем на масштабе (Кирилл Ветчинкин, TYME) Модель «Инфраструктура как код (IaC)», которую иногда называют «программируемой инфраструктурой», — это модель, по которой процесс настройки инфраструктуры аналогичен процессу программирования ПО. По сути, она положила начало устранению границ между написанием приложений и с...

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

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

Material как WebComponents В последнее время, как я уже отмечал в предыдущей статье, вполне себе активно ведутся разработки WebComponents оберток для популярных фреймворков позволяющий использовать их через браузерное API. Это значит, что если вы хотите использовать готовые компоненты созданные на том...

DrumHero: Как я делал первую в жизни игру В этом году социально-образовательной программе IT ШКОЛА SAMSUNG исполняется 5 лет (читайте об IT ШКОЛЕ здесь), и по этому случаю мы предложили нашим выпускникам рассказать о себе и опыте создания своих мобильных приложений. Мы верим, что при большом желании каждый может дос...

Эксперимент — от парного программирования к программированию всей командой Очень хочу поделиться с вами переводом статьи про эксперимент с моб-программированием от одного из его создателей, Вуди Зила. Это когда вся команда сразу работает за одним компьютером. Как парное программирование, только групповое. Я бывший Java-разработчик и тимлид с 11-лет...

[Из песочницы] Три парадигмы Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Three Paradigms» автора Robert C. Martin (Uncle Bob). За последние 40 лет технологии аппаратного обеспечения увеличили вычислительную мощность наших устройств более чем на двадцать порядков. Теперь мы играем в Angry ...

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

Программирование стало обязательным предметом с пятого класса Как пишет TAdviser со ссылкой на Nikkei, по мере того как информационные технологии все глубже проникают в повседневную жизнь, международная конкуренция в этой области накаляется. Япония намерена создать как можно более широкий круг потенциальных ИТ-специалистов, чтобы дети,...

Монолит для сотен версий клиентов: как мы пишем и поддерживаем тесты Всем привет! Я бэкенд-разработчик в серверной команде Badoo. На прошлогодней конференции HighLoad я выступал с докладом, текстовым вариантом которого и хочу поделиться с вами. Этот пост будет наиболее полезен тем, кто самостоятельно пишет тесты для бэкенда и испытывает пр...

[Перевод] Анатомия сокола Недавно мы объявили о разработке игры Falcon Age о выращивании взрослой птицы из птенца сокола и совместном противостоянии силам, стремящимся колонизировать планету. Falcon Age выйдет в 2019 году на PS4 и PS VR. На прошлой неделе мы показали игру на PAX и получили замечате...

[Из песочницы] Как построить бизнес-технологию планирования продаж в единой системе В данной статье я бы хотел поделиться опытом построения системы планирования продаж и рассказать о практических шагах по ее внедрению. Проблема разрозненного планирования Зачастую в компаниях складывается следующая ситуация: У каждого подразделения возникает своя, уникальна...

[Из песочницы] Путь школьника к разработке мобильных приложений Здравствуйте, хочу рассказать о том, как я пришёл к созданию своей первой относительно серьезной игры для IOS и Android. Предыстория Ещё в средней школе, мы с другом хорошо относились к урокам информатики, мне нравилось кодить и решать различные проблемы при помощи програм...

Google Docs — любимый чат у школьников Как известно, текстовый редактор Google Docs допускает многопользовательскую работу, то есть несколько человек могут редактировать один документ. В том числе одновременно. Может быть кто-то не задумывался, но таким образом можно отправлять друг другу сообщения в реальном р...

Генерация документов с помощью ONLYOFFICE DocumentBuilder Привет, Хабр. Я хочу рассказать об утилите под названием DocumentBuilder, которая позволяет генерировать документы, таблицы и презентации, а также показать, как можно его использовать для решения ваших задач, на примере создания резюме из шаблонов. Работает билдер следующи...

Школьники в Пензе напишут свой первый код Новички узнают, как пишут программы: дети 8–11 лет будут осваивать Scratch, а подростки 11–16 лет — Python. Ребята, уже знакомые с программированием, примут участие в соревновании по Scratch или Python — «IT-задачник». Участники будут соревноваться, кто найдет больше о...

Пишем презентации в LaTeX В процессе подготовки доклада на GolangConf'2019 я использовал LaTeX. Несмотря на некоторые устаревшие вещи, немного необычное поведение, скудную или сложную документацию, я внезапно получил удовольствие. Я не стал "гуру" LaTeX, но я смог делать весьма неплохие слайды. И я х...

[Перевод] Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенУ нас есть компонент переключатель...

Игры на программирование действий — развлечение или способ приобщить детей к алгоритмике и робототехнике Обычно, когда родители слышат фразу «обучение детей программированию и робототехнике», они представляют себе уроки в кружках или школе или усаживание ребенка за компьютер/планшет с обучающим софтом или книгой. Но многие родители не знают, что существуют настольные игры, ко...

Аппликативные парсеры на Haskell Мотивация Когда я только начинала осваивать Haskell, меня очень раздражало повсеместное использование сложных абстракций вместо каких-то конкретных решений. Мне казалось, что гораздо лучше всегда следовать принципу KISS и писать велосипеды с использованием элементарных конс...

[Перевод] Десять лет программирования на Erlang Я присоединился к сообществу Erlang около 10 лет назад, посреди первой фазы хайпа. Нам говорили, что Erlang — это будущее конкурентности и параллелизма. Реализовать их на этом языке проще и быстрее всего, и вы ещё получите бесплатную распределённость. В то время будущее каз...

[Из песочницы] Управление состоянием и событиями между компонентами в GameObject Управление состоянием и событиями между компонентами в GameObject Ссылка на проект Как известно всем, более или менее знакомых с платформой Unity, каждый игровой объект GameObject состоит из компонентов (встроенных или пользовательских, который обычно называют «скрипт»). Ко...

Переупаковка пакетов в Gradle В своей статье хочу рассказать об очередной хитрости, которую можно довольно просто реализовать с помощью Gradle — переупаковке пакетов библиотек. Каждый, кто хоть чуть чуть работал с этой системой сборки, знает, что она автоматически умеет решать конфликты разных версий биб...

Jaxb (XJC) генерация классов из XML Schema (XSD) с описаниями классов и полей в виде аннотаций. XJC плагин Думаю многие Java-разработчики которые хоть раз сталкивались с Web-сервисами, использовали генерацию Java DTO классов по описанию XML Schema (XSD). Jaxb с этим справляется на ура, не важно как его использовать, через xjc или wsimport вызов из командной строки, maven или grad...

Уточняем описание функций системы с помощью диаграммы Sequence Уточняем описание функций системы с помощью диаграммы Sequence (продолжение "Белки") В данной статье рассмотрим, как можно детализировать (уточнить) описание автоматизируемой функции с помощью UML Sequence Diagram — диаграммы последовательности. В данном примере я использую ...

[Из песочницы] Почему мы пишем бизнес-логику на Lua Привет, Хабр. В этом посте мы хотим рассказать о том, как и почему мы в IPONWEB используем язык программирования с красивым названием Lua. Lua — скриптовый встраиваемый язык программирования со свободно распространяемым интерпретатором и открытыми исходными текстами на C. О...

[Перевод] Руководство по разработке, основанной на компонентах Модульность является одним из ключевых принципов разработки программного обеспечения с 1960-х годов. Применение этого принципа приносит в программирование много полезного. Модульность способствует эффективному использованию принципа разделения ответственностей, что ведёт к у...

Shader — это не магия. Написание шейдеров в Unity. Введение Всем привет! Меня зовут Дядиченко Григорий, и я основатель и CTO студии Foxsys. Сегодня хочется поговорить про шейдеры. Умение писать шейдеры (и в целом работать с рендером) очень важно при разработке под мобильные платформы или AR/VR, если хочется добиться крутой графики. М...

От UI-kit до дизайн-системы Опыт онлайн-кинотеатра Иви Когда в начале 2017 года мы впервые задумались о создании собственной системы доставки дизайна в код, об этом уже многие говорили и кто-то даже делал. Однако, об опыте построения кроссплатформенных дизайн-систем и по сей день мало что известно, а ...

VR против учебников: какие технологии меняют образование Искусственный интеллект не заменил преподавателей, а VR-ролики пока не вытеснили традиционные учебники. Но эти и другие технологии уже сейчас меняют подходы к процессу обучения. Журналист Теплицы Екатерина Ульянова узнала, как различные EdTech-проекты и разработки помогают ...

[Из песочницы] Эффективное создание компонентов с помощью styled system Для стилизации react компонентов наша команда использует styled-components. О styled-components уже есть статьи на Хабре, поэтому подробно останавливаться на этом не будем. Знакомство с Styled components Лучше, быстрее, мощнее: styled-components v4 Написав много компоне...

Уроки по SDL 2: Урок 2 — Main не резиновый Всем привет! Это мой второй урок по SDL 2. Информацию я всё ещё беру отсюда. Итак, приветствую вас на уроке Main не резиновый На прошлом уроке я всё красиво расположил в функции Main(), но для больших программ это не есть хорошо. Именно по-этому появилась возможность писать...

Управление персонажем с помощью SharedEvents Ссылка на проект В данной статье я хочу показать, как можно использовать SharedEvents для управления персонажем от третьего лица, который предлагает стандартный набор ассетов. О SharedEvents я писал в предыдущих статьях (этой и в этой). Добро пожаловать под кат! Читать да...

Как управлять React Data Grid через Redux Это продолжение предыдущей статьи: Зачем писать свой React Data Grid в 2019 Для чего нужен Redux? Ответов много. Например, чтобы работать с общими данными в разных React-компонентах. Но можно воспринимать Redux еще как способ манипулирования компонентой. Сам взгляд интересны...

[Перевод] Примеры C++ кода до и после Ranges Снова здравствуйте. Перевод следующего материала подготовлен специально для студентов курса «Разработчик C++», занятия по которому стартуют уже 27 июня. Библиотека Ranges была принята в C++20 на совещании стандартного комитета в Сан-Диего в ноябре прошлого года. Библиотек...

Kubernetes Operator на Python без фреймворков и SDK Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как: Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK. На Go написа...

OTUS. Наши любимые ошибки Два с половиной года назад мы запустили проект Otus.ru и я написал вот эту статью. Сказать, что я ошибся – это совсем ничего не сказать. Сегодня я хотел бы подвести промежуточный итог и немного рассказать о проекте, что у нас пока получилось, что у нас «под капотом». Начну я...

Школьники станут 3D-разработчиками на воркшопе Создание 3D-игр – одна из самых интересных и сложных профессий. Подробнее узнать о ней и попробовать себя в качестве гейм-разработчиков смогут школьники в Иркутске. Бесплатный воркшоп, который станет частью  Европейской недели программирования, пройдет в рамках иниц...

[Из песочницы] Не учите паттерны, учите концепции Добрый день (или вечер, или утро, в зависимости от того, когда выйдет этот пост). Я хочу высказаться о элитарной части программирования, и донести, в общем-то, очевидную мысль до начинающих в back-end(и не только) разработке, попутно используя попытку начать писать на Хабре...

[Из песочницы] Откуда растут ноги у Java Memory Model Современное железо и компиляторы готовы перевернуть с ног на голову наш код, лишь бы он работал быстрее. А их производители тщательно скрывают свою внутреннюю кухню. И все прекрасно, пока код выполняется в одном потоке. В многопоточной среде можно волей-неволей наблюдать и...

Must-have плагины и несколько полезностей для С\С++ разработки в VS Code Удивительно, но до сих пор на Хабре нет хорошей подборки плагинов для Visual Studio Code для тех, кто пишет на С/С++. Microsoft в своем блоге опубликовали только статью, совсем базового уровня с инструкцией по настройке. Но большинство читателей Хабра, тем более из разрабо...

Как писать полиморфические программы c помощью Arrow Привет, Хабр! Меня зовут Артём Добровинский, я работаю в компании Finch. Предлагаю к прочтению статью одного из отцов библиотеки функционального программирования Arrow о том, как писать полиморфические программы. Часто люди, которые только начинают писать в функциональном...

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

Логи не нужны? Разработка сильно изменилась за последние годы. Вместо монолитных приложений пришли микросервисы и функции. Базы данных из универсальных промышленных монстров переродились в узконаправленные. Docker изменил взгляд на деплой. Но изменилось ли наше представление о логах? Одна...

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

[Перевод] Как я пишу конспекты по математике на LaTeX в Vim Некоторое время назад на Quora я отвечал на вопрос: как успевать записывать за лектором конспект по математике на LaTeX. Там я объяснил свой рабочий процесс по конспектированию в LaTeX с помощью Vim и Inkscape (для рисунков). Но с тех пор многое изменилось, так что я хочу оп...

[Перевод] Создание приложения с использованием Styled-Components в Vue.js Привет, Хабр! На днях наткнулся на одну очень интересную статью на португальском. К счастью, удалось найти её английскую версию. Предлагаю вашему вниманию перевод на русский. Другие мои переводы вы можете найти на мой странице на хабре. Ссылка на оригинал: португальский, ан...

Таблица Менделеева на школьной информатике (Управляющие карты) (Посвящается Международному году Периодической таблицы химических элементов) (Цветок Менделеева, Источник) Помнится, мы проходили утку. Это были сразу три урока: география, естествознание и русский. На уроке естествознания утка изучалась как утка какие...

[Из песочницы] Что нужно для разработки игр и кем реально является разработчик игр Большинство людей (нормальных), которые планируют заниматься программированием (как хобби или основной профессией) обычно задаются вопросами: «Что такое программирование?», «Зачем мне нужно программирование?», «Какой язык я буду учить?», «Что я получу в итоге?». Таким был и...

[Из песочницы] Сплайны в 3d графике, максимально автоматизированный вариант С месяц назад начал учить Python по книге Доусона и очнулся уже глубоко в процессе написания своей игры под pygame. ТЗ было таково, что наиболее перспективным показалось сделать игру с псевдо-трехмерной графикой, запихнув в спрайты сохраненные поверхности 3d-сплайнов. О посл...

[Перевод] Десять заповедей React компонентов Написано Kristofer Selbekk, в сотрудничестве с Caroline Odden. Основано на лекции с таким же названием и с теми же людьми, состоявшейся на встрече ReactJS в Осло в июне 2019 года.От переводчика — оригинальное название The 10 Component Commandments не упоминает React, но бол...

Много свойств или свойство-объект: критерии выбора Много свойств или свойство-объект: критерии выбора Мы используя Vue, разрабатываем компоненты различного рода и условий применения. Одной из ключевых частей любых компонентов — это их интерфейс. Во Vue, передаваемые свойства — являются очень важной, если не самой важной, ч...

[Перевод] Пишем чистый и масштабируемый JavaScript-код: 12 советов Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов. Современные веб-приложения силь...

«САПР для всех, даром, и пусть никто не уйдет…» или первые шаги в программировании FreeCAD на Python Возможно, вам уже ранее попадались мои заметки по первым шагам в программировании САПР на примере NanoCAD. Надо отметить, что для человека не умеющего программировать и знающего САПР на уровне «электронного кульмана» это было удивительное приключение. Однако, NanoCAD это вс...

FFI: пишем на Rust в PHP-программе В PHP 7.4 появится FFI, т.е. можно подключать библиотеки на языке C (или, например, Rust) напрямую, без необходимости писать целый extension и разбираться в его многочисленных нюансах. Давайте попробуем написать код на Rust, и используем его PHP-программе Читать дальше →

Пишем свой язык программирования, часть 1: пишем языковую ВМ Введение Доброго времени суток всем хабрачитателям! Итак, пожалуй стоит сказать, что целью моей работы, на основе которой будет написан ряд статеек было пройти весь путь создания полнофункционального ЯП самому с 0 и затем поделиться своими знаниями, наработками и опытом с и...

[Перевод] История создания первой Diablo Больше двадцати лет назад Дэвид Бревик участвовал в создании Blizzard North. Также он сыграл важную роль в разработке хита студии — Diablo. «Оригинальный концепт я придумал ещё в старшей школе», — рассказывает Бревик, посещавший школу в Области залива Сан-Франциско (назван...

[Перевод] Пишем OTA-загрузчик для ATmega128RFA1 (в составе устройства Smart Response XE) Всё началось с приобретения автором на вторичном рынке интересного устройства — Smart Response XE (краткое описание). Предназначено оно для школ: каждый ученик в классе получает по девайсу, похожему на электронную записную книжку или переводчик девяностых, учитель задаёт в...

Принцип Брета Виктора: «Творцам нужна мгновенная связь с тем, что они создают» Это одно из лучших выступлений, которое я встречал. Хоть про эту презентацию уже писали на Хабре и переводили 6 лет назад, я решил её красиво оформить и ещё раз обратить на неё внимание. Она того стоит. Брет Виктор: Я просто хочу рассказать вам о том, как прожить свою жиз...

Книга «Kotlin. Программирование для профессионалов» Привет, Хаброжители! Книга Джоша Скина и Дэвида Гринхола основана на популярном курсе Kotlin Essentials от Big Nerd Ranch. Яркие и полезные примеры, четкие объяснения ключевых концепций и основополагающих API не только знакомят с языком Kotlin, но и учат эффективно использо...

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

[Из песочницы] Лучшие практики React и советы, которые каждый разработчик должен знать. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «React Best Practices & Tips Every React Developer Should Know Pt.1» автора Alex Devero. React — одна из самых популярных библиотек для построения интерактивных пользовательских интерфейсов. В этой статье я пока...

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

[Из песочницы] Руководство по организации архитектуры Android приложения Привет, Хабр! Представляю вашему вниманию вольный перевод «Руководство по архитектуре приложения (Guide to app architecture)» из JetPack. Все замечания по переводу прошу оставлять в комментариях, и они будут исправлены. Так же для всех будут полезны комментарии от тех кто ис...

Пишем собственный CLI для React Если вы делаете Ctrl+C каждый раз при создании нового компонента в реакте, то эта статья точно для вас! У реакта нет своего CLI, и понятно почему. Не существует определенных правил, как именно должна выглядеть структура компонента, есть только общие рекомендации в документа...

PHP-Watcher: инструмент, который упрощает разработку долгоживущих приложений Мы любим PHP за простоту: ты пишешь код, обновляешь страницу в браузере и сразу видишь изменения. Но если дело доходит до консольных команд, которые могут быть долгоживущими процессами, — например, если мы пишем асинхронный HTTP-сервер для загрузки файлов, — разработка мож...

[Перевод] Cascadeur: будущее игровой анимации Всем привет! Мы — студия разработки Banzai Games. Рады наконец открыть здесь свой блог. Будем писать о наших технологиях, проектах и делиться историями из жизни компании. Первый материал — перевод интервью с основателем студии Евгением Дябиным, которое он дал коллегам из и...

[Перевод] Введение в Kubernetes для пользователей VMware. Часть 1. Теория Это вторая часть из моей серии постов “Kubernetes in the Enterprise”. Как я упоминал в моем последнем посте, очень важно при переходе к “Design and Implementation Guides” всем быть на одном уровне понимания Kubernetes (K8s). Я не хочу здесь применять традиционный подход дл...

Интеграция с SAP ERP. Реализация мобильного прайс-чекера в магазине В рассматриваемом нами примере интеграции SAP ERP со сторонним ПО, мы будем использовать SAP Connector for Microsoft .NET для получения данных из SAP. Программное обеспечение для терминала сбора данных (ТСД) будет взаимодействовать с Microsoft Internet Information Server (II...

[Из песочницы] Unittest и абстрактные тесты Вместо вступления Unittest — наверное самый известный фреймворк для написания тестов в Python. Он очень прост в освоении и его легко начать использовать в вашем проекте. Но ничто не бывает идеальным. В этом посте я хочу рассказать об одной возможности, которой лично мне (дум...

[Перевод] Самодельный сборщик мусора для OpenJDK Это перевод статьи Алексея Шипилёва «Do It Yourself (OpenJDK) Garbage Collector», публикуется с согласия автора. О любых опечатках и других багах сообщайте в личку — мы их поправим.Процесс создания чего-нибудь в рантайме языка — весёлое упражнение. По крайней мере, создание ...

Huawei будет использовать модемы 5G MediaTek в своих бюджетных смартфонах Компания Huawei всеми силами пытается снизить зависимость от иностранных компонентов в своих мобильных (и не только) устройствах. Именно по этой причине компания форсировала выпуск операционной системы HarmonyOS, и по этой же самой причине собирается использовать модемы...

[Перевод] Один язык чтобы править всеми Скрытый под слоем кода, томится язык, жаждущий быть выученным. На момент написания этой статьи запрос «программирование какой язык изучать первым» выдаёт 517 миллионов поисковых результатов. Каждый из этих сайтов будет нахваливать один определённый язык, и 90% из них, в кон...

Как помочь ребенку выучить алфавит с помощью iPhone или iPad Дети обожают играть на iPad. Но можно превратить инструмент из игрушки в учебник В последнее время мы уделяем достаточно много внимания самой младшей аудитории нашего сайта, публикуя обзоры и обновления приложений для самых маленьких. К сожалению, стоящих проектов для детей ...

Обучение детей программированию Здравствуйте. Меня зовут Михаил Капелько. Занимаюсь профессиональной разработкой ПО более 10 лет. Из них последние годы связаны с iOS. В свободное время разрабатываю игры и средства для их создания. Обзор Сегодня хочу рассказать о своём опыте обучения детей программированию,...

Гиперконвергентное решение AERODISK vAIR. Основа — файловая система ARDFS Привет, читатели Хабра. Этой статьей мы открываем цикл, который будет рассказывать о разработанной нами гиперконвергентной системе AERODISK vAIR. Изначально мы хотели первой же статьей рассказать всё обо всём, но система довольно сложная, поэтому будем есть слона по частям....

[Перевод] Современное окружение для React Native приложений В этой статье мы рассмотрим настройку React Native окружения с использованием expo-cli, Typescript, и Jest. Typescript поможет нам избежать ошибок при разработке и написать более эффективное мобильное приложение. Современные разработки позволяют интегрировать Typescript в ...

[Перевод] Очень математическая история идеального сочетания цветов Захари Бир создаёт рисунки, используя цветовую палитру от цветовой схемы для Мака Solarized и собственную программу для генерации изображений Geometriq. Пару лет назад я влюбился в цветовую палитру: цвет, чуть темнее белого, выделяемый жёлто-оранжевым и нейтральным голубым...

Программирование в России введут с начальной школы Одно из заданий детского курса программирования на Code.org. Справа — программа на языке Blockly Согласно предложению Министерством просвещения РФ, в курс математики для младших школьников включат основы создания кодов и языков программирования, пишут «Известия». Это преду...

Мастер-класс по программированию для школьников в Самаре Преподаватели проведут интерактивный урок по гибкому программированию. В бесплатном мастер-классе, который состоится в рамках инициативы Meet and Code, примут участие школьники в возрасте 10–16 лет с нарушениями слуха. На примере готовых программных модулей участники сде...

[Перевод] Хранилища в Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor Обновление!. В комментах один из читателей предложил попробовать Linstor (возможно, он сам над ним работает), так что я добавил раздел об этом решении. Еще я написал пост о том, как его установить, потому что процесс сильно отличается от остальных. Если честно, я сдался и о...

[Перевод] Как найти работу с релокацией в Европу: практический гайд для IT-специалистов Сам по себе поиск работы в сфере IT достаточно прост. Что же касается поиска вакансий с возможность релокации, здесь уже сложнее. Несмотря на то, что технологические компании по всему миру сейчас активно нанимают разработчиков и других IT-специалистов из-за рубежа, поиск так...

SSD на базе QLC — убийца жёстких дисков? На самом деле нет SSD-накопители уже давно вышли из разряда дорогой и ненадежной экзотики и стали привычным компонентом компьютеров всех уровней, от бюджетных офисных «печатных машинок» до мощных серверов. В этой статье мы хотим рассказать о новом этапе эволюции SSD — очередном повышении уро...

Сознание и аргумент судного дня Жил был моряк. У него было две любимых женщины в разных портах, и он хотел детей – вот только не решил, одного или двух. Он решил кинуть монету. Орел – будет один ребенок от одной из женщин (к которой первой зайдет в порт по работе – это уж как получится), решка – сделает ...

[Из песочницы] Блочное программирование Здравствуйте! Начну статью с небольшого отступления. Не посетило ли вас разочарование когда вы впервые столкнулись с программированием? Я предполагал что создание программ происходит путём взаимодействия с каким-то сложным, но очень интересным инструментом, в котором я смог...

WebComponents как фреймворки, взаимодействие компонентов Когда разговор заходит о веб компонентах, часто говорят: «Ты что хочешь без фреймворков? Там же все готовое». На самом деле есть фреймворки созданные на основе реализаций стандартов входящих в группу веб компонентов. Есть даже относительно неплохие, такие как X-Tag. Но сегод...

«Однозначно, такие занятия нужны»: как глухие дети сделали игру на Scratch 10 и 11 октября 2019 года в Москве прошли занятия по программированию на Scratch для глухих и слабослышащих детей – подопечных общественной организации «Я понимаю». Мероприятие состоялось в рамках Европейской недели программирования и инициативы Meet and Code. Влад Лавричен...

Робот-тьютор для детей с РАС Комплекс томичи разрабатывают в сотрудничестве с центром поведенческого анализа Новосибирского государственного университета, компанией Комплект-ОМ (Новосибирск), при поддержке центра НейроНет(Новосибирск)."Расстройства аутического спектра - это проблема для всего мира....

Автоматизируем переход на React Hooks React 16.18 — первый стабильный релиз с поддержкой react hooks. Теперь хуки можно использовать не опасаясь, что API изменится кардинальным образом. И хотя команда разработчиков react советует использовать новую технологию лишь для новых компонентов, многим, в том числе и мне...

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

[Из песочницы] Разработка игры и защита диплома или «Как я убил двух зайцев первым блином» Дипломный проект О создании игр и получении высшего образования обычно говорят как о вещах несовместимых, часто вполне справедливо. Многие известные инди-разработчики бросали универы. Я же расскажу о противоположном опыте. О своём довольно необычном проекте и о том, как удал...

Программирование для детей. Пять самых крутых игр на HTML и JavaScript Привет, Хаброжители! Хотите сделать отличный подарок ребёнку, желающему научиться программировать, или научить взрослого, далёкого от мира кодов? Тогда книга-героиня нашего поста Вам подойдет. Эта книга научит писать код веб-игр на языках HTML и JavaScript и даже поможет чи...

Введение в программирование: простой 3Д шутер с нуля за выходные, часть 2 Продолжаем разговор про 3Д шутер за выходные. Если что, то напоминаю, что это вторая половина: Часть первая: отрисовка стен Часть вторая: населяем наш мир + оконный интерфейс Как я и говорил, я всеми силами поддерживаю желание в студентах делать что-то своими руками. В ча...

Анализ кода CUBA Platform с помощью PVS-Studio Для Java программистов существуют полезные инструменты, помогающие писать качественный код, например, мощная среда разработки IntelliJ IDEA, бесплатные анализаторы SpotBugs, PMD и другие. Всё это уже используется в разработке проекта CUBA Platform, и в этом обзоре найденных...

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

Собираем окружение для современного TDD на JavaScript + VS code TDD уже давно не является чем-то диковинным: на хабре можно найти об этом подходе сотни статей, а каждый новичок знает, какую книгу об экстремальном программировании ему нужно прочитать. Многие мои коллеги тоже используют TDD. Они добавляют тест, пишут код, рефакторят, по...

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

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

Работа с API КОМПАС-3D → Урок 15 → Составные строки на основе параграфа В уроке 12 мы познакомились с составными строками и рассмотрели недокументированный способ их создания. В уроке 13 были представлены параграфы. Сегодня мы рассмотрим, как их использовать для создания составных строк. Для начала возьмем строки, включающие в свой состав отклон...

[Перевод] 9 библиотек веб-компонентов 1. Material components web Обычно заголовок «Material» размещает библиотеку компонентов пользовательского интерфейса прямо наверху рейтингов по количеству звездочек и загрузок. Веб-библиотека Google Material-components — это версия веб-компонента библиотеки Material-UI. По...

[Перевод] Rust в Microsoft (или cоздание Security Daemon Azure IoT Edge) Примечание от переводчика: Rust относительно молодой язык программирования, и на этом этапе развития всегда интересные опыты практического применения. Известно, что Intel, DropBox, Amazon, Facebook и другие используют Rust для своих проектах. Про применение Rust в проекте ...

От Москвы до Новосибирска: как проходят IT-уроки для детей Разрушить стереотипы, объединить ребят, увлеченных технологиями, вдохновить на поиски своего призвания – такие цели ставили перед собой участники Европейской недели программирования. Как проходят мероприятия, которые состоялись в рамках инициативы Meet and Code, в нашей ста...

Can I haz? Ударим программированием на типах по дженерикам Привет, Хабр. В прошлый раз мы описали Has-паттерн, обрисовали проблемы, которые он решает, и написали несколько конкретных инстансов: instance HasDbConfig AppConfig where getDbConfig = dbConfig instance HasWebServerConfig AppConfig where getWebServerConfig = webServerCo...

[Перевод] Пишем собственный воксельный движок Примечание: полный исходный код этого проекта выложен здесь: [source]. Когда проект, над которым я работаю, начинает выдыхаться, я добавляю новые визуализации, дающие мне мотивацию двигаться дальше. После выпуска первоначального концепта Task-Bot [перевод на Хабре] я почу...

Что такое SwiftUI и зачем он нужен Разработка приложений скоро выйдет на новый уровень Через несколько лет, может быть уже через год или два, операционные системы Apple радикально изменятся внутри. И, конечно же, за этим последуют внешние изменения, и надеюсь, системы станут лучше. Небольшое число фрагментов ...

Новая игра со старой атмосферой на Three.js. Часть 2 В первой части я рассказал о проблемах, с которыми я столкнулся в процессе создания 3D игры под браузер c использованием Three.js. Теперь я хотел бы подробно остановиться на решении некоторых важных задач при написании игры, типа конструирования уровней, определения столкнов...

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

[Из песочницы] Игра (не) для дураков. Пишем AI для «Дурака» (часть 1) Думаю, ни для кого не секрет, что "Дурак" (далее это слово будет написано с маленькой буквы и без кавычек) — это самая популярная карточная игра в России и странах бывшего СССР (хотя и почти неизвестная за его пределами). Несмотря на свое название и довольно неслож...

Как разнообразить уроки программирования для детей разных возрастов В этом материале Александра Дмитренко, Software Engineer, рассказывает о своем опыте преподавания программирования детям и объясняет, что работает лучше всего для каждой возрастной группы. Читать дальше →

Открытый лекционный вечер по геймдизайну в ВШБИ 22 марта 2019 года в Высшей школе бизнес-информатики НИУ ВШЭ состоится Лекционный вечер по геймдизайну в рамках программ «Менеджмент игровых проектов», «Основы создания игр в виртуальной реальности» и «Основы создания игр». 22 марта 2019 года в 19:00 в Высшей школе бизне...

[Из песочницы] Lock с приоритетами в .NET Каждый программист, использующий более одного потока в своей программе, сталкивался с примитивами синхронизации. В контексте .NET их очень и очень много, перечислять не буду, за меня это уже сделал MSDN. Мне приходилось пользоваться многими из этих примитивов, и они прекрас...

[Перевод] Что такое качественная idle-анимация? Разработчики делятся своими любимыми примерами Создание связи игрока с персонажем, раскрытие подробностей его личности, чтобы он был для игрока уникальным — сложная задача, и как решить её всего несколькими простыми движениями? Анимации ожидания (Idle animations), эти небольшие всплески движения, когда игрок ненадолго ...

[Перевод] The Pirate Bay за 15 лет так и не смогли убить Интернет продолжает развиваться с небывалой скоростью, но одно в нём остаётся неизменным — это The Pirate Bay Как-то в 2009-м году, в тихом уголке читального зала моей школы, я загрузил свой побитый жизнью ноутбук, при этом следя за тем, чтобы никто не подглядывал мне чер...

Что нужно знать о JavaScript Engine Switcher 3.0 JavaScript Engine Switcher изначально создавался как вспомогательная библиотека и его развитие во многом определялось потребностями библиотек, которые его использовали. Фактически каждая его мажорная версия решала одну или несколько крупных задач необходимых для дальнейшего...

Где обучать детей программированию? Ежегодно HeadHunter проводит “Школу программистов”, где обучает студентов и молодых специалистов всем хитростям разработки, а также работе в команде. Помимо языков программирования ребята изучают основы дизайна, тонкости командной разработки. Недавно мы стали обсуждать, ка...

Беспилотный автомобиль: оживляем алгоритмы. Доклад Яндекса Подробная расшифровка еще одного доклада со встречи Яндекс.Железо — про разработку устройств для беспилотника. — Всем привет, меня зовут Виталий Подколзин, я руководитель разработки встраиваемых систем проекта беспилотного автомобиля. И сегодня я хотел бы с вами поговорит...

Резюме того парня Друзья, нам с вами несказанно повезло. Тот парень еще не уехал, и я выпросил у него резюме. Не потому, что хочу взять его на работу — не тот я человек. Просто мне кажется, оно стоит того, чтобы быть опубликованным. Хотя бы потому, что в нем 22k букв. Вы еще где-нибудь такой ...

[Перевод] Пишем клон движка Doom: чтение информации карт Введение Цель этого проекта — создание клона движка DOOM, использующего ресурсы, выпущенные вместе с Ultimate DOOM (версия со Steam). Он будет представлен в виде туториала — я не хочу добиваться в коде максимальной производительности, а просто создам работающую версию, и п...

Sberbank AI Journey. Как мы учили нейросеть сдавать экзамен Если вы закончили школу уже во времена ЕГЭ, то вам известно, что все задания в нём имеют набор стандартных формулировок и упорядочены по типам. С одной стороны, это облегчает подготовку к экзамену: школьник уже знает, что нужно делать в задании, даже не читая его условия. С ...

[Из песочницы] Generic Recycler View или как не писать шаблонный код Все мы пишем приложения и у всех нас есть списки. И самое очевидное решение это RecyclerView. Сама по себе реализация не сложна и писать гайд по RecyclerView уже не актуально. Но есть одно но. Каждый раз когда нам нужен список мы создаем класс, в нем прописываем шаблонный ме...

[Из песочницы] Беспроводная зарядка. Как она работает на практике У меня свой магазин разных беспроводных зарядных устройств. За год работы в этой области я успел разобраться в характеристиках работы устройств, различиях, проблемных областях зарядок и прочитать очень много статей, в которых пишут не разобравшись в тематике. В этой и сле...

With love from Stepik: образовательная платформа Hyperskill Я хочу поговорить с вами о том, почему мы чаще чиним сантехнику, чем пишем про неё диссертации, о разных подходах к обучению программированию и о том, как мы пробуем применить один из них в нашем новом продукте Hyperskill. Если вам не по душе длинные вступления, то переходи...

[Из песочницы] Разработка под Docker. Локальное окружение. Часть 1 Возможно, одна из самых основных причин почему мне нравится докер это то, что он позволяет избавиться от необходимости установки на компьютер различных сервисов. К их числу можно отнести и сам веб-сервер Apache или Nginx, базы данных и прочие компоненты инфраструктуры прилож...

Нейросеть создала реалистичный портрет героя Doom Пока Сержант Марк радует нас очередной Gold-версией кровавого и невероятно динамичного Brutal Doom, а Bethesda дразнит геймплейными трейлерами грядущего Doom Ethernal, нейросети не остаются в стороне. Система из нескольких нейросетевых алгоритмов взяла за основу пиксельное л...

«В Добрянке такого еще не было»: как прошел «Умный выходной» 12 октября в Добрянке Пермского края дети и молодые жители города учились 3D-моделированию и работе с лазерным станком, а также окунулись в мир физики и химии. Всего в этот день мероприятия «Умного выходного» в рамках инициативы Meet anCode посетили 42 человека. Участник...

Стажировка вслепую в Музее современного искусства «Гараж» Привет, меня зовут Даниил, мне 19 лет, я ученик ГКОУ СКОШИ №2. Летом 2018 года я проходил стажировку в отделе информационных технологий, департамента информационных и цифровых технологий музея современного искусства «Гараж», впечатлениями о которой и хочу сейчас с вами поде...

Памятка начинающему разработчику компьютерных игр Данная статья ориентирована на школьников, студентов, и тех, кто постарше, кто никогда не пробовал, но очень хочет начать писать компьютерные игры. Кто в детстве не играл в компьютерные игры, и не хотел написать свою игру, которая будет лучше, чем GTA или Crysis? И я хотел,...

[Перевод] Моки, стабы и шпионы в Spock Framework Spock предоставляет 3 мощных (но разных по сути) инструмента, упрощающих написание тестов: Mock, Stub и Spy. Довольно часто коду, который нужно протестировать, требуется взаимодействовать с внешними модулями, называющимися зависимостями (в оригинальной статье используется т...

[Перевод] Использование UIViewPropertyAnimator для создание пользовательских анимаций Создание анимаций это здорово. Они являются важной частью iOS Human Interface Guidelines. Анимации помогают привлечь внимание пользователя к важным вещам или попросту делают приложение не таким скучным. Существует несколько способов реализовать анимацию в iOS. Вероятно, са...

Angulareact У меня есть проблема. Приложение написано на Angular, а библиотека компонентов на React. Делать клон библиотеки слишком дорого. Значит, нужно использовать React-компоненты в Angular-приложении с минимальными затратами. Разбираемся как это делать. Читать дальше →

Видео с поющими китайскими детишками, прославляющими Huawei, стало вирусным В минувшую среду в китайской социальной сети Weibo было опубликовано видео с поющими детьми, прославляющими Huawei, которое, как пишет государственный ресурс Global Times, стало вирусным. Впрочем, сама компания дистанцировалось от видео, ставшего предметом критики в Интернет...

В Китае умная форма не даёт школьникам спать на уроках и прогуливать школу Китайские школы в настоящее время отслеживают точное местоположение своих учеников, используя умную форму, оснащённую специальными микрочипами. Это делается для того, чтобы поддерживать высокую посещаемость, пишет местная государственная газета The Global Times. Каждый ...

Redux — пересмотр логики reducer'a и actions На днях ковыряясь в множестве файлов redux'a, где по логике файлы вынесены в reducers, actions, константы типов actions. Bсе это оказалось весьма не простая задача держа все эти типы файлов у себя в голове и прослеживать логику. И… эврика, появилась идея упрощения написания...

[Перевод] 5 отличных способов анимировать React-приложения в 2019 году Анимация в приложениях React — популярная и обсуждаемая тема. Дело в том, что способов ее создания очень много. Некоторые разработчики используют CSS, добавляя теги в HTML-классы. Отличный способ, его стоит применять. Но, если вы хотите работать со сложными видами анимаци...

ARM Assembler Editor: Если гора не идет к Магомеду, Магомед идет к горе… Если кто не знает мне интересно программирование на ассемблере для микроконтроллеров STM32… И все бы хорошо, да только программировать особо негде… Те среды которые есть в настоящий момент заточены больше для языка Си и программирование в них на ассемблере не сильно отличае...

[Перевод] Серверный рендеринг в бессерверной среде Автор материала, перевод которого мы публикуем, является одним из основателей проекта Webiny — бессерверной CMS, основанной на React, GraphQL и Node.js. Он говорит, что поддержка многоарендной бессерверной облачной платформы — это дело, которому свойственны особенные задачи....

Бэкап для Linux не пишет писем Всем привет! Сегодня хочу поведать о том, как управлять Veeam Agent for Linux с помощью командной строки, и о том, какие возможности она открывает в умелых руках программиста. На написание статьи меня подтолкнул комментарий к предыдущей статье. Перефразирую удивление поль...

[Из песочницы] Как я библиотеку для сервиса «Яндекс.Музыка» писал Введение Обо мне Всем привет, я обычный учащийся по специальности "техник-программист". С детства увлекаюсь компьютерами, с класса 7-го начал познавать само программирование. Являюсь владельцем подписки на Яндексу Музыку уже больше года и в целом доволен сервисом (...

[Из песочницы] Формула расчёта простых чисел и оптимизация перебора делителей Приветствую! Решил на досуге исследовать задачу поиска простых чисел. Тема обширная и интересная. Хочу поделиться парой соображений по ней, которые пришли в голову. Поиск в сети интернет подобных не выявил, указав на их оригинальность. Во-первых, нигде не нашёл математическ...

[Перевод] Яма продуктивности: как Slack вредит нашему рабочему процессу Такие программы для работы, как Teams, Slack и Workplace, должны были увеличить нашу продуктивность. Но не сделали этого. Несколько человек пишут сообщения. [Several people are typing.] Если вы какое-то время сидели в слаке, вы, вероятно, видели такое сообщение, плавающее...

[Перевод] C# или Java? TypeScript или JavaScript? Классификация языков программирования на основе машинного обучения На GitHub представлено больше 300 языков программирования, начиная с общеизвестных языков, таких как Python, Java, и Javascript, и заканчивая эзотерическими языками, такими как Befunge, известными только малым группам людей. Топ-10 языков программирования, размещенных на Gi...

[Из песочницы] Интеграция ClangFormat и Notepad++ ClangFormat является одним из лучших инструментов для автоматического форматирования исходных кодов на языках C, C++, Java, JavaScript, Objective-C, C#. Существуют плагины для популярных сред разработки (IDE), но часто нужно быстро отформатировать файл или часть файла с исхо...

[Из песочницы] Любительская голография — начало пути Хочу рассказать об одном из своих интересов – оптической голографии. Нет, это про не те голограммы, что в «Звёздных войнах», или в пирамидках на экранах мобильных телефонов, не про проекцию на плёнке, а то, о чём рассказывает Википедия в соответствующей статье. Не буду вдава...

Унифицированная обработка ошибок (C++ вариант для микроконтроллеров) При разработке ПО для микроконтроллеров на С++ очень часто можно столкнуться с тем, что использование стандартной библиотеки может привести к нежелательным дополнительным расходам ресурсов, как ОЗУ, так и ПЗУ. Поэтому зачастую классы и методы из библиотеки std не совсем подх...

[Из песочницы] Сборка transport-пакета без установки MODX Писать свои пакеты для MODX не просто для новичка, да и опытному разработчику иногда не сладко приходится. Но новичок пугается, а опытный разбирается :). Эта заметка рассказывает о том, как можно написать и собрать пакет компонента для MODX без установки и настройки самог...

[Перевод] Open source не приносит денег, потому что не создан для этого Лучший способ что-то сделать — хотя бы попробовать Все знают, что на open source невозможно заработать, верно? Я сейчас размышляю на эту тему, потому что Mozilla хочет в ближайшие несколько лет диверсифицировать доходы, но у нас одно ограничение — все разработки обязатель...

Как мы заново изобретали IP АТС Askozia, после того как проект был продан и закрыт разработчиком Как было все прекрасно до часа X Мы — небольшая команда разработчиков, которая много лет назад занималась разработкой и внедрением программ 1С. В далеком 2011 году мы хорошо знали программные продукты 1С, и не имели опыта в разработке собственных решений. На тот момент компа...

Как мы вдвое сократили издержки на вводный урок, подсмотрев решение у авиакомпаний Бесплатный вводный урок — фишка школы Skyeng. Потенциальный ученик может на нем познакомиться с платформой, проверить свой уровень английского, наконец, просто развлечься. Для школы же вводный урок — часть воронки продаж, за которой должна последовать первая оплата. Его про...

Программирование для детей и подростков – интересные курсы от DAN.IT education Если ребенку по душе компьютерные игры, интересует разработка несложных приложений или есть желание расширить кругозор, курсы программирования в учебном центре DAN.IT пойдут на пользу.

[Перевод] Мой однострочный клиент Dropbox под Linux Хочу рассказать о своей попытке создать простой однострочный клиент Dropbox под Linux, используя только бесплатные компоненты с открытым исходным кодом, в том числе rclone, entr и systemd. Контекст Недавно проприетарный клиент Dropbox под Linux отказался от поддержки всех ф...

[Перевод] Полное руководство по useEffect Вы написали несколько компонентов с использованием хуков. Возможно — даже создали небольшое приложение. В целом результат вас вполне устраивает. Вы привыкли к API и в процессе работы обнаружили несколько неочевидных полезных приёмов. Вы даже создали несколько собственных хук...

Школьники Вологды учились цифровой грамоте на кибер-соревнованиях 7 и 9 октября 2019 года в Вологде состоялась серия кибер-соревнований по цифровой грамоте. Мероприятия провели сотрудники и волонтеры компьютерного клуба VolBIT в рамках Европейской недели программирования и инициативы Meet and Code. В соревнованиях приняло участие 300 у...

[Перевод] Распознавание источников освещения на картах окружения В этой статье представлена реализация на Python алгоритма распознавания источников освещения на картах окружения (LDR или HDR) при помощи равнопромежуточной проекции (equirectangular projection). Однако после внесения незначительных изменений её также можно использовать с п...

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

О программе для школ проекта «Дни московской конкуренции» рассказал Александр Молотков На селекторном совещании Департамента образования и науки Москвы заместитель руководителя образовательного ведомства Александр Молотков рассказал, какое участие примут школы столицы в проекте «Дни московской конкуренции». Он сообщил, Специалисты Департамента образования...

Конечные React Компоненты Чем мне нравится экосистема React, так это тем, что за многими решениями сидит ИДЕЯ. Различные авторы пишут различные статьи в поддержку существующего порядка и обьясняют почему все "правильно", так что всем понятно — партия держит правильный курс. Через некоторые время ИДЕЯ...

Интерактивный Roadmap для изучающих веб-разработку В поселке продолжает развиваться школа программирования codery.camp. Недавно мы закончили полную переработку курса веб-разработки, который теперь доступен и в онлайн-форме. Для компоновки теоретических материалов мы применили необычное решение – все они объединены в интера...

[Перевод] Создание шейдера травы в движке Unity Из этого туториала вы научитесь писать геометрический шейдер для генерации травинок из вершин входящего меша и использовать тесселяцию для управления плотностью травы. Статья описывает поэтапный процесс написания шейдера травы в Unity. Шейдер получает входящий меш, и из ка...

R2DBC Arabba-RELEASE — новый взгляд на реактивное программирование для SQL Поздравляем Хабр с выходом R2DBC версии Arabba-RELEASE! Это самый первый стабильный релиз проекта. R2DBC (Reactive Relational Database Connectivity) — открытый проект, посвященный реактивному программированию для SQL. Разработчики R2DBC готовили первую версию спецификации ц...

А вы все-все за меня мониторить будете? Ага Обычно Хабр используется как информационное решение — кто-то делится наработанной и структурированной информацией, а кто-то эту информацию впитывает (я хотел написать “потребляет”, но это слово маркетологи уже испоганили). Я же, на правах старожила, и учитывая легкую рассл...

[Перевод] История одного SQL расследования В декабре прошлого года я получил интересный отчет об ошибке от команды поддержки VWO. Время загрузки одного из аналитических отчетов для крупного корпоративного клиента казалось непомерно большим. А так как это сфера моей ответственности, я тут же сосредоточился на решении ...

Google сломала Chrome для Android после обновления Google сломала Chrome для Android. С кем не бывает Несмотря на то что Google давно поставила на поток разработку новых версий своего ПО и, казалось бы, должна была отточить этот процесс до совершенства, время от времени в апдейты закрадываются те или иные баги. Чаще всего эт...

Мобильная разработка hh.ru и где она обитает В далеком 2000 году, когда hh.ru был совсем маленьким и ласково назывался “National Job Club”, а доступ к интернету получили всего 3% россиян, у нас, разумеется, не было никакой мобильной разработки. Тогда и смартфоны, в нынешнем их виде, были лишь далекой мечтой. Шли годы, ...

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

AR, робототехника и катаракта: как мы съездили на российско-немецкую школу по программированию В середине марта в Мюнхене прошла Joint Advanced Student School 2019 (JASS) — недельная англоязычная студенческая школа-хакатон++ по разработке программного обеспечения. О ней в 2012 году уже писали на Хабре. В этом посте мы расскажем о школе и поделимся впечатлениями нескол...

[Из песочницы] Метод создания DRAG and DROP эффекта Придя впервые к технологии DRAG and DROP столкнулся с очень тяжелым её описанием (Это мое субъективное мнение. Прошу с ним не соглашаться, а перечитать все что только можно и посмотреть на этот вопрос с многих сторон). И решил написать пару статей, нацеленных на начинающих р...

Изучение английского: a geeky way Доброй глубокой ночи, незаметно для меня перешедшей в утро. Пишу под влиянием того поста, тоже написанного под влиянием. Да, вторично и уже начинает надоедать, но удержаться просто не могу. Хочу описать свой личный, немного нетривиальный, вовсе не претендующий на способ и м...

Приглашаем на тренинг от разработчиков Intel Software и Яндекс «Разработка ПО в облаке» 11 октября и 7 ноября Intel Software Solutions проводит бесплатный мастер-класс для разработчиков в московском офисе Яндекса на Льва Толстого. Специалисты обеих компаний расскажут всем желающим о программных инструментах и облачных технологиях для разработки ПО, высокопрои...

Flutter. Плюсы и минусы В первую очередь расскажем немного о том, что же такое Flutter. Это фреймворк для создания мобильных приложений от компании Google. Он является кроссплатформенным и позволяет компилировать созданный проект под 3 операционные системы: Android iOS Fuchsia Причем для послед...

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

[Из песочницы] Разработка многозадачной микроядерной ОС — Планировщик После того, как вы прочитали базовые шаги по написанию Hello World ядра из цикла имеющихся на Хабре статей, самое время приступить к серьезной разработке самых базовых инструментов: аллокатора кучи и планировщика. Честно говоря я долго думал стоит ли начинать писать статьи ...

Пересечение тестирования и архитектуры: интервью с Нилом Фордом Что может значить должность «QA architect»? А что значит совсем уж непонятная должность «meme wrangler»? С какого момента при работе над архитектурой надо подключать тестировщиков? Как менять процессы в организации так, чтобы люди при встрече с первой же сложностью не возв...

Google рассказала, как создавать приложения на Android «Разработка Android-приложений на языке Kotlin» – это бесплатный онлайн-курс, который компания Google разработала совместно с образовательной организацией Udacity для того, чтобы любой желающий мог пройти самостоятельное обучение и постичь азы (и не только) программирования...

[Перевод] Тестирование не для начинающих Я большой фанат тестирования. Я пишу об этом в блог и почтовую рассылку, я обсуждаю это c другими разработчиками в свободное время, я зашел так далеко, что даже создал обучающий курс по тестированию в Go. Но несмотря на всю мою любовь к тестированию, я не рекомендую его нов...

Мой способ создания мастер-компонентов в Фигме Заметил, что многие продуктовые дизайнеры задаются вопросом «Как организовывать разные состояния компонентов?». Весь дизайнерский мир делится на 2 части. Первые делают один компонент, в котором несколько папок для всех состояний. Вторые делают для каждого состояния элемента ...

Проектирование Электро-Механической Marble Machine v2.0 Я хочу рассказать о второй версии моей электро-механической Marble Machine и о процессе ее проектирования. Про первую спиральную машину я уже писал здесь на хабре. Времени с тех пор прошло не мало, и вот, в принципе, задуманное осуществлено: два подъемника и два спуска рабо...

Ещё немного о тригонометрии в вычислениях На Хабре было уже много статей, посвящённых быстрым вычислениям тригонометрии, когда сильно надо, но я хотел бы дополнить их одной небольшой заметкой с отсылкой к школьной тригонометрии. Читать дальше →

[Перевод] Пишем игру «Карточки памяти» на Swift В этой статье описывается процесс создания простой игры для тренировки памяти, которая мне очень нравится. Кроме того, что она сама по себе хороша, во время работы вы немного больше узнаете о классах и протоколах Swift. Но прежде чем начать, давайте разберемся в самой игр...

Blazor + MVVM = Silverlight наносит ответный удар, потому что древнее зло непобедимо Привет Хабр! Таки да, скоро выходит net core 3.0 и там будет шаблон проекта с Blazor как один из дефолтных. Название у фреймворка, по-моему, похоже на название какого-нибудь покемона. Блазор вступает в бой! Решил я значит глянуть что за зверь такой и с чем его едят поэтому с...

Не ORMом единым Не ORMом единым Всем привет! Я руковожу отделом партнерской разработки (Partners Development) в сервисе бронирования отелей Ostrovok.ru. В этой статье я хотел бы рассказать про то, как на одном проекте мы использовали Django ORM. На самом деле я слукавил, название должно был...

[Перевод] The Foobar challenge: секретный тест Google для разработчиков Вы просто сидите за своим столом, занимаясь своими делами, пытаясь выполнить какую-то работу. Затем, как это неизбежно происходит, вы сталкиваетесь с незначительным препятствием: ваш код выдает загадочное сообщение об ошибке. «Нет проблем», как вы думаете. Это не ваше пер...

Разработан «умный» конструктор для изучения технологии IoT в школах Инженерные конструкторы, разработанные АО "НИИССУ" (входит в "Росэлектронику"), состоят из аппаратной части - контроллера, плат расширения, датчиков и модулей связи, а также программной компоненты - облачной платформы на базе языка С/С++. Конструктор пред...

[Из песочницы] Headless CMS. Почему я пишу свою Всем привет! Написать эту публикацию меня побудила вот эта недавняя статья (вчера увидел). Пересказывать основные признаки Headless/content-first/api-first и т.п. CMS я не буду, материала полно и наверняка уже многие знакомы с этим трендом. А хочу я рассказать почему и ка...

Главный секрет Google I/O 2019, о котором не узнать из интернета Титульная конференция крупнейшего гиганта рекламного бизнеса отгремела уже как неделю, а некоторые до сих пор пишут статьи. Так как всё, что можно было написать про программу и главные новинки, уже написано (привет phillennium), то что остаётся скромному посетителю? Только р...

Понимаем UICollectionViewLayout на примере Photos App Здравствуй, Хабр! Меня зовут Никита, я работаю над мобильными SDK в компании ABBYY и в том числе занимаюсь UI-компонентом для сканирования и удобного просмотра многостраничных документов на смартфоне. Этот компонент сокращает время на разработку приложений на базе технологии...

Slightly Mad Studios разрабатывает собственную игровую консоль Mad Box Генеральный директор Slightly Mad Studios Ян Белл в своём Twitter рассказал о работе команды над собственной игровой консолью, получившей название Mad Box. По его словам, это будет «самая мощная консоль из когда-либо созданных», производительность которой будет сопоставима ...

Три парадигмы асинхронного программирования в Vertx Я хочу показать три парадигмы асинхронного программирования — callbacks, futures, coroutines на примере простого веб приложения на фрейморке Vertx. Код будем писать на Котлине. Допустим у нас есть приложение, которое получает некую строку в HTTP запросе, по ней ищет URL в б...

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

Школьники Ханты-Мансийска научатся создавать 3D-игры Создание игр – процесс непростой, но современные технологии способны сделать его максимально увлекательным. В этом смогут убедиться участники воркшопа, который пройдет в рамках инициативы Meet and Code. Ребят ждет знакомство с интерфейсом программы Roblox. Это популярная...

[Из песочницы] Пишем простой NTP клиент Здравствуйте, хабраюзеры. Сегодня я хочу рассказать о том, как написать свой простенький NTP клиент. В основном, разговор зайдет о структуре пакета и способе обработки ответа с NTP сервера. Код будет написан на питоне, потому что, как мне кажется, лучшего языка для подобных ...

Как сэкономить на психотерапевте используя test-driven development У вас когда-нибудь было такое состояние? Хочу показать вам, как TDD может улучшить качество кода на конкретном примере. Потому что всё то, что я встречал при изучении вопроса, было довольно-таки теоретическим. Так получилось, что мне довелось написать два практически иден...

Изучение английского — непопулярное мнение Всем привет. Очередная статья от «курсов изучения английского» сподвигла меня написать свои заметки. Этой статьёй я надеюсь ответить на некоторые вопросы изучающих язык и отговорить от глупых советов «запомнить вот эти 10/15/20 слов/конструкций», которые подаются как некие ...

[Из песочницы] Как создать 2D игру с Python и аркадной библиотекой Привет, Хабр! представляю вашему вниманию перевод статьи How to create a 2D game with Python and the Arcade library автора Paul Vincent Craven Как создать 2D игру с Python и аркадной библиотекой Узнайте, как начать работу с Arcade, простой в использовании библиотеки Python д...

[Перевод] Конференция BLACK HAT. Уроки выживания при DDOS-атаке 300 Гбит / с. Часть 1 Меня зовут Мэттью Принс, я один из соучредителей и генеральный директор сервиса CloudFlare. Не думайте, что я буду настолько же интересен, как директор АНБ, но я хотя бы постараюсь быть менее противоречивым. На самом деле я частный профессор права, так что я читал Конституци...

Terraformer — Infrastructure To Code Хотел бы рассказать про новый CLI tool который я написал для решения одной старой проблемы. Проблема Terraform уже давно стал стандартом в Devops/Cloud/IT сообществе. Вещь очень удобная и полезная чтоб заниматся infrastructure as code. Есть много прелестей в Terraform а т...

[Из песочницы] Пишите меньше кода Хайп по Svelte после недавнего релиза 3 версии фреймворка всё-таки имеет место быть, чему свидетельствуют сильно возросшее комьюнити и огромное количество вопросов как в официальном чате, так и в нашем рускоязычном telegram-канале. Всё больше разработчиков украдкой или всерь...

[Из песочницы] Настройка VSCode для работы с Scala Статья рассчитана на новичков в программировании на Scala, каким я сам и являюсь, и просто на желающих начать писать программный код в VSCode. Так получилось, что единственным гайдом по теме работы со Scalой в Visial Studio Сode оказалось это видео на ютуб-канале DevInside...

[Из песочницы] Angular schematics, или как я писал свой шаблон для angular cli Здравствуйте, меня зовут Максим. Уже несколько лет я занимаюсь front-end разработкой. Мне часто приходится иметь дело с версткой различных html шаблонов. В своей повседневной работе я обычно пользуюсь сборщиком webpack c настроенным шаблонизатором pug, а также использую мето...

Бизнес на свои: мы написали книгу с тактикой прохождения этой игры Привет! Я хотел сказать, что вчера вышла третья наша книга, и тоже очень помогли посты с Хабра (а частично и вошли). История такая: на протяжении примерно 5 лет к нам подходили люди, которые не умели в проектное мышление, не понимали разные вопросы бизнеса и задавали одни ...

Docker: вредные советы Когда я учился водить машину, на первом же занятии инструктор выехал на перекресток задним ходом, а потом сказал, что делать так нельзя — вообще никогда. Это правило я запомнил сразу и на всю жизнь. Читаешь детям «Вредные советы» Григория Остера, и видишь, как легко и непри...

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

Трогательная My Brother Rabbit на русском языке уже доступна на iOS и Android My Brother Rabbit— это трогательно приключение от создателей десятка разнообразных игр в жанре «поиск предметов». «В любящей семье заболевает дочь. Пока родители пытаются найти нужное лекарство, заботливый старший брат не хочет сидеть сложа руки и использует силу воображени...

«Урок цифры» по большим данным за 2 недели пройден свыше 2,4 млн раз Наибольший интерес к теме урока проявили ученики 7-9 классов. Больше всего участников живут в Москве и Московской области, Самарской области, Нижегородской области, Краснодарском крае, Челябинской области, Ставропольском крае, Санкт-Петербурге, Красноярском крае и Омской обл...

[Из песочницы] Снова в школу: как обучить ручных тестировщиков разбираться с автотестами Четыре из пяти соискателей-QA хотят научиться работать с автотестами. Не все компании могут осуществить такие желания ручных тестировщиков в рабочее время. Wrike провёл школу автоматизации для сотрудников и реализовал это желание для многих. Я в этой школе участвовал именно ...

[Перевод] Расцвет и упадок Visual Basic Мне нужно сделать признание. До того, как я стал респектабельным разработчиком, работающим с такими современными языками, как C# и Java (и тем бурлящим хаосом, который известен нам под именем JavaScript), я был увлечённым фанатом невероятно популярного и неуклюжего Visual Ba...

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

[Перевод] 14 советов по написанию чистого React-кода. Часть 1 Написание чистого кода — это навык, который становится обязательным на определённом этапе карьеры программиста. Особенно этот навык важен тогда, когда программист пытается найти свою первую работу. Это, по существу, то, что делает разработчика командным игроком, и то, что сп...

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

[Перевод] Всё, что нужно для начала работы с Vue.js Скорее всего, вы, читая эти строки, уже слышали о JavaScript-фреймворке, который называется Vue. Если вы собирались его опробовать, но не очень хорошо представляли себе то, с чего вам стоит начать, значит — этот материал написан специально для вас. Его автор говорит, что хоч...

[Перевод] Вышли обновления ML.NET и Model Builder: что нового Мы рады сообщить о выходе обновлений Model Builder и ML.NET. ML.NET — это кроссплатформенная среда машинного обучения с открытым исходным кодом (Windows, Linux, macOS) для разработчиков .NET. ML.NET предлагает Model Builder (простой инструмент пользовательского интерфейса)...

Телефонные опросы и поиск в CRM в 3CX CFD, новый плагин WP-Live Chat Support, обновление приложения для Android За последние пару недель мы представили несколько интересных обновлений и один новый продукт. Все эти новинки и улучшения соответствуют политике 3CX по созданию на базе UC АТС доступного мультиканального колл-центра.    Обновление 3CX CFD — компоненты Опрос и Поиск в CRM Све...

Как мы разрабатываем персональные товарные рекомендации Наши клиенты-магазины хотят делать крутой маркетинг. Чтобы люди больше покупали, они регулярно шлют им email-рассылки. И каждый раз думают: “Что же написать в письме?”. Можно писать просто: “Покупайте у нас почаще!”, но это не очень-то работает. Идея получше — вставлять в п...

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

Поднимаем сервер 1с с публикацией базы и веб сервисов на Linux Сегодня я бы хотел рассказать, как поднять сервер 1с на linux debian 9 с публикацией web-сервисов. Что такое web-сервисы 1с? Web-сервисы — это один из механизмов платформы, используемых для интеграции с другими информационными системами. Он является средством поддержки...

«Как управлять интеллектуалами. Я, нерды и гики» (бесплатная эл. версия книги) Привет, Хаброжители! Мы решили, что правильно не только продавать книги, но и делиться с ними. Обзор самой книг был здесь. В самом посте отрывок «Синдром дефицита внимания у Гиков» и сама книга. Основная идея книги «Оружие Юга» предельно проста и при этом очень странна. Чт...

Перенос почтовых ящиков между хранилищами в Zimbra Collboration Suite Ранее мы уже писали о том, насколько легко и просто масштабируется Zimbra Collaboration Suite Open-Source Edition. Добавление новых почтовых хранилищ можно осуществлять не останавливая работу инфраструктуры, на которой развернута Zimbra. Эта возможность высоко ценится SaaS-п...

Опыт использования flatten-maven-plugin для упрощения версионирования в maven-проектах О нас В 1С мы разрабатываем не только платформу 1С: Предприятие на С++ и JavaScript, но и приложения на Java – в частности новую среду разработки Enterprise Development Tools на базе Eclipse и сервер глубоко интегрированного с платформой мессенджера – Системы Взаимодействия....

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

Настройка программы Asymptote Из всех хабов этот показался мне наиболее подходящей для этой темы. Итак. Скопировано с моего блога в целях создания еще одного русскоязычного источника информации по данной теме. Я опишу этот процесс для Asymptote 2.35. Итак, вот я скачал эту программу, установил. Если м...

Пятерка новых Android-приложений и игр, которые вам стоит попробовать На просторах Google Play Store имеется несколько десятков тысяч приложений и игр для самых разных категорий пользователей. И ежедневно выходят новые программы. Среди них встречаются как весьма интересные приложения, так и всякий «мусор», не достойный вашего вниман...

Ученики «IT школы Samsung» прошли первый предпрофессиональный экзамен по математике Образовательный проект Samsung Electronics «IT школа Samsung» совместно с НИЯУ МИФИ провели первый в истории проекта предпрофессиональный экзамен по профилю «Программирование под Android». В испытании, состоявшемся на базе Технического Образовательного Центра Samsung, принял...

Создание React-ивного хука usePosition() для получения и отслеживания координат браузера Если вкратце В этой статье мы создадим React-ивный хук usePosition() для отслеживания геолокации браузера. Под капотом этот хук будет использовать методы getCurrentPosition() и watchPosition() нативного браузерного объекта navigator.geolocation. Финальную версию хука я опуб...

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

[Перевод] Создание изометрических 2D-уровней с помощью системы Tilemap В Unity 2018.3 появилась поддержка изометрических тайловых карт, очень напоминающая поддержку тайловых карт шестиугольников, которая была добавлена в версии 2018.2. Новые функции Tilemap позволяют быстро и эффективно создавать 2D-окружения на основе изометрических и шестиуг...

Как прошла IT-тусовка: знакомство со Scratch и Python Что такое Scratch и Python, где ищут вдохновение программисты и как найти свое призвание в IT. 11 октября в Пензе ребята вместе со специалистами искали ответы на эти вопросы и соревновались в конкурсах. Больше 40 детей с родителями собрались в антикафе «Крылья», чтобы п...

[Из песочницы] ОС реального времени AQUA RTOS для МК AVR в среде BASCOM AVR При написании для МК кода посложнее, чем «помигать лампочкой», разработчик сталкивается с ограничениями, присущими линейному программированию в стиле «суперцикл плюс прерывания». Обработка прерываний требует быстроты и лаконичности, что приводит к добавлению в код флагов и п...

[Из песочницы] Пишем «Hello, world!» приложение для web на Haskell (Spock) Мне стало скучно писать на Python, захотелось чего-нибудь необычного. Решил попробовать Haskell. Языка я не знаю, однако просто писать консольные учебные программы, типа вычисления факториала, не хотелось. После изучения довольно большого числа постов про Haskell и его приме...

[Из песочницы] Упрощаем работу с базами данных в Qt с помощью QSqlRelationalTableModel Доброго времени суток, Хабровчане! В этой статье я хочу рассказать о своем опыте упрощения взаимодействия с базами данных SQL при разработке десктопного приложения с помощью класса QSqlRelationalTableModel кроссплатформенной библиотеки Qt. Пролог С Qt я познакомился еще буд...

ViewPager 2 — новый функционал в старой обертке ViewPager — один из самых известных и широко используемых компонентов Android Support Library. Все простейшие карусели, онбординги и слайдеры выполнены именно на нем. В феврале 2019 года команда разработки AndroidX выпустила ViewPager2. Давайте разберемся, какие у этого были...

[Из песочницы] Использование Context API в React для создания глобальной темы приложения Привет, это мой первый пост на Хабр. Надеюсь, Вам будет интересно. Итак, я хочу начать серию постов, напрямую или косвенно касающихся создания ui-kit. Задача данного поста: Найти решение контроля темы приложения, компоненты которого выполнены в React.js. Будем использова...

Новые GSM шлюзы от OpenVox Asterisk — потрясающий конструктор. Хотите построить небольшую АТС для бизнеса? Берем Raspberry PI, накатываем готовый образ на флешку, 10 минут, и вы уже вбиваете логин с паролем на ваш SIP телефон и делаете первый звонок. Хотите нечто большее? Ставим бесплатный и навороч...

[Перевод] 5 уроков, которые мы усвоили, написав более 300 000 строк инфраструктурного кода Краткий мастер-класс по разработке инфраструктурного кода В октябре этого года я выступил с докладом на конференции HashiConf 2018, где рассказал о 5 ключевых уроках, которые я и мои коллеги из Gruntwork усвоили в процессе создания и поддержки библиотеки из более чем 300 00...

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

Трактат о Pinе. Мысли о настройке и работе с пинами на С++ для микроконтроллеров (на примере CortexM) Последнее время я сильно увлекся вопросом надежности софта для микроконтроллеров, 0xd34df00d посоветовал мне сильнодействующие препараты, но к сожалению руки пока не дошли до изучения Haskell и Ivory для микроконтроллеров, да и вообще до совершенно новых подходов к разработк...

[Перевод] Обработка ошибок в Express Когда я только начинал работать с Express и пытался разобраться с тем, как обрабатывать ошибки, мне пришлось нелегко. Возникало такое ощущение, будто никто не писал о том, что мне было нужно. В итоге мне пришлось самому искать ответы на мои вопросы. Сегодня я хочу рассказать...

[Перевод] Оборачиваем последовательности в Swift Всем привет. Сегодня хотим поделиться переводом подготовленным в преддверии запуска курса «iOS Разработчик. Продвинутый курс». Поехали! Одним из основных преимуществ протокольно-ориентированного дизайна Swift является то, что он позволяет нам писать общий код, который совме...

NLP. Основы. Техники. Саморазвитие. Часть 1 Привет! Меня зовут Иван Смуров, и я возглавляю группу исследований в области NLP в компании ABBYY. О том, чем занимается наша группа, можно почитать здесь. Недавно я читал лекцию про Natural Language Processing (NLP) в Школе глубокого обучения – это кружок при Физтех-школе п...

Android можно было захватить с помощью PNG-картинки Компания Google пропатчила в Android критическую уязвимость, позволявшую исполнить любой код на мобильном устройстве, послав на него вредоносный файл изображений в формате .PNG (Portable Network Graphics). Согласно бюллетеню Google, эта брешь, как и два других RCE-бага, прив...

[Перевод] Создаём портативную платформенную игру на микроконтроллере Cortex M0+ Введение (Ссылки на исходный код и проект KiCAD приведены в конце статьи.) Хотя мы родились в 8-битную эпоху, нашим первым компьютером был Amiga 500. Это великолепная 16-битная машина, обладавшая потрясающими графикой и звуком, благодаря чему она отлично подходила для игр....

[Из песочницы] Изучение Bootstrap с 10 полезными советами Если вы хотите начать свою карьеру в веб-разработке, то изучение Bootstrap — это то, что вам нужно. Bootstrap — это фреймворк, используемый для разработки веб-приложений. Его библиотека интерфейсных компонентов широко используется для создания интерактивных и адаптивных веб-...

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

[Из песочницы] Скрещиваем ужа с ежом: OpenJDK-11 + GraalVM Привет, Хабр! В свете не самых давних новостей про политику Oracle относительно лицензирования джавы всё острее встаёт вопрос ухода от оракловых версий в сторону OpenJDK. Оданко в OracleLabs уже давно делают весьма крутую штуку под названием GraalVM, который представляет из ...

Часть 4. Карьера программиста. Junior. Заход во фриланс Продолжение рассказа «Карьера программиста». Смеркалось. И прямо, и косвенно. Я с большим усердием искал работу программистом, но не было никаких вариантов. В моем городе было 2-3 объявления на 1С-разработчика плюс, редкий случай, когда требовались преподаватели курсов прог...

Стильная, модная, молодежная разработка BPM на Camunda BPM-разработка — дело непростое. Это обусловлено тем, что процесс должен быть читаемым и понятным заказчику, а не только корректным с технической точки зрения. Не все средства разработки бизнес-процессов позволяют найти компромисс между понятным описанием и технической фун...

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

[Из песочницы] Программ для изучения английского очень много, но стоит ли какой-нибудь из них пользоваться если ты программист? Всем привет, меня зовут Алексей. Я давно увлекаюсь программированием, хоть это и не является моей основной профессией. А ещё где-то год назад я увлёкся изучением английского языка. Много статей написано о том, как учить английский язык. Но если ты владеешь навыками програм...

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

[Перевод] Практичный Go: советы по написанию поддерживаемых программ в реальном мире Статья посвящена лучшим практикам написания кода Go. Она составлен в стиле презентации, но без обычных слайдов. Постараемся кратко и чётко пройтись по каждому пункту. Для начала следует договориться, что значит лучшие практики для языка программирования. Здесь можно вспомни...

[Перевод] Ohio Challenger 2P и его 4 Кб оперативной памяти Статья Эрика Бэнгмана, управляющего редактора журнала Ars Technica Я уже замечал его краем глаза, когда ходил мимо него на уроки геометрии, но теперь мне предстояло впервые зайти в школьный компьютерный класс. Это был сентябрь 1980 года и мой первый год в средней школе Г...

[Перевод] Доступное объяснение алгоритма коллапса волновой функции Алгоритм коллапса волновой функции (Wavefunction Collapse Algorithm) учит компьютер импровизировать. На входе он получает архетипичные данные и создаёт процедурно генерируемые данные, похожие на исходные. (Источник) Чаще всего он используется для создания изображений, но ...

Учёные впервые напечатали практически полноценное человеческое сердце, используя клетки пациента Израильские исследователи из Тель-Авивского университета первыми в истории напечатали на 3D-принтере настоящее сердце, используя клетки человека. Правда, сердце вышло очень маленьким, сравнимым с сердцем кролика. На печать такого органа понадобилось около трёх часов и м...

[Из песочницы] Продвинутый Debug Debug Area — полезная функция в работе iOS разработчика в Xcode. Как только мы начинаем осваивать разработку под iOS, и пытаемся отойти от привычного и любимого print метода, и найти более быстрые и удобные методы понимания состояния системы в определенный период мы начинаем...

11 июля в Минске пройдет офлайновая Школа Метрики Команда Яндекс.Метрики, разработчики DataLens и проверенные эксперты Яндекса по обучению приглашают 11 числа на занятия в офлайновой школе Метрики, которые пройдут в Минске. Занятия будут полезны всем, кто хочет научиться  использовать аналитику с ма...

[Из песочницы] Знакомство с простейшей нейронной сетью и ее пошаговая реализация Как-то раз я наткнулся на книгу под названием «Создай свою нейросеть», автор которой -Тарик Рашид и после прочтения остался доволен, в отличие от многих других методичек по нейронным сетям, которые по-своему, несомненно, хороши, в этой книге все подавалось простым языком c д...

Как писать unit-тесты для акторов? Подход SObjectizer-а Акторы упрощают многопоточное программирование за счет ухода от общего разделяемого изменяемого состояния. Каждый актор владеет собственными данными, которые никому не видны. Взаимодействуют акторы только посредством асинхронных сообщений. Поэтому самые кошмарные ужасы много...

Представители столичного Депобразования рассказали об итогах 2018/2019 учебного года Представители столичного Депобразования подытожили завершившийся учебный год. Так, новым трендом в мегаполисе стало развитие предпрофессионального образования. Такое образование ученикам предоставляют в специально открытых для этих целей академических, инженерных, медиц...

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

Как смотреть в завтрашний день игрофикаючи С 5 по 7 января проходила зимняя школа талантливых преподавателей по программированию — VKFellowship. Талантливых, потому что большинство слушателей написали собственные курсы обучения, а их ученики побеждают в олимпиадах. Зачем таким классным педагогам еще какая-то школа? О...

[Перевод] Python Testing с pytest. Глава 2, Написание тестовых функций Вернуться Дальше Вы узнаете, как организовать тесты в классы, модули и каталоги. Затем я покажу вам, как использовать маркеры, чтобы отметить, какие тесты вы хотите запустить, и обсудить, как встроенные маркеры могут помочь вам пропустить тесты и отметить тесты, ожидая неуд...

Drag-&-Drop компоненты для слепых пользователей? Вы шутите? Что объединяет Trello, Gmail, Aviasales и Google Keep? В каждом из них есть Drag-&-Drop-компоненты, которые можно перетаскивать мышкой. Использование этих компонентов делает сайты по-настоящему удобными, потому что в реальной жизни мы часто используем этот паттерн. Перед...

Мой первый опыт восстановления базы данных Postgres после сбоя (invalid page in block 4123007 of relatton base/16490) Хочу поделиться с вами моим первым успешным опытом восстановления полной работоспособности базы данных Postgres. С СУБД Postgres я познакомился пол года назад, до этого опыта администрирования баз данных у меня не было совсем. Я работаю полу-DevOps инженером в крупной IT-к...

Как на самом деле надо сравнивать цены Apple в США и РФ. Личный опыт Сначала хотел написать комментарий к неоднозначным сравнениям цены на продукцию Apple в статье, но текста получилось слишком уж много. Pochtoycom (на самом деле не только они) лукавят, сравнивая цены Apple в РФ и в США. Действительно, в США возможно купить iPhone дешевле,...

Digital-мероприятия в Москве cо 30 сентября по 06 октября Подборка мероприятий на неделю DevOps Conf 30 сентября (понедельник) — 01 октября (вторник) 1-й Зачатьевский пер 4 от 19 600 р. На конференции расскажем не только о том «как?», но и «зачем?», максимально сближая процессы и технологии. Среди организаторов — лидер DevOps-дви...

[Перевод] Приключения с ptrace(2) На Хабре уже писали про перехват системных вызовов с помощью ptrace; Алекса написал про это намного более развёрнутый пост, который я решил перевести. С чего начать Общение между отлаживаемой программой и отладчиком происходит при помощи сигналов. Это существенно усложняет...

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

[Из песочницы] Размещай правильно: 7 идеальных мест для размещения видео-контента Итак, вы готовы сделать видео полноценной частью маркетинговых процессов вашей организации. Самое время. Существует множество исследований, в которых говорится, что в 2019 году порядка 80% контента, потребляемого нами в интернете, будет составлять видео (ссылка на исследова...

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

База данных KDB+: от финансов до «Формулы 1» KDB+, продукт компании KX — это широко известная в узких кругах, исключительно быстрая, колоночная база данных, предназначенная для хранения временных рядов и аналитических вычислений на их основе. Изначально она пользовалась (и пользуется) большой популярностью в индустрии ...

Docker + Laravel = ❤ // Часть 2 Данный пост написан по заявкам трудящихся, которые с завидной периодичностью спрашивают о том "Как запустить Illuminate / Symfony / MyOwnPsr7 приложение в докере". Давать ссылку на ранее написанный пост уже не хочется, так как взгляды относительно того, как следует решать п...

В оболочке MIUI 11 появится специальное детское пространство Children’s Space Вчера мы писали о том, что анимации в оболочке MIUI 11 станут медленнее, но более детализированнее и красивее. Сегодня появились данные о ещё одной особенности новой оболочки. В MIUI 11 появится новая функция под названием Children’s Space. Children’s Space ...

Где купить лицензии Microsoft Office с программами Word и Excel Программы Word и Excel являются очень популярными и востребованными. Их используют на различных предприятиях в организациях и компаниях. Наверное, в мире нет такого офиса, где не пользуются этими продуктами. Достаточно распространенными они являются и среди студентов и школь...

Хорошее не бывает дешёвым. Но бывает бесплатным В этой статье я хочу рассказать о Rolling Scopes School – бесплатном курсе по JavaScript / фронтенду, который прошла, и который мне очень понравился. Узнала я об этом курсе случайно, информации в сети о нём, на мой взгляд, немного, а курс отличный и заслуживает внимания. Дум...

Получение статистики по всем клиентам из API Яндекс Директ в разрезе дней с помощью Python В работе часто использую короткую статистику в разрезе дней чтобы отслеживать отклонения трафика. Более подробно о написании запросов написал в статье « Получение рекламных кампаний Яндекс Директ с помощью API в DataFrame (Python)». В данной статье я в большей степени рас...

EdTech проекты: накорми кота и стань программистом Вы специалист по машинному обучению, и у вас есть кот. Чтобы покупать ему еду, надо зарабатывать деньги, выполняя задания. Именно на этом сюжете построена образовательная игра while True: learn. И это лишь один из примеров того, как технологии сделали процесс обучения досту...

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

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

GeekBrains проведет 12 бесплатных онлайн-встреч с экспертами в области программирования С 3 по 8 июня образовательный портал GeekBrains организует GeekChange — 12 онлайн-встреч с экспертами программирования. Каждый вебинар — новая тема о программировании в формате мини-лекций и практических заданий для новичков. Мероприятие подойдет для тех, кто хочет начать п...

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

Динамическая генерация DAG в Airflow Всем привет! Меня зовут Антон, в Ростелекоме я занимаюсь разработкой центрального хранилища данных. Наше хранилище состоит из модулей, в качестве оркестратора которых используются несколько инстансов Informatica, часть из которых мы хотим перевести на Airflow в рамках перехо...

Как мы делали облачный FaaS внутри Kubernetes и побеждали в Тинькофф-хакатоне Начиная с прошлого года у нас в компании начали организовывать хакатоны. Первое такое состязание прошло весьма успешно, о нем мы писали в статье. Второй хакатон прошел в феврале 2019 и был не менее успешным. О целях проведения последнего не так давно писал организатор. Уч...

[Перевод] Исследование шейдера песка игры Journey Среди множества инди-игр, выпущенных за последние 10 лет, одной из самых любимых для меня определённо является Journey. Благодаря своей потрясающей эстетике и красивому саундтреку Journey стала примером превосходства практически в каждом аспекте разработки. Я разработчик иг...

Таких проблем, как с iOS 13, больше не будет. Apple меняет подход к тестированию ПО Релиз мобильной операционной системы iOS 13 оказался откровенно неудачным — в этой версии обнаружилось немало ошибок и проблем, некоторые из которых мигрировали в iOS 13.1 и 13.2. В Apple понимают, что с iOS 13 все получилось нехорошо, поэтому компания решила изме...

[Из песочницы] 20 игр, чтобы научить ребёнка программированию Привет Хабр! Меня зовут Оксана Селендеева. Я считаю, что лучше начинать программировать с юного возраста — 4-5 лет, потому что кодинг активно развивает у детей когнитивные функции мозга, и это впоследствии помогает им отлично усваивать точные науки. А попробовать себя в прог...

BLoC паттерн на простом примере И еще раз про BLoC на классическом примере счетчика Flutter. Читая некоторые статьи про реактивное программирование и используя BLoC паттерн в приложениях я понимал, что чего-то не догоняю. Как обычно на все не хватает времени, но вот, выдался свободный час и силы есть — реш...

[Перевод] 27 удивительных инструментов VS Code для современных JavaScript-разработчиков Visual Studio Code (его ещё называют VS Code и VSCode) — это экономичный но мощный кросс-платформенный редактор кода, выполненный в виде настольного приложения. По словам автора материала, перевод которого мы сегодня публикуем, VS Code поддерживает множество инструментов раз...

Зачем писать свой React Data Grid в 2019 Привет, Хабр! Я участвую в разработке ECM системы. И в небольшом цикле статей хочу поделится нашим опытом и историей разработки своего React Data Grid (далее просто грид), а именно: почему мы отказались от готовых компонент с какими проблемами и задачами мы столкнули при ра...

Защитник Windows получает новое имя в Windows 10 Microsoft выводит свое антивирусное программное обеспечение на большее количество платформ, и больше не имеет смысла называть его Защитником Windows, поэтому теперь это Защитник Microsoft (Microsoft Defender). Похоже, что Microsoft также переименует Защитника Windows в Защит...

Лучшие программы для создания сторис в Instagram Если вы используете Instagram не первый день, то наверняка в курсе существования такой функции, как «истории». Это небольшие фото или видеоролики, которые хранятся 24 часа и доступны в специальном разделе. Однако если вы подписаны на топовых блогеров, то наверняка...

Как изменить тему на Samsung Galaxy Одной из вещей, которая нравится пользователям в платформе Android, является то, что она намного больше поддаётся всяческой настройке и кастомизации, чем другие ОС. Смартфоны Samsung, работающие под управлением One UI, фирменным ПО южнокорейского производителя, созданного н...

VueJs + VueRouter + modal. Очередной велосипед Добрый день. В этой статье я разберу способ, который позволяет при смене адреса показывать модальное окно для наших нужд. Я знаю, что есть собственное решение для компонента «modal» на официальном сайте. Вдобавок к этому на Хабре есть много других статей, посвященных теме мо...

[Из песочницы] Миграция данных с mongoDB и Spring Boot Каждый разработчик рано или поздно встречается с необходимостью миграции данных в базе данных. На нашем проекте мы используем mongoDB в качестве базы данных. Мы подходили к миграции данных разными способами: писали js скрипты и запускали непосредственно в базе данных исполь...

[Из песочницы] Распутывание клубка уязвимостей на сайтах После своей первой статьи, опубликованной на codeby, которая вошла в топ 3 публикаций недели, я был очень мотивирован написать следующую. Но 11 класс накладывает ограничения на свободное время подготовкой к егэ и олимпиадами. Поэтому вторую я пишу лишь спустя несколько меся...

Немного о лексическом анализе Давным-давно, когда небо было голубым, трава зеленее и по Земле бродили динозавры… Нет, забудьте про динозавров. Ну, в общем, когда-то тогда пришла в голову мысль отвлечься от стандартного web-программирования и заняться чем-то более безумным. Можно было, конечно, чем угод...

[Перевод] Самая популярная мобильная игра: как создавалась «Змейка» для телефонов Nokia Танели Арманто не любит рассказывать людям, что изменил мир. На самом деле я уверен, что если вы не являетесь другом его семьи, то ничего о нём не слышали. Обычно он никогда не рассказывает о своём величайшем достижении, но его дети не упускают случая им похвастаться. В кон...

Детективная история с поиском громкоговорителя и всего 3 балла за ремонтопригодность: в iFixit разобрали Samsung Galaxy Note10+ 5G Специалисты компании iFixit добрались до смартфона Samsung Galaxy Note10+. Если точнее, то до его топовой версии с поддержкой 5G. Перед собой «разборщики» ставили цель ответить на несколько интересных вопросов. Как выглядит антенна 5G? Использует ли корейска...

[Перевод] Интересные новинки Vue 3 Вместо предисловия Vue используется во всех проектах FunCorp. Мы внимательно следим за развитием фреймворка, постоянно улучшаем процесс разработки и внедряем лучшие практики. И, конечно же, мы не могли пройти мимо и не перевести статью Филиппа Раковски, сооснователя VueStore...

В поисках вдохновения, или Как вытащить себя из Ж После выхода моей первой статьи «Не бойтесь пробовать, или Как я стала программистом в возрасте далеко за 18», в личку и комментариях на Хабре, а также в соцсетях стали приходить самые разные отзывы. Один из них запомнился больше всего: «Спасибо за Вашу статью. Очень грамо...

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

Экстремальная педагогика: «УчимЗнаем» о работе с детьми на длительном лечении Сегодня мы хотим ответить на вопрос «Нужно ли полноценное школьное образование в клиниках, где дети находятся на длительном лечении, каким оно должно быть?». Начнем с фактов. В нашей стране ежегодно свыше 250 тыс. детей проходят длительное лечение в клиниках. Тяжелейшие слу...

ControlValueAccessor и contenteditable в Angular Вы когда-нибудь задумывались, как работает связка форм Angular и HTML элементов, через которые пользователь заносит данные? С самого начала для этого использовали ControlValueAccessor — специальный интерфейс, состоящий всего из 4 методов: interface ControlValueAccessor { w...

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

Транспилятор PAS2JS из Паскаля в JavaScript: несовместимости с Delphi и пути обхода В наше время в кармане обычного человека лежит мощный персональный компьютер, о котором 10-20 лет назад можно было только мечтать. И если у вас километры отлаженного Windows-кода и отлично работающие приложения и утилиты, написанные на Delphi, вы наверняка хотели бы задейств...

Samsung получила разрешение на продажи Galaxy S10 Lite Galaxy S10 Lite — это и есть Galaxy A91, о котором в последнее время все только и говорят Бюрократия наряду с халатностью является одной из причин, провоцирующих утечки информации о предстоящих новинках, которые их производители наверняка хотели бы сохранить втайне до ...

Новый сезон всероссийского «Урока цифры» начался с учителей "Урок цифры" - серия необычных уроков информатики, которые проходят в течение учебного года. Новый сезон проекта стартовал с конференции для учителей информатики. Представители государства и руководители высокотехнологичных компаний-партнёров проекта рассказали пед...

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

CAGR как проклятие специалистов, или ошибки прогнозирования экспоненциальных процессов Среди читающих этот текст, конечно, много специалистов. И, конечно, все отлично разбираются в своих областях и хорошо оценивают перспективность разных технологий и их развитие. При этом история (которая «учит тому, что она ничему не учит») знает немало примеров, когда специ...

[Из песочницы] Замена Punto Switcher, раскладки Бирмана с помощью скрипта на autohotkey В данной статье я не предлагаю полностью заменить Punto Switcher (Спасибо Сергею Москалёву за данную программу), а только в очень ограниченном функционале. Довольно давно пользуюсь программой Punto Switcher, но не в целях автопереключения, а как переключатель по левому и пра...

[Из песочницы] Как я свой первый ИИ писал Привет, Хабр. История моя берёт начало в январе 2019 года. Мы с моей тимой геймдевелоперов решили взяться за самый большой проект в нашей истории- 2Д платформер. Нет, мы не делали до этого какие-нибудь FlappyBird'ы или змейки, но объём работы в этом проекте просто сносил на...

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

Инструкция: как тестировать ansible-роли и узнавать о проблемах до продакшена Всем привет! Я работаю DevOps-инженером в сервисе бронирования отелей Ostrovok.ru. В этой статье я хочу рассказать о нашем опыте тестирования ansible-ролей. В Ostrovok.ru в качестве менеджера конфигураций мы используем ansible. Недавно мы пришли к необходимости тестирования ...

История одного хака или не злите программиста Я наверное не стал бы писать эту статью, не попадись мне другая статья на тему хакеров. Что меня зацепило: это очень однобокое и явно некорректное использование слова хакер, что характерно в целом для современных высказываний в СМИ, блогах и статьях. Исторически слова хак...

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

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

[Перевод] Динамическое программирование в реальном мире: вырезание швов У динамического программирования репутация метода, который вы изучаете в университете, а затем вспоминаете только на собеседованиях. Но на самом деле метод применим во многих ситуациях. По сути, это техника эффективного решения задач, которые можно разбить на множество сильн...

Решение задания с pwnable.kr cmd1, cmd2, asm, blukat. Обходим фильтрацию в Linux. Пишем shellcode с помощью pwntools В данной статье посмотрим как обойти легкий фильтр, разберемся как написать shell c помощью pwntools, а также решим несколько заданий с сайта pwnable.kr. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информацион...

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

[Из песочницы] Обширный обзор собеседований по Python. Советы и подсказки Всем привет! Кратко о себе. По образованию я математик, а вот по профессии — программист. В сфере разработки с 2006 года. Хотя, поскольку программирование начали изучать ещё в школе, свои первые программки и игры я начал писать ещё в школе (примерно, с 2003). Так сложилось, ...

Практика использования библиотеки lottie в мобильном приложении банка Привет, Хабр! В свое время Product Owner попросил подумать нас о создании эффективного процесса по внедрению анимации в наше приложение на android/ios. В то время мы делали задачу по предзаполнению заявки личными данными на кредитный продукт, и на ответ от сервера требовало...

Концепции программирования в Scratch Многим знаком Scratch – детская среда программирования, обучение в которой обычно сводится к созданию творческих проектов по принципу «от простого к сложному». При этом «классический подход» к изучению программирования (переменные → ветвления → циклы → функции → структуры ...

[Из песочницы] Как не надо писать шаблоны для bootstrap Мало кто сейчас пишет дизайн сайта с нуля — зачем, если есть куча замечательных CSS фреймворков? Наиболее популярен среди них bootstrap. Тем не менее, всем хочется, чтобы сайт выглядел уникально, не так как у других — поэтому поверх часто втыкают(в меру возможностей) бесплат...

[Из песочницы] DevOps в разработке: автоматизация написания кода веб-приложений Доброго времени суток, уважаемые Хабражители! Сегодня DevOps находится на волне успеха. Практически на любой конференции, посвященной автоматизации, можно услышать от спикера мол “мы внедрили DevOps и тут и там, применили это и то, вести проекты стало значительно проще и т....

[Из песочницы] Как начать программировать в Adobe Illustrator. Скрипт Expand Clipping Mask. Часть первая Сразу хочу предупредить, что эта серия постов не для матёрых программистов и даже не для программистов вообще. Понимаю, что это звучит крайне вызывающе, учитывая IT-тематику ресурса, и все же позвольте объяснить… В качестве аудитории, я вижу обычных дизайнеров, которые хотел...

[Перевод] Генерацируем тайловые уровни и прячем квадраты от игрока Генерация уровней в Unexplored 2 Мы очень гордимся генератором уровней игры Unexplored 2, это программа, отвечающая всем современным требованиям. В посте я расскажу о том, как создаются уровни игры. Нам не пришлось заново изобретать велосипед. В Unexplored 1 мы уже создали...

Сколькими способами можно записать факториал на Scheme? Злые языки утверждают, что функциональные языки программирования — «языки для написания факториалов». Чаще всего так определяют язык Haskell, мы же начнем с того функционального языка, который сильно повлиял и на Haskell, и на подмножество средств для функционального програм...

[Перевод] Разработка простых современных JavaScript-приложений с использованием Webpack и прогрессивных веб-технологий Думали ли вы о том, чтобы воспользоваться при разработке своего очередного веб-проекта простейшим из существующих набором технологий? Если это так — значит материал, перевод которого мы публикуем сегодня, написан специально для вас. JavaScript-фреймворки существуют для того...

[Из песочницы] Создание своего jsfiddle, часть 1 Привет всем читателем habr. В данной статье мы напишем свой онлайн редактор кода. Зачем я писал свой онлайн редактор кода В один день мне стало интересно насколько сложно создать свой онлайн редактор по типу jsfiddle, из-за чего я решил написать свой редактор. Написание сво...

Как организовать работу над библиотекой общих компонентов Если ваша компания делает несколько продуктов в едином стиле, однажды вам в голову придет идея сделать библиотеку с общим кодом. Например, с UI-компонентами, сервисом авторизации или для работы со сторонними API. Возможно, вы зададитесь вопросами: кто должен поддерживать это...

Книга «Kafka Streams в действии. Приложения и микросервисы для работы в реальном времени» Привет, Хаброжители! Эта книга подойдет для любого разработчика, который хочет разобраться в потоковой обработке. Понимание распределенного программирования поможет лучше изучить Kafka и Kafka Streams. Было бы неплохо знать и сам фреймворк Kafka, но это не обязательно: я ра...

[Из песочницы] Заметки верстальщика: Полезные расширения Google Chrome в 2019 году В моем браузере установлено около 30 расширений, которые упрощают жизнь и работу в интернете. В этой статье я хочу поделиться 10 актуальными расширениями Google Chrome для верстальщика, которые постоянно использую при разработке сайтов. Читать дальше →

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

Новое устройство позволяет создавать голограммы при помощи ультразвука Возможно, что фантастика — это не такая уж и фантастика… Исследователи из Университета Сассекса (Великобритания), по всей видимости, являются фанатами серии фильмов «Звездные Войны». Но даже если это и не так, то они создали устройство, которое очень по...

Разработка ТамТам-бота на Python Привет, Хабр! Позвольте представиться: меня зовут Сергей Агальцов, и я "программист по жизни". Это значит, что я давно уже IT-менеджер, а вовсе не программист по профессии, но программирование использую постоянно, как в своей основной деятельности, так и как хобби. Как част...

Мы agile или аджайл нас? Какая главная проблема в разработке программного обеспечения (а может и вообще в любой работе)? Когда я задавал вопрос коллегам, получал разные ответы: изменения требований, несоответствия ожиданий, качество кода, взаимодействие с другими командами… суммируя для себя — комму...

SwiftUI для прошлого конкурсного задания Telegram Charts (март 2019 года): все просто Сразу начну с замечания о том, что приложение, о котором пойдет речь в этой статье, требует Xcode 11 и MacOS Catalina , если вы хотите использовать Live Previews, и Mojave, если будете пользоваться симулятором. Код приложения находится на Github. В этом году на WWDC 2019,...

[Из песочницы] GameBoy на C# Когда я только начинал программировать, думаю, как и многим, мне хотелось делать игры. Но передо мной стояло множество архитектурных вопросов, которые я не знал как решить, про двойную буферизацию я даже не слышал, а получить результат хотелось как можно скорее. Поэтому неда...

Badoo Jira API Client: магия в Jira на PHP Если в строке поиска на Хабре ввести “Jira Badoo”, результаты займут не одну страницу: мы упоминаем её почти везде, потому что она играет важную роль в наших процессах. Причём каждый из нас хочет от нее немножко разного. Разработчик, которому пришла задача на ревью, ожида...

[Перевод] Чем быстрее вы забудете ООП, тем лучше для вас и ваших программ Объектно-ориентированное программирование — чрезвычайно плохая идея, которая могла возникнуть только в Калифорнии. — Эдсгер Вибе Дейкстра Возможно, это только мои ощущения, но объектно-ориентированное программирование кажется стандартной, самой распространённой парадигмой ...

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

Школа будущего: 10 советов учителям, которым стоит следовать уже сейчас Школа будущего – это люди и технологии, которые дополняют друг друга во всех задачах. Как именно это будет происходить, нам еще предстоит узнать, но ясно одно: с цифровизацией образовательный процесс станет более индивидуальным и комплексным. Управляющий директор Brainly («...

Коллаборация и автоматизация во фронтенде. Чему мы научились за 13 школ Всем привет. Коллеги недавно писали в этом блоге, что открылась регистрация в следующую Школу разработки интерфейсов в Москве. Я очень рад новому набору, ведь я был одним из тех, кто придумал Школу в 2012 году, и с тех пор постоянно ей занимаюсь. Она эволюционировала. Из неё...

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

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

[recovery mode] Сократить время вычислений от нескольких лет до минут. Разбираемся с квантовым машинным обучением Я давно интересуюсь квантовыми вычислениями и пишу программы для 5-ти и 14-кубитных квантовых компьютеров IBM Q Experience. Сегодня я расскажу о технологиях, которые можно будет применять в машинном обучении после того, как квантовые вычисления завоюют мир. Спойлер для дата ...

Учим китайский — HelloChinese 4.7.8 «Учим китайский — HelloChinese» это приложение для Весёлого, Удобного и Эффективного изучения Китайского языка! Созданный специально для начинающих, HelloChinese поможет вам максимально быстро достичь разговорного уровня. С HelloChinese вы сможете с абсолютного нуля под...

Богемские острова Россия, 2002 год. Вместо школы подростки ходят в полуподвальные помещения с похожей расстановкой столов и белыми ЭЛТ-мониторами на них, чтобы поиграть в Counter-Strike 1.1. Игровые журналы (бумажные!) с приложением (на CD!) еще не пишут о выходе Warcraft 3, но сам жанр RT...

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

[Перевод] Самые позорные ошибки в моей карьере программиста (на текущий момент) Как говорится, если тебе не стыдно за свой старый код, значит, ты не растешь как программист — и я согласна с таким мнением. Я начала программировать для развлечения более 40 лет назад, а 30 лет назад и профессионально, так что ошибок у меня набралось очень много. Будучи пр...

Исаак Калина: школы Москвы поборются за право открыть IT-классы Как рассказал руководитель московского Департамента образования и науки Исаак Калина, с первого сентября этого года в 34 школах мегаполиса появятся первые классы информационных технологий. Об этом министр сообщил пятого марта в рамках участие в программе «Вопросы, важны...

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

Как создавать QR-коды: мастер-класс для школьников Как кодировать информацию и зачем это нужно – специалисты рассказали ребятам о OR-кодах. Мастер-класс, который прошел 9 октября в г. Бакал Саткинского района, был организован Благотворительным фондом «Вместе мы можем больше» в рамках инициативы Meet and Code и Ев...

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

[Перевод] Visual Studio for Mac: 5 новых крутых функций За прошедший год команда Visual Studio for Mac обновила редакторы в среде IDE, чтобы они стали быстрее, плавнее и продуктивнее. Мы сделали это, создав нативный интерфейс редактора macOS на основе того же самого бэкенда редактора, что и Visual Studio в Windows. В версии 8.1 м...

Как сократить time-to-market: история про автоматизацию тестирования в «М.Видео» Быстрая и эффективная разработка ПО сегодня немыслима без отточенных рабочих процессов: каждый компонент передается на сборку к моменту установки, изделие не простаивает в ожидании. Еще два года назад мы совместно с «М.Видео» начали внедрять такой подход в процесс разработ...

Влияние описание ролика на ранжирование ролика в поиске Ютуба Сегодня я расскажу о влиянии описания ролика на его ранжирование в поиске Ютуба. Что такое описание ролика Ютуба?! Это вот это:   Многие считают, что в описании ролика должны быть обязательно ключевые слова.  На самом деле это не так. Наличие ключевых слов в описании(и...

Rocket League теперь поддерживает кроссплатформенный мультиплеер между Xbox One и PS4 Сегодня компания Psyonix объявила, что Rocket League теперь полностью поддерживает кроссплатформенный мультиплеер, поскольку Sony включила игру в программу PlayStation Cross-Play Beta. Ранее кроссплатформенная игра поддерживалась только между Xbox One, Nintendo Switch и ПК....

System76 Darter Pro OSFC Edition готов к продаже Официально представлен совершенно новый ноутбук под названием System76 Darter Pro OSFC Edition, который работает на специальной операционной системе Coreboot и LinuxBoot, которую вы можете в будущем изменить и выбрать те возможности, которые вам действительно нужны. Это, кон...

В Китае тестируют в школах «умные» головные обручи для контроля внимательности детей В ряде школ в Китае начали тестирование «умных» головных обручей, позволяющих контролировать внимательность детей в классе. На снимке выше класс в начальной школе в Ханчжоу (провинция Чжэцзян). У школьников на голове носимое устройство под названием Focus 1, изготовленное ст...

Во что играть с детьми до школы Привет, меня зовут Аня, я из Мосигры и изредка буду в наш блог что-то писать. Вопрос, во что с детьми надо играть, особо никого не беспокоил века так до семнадцатого. Есть даже теория, что в Средневековье детей воспринимали как маленьких взрослых и воспитывали как в армии...

Новое приложение от Microsoft помогает учить язык, используя камеру вашего смартфона Восемь стажеров из Microsoft разработали новый инструмент для изучения языка, который призван помочь людям разных возрастов выучить на нужном языке названия предметов из окружающего мира. Чтобы при помощи приложения, получившего название Read My World, выучить более 1500 сл...

8 причин, по которым вы обязательно захотите использовать Azure Notebooks Если Вы data scientist, или занимаетесь машинным обучением, как я — наверняка Вы пишете большую часть кода в Jupyter Notebooks. Для всех остальных поясню: Jupyter — это замечательная система, позволяющая Вам сочетать исполняемый программный код и текстовые фрагменты на основ...

Байт-машина для форта (и не только) по-индейски (часть 4) И снова я несколько переоценил объем статьи! Планировал, что это будет заключительная статья, где сделаем компилятор и выполним тестирование. Но объем оказался велик, и я решил разбить статью на две. В этой статье мы сделаем практически все основные функции компилятора. ...

Куда катится Сеть Лирика В последнее время ловлю себя на том, что в своих рассуждениях о глобальных тенденциях, которые собираюсь где-то систематизировано изложить, всё чаще проскакивает мысль вроде «а вот в наше время молодёжь ...». Даже не буду ссылаться на Папирус Присса и весь тот легенда...

[Перевод] Как я сдал сертификационный экзамен Google Cloud Professional Data Engineer Без рекомендуемого 3-х летнего практического опыта В преддверии старта занятий по курсу «Data Engineer», хотим поделиться с Вами переводом одной очень интересной истории, которая наверняка будет полезна будущим дата инженерам. Поехали! Худи от Google: надето. Серьезное раб...

Как сделать так, чтобы Android выглядел как iPhone Превратить Android в iOS? Легко! Хотели бы вы, чтобы в вашем смартфоне сочетались функциональность и гибкость операционной системы Android и внешний вид iOS? Или вы хотите получить функции ОС от Apple на Зеленом Роботе? Или, быть может, вам просто хочется поэкспериментироват...

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

Решение задания с pwnable.kr 21 — horcuxes. Возвратно-ориентированное программирование и ROP-цепочки В данной статье решим 21-е задание с сайта pwnable.kr, направленное на составление ROP-цепочки. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду писать и рассказыв...

Another Way — LFS, Multi User и текущий прогресс инди Action/RPG Всем привет! Прошло немногим больше месяца и по традиции я спешу поделиться прогрессом нашей авантюры, серии под названием “Через тернии к игре мечты”. Хочу напомнить, что же тут происходит. Мы разрабатываем игру Another way — Нелинейная Action/RPG от третьего лица с элеме...

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

Отличные курсы Powershell для всех желающих Если вы хотите на профессиональном уровне уметь проводить автоматизацию задач администрирования всех серверов Windows, то вам обязательно следует посетить курсы powershell. Тут предоставят всем слушателям буквально фундаментальные знания и необходимые навыки для использовани...

NASA финансирует разработку 18 фантастических технологий для освоения космоса Еще в начале XX века казалось, что полет человека в космос является чем-то невозможным. Теперь же выход космонавтов в космическое пространство является чем-то обыденным и даже не считается за большую новость. Чтобы не останавливаться на месте, человечеству важно сохранять н...

[Перевод] Я самый большой скупердяй в инди-разработке игр Скриншот из Queen's Wish. Учтите, что я использую игровой арт, который мне нравится. Это необходимо, потому что потом придётся смотреть на него годами, и я не хочу сойти с ума. Неделю назад я опубликовал в блоге пост «Почему все мои игры выглядят так отстойно» (оригинал). ...

«Новый лозунг Шкоды: «Это нормально!»: Владельцы Skoda Kodiaq массово жалуются на запотевание фар Официальный дилер считает, что проблема пройдет сама собой, нужно лишь потерпеть. У редкого автомобиля нет никаких «болячек», и это нормально, однако в том случае, когда с обнаруженной проблемой борется сам автопроизводитель, а также стремится устранить «косяк» на корню ещ...

Server Side Rendering для React App на Express.js На написание этой статьи меня сподвигло отсутствие какого-либо более-менее полного мануала, как же сделать Server Side Rendering для React приложения. Когда я столкнулся с этой проблемой, у меня было 2 варианта это сделать, либо Next.js фреймворк, либо используя Express.js....

[Из песочницы] Англоязычная кроссплатформенная утилита для просмотра российских квалифицированных сертификатов x509 Сегодня использование цифровых сертификатов X509 v.3 стало обыденным делом. Все больше людей используют их для доступа на сайт Госуслуги, ФНС, электронные торги и т.д. И все больше людей хотят знать что же находится в этом «сундуке» под названием сертификат. И если сертифик...

[Из песочницы] Профилирование под Linux с помощью Performance Analyzer Профилирование под Linux с помощью Performance Analyzer Коллеги, считаю полезным рассказать об удобном и бесплатном профилировщике кода для Linux/Solaris. Он входит в пакет Sun/Oracle Developer Studio [1]. По моему мнению, другие части этой среды разработки несколько бесполе...

[Из песочницы] Построение пакета RPM для Rosa Linux на практике Если Вы уже давно пользуетесь операционной системой Linux и хоть немного разбираетесь в программировании, рано или поздно Вам может понадобиться собрать программу из исходного кода. Может быть, нужной программы не окажется в репозиториях дистрибутива. Или в этих репозиториях...

Android установили на игровую приставку Nintendo Switch Хотя поддержка Android на Nintendo Switch, скорее всего, никогда не будет официально реализована, это не помешало различным мододелам установить «зеленого робота» на популярную портативную приставку, да еще и сделать это так, как всем бы того хотелось. Между ОС Switch и And...

Разработка «на слух»: адаптивные IT-технологии Сложно ли людям с особыми потребностями реализовать себя в IT? Адаптивная индустрия сделала доступными сенсорные смартфоны, заменила клавиатуры брайлевскими дисплеями, позволила незрячим управлять системой голосом, а тем, кто и не видит, и не слышит, – считывать информацию ...

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

[Из песочницы] BotMan знакомство Хочу рассказать о PHP фреймворке для создания ботов BotMan (Сайт). Botman можно использовать и как библиотеку, и как расширение Laravel (BotMan Studio). Читать дальше →

Bluetooth LE не так уж и страшен, или Как улучшить пользовательский опыт без особых усилий Недавно мы в команде придумали и реализовали функцию передачи денег по воздуху с помощью технологии Bluetooth LE. Я хочу рассказать вам, как мы это сделали и что Apple предоставляет нам из инструментов. Многие разработчики думают что Bluetooth — это сложно, ведь это достаточ...

[Из песочницы] На что способен мозг студента, познающего компьютерный мир Доброго времени суток. Закончив писать очередной скрипт на Bash, понял, что всё должно быть совершенно иначе, однако всё работало. Хочу вам показать, какие непотребства и костыли написал я, дабы решить задачу, но пока не имея вагона знаний. Иначе говоря, каррикатура на прог...

Microsoft ML Spark: расширение Spark, делающее SparkML человечнее, и LightGBM как бонус Многие, кто работал с Spark ML, знают, что некоторые вещи там сделаны "не совсем удачно" или не сделаны вообще. Позиция разработчиков Spark в том, что SparkML — это базовая платформа, а все расширения должны быть отдельными пакетами. Но это не всегда удобно, ведь Data Scient...

Новый пакет валидаций для React на Mobx @quantumart/mobx-form-validation-kit Добрый день. Сегодня я хочу рассказать о новом пакете для асинхронных валидаций в проектах использующих в своей основе React, Mobx и написанных на Typescript. Современная Frontend разработка предполагает большое количество логики при заполнении страниц с документами, анкет ...

[Из песочницы] 10 принципов самодокументируемого кода Привет! Сегодня я хочу поделиться советами по написанию совершенного понятного кода, взятые из книги Питера Гудлифа «Ремесло программиста // Практика написания хорошего кода». Конечно, неплохо было бы прочитать эту занимательную книгу каждому кто пишет код, но для особо ле...

[Из песочницы] Использование верилятора как средства быстрого моделирования RTL проектов. Введение в UVM В данной статье будут описаны установка и применение бесплатного ПО для моделирования схем цифровой логики на языке Verilog как альтернативы коммерческих продуктов Incisve от компании Cadense и ModelSim от компании MentorGraphics. Сравнение моделирования в ModelSim и Verilat...

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

SNA Hackathon 2019: усложняем архитектуру — упрощаем признаки В этой статье я расскажу про свое решение текстовой части задачи SNA Hackathon 2019. Какие-то из предложенных идей будут полезны участникам очной части хакатона, которая пройдет в московском офисе Mail.ru Group с 30 марта по 1 апреля. Кроме того, этот рассказ может быть ин...

Книга «Искусство программирования на R. Погружение в большие данные» Привет, Хаброжители! Многие пользователи используют R для конкретных задач — тут построить гистограмму, там провести регрессионный анализ или выполнить другие отдельные операции, связанные со статистической обработкой данных. Но эта книга написана для тех, кто хочет разраба...

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

Проект "Умная розетка" Всем привет! С вами Vario Company, и мы хотим рассказать про наш внутренний проект "Умная розетка". Идея данного проекта родилась, когда мы  начали сталкиваемся с рядом житейских вопросов, таких как потребление электроэнергии и шум принтеров на холостом ходу. Чтобы не г...

Microsoft опубликовала курс обучения детей программированию в Minecraft Преподавать информатику в школе стало еще проще, так как Microsoft открыла свой 30-часовой учебный курс, ориентированный на учащихся от 11 до 16 лет. Он основан на Minecraft Education Edition и редакторе Microsoft MakeCode.

Swift under the hood: Generic implementation Generic code enables you to write flexible, reusable functions and types that can work with any type, subject to requirements that you define. You can write code that avoids duplication and expresses its intent in a clear, abstracted manner. — Swift docsКаждый, кто писал на ...

[Из песочницы] Ещё одна библиотека для создания mock'ов Добрый день. Я занимаюсь автоматизацией тестирования. Как и у всех автоматизаторов, у меня есть набор библиотек и инструментов, которые я обычно выбираю для написания тестов. Но периодически возникают ситуации, когда ни одна из знакомых библиотек может решить задачу с риском...

Меняем встроенную Android-клавиатуру на более удобную Совсем не обязательно использовать встроенную клавиатуру, ведь всегда можно найти кое-что получше Большинство пользователей Android обычно используют приложение клавиатуры, которое поставляется «в комплекте» с устройством. Тем не менее, в магазине Google Play есть ...

Разработка чат-бота (laravel+botman) Welcome! Я, как junior full stack разработчик, при попытке написать бота с использованием laravel и botman’а столкнулся с многими проблемами. Во-первых, я плохо знаю английский, а на русском статей очень мало на эту тему, а те, что есть не помогли мне решить мои проблемы. В ...

[Перевод] Разработка белков в облаке с помощью Python и Transcriptic или Как создать любой белок за $360 Что, если у вас идея для классного, полезного белка, и вы хотите получить его в реальности? Например, хотите создать вакцину против H. pylori (как словенская команда на iGEM 2008), создав гибридный белок, который сочетает фрагменты флагеллина E. coli, стимулирующие иммунный ...

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

[Перевод] Учебный курс по React, часть 13: компоненты, основанные на классах Сегодня мы публикуем перевод очередного занятия учебного курса по React. Оно посвящено компонентам, основанным на классах. Такие компоненты создают с использованием ключевого слова class. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функци...

Универсальный способ настройки внешнего вида WinForms приложения (на примере FAQ.Net) Введение После размещения первой статьи о своем приложении FAQ.Net (программа заметок под Windows), появились первые пользователи, для которых хочется дальше развивать свою программу для заметок. Чтобы повысить интерес у пользователей, возникла идея повысить его привлекател...

Как установить эмодзи с iPhone на свой Android Коллаж из смайликов Операционная система iOS славится своими красочными эмодзи. Они регулярно обновляются и круто выглядят (хотя кого-то и бесят. Как они вообще появились?!). Пользоваться ими — одно удовольствие, поэтому нет ничего удивительного в том, что и многие пользоват...

Lingualeo 3.1.3 Lingualeo — это увлекательное, эффективное и бесплатное изучение английского языка. Более 16 млн человек во всем мире используют Lingualeo.  Эффективно. Lingualeo мотивирует ученика на результат, совмещая игровые механики, высококачественный контент и социализированный под...

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

[Из песочницы] Современное программирование: взгляд после 25 лет перерыва или как я писал бота для Телеграм Задача кажется простой, когда ничего про нее не знаешь и когда решил. В один “прекрасный” день, я понял, что мне не интересно сидеть на многочисленных форумах, а хочется создать свой канал и делиться “мудростью”. Мне нравится Телеграм заложенными в него возможностями в то...

[Перевод] Пишем HTTP/1.1 & HTTP/2 клиент и сервер на Golang Golang — отличный язык программирования с широким спектром возможностей. В этой статье показано, как на Go можно написать клиент и сервер для протоколов HTTP/1.1 и HTTP/2. Читать дальше →

Введение в Spring, или что делать, если по всему проекту @Autowired и @Component, а вы не понимаете, что это Приветствую тебя, Хабр! Эта статья будет полезна тем, кто уже начал изучать Java и даже успел добиться некоторых успехов в понимании Java Core, и вот услышал слово Spring. И, возможно, даже не один раз: знание Spring Framework, как минимум, фигурирует в описаниях множества ...

[Перевод] Бесплатная библиотека Wolfram Engine для разработчиков программного обеспечения Оригинал перевода в моём блоге Пара видео о Wolfram Language Почему вы до сих пор не используете технологии Wolfram? Что ж, такое случается, и довольно часто. В процессе общения с разработчиками программного обеспечения, они достаточно лестно отзываются о наших технология...

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

Термометр & гигрометр на ATMEGA 328P-MU — Поднимаем уровень ардуино разработок Сегодня хочу поделиться одним из своих Ардуино проектов. Когда-то, не очень что бы давно я где-то на просторах интернета узнал об Ардуино. Влился я в это дело довольно быстро, уровень вхождения там не высокий. Через некоторое время уже собрав кучу датчиков, сенсоров для умно...

[recovery mode] Вышел Embarcadero RAD Studio 10.3.2 или то что мертво… умерло Привет, Хабр! Присаживайтесь поудобней, заварите себе чайку, ибо я пишу немного затянуто и через правое ухо. Итак, Вы готовы? Отлично, тогда приступаем. ВНИМАНИЕ! Информация, описанная ниже, написана исключительно в исследовательских целях и не предназначена для использовани...

[Перевод] Как правильно раскрашивать многочлены Многочлены – это не просто упражнения в абстрактных материях. Они прекрасно подходят для выявления структур в неожиданных местах. В 2015 году бывший поэт, ставший математиком, Джун Хо помог решить задачу, сформулированную около 50 лет назад. Она была связана со сложными ма...

«Люди думают, что бесплатное — значит бесполезное. Мне казалось, я смогу их переубедить» — Юрий Ярцев о школе Russol В мире никогда еще не было столько открытых знаний и секундного доступа к любой информации. При этом знания все еще могут быть страшно дорогим товаром. Люди платят сотни тысяч за курсы, а иногда даже за почтовые рассылки. Но все слишком непредсказуемо — иногда купленные зн...

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

Ezblock Pi — программирование без программирования, в этот раз для фанатов Raspberry Pi Идея писать код, не пиша код (да-да, пиша — деепричастие настоящего времени от глагола писать, живите теперь с этим) не раз приходила в голову и умным людям, и просто лентяям. Мечта о графическом интерфейсе, в рамках которого можно кидать одни кубики на другие, рисовать взаи...

Кое-что о пространстве имён Я программирую на PHP. И немножко на JS. Когда-то я программировал на Java, ещё раньше — на LotusScript. Попробовал на вкус python и dart. Basic, Fortran, Pascal, Prolog, VisualBasic, С++/С, perl — на всём этом я тоже изображал что-то исполняемое. Языки программирования меня...

KOST: что входит в новый стек технологий для разработки облачных приложений Рассказываем о его компонентах и перспективах. / фото Gozha Net Unsplash Почему появился новый стек Существует множество стеков для разработки программного обеспечения. Один из наиболее известных — LAMP (Linux, Apache HTTP server, MySQL, PHP). На нем построен сайт «Википед...

[Перевод] «Тетрис» в роли принтера Поворачивая, переставляя и опуская вниз заранее заданную последовательность фигур, Tetris Printer Algorithm использует механику «Тетриса» для генерации произвольных битовых изображений. Описание алгоритма Алгоритм построчно преобразует пиксели исходного изображения в квадр...

Развлечения для самых маленьких: лучшие игры для детей на iOS и Android Давать ребенку смартфон или планшет для того, чтобы он перестал плакать — не самое лучшее проявление родительских качеств. А вот использовать технологии для обучения — очень неплохая идея. Предлагаем вашему вниманию подборку мобильных игр для самых маленьких и тех, кто поста...

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

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

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

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

Искусство парсинга или DOM своими руками Привет, Хабр! Недавно я задался идеей создать простой язык разметки наподобие markdown, который отлично подходил бы для моих задач, а именно — быстрого написания лекций с форматированием и возможностью вставки математических формул «на лету», с применением одной лишь клавиат...

Тесты на Codeception для PHP-бэкендов Всем привет! Меня зовут Паша, и я QA инженер команды Order Processing в Lamoda. Недавно я выступал на PHP Badoo Meetup. Сегодня хочу представить расшифровку своего доклада. Речь пойдет про Codeception, про то, как мы его используем в Lamoda и как на нем пишем тесты. Чи...

[Перевод] Создание игровых 3D-моделей «для бедных»: путь инди Вы когда-нибудь задумывались о том, как работает небольшая инди-студия, занимающаяся разработкой видеоигр? Создавать игры с очень маленьким бюджетом можно, но для этого необходима смекалка, много труда и ещё больше любви к своему делу. Мы — небольшая команда из Польши. Нас...

Консольный плеер cmus для Linux Доброго времени суток. В данный момент использую консольный плеер cmus, который очень удобен в использовании. В свете этого, хотел бы написать небольшой обзор. Читать дальше →

[Перевод] Пишем Android-приложение на ассемблере Эта рассказ о нестандартном подходе к разработке Android-приложений. Одно дело — установка Android Studio и написание «Hello, World» на Java или Kotlin. Но я покажу, как эту же задачу можно выполнить иначе. Читать дальше →

Какой язык программирования выбрать После того, как я написал статью «Почему не нужно учить Python первым языком», я на регулярной основе получаю много вопросов в личку, что лучше выбрать, как быть и так далее. Поэтому в этой статье я расскажу вам свои мысли на этот счет. И самое главное отвечу на «Священный Г...

Высоконагруженный сервис для вычислений на GPU Привет, Хабр! Я руковожу разработкой платформы Vision — это наша публичная платформа, которая предоставляет доступ к моделям компьютерного зрения и позволяет вам решать такие задачи, как распознавание лиц, номеров, объектов и целых сцен. И сегодня хочу на примере Vision ра...

SP701 + PCAM-5C + 15 Минут+ VITIS = Easy MIPI на FPGA Аннотация Интерфейс MIPI сегодня становится всё более популярным интерфейсом для подключения камер и дисплеев. По этой причине всё больше отладочных комплектов на основе FPGA содержат на борту соединители интерфейса MIPI – как для подключения камер(ы) и дисплея(ев). Для того...

Флагманские смартфоны Huawei Mate 30 получат компактные системные платы, которые освободят больше места для аккумулятора, камеры и других компонентов Как пишет источник, компания Huawei выбрала технологию SLP для системных плат флагманских смартфонов Mate 30. Переход на SLP позволит инженерам размещать внутри корпуса аккумуляторные батареи большей емкости и многомодульные камеры. Технология SLP (Substrate Like PCB) ...

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

[Из песочницы] Fish Redux — новая Redux библиотека для Flutter В конце 2018 года Google, не без помощи Open-Source сообщества, сделал большой подарок для мобильных разработчиков, выпустив первую стабильную версию кросс-платформенного фреймворка для мобильной разработки Flutter. Однако, при разработке крупных приложений, немного больших,...

[Из песочницы] Диагностическая медицинская экспертная система на Prolog Вступление Как то мне посчастливилось выбирать тему дипломной работы по специальности программная инженерия, и я выбрал написание экспертной системы, причем именно на языке Пролог. Хоть в промышленном программировании он почти не используется, он интересен в теоретическом пл...

Объективы Olympus M.Zuiko Digital ED 17mm F1.2 Pro, ED 25mm F1.2 Pro, ED 45mm F1.2 Pro: отзыв фотографа Александры Мановцевой Это мой первый опыт съемки на Olympus, в прошлой статье я писала о своих впечатлениях при работе с камерой Olympus OM-D E-M1 Mark II, а этот обзор посвящен трем фикс-объективам, предоставленным мне редакцией iXBT.com. Статья проиллюстрирована кадрами со съемок, которые я про...

Делаем камеру формата gopro 3/4 для подвеса tarot t-3d iii из caddx tarsier Привет всем!  Решил написать свой первый пост. Давно хотел заменить камеру на подвесе, так как перестало устраивать мыльное аналоговое fpv видео. Выбор пал на камеру caddx tarsier, аналоговый сигнал неплохой, плюс вроде есть 4к). Правда, первую камеру прислали с браком матри...

Знакомство со статическим анализатором PVS-Studio при разработке C++ программ в среде Linux PVS-Studio поддерживает анализ проектов на языках C, C++, C# и Java. Использовать анализатор можно под системами Windows, Linux и macOS. В этой заметке речь пойдет об анализе кода, написанного на C и C++ в среде Linux. Установка Установить PVS-Studio под Linux можно разными...

В Java может появиться новая сериализация На сайте OpenJDK появился новый исследовательский документ, в котором описывается идея введения в язык новой улучшенной сериализации взамен старой. Сериализация в Java существует с версии 1.1, то есть практически с момента её рождения. С одной стороны, сериализация является...

Видеокарта GeForce GTX 1660 Ti выйдет 22 февраля, опубликованы изображения моделей EVGA GeForce GTX 1660 Ti XC и Palit GTX 1660 Ti StormX Сегодня в Сети появились новые подробности о видеокартах GeForce GTX 1660 Ti. Мы уже писали об упаковке модели Galax, а сейчас в распоряжении источника оказались изображения моделей EVGA GeForce GTX 1660 Ti XC и Palit GTX 1660 Ti StormX. Но начнем с другого. Как пишет и...

В российских школах могут ввести уроки по киберспорту Институт развития интернета (ИРИ) предложил Министерству просвещения России внести занятия по киберспорту в факультативную программу школ для подростковой и юношеской возрастных групп. На данный момент речь идёт о пилотной программе в рамках федеральных проектов ...

Chromium — это не только браузер, но и хороший фреймворк Большинство людей привыкли, что Chromium — это и браузер, и основа для других браузеров. До недавнего времени я тоже так думал, но, изучая эту тему уже пару месяцев, я начал открывать другой дивный мир. Chromium — это огромная экосистема, в которой есть всё: и система зави...

Microsoft полностью перепишет часть Windows на своем новом языке программирования Как пишет CNews со ссылкой на Zdnet, новый язык базируется на набирающем популярность Rust, развитием которого занимается компания Mozilla, разработчик известного браузера Firefox. Проект получил название Verona и, по данным издания, ключевое его отличие от Rust заключается ...

Дайджест IT событий марта (часть вторая) Заканчиваем обзор IT мероприятий этого месяца, оказавшегося неожиданно урожайным. Митапы продолжают удерживать лидерские позиции, но на этот раз их ощутимее разбавляют крупные конференции и хакатоны. Среди популярных тем — data science, Интернет вещей и машинное обучение. ...

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

Самый мягкий и пушистый путь в Machine Learning и Deep Neural Networks Современное машинное обучение позволяет делать невероятные вещи. Нейросети работают на пользу общества: находят преступников, распознают угрозы, помогают диагностировать болезни и принимать сложные решения. Алгоритмы могут переплюнуть человека и в творчестве: они рисуют карт...

Суровая сибирская JVM: большое интервью об Excelsior JET Недавно мы писали о том, на какие ухищрения пошла Alibaba, чтобы сделать себе жизнь с OpenJDK более приемлемой. Там были комментарии вроде «оказывается, пока мы тут страдаем с обычной джавой, китайцы уже сделали себе свою особенную». Alibaba, конечно, впечатляет — но и в Рос...

[Из песочницы] Подписываемся на Kafka по HTTP или как упростить себе Веб-хуки Существует множество способов обработки сообщений из Pub-Sub систем: использование отдельного сервиса, выделение изолированного процесса, оркестрация пулом процессов/потоков, сложные IPC, Poll-over-Http и многие другие. Сегодня я хочу рассказать о том, как использовать Pub-S...

Радиолюбительская технология: как я заказал монтаж печатной платы на китайской фабрике Цель публикации: рассказать, как подготовить несложную радиолюбительскую конструкцию к производству. Как уже я писал ранее, творчество радиолюбителей имеет ограниченный возможностями семьи бюджет и имеет ограничение по отнятому у семьи времени. Не каждый радиолюбитель може...

История одной анимации Однажды фронтендеру позвонил дизайнер и попросил сделать «паутинку» за запотевшим стеклом. Но потом оказалось, что это не «паутинка», а гексагональная сетка, и не за стеклом, а она уходит вдаль, и с WebGL фронтендер не знаком, а всей анимации пришлось учиться в процессе рисо...

[Перевод] Секреты работы с тканью в игре Alan Wake [Программист анимаций компании Remedy Хенрик Энквист рассказал, как его команда создала убедительную симуляцию твидового пиджака главного героя игры в жанре хоррор-триллер Alan Wake.] Главный персонаж нашего экшн-триллера — Алан Уэйк, писатель, попавший в кошмар, где он в...

Асинхронные пользовательские сценарии на чистом Rust без фреймворков и SMS Привет, Хабр! Иногда при разработке сетевых сервисов и пользовательских интерфейсов приходится сталкиваться с достаточно сложными сценариями взаимодействия, содержащими ветвления и циклы. Такие сценарии не укладываются в простую стейт-машину — недостаточно хранить все данны...

[Из песочницы] Три неочевидных примера использования шаблонизаторов в backend-е С одной стороны, предмет действительно был квадратным. C другой стороны он был круглым. Но с третьей стороны, с которой должен быть треугольник, предмет вышел кривой и косой. — Алешенька идет на совещанку? — в дверь просунулась Леночкина заинтересованная физиономия. — Алеш...

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

Game-турнир для ребят, увлеченных технологиями Игра – лучший способ познакомиться с миром программирования. В Москве благотворительный фонд «Гольфстрим» проведет game-турнир для детей и подростков с ограниченными возможностями здоровья. Мастер-класс позволит ребятам получить новые навыки, найти новых друзей и единомы...

[Перевод] Для доказательства 30-летней гипотезы из области информатики хватило двух страничек Гипотеза «чувствительности» ставила в тупик многих выдающихся специалистов по информатике, но её новое доказательство оказалось настолько простым, что один исследователь смог свести его к единственному твиту Опубликованная этим летом работа ставит точку в почти 30-летней и...

[Из песочницы] Навигация в кроссплатформенных приложениях: почему NavController победил angular/router в Ionic 4 Всем привет! Меня зовут Никита Жигамовский, программист в KitApp и я хочу рассказать о своем опыте построения навигации в Ionic 4: проблеме, с которой столкнулся, и ее решении. Я занимаюсь разработкой кросс-платформенных решений для мобильных приложений с 2018 года. Рань...

Amazon открывает доступ к своему квантовому компьютеру Amazon делает что-то новое! Такие технологические гиганты, как Google и IBM уже давно борются за то, чтобы стать первой компанией, которая создаст по-настоящему доступный квантовый компьютер. Между тем не менее известная компания Джеффа Безоса Amazon не сильно спешит влезать...

Яндекс рассказал, как выбрать компонент при дизайне навыка для Алисы Вышел седьмой урок Школы Алисы

[Перевод] Как в 1995 году писали игры для Sega Saturn Это документ, написанный мной в 1995 году, когда я работал над первой игрой студии Neversoft: Skeleton Warriors. Это была первая игра, в которой я не использовал язык ассемблера 68K. Фото сделано примерно в то время. Комплект разработчика (dev kit) («Small Box» и ICE) стоит...

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу...

Покорить Python и Pascal: как прошел чемпионат по кодингу «Код в мешке» – это новый, современный формат чемпионата по кодингу, который прошел в Кирове. 20 октября в нем приняли участие и новички, и опытные киберспортсмены. Ребята блестяще решали творческие задания и с интересом писали сложные программные коды. Самые юные участн...

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

Google Data Studio: как легко визуализировать данные для отчетов на примере ОВД-Инфо Аналитические отчеты – это не обязательно нагромождение цифр, в которых трудно разобраться. Любые данные можно визуализировать и наглядно показать вашим коллегам, донорам или партнерам. Помогут в этом интерактивные аналитические дашборды, или информационные панели для визуа...

[Перевод] Electron: разработка настольных приложений с использованием HTML, CSS и JavaScript Можно ли, используя HTML, CSS и JavaScript, создавать настольные приложения? Автор статьи, перевод которой мы сегодня публикуем, даёт утвердительный ответ на этот вопрос. Здесь он расскажет о том, как, применяя веб-технологии и пользуясь возможностями фреймворка Electron, со...

[Перевод] Хороший разработчик мудр, а не гениален Одним из самых важных уроков, которые я постиг в качестве разработчика 15 лет назад, была эта простая мысль: Хороший код выразителен, а не впечатляющ. Я помню, как услышав это спросил «А в чём разница?», и получил ответ. «Выразительный» — понятный, однозначный и конкретный....

Применение компьютерного зрения в морских исследованиях или 12 человек на сундук мертвеца Горячо приветствую, уважаемые коллеги. В сообществе OpenDataScience успешно развивается инициатива ML4SG — Machine Learning for Social Good. В её рамках стартовал целый ряд интересных проектов, которые в самых разных областях улучшают нашу с вами жизнь. Мы хотели бы расска...

[Перевод] Вышел ML.NET 1.0 RC. Что нового? ML.NET — это кроссплатформенная среда машинного обучения с открытым исходным кодом (Windows, Linux, macOS) для разработчиков .NET. Работая с ML.NET, разработчики могут использовать существующие инструменты и навыки для разработки и внедрения AI в свои приложения, создавая по...

Языковой сервис Duolingo будет учить детей читать и писать Глобальная цель компании — борьба с безграмотностью среди взрослых.

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

iPhone OS: исправление ошибок (Xcode 3.1 и Xcode 4) Objective-C приближался к первой тройке самых популярных языков программирования, из пишущих программы для iPhone OS лишь каждый пятый имел опыта программирования для OS X, App Store превращался в Клондайк XXI века. Пришло время создавать лучшую в мире среду разработки, сро...

Биология для программистов: как инженерный подход меняет мир Источник Партнеры венчурного фонда Andreessen Horowitz, эксперты в области инвестиций в биотех Хорхе Конде, Виджай Панде и Джули Ю написали манифест о роли инженерных принципов для создания инноваций в биологии, основные мысли из которого легли в основу этого поста. Челов...

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

Путеводитель по галактике DevOpsConf 2019 Представляю вашему вниманию путеводитель по DevOpsConf — конференции, которая в этом году имеет галактический масштаб. В том смысле, что нам удалось собрать такую мощную и сбалансированную программу, что путешествие по ней понравится самым разным специалистам: разработчикам,...

Запускаем “десктопное” ПО на микроконтроллере Embox принимал участие в IT фестивале TechTrain. Мы как и в первый раз привезли железки и вживую показали наши достижения. О некоторых мы уже писали на хабре, но мало ли кто не поверил :). Были показаны VoIP телефон, Qt и OpenCV, все на базе STM32F7-Discovery. Кроме стенда ...

Pixel tolerance 2 Приветствую всех!Давно хотел поделиться новыми результатами калибровки своего Wanhao d7+, да принтер сломался. Починил, и заодно решил рассказать о ремонте, вдруг кому пригодится.Но обо всем по порядку.Пишу пост, в продолжении предыдущего поста , в котором рассказывал о перв...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)