Социальные сети Рунета
Пятница, 29 марта 2024

Как скрестить Коня и Трепетную лань «Бить (Bash) или не бить», - спрашивал один датский принц. Вот и у меня возник аналогичный вопрос, когда у нас в компании появился сервер сборки Bamboo. Как можно в задании Bamboo, выполняющем скрипт Bash или Cmd, написать команды, одновременно понятные интерпретатору команд...

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

SSH Picker в ежедневной работе сетевого инженера В статье рассмотрим полезный инструмент облегчающий сбор данных с сетевых устройств. Для работы скриптов с командной строкой по SSH на языке Python нужно использовать множество сторонних модулей, а вернее множество зависимостей одного модуля (привет paramiko), а если на маши...

[Перевод] Как писать bash-скрипты надежно и безопасно: минимальный шаблон Скрипты на Bash. Как много в этом слове. Любому разработчику рано или поздно приходится их писать. Почти никто не скажет "да, я люблю писать bash-скрипты", и поэтому почти все уделяют мало внимания этой теме.Я не буду пытаться сделать из вас эксперта в Bash, а просто покажу ...

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

Применение exception при накате Python-скрипта на Huawei Обычно мы можем встретить три проблемы при попытке запустить Python-скрипт на сети Huawei (впрочем, и на любой другой): это отсутствие L3 связности с устройством, это неверные имя пользователя или пароль, и это SSH-неполадки. Можно заметить, что любая из этих проблем остано...

4 PowerShell-скрипта для проверки действительности ваших SSL-сертификатов Привет, Хабр! Меня зовут Андрей Благов, я архитектор центра профессиональных сервисов и R&D в облачном провайдере T1 Cloud, и сегодня речь пойдет о сертификатах SSL. Добавляйте статью в закладки, она вам точно пригодится. В ней я поделюсь PowerShell-скриптами для проверк...

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

makesure — make с человеческим лицом Многие ли из вас используют всевозможные вспомогательные shell-скрипты в своих проектах? Это также могут быть Python или Perl скрипты. Обычно такие скрипты используются на этапе сборки или для других задач автоматизации проекта. Примерами таких задач могут служить: вспомо...

SFTP под root-ом в WinSCP для удаленной отладки(PyCharm) Этот пост предназначен в первую очередь для новичков в разработке, впервые столкнувшихся с необходимостью запуска скриптов из-под root-а, взаимодействующих с ресурсами/устройствами, доступ до которых возможен только с сервера приложений, находящимся за NAT-ом. Частая си...

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

Особенности функций Mikrotik script. Сode из :parse Исследование функций и скриптов в Mikrotik script. Рассматриваются разные способы создания и вызова функций и скриптов с передачей в них параметров. Оператор :parse и особый тип данных code. Читать далее

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

Кросс-компиляция NGINX (для случая GCC) NGINX — это HTTP-сервер и обратный прокси-сервер, почтовый прокси-сервер, а также TCP/UDP прокси-сервер общего назначения, изначально написанный Игорем Сысоевым. Уже длительное время он обслуживает серверы многих высоконагруженных сайтов. Однако кросс-компиляция NGINX практ...

Как не надо индексировать Развитие происходит по спирали: когда-то люди не умели правильно индексировать, потом (в основном) научились, потом пришли noSQL и все снова забыли знание древних. Что вы будете делать, когда последние из старых DBA отплывут в Валинор? Снова и снова и сталкиваюсь с полным на...

Как получить пароль WPA2 WiFi с помощью Aircrack-ng? Друзья, всех приветствую!В этой статье я покажу вам как использовать airmon-ng (скрипты из пакета aircrack-ng) для обнаружения беспроводных сетей вокруг нас. Затем мы деаутентифицируем клиентов определенной беспроводной сети, чтобы перехватить handshake, а затем расшифруем е...

Хранители данных: как устроена работа с DWH в Lamoda Всем привет! Меня зовут Юлия Скогорева, я системный аналитик в команде Center of excellence в Lamoda, которая входит в дирекцию данных и аналитики.Если бизнесу нужны какие-то данные для принятия важных решений, то на помощь приходит наша команда. Мы тщательно изучаем множест...

Мой друг Netmiko. Часть 2: Три улучшения Python-скрипта Продолжаю ковырять автоматизацию рутины на сети из Huawei коммутаторов. На этот раз изыскания, которые позволили сократить код в 3 раза, а именно: хосты и команды перенесены в отдельные файлы, пароль и имя пользователя больше не хранятся в открытом тексте. Есть демонстрация ...

Как включить закадровый перевод видео в любом браузере. Это новый бесплатный скрипт Вот это круто!

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

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

Чем хороший программист отличается от плохого, или почему нужно выходить за рамки Это будет моя самая короткая статья.Когда-то я был молод и зелен и решал проблемы именно так, как их решают джуны. Алгоритм такой:1. Узнать о проблеме2. Локализовать проблему3. Загуглить проблему и решение4. Пофиксить проблемуНапример: эксель-файл содержит ошибку, и поэтому ...

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

Гусеница на Unity за 5 минут Смоделируем гусеницу, создадим анимацию в Blender. Импортируем в Unity и напишем небольшой скрипт для управления анимацией. Развернуть

Мой друг Netmiko. Часть 3: один скрипт для разных устройств Huawei Мы уже разобрали в прошлых частях как накатить на сетевые устройства Huawei список команд из внешнего файла. И это работает, если у нас сеть состоит из одинаковых устройств. Конечно, в реальной практике такое встречается редко. В этой работе мы рассмотрим как использовать ра...

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

[recovery mode] Как тестировать gradle-плагины Когда я писал свой первый gradle-плагин, я проверял его работоспособность следующим образом:1. Опубликовал версию n в plugins.gradle.org2. Проверил опубликованный плагин вручную на тестовом проекте3. Нашел ошибку/доработал, увеличил версию n=n+1, затем снова пункт 1Такой во...

[Перевод] Написание скриптов для tmux Мне, когда я пользуюсь tmux, часто надо открывать похожие рабочие пространства. Например, мне всегда нужно выводить последние строки пары файлов журналов в панели, или мне нужно открывать и vim, и mysql. Бывает, что мне нужно и что-то другое. Если вы попробуете найти свед...

Мой друг Netmiko Ansible с костыльком может автоматизировать сеть и non-CloudEngine коммутаторов Huawei, как недавно было доказано на нашем Enterprise форуме. Однако в сети, в которой работают разные модели коммутаторов, Ansible не представляется эффективным инструментом на данный момент. И ...

HTB Dynstr. Эксплуатируем уязвимость в DDNS Для подписчиковВ этой статье мы поговорим об эксплуатации динамического DNS, обнаружим и заюзаем баг OS Command Injection, а также используем ошибку в пользовательском скрипте и повысим привилегии до рута копированием файлов. Все это поможет нам пройти среднюю по сложности м...

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

Python — серьезный язык для разработки backend Всем привет! Меня зовут Аникин Денис, я тимлид в команде Chat в Райффайзенбанке. А также представитель внутреннего Python-сообщества, так называемый «community lead» (об этом как-нибудь в другой раз). В этой статье я хотел поговорить про отношение к Python среди разработчико...

Пишем свой плагин для IDEA для поддержки нового языка (часть 1) В статье рассмотрено как создается языковой плагин для IDEA на примере учебного языка Monkey. Приведены примеры из других плагинов. Пишем на Java и Kotlin. Читать далее

Что нужно знать про Postman: максимально коротко о Mock Servers, Flow и Visualize На просторах интернета часто встречается информация о платформе Postman. Большинство статей включают информацию о переменных, различных скриптах и автоматизации при тестировании. Но на самом деле Postman – это не только инструмент для тестирования, а платформа, которая помог...

Mozilla Sops для управления секретами в гите Задача управления секретами одна из самых неприятных в IT. Само существование секретов уже неприятно, потому надо специально прикладывать усилия, чтобы у кого-то не работало (например, чтобы анонимный пользователь не мог прочитать секрет).Когда кто-то прикладывает осмысле...

Внедрение Q# в ваши любимые языки и платформы (Python, .NET, ASP.NET, Julia, Lua, PowerShell) Не секрет, что Q# и Quantum Development Kit позволяют легко писать квантовые программы и запускать их на симуляторах и на оборудовании через службу Azure Quantum, с использованием Python, .NET или даже через Jupyter Notebook. Более того, инфраструктура, которая поддерживает ...

Как перестать жить и начать беспокоиться о потреблении памяти Когда пишешь на Python, редко задумываешься, что происходит под капотом. С одной стороны, это ускоряет разработку, но, с другой, становится причиной низкой производительности и ошибок Out of memory на больших объёмах данных. Здесь мы рассмотрим несколько приёмов, как избежат...

«Российский инстаграм*» могли сделать в конструкторе приложений «Россграм» наделал много шуму в России. Он должен был стать заменой запрещённому Instagram (его материнская компания Meta признана экстремистской в России, мы обязаны это указывать), но пока даже не запустился полноценно. Теперь пользователи заметили, что «Россграм» очень по...

Фантастические формулы и как они работают В прошлой статье я рассказывал о том, как мы реализовали на основе Google Sheets собственную диаграмму Ганта для работы над игровыми проектами. Если вам зашла такая реализация или просто интересно глубже понять принципы устройства таблиц и формул, сейчас мы будем разбирать и...

Зачем мошенникам онлайн-образование? Аферы в EdTech-офферах Мошеннические скрипты установлены более чем на половине российских EdTech-сайтов. Как обнаружить кукистаффинг и что делать дальше — в новой «Битве за трафик».

[recovery mode] Python: рефлексия Я пишу на Python примерно с 15-го года. Я определённо люблю его. Он так прост... В этом эссе я хотел бы вспонить, как начались мои взаимоотношения с этим замечательным языком, что за всё это время я узнал, что заставляло меня пищать от восторга, и рвать на голове волосы от р...

Портируем код C/C++ на Python В первой части нашего небольшого цикла статей мы исследовали возможность использования структур данных в Python, которые были созданы с помощью языков программирования C/C++. Для этого мы рассмотрели библиотеку Ctypes.В этой статье попробуем разобраться, какие еще есть подхо...

Почему арабский и иврит пишутся справа налево ПопМем Интересно 31.12.2021, 15:42 Почему арабский и иврит пишутся справа налево Те, кто встречал тексты, написанные на арабском и иврите, возможно, заметили, что они читаются не слева направо, а справа налево. Арабский и иврит – не ед...

HTB Previse. Раскручиваем кривой редирект до полного захвата сайта Для подписчиковСегодня на примере легкой машины с площадки Hack The Box я покажу вполне типичный процесс захвата веб-сервера. Начнем с неправильно настроенного редиректа, получим доступ к закрытым страницам, а точку опоры найдем через форму получения логов. Захватить флаг ру...

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

Сделай то, сделай это, сделай сам Доброго времени суток Дамы и Господа! Многим приходилось сталкиваться с необходимостью анализа большого количества данных при помощи Python по запросам начальства или коллег. Однотипные запросы поступают с определенной периодичностью, и не составляет труда подставить новые д...

[Перевод] Пишем чистый код при помощи деструктуризации объектов в JavaScript Сравниваем традиционный способ извлечения значений и деструктуризацию (ES6) в JavaScriptВ этой статье мы рассмотрим традиционное присваивание значений из объектов в переменные и новый синтаксис деструктуризации в ES6. Материал адаптирован на русский язык совместно с тимлидом...

Синтаксис Python — в чем главные подводные камни на первый взгляд легкого ЯП. Перспективы языка Python - один из самых популярных языков программирования. Как мы писали, в январе 2022 года он во второй раз за свою историю стал лидером ежемесячного рейтинга языков программирования Tiobe. Рост популярности Python за год составил 1,86%.Популярность языка обусловлена его о...

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

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

[Перевод] Баги в Hello World Hello World, должно быть, самая часто создаваемая компьютерная программа. Уже десятилетия это первая программа, которую пишут люди, когда начинают изучение нового языка программирования.Конечно же эта простая программа не должна иметь баги. Верно? Читать далее

Веб-сервер — это просто скрипт Есть категория людей, которые особо ценят надёжность, стабильность, безопасность и свободу информации. Наверное, именно такие люди поднимают медиасерверы Plex и Jellyfin, запускают ноды Bitcoin, мосты Tor, инстансы Mastodon и Matrix, приложения YunoHost, VPN-узлы Tailscale ...

Подключаем к Экселю GPU и ускоряем Эксель в 300 раз Попалась мне задачка оптимизации, а так как я большой фанат Экселя, то и выбор инструмента был скорым. Единственная пакость: Эксель дико медленный. Так, на одну итерацию уходило как минимум 35 минут, а таких итераций планировалось сделать 1275 (как минимум)! Цель этого небол...

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

История славянских шипящих: почему мы пишем жи-ши через И? tl;dr: потому что перед Ы не могли возникнуть ни Ж, ни Ш. Орфография многих живых языков отражает давно исчезнувшие вещи: например, написание английского слова knight указывает на то, что когда-то в 14 в. оно произносилось «книхт». В русской орфографии тоже полно «доисторич...

Как я разочаровался в low-code и стал руководителем команды разработки Привет, меня зовут Евгений, и я никогда не был программистом — написание кода вызывало у меня чуть ли не смертельную скуку. Конечно, за двадцатилетнюю карьеру приходилось писать скрипты на PowerShell, Python и т. д., но о серьёзной разработке речи не было. Тем не менее моя п...

Забираем большие маленькие данные по REST API Кадр из мультфильма «Смешарики: 132 серия (Пылесос)» При проведении различной ad-hoc аналитики или же создания интеграций между DS решением и внешними системами очень часто приходится использовать REST API для получения данных. Ситуация, когда все помещается в один запрос —...

Эволюция CI в Android “Твою ж мать, какая же это хтонь!”. Примерно так можно было охарактеризовать все наши инфраструктурные скрипты до недавнего времени. Нужно было что-то менять, и мы сделали это. Меня зовут Павел Стрельченко, я – Android-разработчик компании hh. Я расскажу вам как эволюци...

[Перевод] Простейший вариант поиска пути: объяснение на Python Как именно мы находим выход из лабиринта? Как быстрее всего проехать из точки А в ближайшую пиццерию? Можем ли мы провести игрового персонажа к выходу так, чтобы он не уперся в стену?Поиск пути – типичная задача программирования, решаемая в самых разных ситуациях. Она извест...

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

Самый простой способ разместить IP-камеру на сайте в 2022 году Ранее в статье "Самый простой (для знающих Linux) и дешевый способ разместить IP-камеру на сайте для небольшой аудитории" я уже делился с сообществом своим видением, как быстро и просто разместить видео с камеры на своем сайте. Минусов у того подхода, к сожалению, было много...

Спасаем динозавров от людей в Jurassic World Primal Ops Jurassic World Primal Ops вышла на смартфоны в некоторых странах. Теперь люди должны спасать динозавров, а не спасаться от них. Jurassic World Primal Ops — мобильный экшен от издателя Behaviour Interactive. Если верить Реддиту, то проект доступен в некоторых странах, среди ...

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

Трудности перехода: каков Elixir на вкус после Ruby Привет! Меня зовут Наталья. В Каруне я пишу в команде высоконагруженные сервисы на Elixir. Это третья компания, в которой я работаю на Elixir. До этого я писала на Ruby. Если посмотреть свежее исследование Хабр Карьеры по зарплатам, можно увидеть — зарплаты рубистов растут, ...

Сеть однородных линуксов [reoser] Всем привет. В своей предыдущей статье я описал общую идею создания площадки, где люди смогут объединяться в одну общую железячную сеть и использовать мощности друг друга. В основе этой идеи лежит идея создания распределенного кластера Kubernetes, к разворачиванию которого я...

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

Пишем без Retrofit'а, Gson'a и Kotlin Coroutines Android приложение Порой нам хочется написать код без лишних библиотек, чтобы более глубоко понять основные принципы или просто ради интереса.В качестве примера я написал простое Android приложение, которое позволяет юзерам найти значение русского слова.Давайте остановимся на каждом моменте по...

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

Так ли важно, на каком стеке вы умеете писать бекенд? А фронтенд? Мне рассказывали когда-то о компании, которая писала бекенд на Java и хотела нанимать талантливых разработчиков. Чтобы привлечь их, эта компания размещала вакансии на Haskell, и потом уговаривала этих кандидатов все-таки писать на Java. По-моему, это не очень красиво (вешать...

[Перевод] Способы переписать логические параметры в С++ Программисты читают код намного чаще, чем пишут его, поэтому важно писать понятный, последовательный, однозначный код. Автор книги С++17 in detail написал о способах избегать путаницы. Делимся его материалом к старту курса по разработке на С++. Читать далее

[Перевод] Python как инструмент сборки Предлагаем вашему вниманию перевод поста Никиты Прокопова, разрабочика с 15-летним стажем. Обычно, начиная проект на Java (или любой другой проект), вы не хотите заново изобретать колесо. Вы де-факто выбираете систему сборки, структуру папок, окружение и т.д. То, что испол...

Вызов виртуальных функций в конструкторах и деструкторах (C++) В разных языках программирования поведение виртуальных функций отличается, когда речь заходит о конструкторах и деструкторах. Неправильное использование виртуальных функций – это классическая ошибка при разработке на языке С++, которую мы разберём в этой статье. Читать даль...

Почему я перешёл с Python на Go: choose your fighter Привет, Хабр! Меня зовут Саша, я бэкенд-разработчик в Ozon. Пишу платформу для контента, который генерят пользователи: отзывов, комментов, вопросов, ответов. Раньше я писал на Python. Выбрал его изначально из-за лёгкого синтаксиса и большого количества вакансий для Python-ра...

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

Код Доступа Termux Статья посвящается любителям CLI в знак солидарности лучшего терминала на OS Android, который испытывает «кошмарную» монополию Google.В данной работе вербализация пойдет о нижеизложенном со всеми остановками:управлять серверами через ssh;скачивать ролики с YouTube;нарезать в...

Nanopass или как я писал компилятор этой осенью Сразу прошу прощения за несколько надоевший всем стиль «lytdybr», но уж очень хочется поделиться крайне приятным опытом и рассказать о по-своему замечательном компиляторном курсе. И это ещё хорошо, что я пишу сейчас, когда эмоции подугасли, а не когда я только закончил втор...

Копаемся в TypeScript: пишем свои Utility Types. Ключевое слово infer Йо, Хабр! Меня зовут Алексей Акулов. Я разрабатываю клиентскую часть продукта BIMeister.Почти каждый сталкивался с типами Partial или Record. Там таких еще много, но суть в том, что они входят в ту самую группу Utility Types. Такие штуки представляют из себя разные преобразо...

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

Из медицины в машинное обучение и не только: как люди приходят в IT Так сложилось, что если мы пишем о людях, то почти всегда — о сделавших некий прорывной проект. Сегодня в определённом смысле не исключение. Мы расскажем о ребятах, которые реализовали крупные проекты в своей жизни — сменили сферу деятельности и пришли в IT через «Школу 21»....

Пишем свой плагин для IDEA для поддержки нового языка (часть 2) Продолжение статьи о создании языкового плагина для IDEA на примере учебного языка Monkey. Приведены примеры из других плагинов. Пишем на Java и Kotlin. Начало Читать далее

Как «починить» интернет Основу интернета составляют тысячи как удачных, так и спорных технологий. Некоторые из них получили распространение едва ли не случайно.Недавно на Hacker News развернулась оживленная дискуссия на эту тему. Резиденты рассказали, что они бы поменяли в архитектуре современного ...

Как начать писать программный код Си в ОС Linux (Руководство для совсем начинающих) Этот материал рассчитан на людей, будущих программистов, которые только начинают разбираться в программировании под ОС Linux, или может быть долго были пользователями ОС Windows. Я попробую здесь показать прямое руководство к действию на примере ОС Ubuntu и тех простых инстр...

Обзор языка функционального программирования Koka Как-то заглянув на GitHub, обнаружил Koka — язык функционального программирования со статической типизацией. Koka разрабатывается с 2012 года Daan Leijen в Microsoft Research, USA. Его исходники выкладываются на GitHub под лицензией Apache 2.0. Как признаются его авторы, он ...

[Перевод] Дзен Nim 1. Копирование плохого дизайна — плохой дизайн.2. Если компилятор не может рассуждать о коде, то и программист не может.3. Не стой на пути у программиста.4. Перенеси работу на этап компиляции: программы запускаются гораздо чаще, чем компилируются.5. Настраиваемое управление ...

Игровой код, который сам себя программирует На сегодняшний день у меня выпущены четыре игры в Steam, и все они написаны на языке Haxe. Мне нравится по-максимуму автоматизировать свою работу, и сегодня я поделюсь некоторыми приёмами, которые я использую при программировании своих игр.Для непосвящённых: Haxe — это язык...

Что писать в резюме, чтобы получить работу мечты: советы от HR для сферы IT Мы много пишем про релокейт и смену работы, но уже как про свершившийся факт. Поэтому решили рассказать, что делать IT-инженеру, чтобы получить работу мечты. Для этого мы поговорили с HR-ами, которые регулярно нанимают айтишников: расспросили, на что они смотрят в резюме, ка...

Как напечатать float Казалось бы, совершенно непонятно, зачем живым людям в 2021 году решать задачу под названием «печатаем обычное вещественное число». Вроде бы это должно быть уже решено — причём примерно в тот момент, когда эти вещественные числа изобрели. Но оказывается, что нет. Привет...

BadgerDAO обнаружил крипто-ограбление на 120 миллионов долларов BadgerDAO, подвергся ограблению криптовалюты с помощью взлома JavaScript на их веб-сайте. BadgerDAO позволяет держателям биткойнов «связать» свою криптовалюту со смарт-контрактом и платформой Ethereum с поддержкой DeFi через свой токен, тем самым открывая доступ к миру децен...

[Перевод] Как я пишу на LaTeX в Emacs быстрее, чем от руки Когда Жиль Кастель задокументировал метод ведения математических записей в Vim в реальном времени, многие захотели добиться тех же скорости и удобства ввода LATEX в Emacs1. Я работаю на LaTeX весь день: уравнения пишу так же быстро, как на бумаге. И даже быстрее. Почему? ...

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

Знакомство с .Net Compiler Platform .Net Compiler Platform, или Roslyn - это высокоуровневый API для анализа и рефакторинга кода, написанного на  С# и VB (языках .Net). С помощью Roslyn можно как создавать независимые инструменты анализа и рефакторинга, так и писать расширения, встраиваемые в Visual Studi...

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

«Доктор, меня игнорируют», или Как писать письма так, чтобы их читали «Мои письма никто не читает.»«Я уже всё всем написал, а коллеги продолжают спрашивать одно и то же. Бесит.»И особенно популярное: «Мы ещё неделю назад написали, что удалим эту таблицу из базы, и сказали адаптировать код! Так что мы не виноваты, что сайт (пайплайн, приложение...

«Ленивый сахар» PostgreSQL SQL - декларативный язык - то есть вы описываете "что" хотите получить, а СУБД сама решает, "как" именно она будет это делать. Некоторые из них при этом позволяют им "подсказывать", как именно лучше выполнять запрос, но PostgreSQL - нет.Тем не менее, "синтаксический сахар" н...

Язык программирования типов, скрытый в TypeScript. Utility Types TypeScript — это язык, расширяющий JavaScript, добавляя в последний типизацию. Правда, так как TypeScript не имеет runtime-а (почти), он транслируется в JavaScript, в процессе чего, вся типизация теряется. Такую типизацию можно назвать лишь инструментом статического анализа ...

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

Из Java в Kotlin: туда и обратно В статье рассмотрены проблемы и решения, которые возникли при добавлении Kotlin в небольшой существующий микросервис на Spring Boot, написанный на Java. В рамках статьи не будут рассматриваться плюсы и минусы того или иного языка - здесь и так сломано много копий. В рамках п...

Опыт эксплуатации Mellanox под управлением Switchdev Мы уже писали про Linux Switchdev в Mellanox — что это такое и как мы с ним живем в Qrator Labs. Сегодня я хочу рассмотреть этот вопрос с другой стороны. Меня зовут Дмитрий Шемонаев, я руковожу центром сетевых операций.Кроме того, что этот коммутатор можно использовать как W...

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

Зачем айтишнику писать статьи? Каждый день (да что там, каждый час) кто-то пишет на Хабр, а кто-то его читает. Авторы приходят на Хабр по-разному: чаще через песочницу или корпоративное приглашение, реже через инвайт друга, ещё реже — через общение с кураторами или модераторами. Они пишут обо всём: от сло...

Дональд Кнут —  автор «Искусства программирования»  и  великий мастер ордена программистов Земли Уже совсем скоро – 10 января  гранд-мастеру программирования исполнится 84 года,  а он считает, что для окончания основного труда его жизни "Искусства программирования" ему необходимо еще 25 лет.  Дай бог ему здоровья, сил и ясный ум, а со всем остальны...

Большая статья о переезде на остров Пенанг, Малайзия. Часть 2 В первой статье я рассказывал о переезде в Малайзию. Здесь я расскажу о ценах в Малайзии и каких-то вещах о жизни. Цены буду писать в малайзийских рингитах, поделив эти цифры на 5, вы получите цены в евро. Читать далее

«Хакер» на «Хабре»! Как дела у легендарного хакерского журнала Привет хабровчанам! Я — главный редактор Xakep.ru Андрей Письменный (и это моя настоящая фамилия, если кто вдруг сомневался). После многолетнего перерыва «Хакер» возвращается с постами для «Хабра», но в этот раз вместо выборочной публикации наших статей мы будем писать ...

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

Как вести учет криптовалютного портфеля в Гугл Таблицах Введение«Деньги любят счет» - это пословица, как никакая другая, очень точно описывает всю суть успешного распоряжения своими деньгами.На сегодняшний день существует множество инструментов и сторонних сервисов (Blockfolio, Coinmarketcap, Cryptocompare и т.п.) для ведения уче...

[Перевод] Ошибки, которые не ловит Rust Мне по-прежнему интересны языки программирования. Но сегодня уже не так сильно, и не из-за того, что они позволяют мне делать, а, скорее, из-за того, что они мне делать не позволяют. В конечном итоге, возможности того, что можно сделать при помощи языка программирования, р...

[Перевод] Альтернативы HashiCorp Boundary HashiCorp Boundary — это пропускная система с открытым исходным кодом, которая обеспечивает пользователю безопасный доступ к динамическим хостам и критически важной инфраструктуре в разных средах. Однако, если вам нужен простой и безопасный способ управления доступом к база...

WoG уже 20 лет… Все это уже история... И я даже писал об этом (не на habr). Поэтому, возможно, кому-то это знакомо. Не думал, что тут стоит писать подобное, но, вижу, что фанаты Героев 3 (и вообще серии HoMM) тут очевидно присутствуют, поэтому рискну... Время: 20 лет назад. Место: Ээээ… ...

[Перевод] C++20 Ranges — Полное руководство C++20 Ranges, также известная как STL v2, представляет из себя более эффективную замену существующих алгоритмов и технических средств STL. В этой статье мы пройдемся по изменениям, введенным Ranges (диапазоны/интервалы), обсудим представления (views), которые представляют со...

«Бог не играет в кости!» «Бог не играет в кости!» —как-то сказал Эйнштейн. «Эйнштейн, не учите Бога, что ему делать» - возразил ему Бор. Спор двух великих физиков возник вследствие того, что ученые закопались глубоко в текстуры мира и наткнулись на факты, перевернувшие наше понимание реальности. Как...

С++ без классов? (на картинке изображён С++ среди других функциональных языков)Классы - это скорее всего первое, что добавил Страуструп в далёких 1980х, ознаменовав рождение С++. Если представить, что мы археологи древних плюсов, то косвенным подтверждением этого факта для нас будет this, ко...

Обзор ORM для C#: что подойдет для проекта Одна из проблем использования языков объектно-ориентированного программирования (ООП) и баз данных в сложности их согласования между собой. Знание языка структурированных запросов (SQL) и умение писать запросы позволяют взаимодействовать с БД напрямую. Но использование «чист...

Славная смерть короля Эрика Был такой шведский король Эрик IX Святой, правил только недолго - с 1156 по 1160 год, особо ничем не отличился, потому при жизни ни в каких летописях, ни в шведских, ни тем паче в иноземных не засветился. И то правда, что о шведских королях в те времена писать-то было, мерли...

Правки на мёрдже: зачем редактору GitLab Всем привет! Меня зовут Наталья Которева, я редактор в Яндекс.Практикуме. В этой статье я расскажу, как мы создали обучающий курс в GitLab. Да-да, вместо текстовых документов.Вообще сложно представить, как можно подружить git и редактуру, а главное, зачем. Есть же много пров...

[Перевод] Как писать условия в JSX Добрый день, меня зовут Павел Поляков, я Principal Engineer в каршеринг компании SHARE NOW, в Гамбурге в

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

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

Пишем сервис на GO. Runtime контроллер и Graceful Shutdown Напишем вместе HTTP-сервис на golang с нуля? Я уверен, что это довольно несложно. Для тех, кто каждую неделю этим занимается, моя статья не будет особенно интересна, но я все равно рекомендую взглянуть и оценить, возможно, ваши комментарии спасут кому-то жизнь. А может кое-...

Миграция данных из различных RDBMS в HADOOP В статье будет рассмотрен процесс экспорта данных в Hadoop из различных РСУБД посредством фреймворка Spark. Для взаимодействия с фреймворком Spark будет использован язык программирования Python с применением api pySpark. Читать далее

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

Про Flutter: как бекендер в мобильную кроссплатформу лез Flutter – это полноценная SDK, позволяющая писать нативные приложения на ненативном языке (dart), имеющем высокую скорость работы (выше конкурентов, но немного ниже натива), отклика/отрисовки. Этот набор средств разработки позволяет писать достаточно сложные с точки зрения и...

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

Как я разблокировал Upwork профиль и заработал более $250k за год Мне было страшно писать об этом до недавнего времени. Upwork стал одним из основных источников дохода для меня лично и для моего агентства, поэтому после восстановления аккаунтов я боялся, что если я опубликую это - меня снова заблокируют.Но в этой статье я поделюсь историей...

Байесовская Сеть Доверия Применительно IoT Привет, Хабр. В предыдущей статье рассматривали методы и алгоритмы Обнаружения и Диагностики Неисправностей (ОДН) IoT устройств. Как логическое продолжение рассмотрим Байесовскую Сеть Доверия (БСД) для IoT устройств целю ОДН.Байесовская сеть доверия (англ. Bayesian Belief Ne...

Робот-самурай. Как научить телеграм-бота писать хокку Привет! Давно ничего не писал. Обещанного в прошло статье бота закончил, проект оказался довольно сложным, но опыта и знаний заметно прибавилось. А значит время начать новый проект! В этот раз, вдохновившись глубочайшими мыслями японских поэтов-философов, мы будем делать бот...

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

Unity «Best» Practices Эта статья родилась из внутреннего доклада для коллег, которые уже достаточно давно занимаются разработкой игр, но только недавно прикоснулись к Unity. Здесь мы собрали фишки и особенности работы с этим игровым движком разной степени капитанскости, почерпнутые из собственног...

[Перевод] Возможности Java — от Java 8 до Java 17 С момента появления в 1995 году до сегодняшнего дня в Java многое изменилось. Java 8 была революционным выпуском, вернувшим Java на пьедестал лучших языков программирования.Мы рассмотрим большинство изменений в языке Java, которые произошли с Java 8 в 2014 году до сегод...

Изучаем язык ассемблера на примере TSR программы под MS-DOS. Часть 1 Эта серия статей посвящена изучению и практике программирования на языке ассемблера.Материал рассчитан на новичков в ассемблере, студентов, которым пришлось столкнуться с «динозавром» в виде MS-DOS, и может быть интересен тем, кто хочет нем...

Британский и американский английский – какой язык учить? Увлекательные истории из жизни слов Какой английский учить – британский или американский? Если назвать брюки trousers, поймут ли американцы, что я имею в виду? Елена Рабинович преподает английский язык разработчикам в ЕРАМ уже 5 лет и часто слышит подобные вопросы. В этой статье она ответила на них, а еще расс...

Пишем nest.js с нуля на typescript Nest.js - популярный node.js фреймворк с отличной архитектурой, основанной на Angular. Читать далее

[Перевод] Создание игр для NES на ассемблере 6502: спрайтовая графика Оглавление Оглавление Часть I: подготовка Введение 1. Краткая история NES 2. Фундаментальные понятия 3. Приступаем к разработке 4. Оборудование NES 5. Знакомство с языком ассемблера 6502 6. Заголовки и векторы прерываний 7. ...

Лучшие функции планшета Surface с Windows 11 представленные Microsoft Команда Microsoft выпустили новую статью, в которой демонстрируются лучшие возможности планшетных ПК с Windows 11, которые возможны при сочетании новейшей операционной системы Microsoft с новейшим оборудованием. В Windows 11 Surface автоматически переходит в разные режимы...

Просто о сложном — move в языке C++ Здравствуйте уважаемые читатели. Данная публикация адресована начинающим разработчикам С++ которые только становятся на путь высокой производительности и "отстрелянных конечностей". Опытные разработчики найдут здесь скорее повторение тех вещей, которые сами мучительно осваив...

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

О чём молчит начальник? Любой офис, завод, шарага похожи на государство. Сходства и аналогии можно найти во многом – структуре, процессах, целях. Но главное, что прям один в один – то, о чём писал наш друг Макиавелли: власть.Про власть обычно есть две цели: захватить и удержать. Про захват и получе...

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

Стоит ли учить PHP в 2022 году IT-индустрия – динамичная сфера, где новые технологии и решения могут кардинально изменять структуру рынка, что влияет на популярность того или иного стека. Также IT-рынок подвержен субъективному хайпу, когда на какие-то технологии и языки программирования обращают чрез...

[Перевод] Основные ошибки, которые следует избегать при репликации MySQL Настроить репликацию в MySQL просто, но управление ею в продакшне никогда не было легкой задачей. Даже с новым автоматическим позиционированием GTID все может пойти не так, если не знать, что делать. После настройки репликации может произойти всякое. Легко допустить ошибки, ...

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

Plantuml в работе системного аналитика. Пиши uml диаграммы текстом, чтобы сэкономить время Раньше я использовала для рисования диаграмм плагин в Confluence drawio или Microsoft Visio, который позволяет в графическом виде нарисовать диаграммы. Основная боль (для меня) у этих инструментов заключалась в том, чтобы поправить множество диаграмм надо открывать каждую, д...

4 года Q# В этой статье мы решили собрать все самые важные новинки в языке Q# за этот год. Среди них Azure Quantum, QIR Alliance, Python и многое другое. Подробности под катом.Здесь вы можете увидеть все примечания к выпускам за год. Читать далее

Зачем писать ботов ВК на C++? Постараюсь поделиться своей библиотекой для работы API VK. Читать далее

[Перевод] Лучшие книги по Apache Kafka «Effective Kafka: A Hands-on Guide to Building Robust and Scalable Event-Driven Applications», «Kafka: The Definitive Guide» и другие издания.В этой статье я расскажу, как изучал Apache Kafka и с какими трудностями столкнулся. Я очень надеюсь, что мои наблюдения помогут тем,...

Вы хочете песен? Их есть у меня! (Poison Message #2) Самое время рассмотреть “достаточно хороший” алгоритм для борьбы с Poison Message. Здесь будет уже специфика RabbitMQ и к Apache Kafka она не применима, точнее применима только частично - но это уже совсем другая история. Читать далее

Как энтузиасты возвращают «старый» интернет На этой неделе сценарист фильма «Дюна» Дени Вильнёв рассказал, что писал сценарий в программе Movie Master на MS-DOS — так как не любит перемен. И пока такие энтузиасты используют старое программное обеспечение в силу привычки, другие идут гораздо дальше в своих начинаниях и...

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

Почему я пишу игры на Unity Здравствуйте. Меня зовут Валентин, мне 14 лет и я являюсь разработчиком игр. В рамках этой статьи хотелось бы рассказать о том, как молодой человек может начать, продолжить и достичь некоторых результатов в разработке игр с использованием движка Unity. Читать далее

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

Новая уязвимость нулевого дня позволяет получить привилегии SYSTEM в Windows 10, Windows 11 и Windows Server Исследователь безопасности Абдельхамид Насери (Abdelhamid Naceri) обнаружил новую уязвимость нулевого дня, которая позволяет за считанные секунды получить привилегии SYSTEM. Известно, что уязвимость затрагивает все поддерживаемые версии Windows, включая Windows 10, Windows ...

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

Для чего Украине понадобилось оснащать Байрактары системами для совершения химических атак? Журналистами опубликован сенсационный документ, доказывающий факт наличия необычных договорённостей производителей ударных беспилотных систем Bayraktar и руководства Украина. Украинская сторона просит производителя оборудовать беспилотники «контейнерами объёмом свыше 20 л», ...

IT за Великой Китайской стеной: как живут и работают инженеры в материковом Китае, Гонконге и Тайване Про китайское IT ходит много слухов: работают там по 12 часов, увольняют всех подряд, а устроиться на работу иностранцу вообще невозможно. Но на самом деле IT в Китае очень неоднородное, как и жизнь — есть материковый Китай, а есть отдельные провинции и независимые зоны, в к...

Путеводитель по ID для JPA сущностей. Часть 1: ID, генерируемые на сервере Разработка инструментария – очень познавательное занятие, потому что заставляется задуматься над теми вещами, которые в процессе разработки иногда не замечаешь. Казалось бы, создание @Id атрибута в JPA – рутинное занятие и каждый разработчик может сделать айдишник, даже не в...

[Перевод] Пишем Python-расширение на Ассемблере (зачем?) Прим. Wunder Fund: в жизни каждого человека случается момент, когда ему приходиться позаниматься реверс-инжинирингом. В статье вы найдёте базовые особенности работы с ассемблером, а также прочитаете увлекательную историю господина, который решил написать Питон-библиотеку на ...

Как мы заставили коллег фотографировать «зебру» Давно ничего не писал на Хабре. К сожалению, не возникало одновременно сложных и интересных задач, о которых хотелось бы рассказать. А так как читатель Хабра человек, как правило, искушённый, то лишний раз "стыдиться" не хотелось.Однако, с недавних пор руковожу отделом компь...

[Перевод] Создание игр для NES на ассемблере 6502: скроллинг фона Оглавление Оглавление Часть I: подготовка Введение 1. Краткая история NES 2. Фундаментальные понятия 3. Приступаем к разработке 4. Оборудование NES 5. Знакомство с языком ассемблера 6502 6. Заголовки и векторы прерываний 7. ...

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

[Перевод] Сериализуемость транзакций В этой статье рассмотрим, что такое "Сериализуемость" (Serializability) и какие гарантии она предоставляет.В реляционных СУБД уровень изоляции Serializable (сериализуемость), как следует из названия, обеспечивает сериализуемость транзакций. Однако, как вы увидите далее, в не...

Сочетание Shift-Left и «Традиционной» модели тестирования в будние дни QA В этом материале будет кратко рассказано, почему Shift-Left – это не всегда хорошо и почему не стоит забывать о традиционной модели тестирования. Рассмотрим паттерны поведения QA при тестировании обычных задач и как постепенно стать продуктивным тестировщиком, не утопая в ре...

Python: Явное лучше неявного Приветствую, хабраюзер! Эта история началась со странного падения Python приложения. Сначала я не придал внимания данной проблеме: приложение запущено в Openshift и периодически падает. К такому поведению может приводить всякое, например, иногда ноды обновляют, а иногда случ...

Как я болел и восстанавливался, COVID-19 Я senior software developer. Разрабатываю на java уже лет 9. Никогда не писал и не рассказывал массам людей ничего. Вот пришло время, так как мой опыт колоссальный и уникальный, я не знаю подобных ситуаций, когда в таких условиях люди выживали. Конечно, уверен, есть случаи и...

Как я, спустя 4 года фриланса, устраивался в найм Фриланс это… Пока я писал эту статью, меня отвлекали сообщения от клиентов 24 раза.P.S. Писал я её в нерабочее время. Читать далее

[Перевод] Как найти своё место в программировании графики для игр Введение «Графика стала слишком сложной». В последние годы я всё чаще слышу подобные фразы: программирование графики теперь настолько сложно изучать, что это демотивирует людей осваивать его как хобби и/или профессию, или заставляет их сдаться. Я глубоко очарован этой обла...

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

Microsoft выпустила список изменений сборки Microsoft Edge Stable Build 100.0.1185.29 Компания Microsoft выпустила список изменений сборки Microsoft Edge Stable Build 100.0.1185.29. Новые функции • Трехзначный номер версии в строке User-agent. Microsoft Edge теперь будет отправлять трехзначный номер версии, например, Edg/100, в заголовке User-Agent. Это может...

Лёгкий способ написать статью на Хабр, или Привет от SmartSpeech Привет! Меня зовут Филипенко Владимир и я не писал эту статью. Я её надиктовал. Поправок в этом тексте потребовали только термины, с которыми SmartSpeech ожидаемо не знаком. В остальном оставляю всё как есть. В материале мы познакомимся с передовым сервисом синтеза и распо...

Honor запускает внутреннее тестирование Magic UI 6.0 на базе Android 12 для Honor 50 Как пишет источник, Honor приступает к внутреннему бета-тестирования оболочки Magic UI 6.0 на базе Android 12 для смартфонов Honor 50. Для этого компания намерена набрать 2000 добровольцев из числа пользователей смартфона. Все это, само собой, происходит в Китае. Прием...

Как задавать требования к качеству ПО в цифрах? Требования к качеству, несмотря на свой небольшой размер, очень сильно влияют на реализуемость всей совокупности требований, на трудоёмкость, длительность и стоимость реализации, а следовательно окупаемость инвестиций в разработку и в целом возможную успешность проекта.Это т...

Разделяй и властвуй: детерминированный и скриптованный Match-3 движок Привет! Я Павел Щеваев, CTO студии BIT.GAMES, части MY.GAMES. Вы можете знать нас по таким играм, как «Гильдия Героев» и «Домовята» в Одноклассниках (да, это тоже были мы), а также по нашему текущему флагману Storyngton Hall — это классическая три-в-ряд с сюжетом в викториан...

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

Мобильной разработки не будет через 5 лет Именно с таким провокационным тезисом я выступил осенью 2021 года на конференции Mobius. Но речь здесь вовсе не о том, что завтра исчезнут смартфоны — а о том, что не будет мобильной разработки в привычном нам виде. А в каком же будет? Для этого предлагаю хабравчанам ознаком...

WireGuard клиент для Windows на основе BoringTun В начале 2019 года компания Cloudflare представила BoringTun, реализацию WireGuard протокола, написанную на языке Rust. Код проекта распространяется под лицензией BSD-3-Clause и включает в себя библиотеку, которая может использоваться для интеграции функц...

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

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

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

5 принципов, о которых нельзя забывать, когда описываешь инфраструктуру в виде кода Infrastructure as Code — это подход, который подразумевает описание инфраструктуры в виде коде с его последующим применением для внесения необходимых изменений. Но, как именно писать код, IaC не говорит, только даёт инструменты. Один из таких инструментов — Terraform.21 мая ...

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

9 декабря — QIWI Server Party 7.0, онлайн Привет! В следующий четверг, 9 декабря, мы проведём наш седьмой QIWI Server Party.Обсудим оптимизацию приложений на MongoDB, поделимся опытом проведения интеграционного тестирования в условиях множества сторонних API. Кроме этого — рассмотрим проблему с распределенными транз...

Темное искусство функциональной верификации цифровых микросхем Сегодня, в субботу 26 февраля, на Сколковской Школе Синтеза Цифровых Схем Михаил Коробков проводит занятие по технологиям функциональной верификации: constrain solvers, cover bins и concurrent assertions. Примеры, которые мы подготовили для школы, вращаются вокруг протокола ...

Космический ковбой, великий актёр и «битлы» — какую музыку прошлого века признали худшей Мы уже рассказывали о музыке нулевых, которую публика и критики встретили как минимум неоднозначно. На этот раз поговорим о периоде шестидесятых. Здесь тоже нашлось место не самым удачным экспериментам. Обсудим трек, официально запрещенный в НАСА, и песню The Beatles, котору...

[Перевод] Шаблоны C++: как итерировать по std::tuple — std::apply и еще пара приемов В предыдущей статье, посвященной перебору элементов кортежей, мы рассмотрели только основы. В результате нашей работы мы реализовали шаблон функции, который принимал кортеж и мог красиво вывести его в консоль. Мы также реализовали версию с оператором <<.Сегодня мы пойд...

Альтернативный подход к динамическим окружениям: использование Octopod Как Octopod помогает сделать динамические окружения доступными для всехПривет, Хабр! В этой статье я хочу рассказать как мы в Typeable используем динамические окружения (review- или preview-окружения) в нашей работе, какие проблемы нам удалось решить, почему и как мы применя...

Сегодня — день без интернета. Вы серьёзно? Последнее воскресенье января — Международный день без интернета. Это день, посвящённый борьбе с интернет-зависимостью. Обычно в такое воскресенье многие СМИ пестрят ситуативными материалами о том, как важно уметь жить без интернета, а особенно экзальтированные лидеры мнений ...

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

Фантастические миры, где люди зависят от искусственных интеллектов Писатели-фантасты на протяжении многих лет регулярно обращаются к сюжетам про «восстания машин», но по актуальности они, кажется, сейчас отходят на второй план. Зато можно рассмотреть другую интересную сторону этой медали: историю о том, как люди сами отдают контроль над сво...

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

Из-за чего США распадутся: эксперты назвали три возможных варианта Как пишет издание «Лайф», по мнению специалистов, есть несколько возможных сценариев гибели Соединённых Штатов. О них - в материале.

Как научиться писать статьи (для Хабра и не только) После прочтения вот этого поста от модераторов хабра, я к своему ужасу, увидел, что в мире есть большое количество людей, которые “не знают как правильно написать статью”. Что может быть проще! Берёшь бумагу и ручку, или пишущую машинку, или что там у вас нынче в моде, и п...

[Перевод] Освежите ваш COBOL: почему на язык 60-летней выдержки вдруг резко возник спрос? Давным-давно, когда мир был юн, и компьютеры в нем были в новинку, я учился по программе на младшего сотрудника (Associate Degree) по обработке данных – программ по «компьютерным наукам» тогда не было – и в рамках этой программы преподавались бухгалтерское дело, математика, ...

Синтезируем SystemVerilog код в OpenSource среде Yosys/NextPNR В предыдущей статье я поделился опытом работы с ПЛИС фирмы Lattice через инструменты с открытым исходным кодом Yosys и NextPNR. Как я отмечал, освоить их меня заставило не столько любопытство, сколько требования Заказчика. В том проекте у меня просто не было выбора. И та ста...

PVS-Studio для Visual Studio 2022 Команда PVS-Studio пишет много статей на разные интересные темы. Но вот вопросы взаимодействия с самим анализатором затрагиваются редко. Исправим этот недочёт обзорной статьёй, описывающей плагин PVS-Studio для среды Visual Studio 2022. Читать далее

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

[Перевод] Погружаемся в CSS: как использовать :where () Функция :where() помогает писать меньше кода, применять стили ко всему списку и снимает головную боль при использовании CSS reset. В статье разберёмся, как это работает, и посмотрим на примеры использования. Читать далее

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

Как белорусы уже 30 лет делают искуственный интеллект при помощи ТРИЗ «Это не программисты, это не разработчики, это — камикадзе.» Минские студенты в 1987 году во главе с Валерием Цуриковым принялись программировать «Изобретающую машину» — софт, который бы усиливал интеллект инженеров и помогал изобретать. Кооператив был успешен и захватил...

[Перевод] RecyclerView Adapter in Android, сделай быстрее и проще Здравствуйте дорогие хабрчане. Это статья основана на статье https://blog.iamsuleiman.com/recyclerview-adapter-android-made-fast-easy/#clicklistener написанной в 2017 году на Java. А статью которую вы читаете, уже на Kotlin.Каждый раз, когда мы думаем о создании RecyclerVi...

История о том, как мы разрабатывали сиденья Здравствуйте! Компания, в которой я работаю, производит инвалидные коляски, про разработку которых писали ранее https://habr.com/ru/post/222645/ . На данный момент компания прошла долгий путь, и сейчас имеет производство почти полного цикла. В конце прошлого года мы начал...

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

JavaScript: заметка о WebAssembly Привет, друзья! В 2019 году WebAssembly (далее — WA или wasm) стал четвертым "языком" веба. Первые три — это, разумеется, HTML, CSS и JavaScript. Сегодня wasm поддерживается 94% браузеров. Он, как утверждается, обеспечивает скорость выполнения кода, близкую к нат...

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

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

IO_URING. Часть 2. Let's GO Всем привет! Продолжаем разбираться с io_uring. Сегодня попробуем использовать io_uring для решения прикладных задач. А именно напишем полноценный TCP сервер. Для этого мигрируем наши приложения с C на GO. Не буду писать длинные вступления, вперед экспериментировать! Читать ...

[Перевод] Профилирование Python-программ и анализ их производительности Профилирование — это неотъемлемая часть любых работ по оптимизации кода или производительности программ. Любой опыт, любые знания в сфере оптимизации производительности, которые уже у вас есть, не принесут особой пользы в том случае, если вы не знаете о том, где их применить...

[Перевод] Как сервис Repl.it (W18) хакнул хакеров Во время месячной атаки у нас были деньки передышки и мы умудрились сгонять на стартап-тусу от BloombergBeta. Хороший способ выпустить пар перед предстоящими бессонными ночами. (Repl.it — сервис, который позволяет писать код на большинстве языков прямо в браузере, без уст...

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

Как я научился не волноваться и полюбил управление состояниями Flutter. MVI и Clean Code в комплекте Цель статьи — показать, как сделать ваш проект на Flutter более понятным для усовершенствования и удобным в сопровождении. Текст может быть полезным как для тех, кто только начинает изучать Flutter, так и более продвинутых пользователей, так как здесь мы рассмотрим актуальны...

[Перевод] Состояние PHP в 2021 году: тенденции в разработке и прогнозы развития В 2021 году благодаря его новым фичам и возрастающей потребности в безупречно проработанном цифровом взаимодействии с клиентами PHP продолжал жить и здравствовать. Что же ждет PHP в будущем?В этой статье мы рассмотрим текущие реалии PHP landscape 2021, ответим на некоторые о...

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

[Перевод] Rust 1.59.0: встроенный ассемблер, деструктурирующее присваивание, отключение инкрементальной компиляции Команда Rust публикует новую версию языка — 1.59.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Читать далее

Shared State для React. Часть 1 В данном цикле статей мы рассмотрим задачу синхронизации состояния react-приложения между окнами. В качестве подопытного у нас будет приложение на Electron, работающее в offline/online-режимах, которое также может запускаться в PWA-режиме. Читать далее

Охота на toggle: Как простую фичу сделать максимально сложно – Хей, Катя, у нас там багуля небольшая завелась. Посмотри, плиз.– Не вопрос, бро. В чем проблема?– Toggle сбрасывается при возврате на экран. Изи ваще!С этой безобидной фразы началось мое недельное приключение в мир безумной архитектуры, сумасшедших фиксов и красноглазия. И...

Мнение: технология NAT может тормозить переход на IPv6 Так считает представитель регистратора APNIC Джефф Хастон. Мы решили обсудить эту точку зрения и еще раз оценить ситуацию, сложившуюся вокруг IPv4. Читать далее

На AI Journey 2021 обсудили возможности взаимодействия технологий искусственного интеллекта и фундаментальных наук Участники дискуссии размышляли о двух вопросах: во-первых, о той роли, которую искусственный интеллект играет в фундаментальной науке, а во-вторых, о том, что фундаментальная, большая наука может дать искусственному интеллекту. Этот вопрос является чрезвычайно актуальным не ...

И снова про App Transport Security: что это и зачем Привет, Хабр! Меня зовут Юрий Шабалин, и, как я пишу в начале каждой своей статьи, мы разрабатываем платформу анализа защищенности мобильных приложений iOS и Android. В этой статье мне бы хотелось затронуть тему безопасной конфигурации сетевого взаимодействия, а также немног...

Осторожно, мошенники: в России предлагают вернуть Apple Pay и пополнить Apple ID с последующей кражей данных Аналитики Group-IB, специализирующейся на предотвращении кибератак, сообщают, что мошенники начали использовать новые схемы для кражи денег, данных банковских карт и учетных записей Apple. Основанием послужили прекращение работы в России системы бесконтактных плате...

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

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

Как вести бизнес-блог: советы юриста Вы ведете личный или корпоративный блог? Пишете в соцсетях о своих рабочих проектах? Юрист КРОК Евгений Архипов рассказывает, как это делать и не нарушать закон. Читать далее

Geo data in Python Понадобилось мне недавно нарисовать в Python данные на карте, благо в данных есть координаты. Казалось бы, что может быть сложного... Но обо всем по порядку. Читать далее

Новый язык обычного и параллельного программирования Planning C 2.0 Здравствуйте, уважаемые читатели.Хочу написать здесь об одном из своих проектов -- языке Planning C (v2.0). Он является расширением C++, дополняющим базовый язык рядом новых конструкций. В настоящее время проект доступен в репозитории (исходный код прототипного транслятора-п...

Пластик от ABS Maker?, "Прям чудо!!!!!" Пластик от ABS Maker?, "Прям чудо!!!!!"? да нет это сарказм...... пластик от ABS Maker прям полное дно которое только можно себе представить, на 1мм пластика пузырьков воздуха внутри прям безгранично....., вот вам фото:и вот фото прутка сухого абсолютно, только из упаковки(н...

Anycubic Vyper Ремонт Тензодатчика     Приветствую джентльмены!Пишу статью в первый раз, прошу сильно не критиковать.    Приобрёл принтер Anycubic Vyper, до этого был 4MAX от тех-же кубиков, первый месяц радовался как ребёнок, по сравнению с предыдущим динозавром, это всё равно что с Pentium Celeron 366, пере...

UX-текст на языке Шекспира: заповеди, грехи и табу Изменив одно местоимение, можно на 90% увеличить показатель кликабельности (CTR) кнопки, которая приведет новых пользователей. Дописав одно предложение, можно увеличить количество оплаченных покупок и снизить нагрузку на саппорт. Поставив одну запятую, можно было бы сохранит...

[Перевод] Экономика бессерверных вычислений Наша исходная задача заключалась в том, чтобы попытаться ответить на ряд актуальных вопросов, в частности: когда целесообразнее использовать AWS Lambda, а когда сервисы AWS EC2. А самое главное — разобраться, какие параметры играют в данном случае наибольшую роль. Читать пер...

Таймер в .NET с интервалом 1 мс. macOS Ранее мы уже посмотрели, чем нам может помочь .NET в реализации задачи, обозначенной в теме статьи, в Windows. Сейчас рассмотрим её решение в macOS. Читать далее

[Перевод] О глупости «программирования на естественном языке» От переводчиков. Хотя Эдсгер Дейкстра — одна из главных личностей в истории IT, эта его коротенькая публикация ранее не попадала на Хабр, да и сами мы узнали о ней лишь благодаря докладу на нашей конференции. Но при этом она выглядит очень любопытным документом эпохи, показы...

Пишем за выходные блокчейн-игру на смарт-контрактах Rust Сейчас регулярно выходят анонсы про NFT-metaverse-блокчейн-игры, которые привлекали инвестиции в миллионы долларов по оценке в миллиарды, но при изучении проектов там оказываются либо плашки Coming Soon, либо продажа JPG-картинок на аукционах NFT-токенов, либо централизованн...

Respect Validation на Python Всем привет! Сегодня мы поговорим о валидации данных, а точнее о том как я перенёс библиотеку с PHP на Python. Библиотека настолько крутая (по мнению автора), что рекомендую вам с ней ознакомиться, особенно, если вы пишите API с библиотекой flask (ссылка на интеграцию в ста...

ElasticSearch — как мы делали свою речевую аналитику Привет! Меня зовут Аркадий. Последние пару лет я в основном занимаюсь развитием поиска по тексту в команде TQM (Tinkoff Quality Management) в банке Тинькофф. Наш продукт — это речевая аналитика по звонкам, чатам и другим активностям, контроль качества, анализ и прочее. Более...

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

Div на div’е не сидит и div’ом не погоняет: пишем семантически верные индикаторы загрузки на Angular Сверстать собственный индикатор загрузки — одна из самых простых задач, с которой может столкнуться веб-разработчик. Для получения рабочего решения пригодятся базовые знания HTML и CSS, а JS будет нужен лишь для управления процентом выполненной задачи.Однако эта простот...

Самые популярные языки программирования. Хабратоп 2021 года В прошлом декабре мы подбивали предварительные итоги и выкатили рейтинг популярности языков программирования. Пришло время для обновлений! В Хабратопе-2021 рассказываем, как менялись позиции  ЯП в рейтингах TIOBE, PyPL и Stack Overflow. Поехали! Читать далее

Триангуляция и коррида. Геодезия и отвага Это продолжение истории Экваториальной Градусной экспедиции, в XVIII веке отправившейся к, как следует из названия, экватору, чтобы уточнить форму Земли.Мы остановились на том, что ученые выполнили первую часть своих измерений: определили базис, но никак не могли продолжить ...

Врач-эксперт предположил, каким образом может завершиться пандемия COVID-19 До сих пор непонятно, когда закончится пандемия коронавируса и как конкретно это произойдёт. Медик Тимур Пестерев считает, что есть один самый вероятный сценарий развития событий. Об этом пишет «Лайф».

Все на дно. Смоляная яма Тьюринга Машина Тьюринга во всей своей красе. Какой язык программирования лучше всего выбрать? Само собой, очень часто выбор языка зависит от того, для чего пишется та или иная программа, да и просто от личных пристрастий программиста. Выбор, как правило, идёт среди более-менее изв...

10 американских автомобилей, о которых вы ничего не знали Автомобили Другое 19.12.2021, 07:45 10 американских автомобилей, о которых вы ничего не знали Мы уже писали о малоизвестных или вообще затерявшихся в истории американских автопроизводителях. Но сегодня представляем новую десятку лучших...

Разводка регулярных структур в KiCAD: путь лентяя Похоже, пост оказался неинтересным. Извините. Кому нужен код — пожалуйста, копируйте. Скрыто Я в одной из предыдущих статей писал — я, фактически, безработный. Юридически — нет, во-первых я пенсионер, но вполне мог бы и работ...

Какой язык программирования учить в 2022 году: армянский или грузинский? За последний месяц IT-отрасль в России пережила серьезный стресс. По оценкам РАЭК в ближайшее время из России эмигрируют около 100 000 ИТ-специалистов, не говоря о том, что за первую волну эмиграции их число составляло приблизительно 80 000. Мы видим, что люди, которые идут ...

Как создать работающий Impact Map Больше 8 лет я использую Impact Map для аналитики IT-продуктов. Я довольно активно делился знаниями об этом подходе: писал статьи, выступал на конференциях с докладами и мастер-классами, рассказывал студентам в университетах и интернам в компании. Слушатели и участники масте...

Уменьшение трафика за счёт сжатия изображений. На примере Laravel Как уменьшить трафик к вашему сайту в 200 раз? Возможно ли это? В этой статье рассмотрено динамическое создание превьюшек для графических файлов и последующее сохранение результатов такого преобразования для последующего более быстрого доступа к ним.Пример реализации на Lara...

Карибский ЦБ две недели не может восстановить работоспособность первой в мире официальной цифровой валюты DCash Когда всё снова заработает, неизвестно.

Мне за 50 и я айтишник: опыт против стереотипов Есть стереотип, что работа в IT — удел молодых. Якобы в зрелом возрасте труднее постоянно учиться, поспевать за новыми трендами и веяниями технического прогресса, находить общий язык с младшими коллегами. Но чем дальше развивается отрасль, тем очевиднее, что это представлени...

Новогодний детектив, или странный хайзенбаг в «питоньих» часах Давненько я не писал на Хабр, да и тема интересная появилась, так что пора поправить это постыдное упущение. Далее собственно детектив как оно есть, "расследование" которого ещё не окончено, можно присоединиться кстати… Пост будет обновляться, по окончанию (я наде...

Язык программирования C∀(CForAll) Мой интерес к дизайну языков программирования приводит меня иногда к интересным, но почти неизвестным в широких кругах проектам. Один из таких проектов - язык C∀ (CForAll), разрабатываемый Университетом Ватерлоо. C∀ является расширением ISO C и обеспечивает обратную совмести...

Шесть посетителей Yas Waterworld стали рекордсменами GUINNESS WORLD RECORDS™ Благодаря успешному двухдневному событию GUINNESS WORLD RECORDS™ АБУ-ДАБИ, (ОАЭ), 29 ноября 2021 г. /PRNewswire/ —  Шесть посетителей аквапарка Yas Waterworld стали рекордсменами GUINNESS WORLD RECORDS™ во время первой в истории онлайн-трансляци...

[Перевод] Как собрать зловредный компилятор А вы знали, что бывает такая атака на компилятор через бэкдор, защититься от которой невозможно? В этом посте я покажу вам, как реализовать такую атаку менее чем в 100 строках кода. Кен Томпсон, создатель операционной системы Unix, рассказывал о такой атаке еще в 1...

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

Флаг EPOLLEXCLUSIVE и проблема неравномерного распределения соединений в Nginx на Linux Совсем недавно, 25 января 2022 года вышел новый релиз Nginx - 1.21.6, в котором исправлена проблема неравномерного распределения входящих соединений между несколькими worker процессами в дефолтной конфигурации на Linux системах. Если конкретнее - use epoll, accept_mutex off,...

[Перевод] Табличные тесты в Go с использованием Gomock Чтобы эффективнее тестировать работу программы, можно использовать табличные юнит-тесты. В этой статье пошагово рассказываем, как писать такие тесты с помощью фреймворка Gomock.Этот текст написал Golang-разработчик Арек Ностер. С разрешения автора мы перевели статью. Читать ...

Впечатления о Golang от разработчика на PHP Привет! Меня зовут Андрей Литвиненко и я имею почти 15-летний опыт разработки на PHP. Уже около трех месяцев я активно пишу на Go и хочу поделиться наблюдениями, которые отметил для себя. Возможно, этот текст будет полезен тем, кто сейчас знаком с PHP и подумывает познакомит...

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

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

[Перевод] Введение в язык программирования Leo Основная Leo — это основанный на Rust язык программирования со статической типизацией, созданный для написания частных приложений. Он предназначен для разработчиков, которые могут интуитивно строить блокчейн Aleo, обеспечивая основу для частной децентрализованной э...

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

Как приручить DDD. Часть 2. Практическая В прошлой статье я рассказал, как мы пришли к DDD и про его очень важную особенность — единый язык, на котором легче и дешевле разговаривать с бизнесом. Еще мы рассмотрели разработку, ведомую моделью. Когда вначале стоит не выполненная по требованию фича, а абстрактная модел...

Samsung Galaxy A52 получил Android 12 и One UI 4 в России Мы уже писали о том, что Samsung выпустила обновление One UI 4 на базе Android 12 для смартфона Galaxy A72 в России, а сейчас, как пишет источник, аналогичное обновление вышло для Galaxy A52. Соответствующая прошивка проходит под обозначением A525FXXU4BUL8 и содержит в ...

«Потерянный» роман Роберта Хайнлайна Роман Роберта Хайнлайна «Погоня за панкерой» был впервые опубликован в 2020 году, через тридцать с лишним лет после смерти автора. Здесь не задействована машина времени или другие чудеса науки (кажется), но, тем не менее, в истории потерянной рукописи мэтра есть что-то чудес...

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

[Перевод] Не самые популярные методы Django ORM Все мы знаем, что Django предоставляет ORM прямо из коробки, что не позволяет нам писать SQL-запросы. В этом механизме есть большой потенциал. Однако большинство из нас знакомы только с методами filter(), get(), update() и delete() из Django ORM.В Django ORM есть много други...

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

Кастомный корпус ПК из советского радиоприёмника Ленинград-002 Вступление Здравствуйте, друзья айтишники и им сочувствующие! Меня зовут Артем и я работаю разработчиком мобильных приложений  под iOS в компании Orion Innovation. Но сегодня я не буду грузить вас дебрями управления памятью или ребрами ядовитых змей (профессиональный юмор...

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

DotNetRu. 2020-2021. Итоги Привет, на связи DotNetRu – сообщество, объединяющее .NET разработчиков России и не только. Казалось бы, совсем недавно мы рассказывали про митапы и прочие наши активности 2019 года и с оптимизмом смотрели в наступающий 2020-й. Штош, начался он действительно бодро, но з...

Идентификаторы элементов в XCUITest Меня зовут Семен, я занимаюсь автоматизацией тестирования мобильных приложений в hh.ru, и сегодня я расскажу о том, как писать автотесты под iOS. Быстрые регрессы, низкий time-to-merket, счастливые пользователи, у которых нет багов — для всего этого нам нужны автотесты....

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

[Перевод] Исследуем .NET 6. Часть 6. Поддержка интеграционных тестов в WebApplicationFactory В предыдущей статье я описал обходной путь, который был добавлен в .NET 6, чтобы инструменты EF Core, которые ранее полагались на существование определённых методов, таких как CreateHostBuilder, продолжали работать с новыми минимальными API хостинга.В этой статье я рассмотрю...

[Перевод] Python: Логируем как профессионалы Часто вижу, что помимо обработки исключений, люди мучаются кое с чем еще, а именно с логированием.Большинство людей не знают, что писать в логи, поэтому решают логировать все, что угодно, думая, что все подряд – это в любом случае лучше, чем ничего, и, в конечном итоге, прос...

[Перевод] Рейтинг языков программирования 2022. C# обошел Java, TypeScript сравнялся с PHP, а Dart – наиболее комфортный язык Украинский профильный ресурс DOU.UA провел очередной ежегодный опрос о языках программирования. Python уже второй год подряд демонстрирует негативную динамику. Java тоже теряет позиции – в этом году она на третьем месте по популярности. На второе место поднялся язы...

Пишем чат под Android на Websocket'ах Привет Хабр!Во время локдауна я решил поупражняться в разработке под Android. Начать решил с простой гиперказуальной игры с элементами дуэли. Взаимодействие игроков решил реализовать через отдельный сервер и websocket'ы, но пока читал про все это дело, понял, что простого ту...

Golang meetup online Новый месяц — новый митап! На этот раз мы снова будем обсуждать Go. Спикеры из Evrone, Level.Travel и «Авито» поделятся опытом в организации кода микросервиса, построения кастомизированной системы управления поиском и создания полноценной масштабируемой архитектуры из MVP. ...

Теплый резерв Jira и Confluence (на пороге импортозамещения) За почти четырнадцатилетнюю историю использования Jira и Confluence на Московской бирже в них накоплен огромный объем данных: у нас более 350 проектов в Jira и более 200 пространств в Confluence. Не будет преувеличением сказать, что в этих продуктах сейчас работает вся Биржа...

Как писать посты в стиле Артемия Лебедева? Подробный анализ телеграм-канала и кое-что еще Дисклеймер номер один: 18+. В этой статье присутствует ненормативная лексика, так как автор текстов, которые мы анализируем, не стесняется в выражениях. Мы не хотим никого задеть или оскорбить чьи-то чувства, присутствие мата объясняется лишь объектом нашего исследования. ...

Что необходимо знать, чтобы написать свою Embedded RTOS (часть 1) Хотел бы написать небольшой цикл статей посвященных тому, как я написал свою RTOS с какими трудностями столкнулся и зачем вообще писать свою RTOS если уже есть FreeRTOS, RTX, embOS и т.д. список достаточно большой. Начнем с того, что по мере работы я сталкивался с тем, что ...

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

Таймер в .NET с интервалом 1 мс. Windows Вы пишите код на платформе .NET под Windows и вам нужно выполнять некоторые действия каждую миллисекунду. Возможно ли это? Какие есть варианты и насколько они надёжны? Разберёмся, что можно использовать, и какие есть гарантии по точности срабатывания. Статья сконцентрирована...

Цифровые E2E-сервисы Huawei для российских заказчиков Мы много пишем об оборудовании и инфраструктуре, но до сих пор мало внимания уделяли сервисам, которые получают клиенты Huawei. Сегодня мы расскажем, сколько русскоязычных инженеров работает в поддержке Huawei, что такое Smart NOS, Smart IDC и как наши глобальные центры пере...

[Перевод] Тип данных Either как альтернатива выбрасыванию исключений Исключения – это базовый элемент многих языков программирования. Они обычно используются для обработки аномальных или непредусмотренных условий, при устранении которых необходим особый подход, нарушающий нормальный поток задач в приложении. В некоторых языках, например, в C+...

Декабрьская барахолка в Испании: шикарная клавиатура, Nokia n-series, ноутбуки и все остальное Привет, Хабр! В эту субботу погода отменная, хоть и чуть прохладно, так что все продавцы вышли на барахолку — ну и пропустить этот день, конечно, не хотелось. Продавца с попугаями, о котором писал в прошлый раз, к сожалению, не было, видимо, он решил не выносить мерзнуть св...

Эффективная генерация сортируемых GUID для первичных ключей БД на клиенте Использовать Guid.NewGuid() в качестве первичного ключа в базе данных — плохая с точки зрения производительности идея. Это связано с тем, что в SQL Server, MySQL и некоторых других БД для первичных ключей создаются кластерные индексы, которые определяют, как строки будут хра...

Обратите внимание на пятна: врачи назвали первые признаки рака рта Медики в Великобритании рассказали про первые признаки рака ротовой полости, при обнаружении которых нужно сразу обращаться к врачу. Об этом пишет Express. Среди первых симптомов рака рта: белые и красные пятна на языке или слизистой оболочке; язвы, которые не зажива...

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

[Перевод] Исследуем .NET 6. Часть 4. Создание конвейера промежуточного ПО в WebApplication В моем предыдущем посте я рассмотрел код WebApplicationBuilder, включая некоторые из его вспомогательных классов, таких как ConfigureHostBuilder и BootstrapHostBuilder. В конце поста мы создали экземпляр WebApplicationBuilder и вызвали Build() для создания WebApplication. В ...

Играющий тренер в ИТ: запретить нельзя допустить «Играющий тренер» – термин, пришедший в IT из мира спорта. Он подразумевает, что руководитель одновременно занимается как управленческими задачами (планирование, контроль), так и решает вполне рядовые (пишет код, настраивает сервера и т.д.). Считается, что совмещать эти роли...

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

Кубер или два service discovery на один service mesh Привет! Я Алексей, старший системный администратор ЮMoney. Так уж вышло, что я — главный по Куберу в компании. Поэтому когда меня попросили рассказать, как мы создавали сервис Kubernetes и что у нас в итоге получилось, уговаривать меня долго не пришлось.Зачем вообще компании...

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

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

Основы языка microScript Привет Хабр!Под предыдущей статьей собралось много вопросов и рассуждений относительно microStudio, в частности языка microScript, которому я не уделил внимания в предыдущей статье. Да я и не ставил цель затронуть все вопросы в одной статье.В этой статье я расскажу подробнее...

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

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

Facebook разрешит писать ненавистнические посты о россиянах только украинцам Сегодня утром Meta, владеющая Facebook и Instagram, заявила, что разрешает отныне использовать «язык ненависти» в отношении российских военных, Владимира Путина и Александра Лукашенко. За это сервисы Meta заблокировали в России, а саму компанию намерены признать экстремистск...

DartUP 2021: как это было В этом году DartUP уже во второй раз прошел в онлайне, и это было круто! Мы снова слушали два потока докладов на русском и английском, неформально общались и участвовали в дискуссиях в SpatialChat, сражались и решали алгоритмические задачи в Code Kombat и обгоняли соперников...

10 редких польских автопроизводителей: что вы знаете о них Автомобили Другое 14.01.2022, 07:45 10 редких польских автопроизводителей: что вы знаете о них В советское время польские автомобили были более или менее известны широкой публике – Polski Fiat и FSO даже иногда встречались на наших ули...

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

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

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

У Unity всё плохо На просторах интернета, и в частности хабра, очень трудно встретить статьи с критикой игрового движка Unity. Я решил это исправить, и приготовил вам текст о переходе на DOTS, насилию над C#, знаменитых UI пакетах, MonoBehaviour, универсальности и о многом другом.Статья не тр...

4,5 года из жизни iOS-команды в пяти историях и одном техрадаре Часть решений может шокировать. Поехали! Читать далее

Flutter for Desktop — новый подход к разработке приложений Язык программирования Dart был изначально разработан как перспективная замена JavaScript в веб-приложениях (с поддержкой асинхронности, потоков, классической поддержки ООП и возможностью использования строгой типизации), но, к сожалению, в этом качестве он так и не достиг зн...

От КАМАЗа до природного газа. Самые интересные статьи про дата-центры за год Привет, Хабр! В прошлом году мы много писали про дата-центры. Статьи про необычные локации ЦОД, новые технологии и личный опыт. Будем рады, если вы найдете материалы, которые еще не читали, и поделитесь мнением в комментариях. Приятного чтения! Читать да...

История внедрения SRE в Dodo Engineering Татьяна Гребенюкова, продакт-оунер курса Слёрм «SRE: внедряем DevOps от Google», собирает интересные кейсы внедрения SRE в российских компаниях. Некоторые истории мы используем для развития курса, а другими рады поделиться со всеми.Сергей Бухаров, SRE из Dodo Engineering, ра...

manifest.json подводные камни Установка расширения в браузер возможна благодаря такой замечательной штуке, как manifest.json. Но что он может скрывать и почему важно изучать (по возможности) манифест перед установкой. Сегодня мы это разберем! Читать далее

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

Выпущен стилус Huawei M-Pen 2s Китайский технологический гигант Huawei недавно выпустил складной смартфон Mate Xs 2 в качестве последней версии в линейке складных устройств премиум-класса. Хотя было обнаружено, что Mate Xs 2 поддерживает стилус, он не входил в комплект. Сегодня компания Huawei анонсировал...

Apache Spark Рассмотрим подробно, что такое Spark ML и как с ним работать. Читать далее

Распределенные Workflow на PHP. Часть 1 Мы занимаемся разработкой огромного количества сложного ПО для автоматизации и энтерпрайза и Workflow для нас — это большая и больная проблема. Если для вас тоже — я расскажу, как писать и оркестрировать очень сложные процессы на масштабах, и как убедиться, что они не падают...

[Перевод] Как выбрать подходящий Go-роутер? (с блок-схемой) Когда вы начинаете разрабатывать веб-приложение с применением Go, один из первых вопросов, которым вы, вероятно, зададитесь, — “Какой роутер мне следует использовать?”.И это не такой простой вопрос, как может показаться сначала. Доступно более 100 различных роутеров с разным...

Xiaomi 12 Pro замечен в MIUI 13. Камера под экраном и пьезоэлектрический динамик Вчера мы опубликовали логотип оболочки MIUI 13, после чего в Сети появилось несколько видеороликов, демонстрирующих новые функции оболочки. Как пишет Xiaomiui, в этих роликах MIUI 13 присутствует изображение смартфона Xiaomi 12 Pro. Дело в том, что в линейке Xiaomi пока...

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

Как Яндекс делает обычные автомобили беспилотными Гермобокс для электроники Привет, меня зовут Антон Чистяков. Пару лет назад я работал в хелпдеске Яндекса и даже писал здесь про то, как мы придумали вендомат с аксессуарами. Теперь отвечаю за сборку беспилотных автомобилей и роботов-доставщиков. Под катом расскажу, как мы...

Станут ли сети новым приложением-убийцей? Приложения и программные системы традиционно занимают первое место в списке критически важных ИТ-приоритетов. Но сейчас, когда так много зависит от сетей, ситуация может измениться, пишет на портале InformationWeek президент ...

Made at Intel. Байки россыпью Хочу отдохнуть сегодня от тяжелых многостраничных концепций (их есть вот тут - 1,2,3,4) и просто вспомнить несколько веселых историй из интелового прошлого. Я их обычно собираю у себя в телеге, а сюда буду выкладывать, что получше в скомпонованном виде. Возможно, когда-нибуд...

Как устроены цикл событий и стек вызовов в JavaScript Цикл событий (event loop) — ключ к асинхронному программированию на JavaScript. Сам по себе язык однопоточный, но использование этого механизма позволяет создать дополнительные потоки, чтобы код работал быстрее. В этой статье разбираемся, как устроен стек вызовов и как они с...

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

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

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

Разбираем алгоритмы компьютерной графики. Часть 5 – Анимация «Shade Bobs» Алгоритм, который рассмотрим сегодня, не имеет нормального названия. Иногда его называют "Shade Bobs", а вообще это один из многочисленных алгоритмов генерации "плазмы". Когда что-то на экране видоизменяется и переливается.Из множества алгоритмов "плазм", представленный экзе...

Программа компании “Мобильное Электронное Образование” (проект ЛАНИТ и “1С”) обеспечивает рынок разработчиками онлайн-курсов Компания “Мобильное Электронное Образование” (проект ЛАНИТ совместно с “1С”) разработала программу профессиональной переподготовки “Цифровой образовательный дизайн. Пользовательский интерфейс от С до Java”. Участвуя в программе, студенты глубоко погружаются в изучение профес...

ГАЗ-69 советский лёгкий внедорожник, ставший культовым ГАЗ-69, машина, ставшая символом эпохи. До сих пор её название отзывается теплом в сердцах автомобилистов нашей необъятной Родины. И не зря. Легендарный «козлик» заслуживает внимания даже далёкого от автомобильной тематики человека (вроде убеждённого пешехода меня). И дело з...

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

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

Опыт организации диалога с модулями ICP DAS I-7000 по RS-485 используя только bash В моем конкретном случае все казалось нерадужно, я опускал руки, думал о неизбежности начать писать на Си, компилировать ядро, уходить в отшельники для отладки приложения и т.п. Нельзя сказать что результата в Bash не было, он просто не устраивал. Пока программированием по н...

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

Как большинство Java проектов выглядят изнутри Меня зовут Аксёнов Вячеслав, я бэкенд разработчик и в последние годы пишу веб приложения на java/kotlin. Основная идея этой статьи описать основные технические задачи, которые ставятся перед современными веб приложениями, а также перечислить те библиотеки, которые чаще всего...

«Сбер» обучил нейросеть ruGPT-3 писать код Модель генерации кода основана на глубокой нейронной сети ruGPT-3, обученной на коде «Сбера» и open-source библиотек. Возможности такой модели позволяют нейросети дописывать код разработчика, искать уязвимые места в коде, переводить код с одного языка программирования на дру...

Тренды копирайтинга в 2022 году Как писать продающие тексты и посты в 2022 году? Бесплатный вебинар Дмитрия Кота для маркетологов, PR-специалистов, копирайтеров и предпринимателей. Люди меняются, алгоритмы соцсетей меняются. Это происходит каждый день. Прошел год. Изменилось ли что-то в поведении поку...

Интеллектуальный поиск отечественных аналогов для импортных микросхем. Поучаствуй в beta тестировании Наша компания занимается разработкой микросхем и само собой мы делаем все возможное что бы они были как можно больше представлены на рынке. Да мы знаем, "что импорт дешевле и документация у них лучше". Но мы работаем над нашими проблемами, особенно в текущих условиях, когда ...

Релизим фронтенд несколько раз в день Меня зовут Петр Солопов, я руковожу фронтенд-разработкой в SuperJob. В этой статье хочу рассказать об опыте ежедневных релизов у нас в компании, зачем мы это делаем и почему это не так страшно, как кажется.История разбита на пять частей: что нас к этому привело, как это сдел...

Генерируем Rust обёртку для FMOD Rust — хороший выбор для разработки игр. Хотя экосистема языка еще молода, с помощью FFI можно использовать готовые решения написанные на другом языке. Но написание и использование FFI может быть не тривиальной задачей, когда дело доходит до чего-то большего, чем вызов одной...

Анатомия асинхронных фреймворков в С++ и других языках Привет! В этой статье я расскажу об устройстве асинхронных движков с корутинами и без них. Для начала сосредоточимся не на конкретном движке, а на том, почему во всех популярных языках программирования появились корутины и чем они так хороши. Это может быть интересно не толь...

Как завести XCRemoteCache, или Кэши из топора Всем привет! Меня зовут Федоров Василий, я руковожу группой Mobile.Speed в компании Aliexpress Россия. Мы стараемся облегчить жизнь разработчиков, пишем утилиты, настраиваем CI, складируем метрики в Grafana — в общем отвечаем почти за все, что влияет на time-to-mar...

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

[Перевод] Как сделать интерактивную карту с маршрутами на Python Распространённая задача программистов в работе с геопространственными данными — отобразить маршруты между различными точками. Решением, которое может понадобиться в разработке веб-сайта, делимся к старту курса по Fullstack-разработке на Python. Читать далее

Как платформа на базе ИИ помогает создавать персонализированные сказки для детей Представить, что робот рассказывает сказку ребенку, уже совсем не сложно, особенно после выхода нового сериала Риддли Скотта. В трейлере “Воспитанный волками” андроид читает малышу историю “Три поросенка”. Это 2145 год. Но и в 2021-м есть технологичный сервис MySkazka. ...

Что вы делали прошлым летом: на лыжах по городу Прошлым летом я тестировал батарейку. Я уже здесь писал о своей шайтан-арбе, которую я сделал весной. Но батарейки, которые у меня были, позволяли проехать чуть больше 25 км — маловато будет. Захотелось мне разжиться новой. О том и история, но будьте готовы к тому, что в ...

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

«Ваша сезонность, сэр!»: ищем тренд и прогнозируем спрос с помощью временных рядов, SARIMA и Python. Ч.1 Как вы можете помнить по первой статье "Маркетинговая аналитика на Python. Пишем код для RFM-сегментации", более 8 лет я работаю в сфере маркетинга для B2B и примерно столько же бешусь от дилетантского подхода к аналитике, который тянет за собой ряд проблем с определением кл...

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

Что там с OpenStack — все еще актуален или нет? Есть мнение, что платформа OpenStack теряет актуальность, но с этим утверждением согласны не все. Разберемся, в чем дело и обсудим альтернативы. Читать далее

Управление данными в системе автоматизации на Vue и Vuex и решение проблем тестирования с помощью Jest Привет! Меня зовут Артём Карачёв, я фронтенд-разработчик в Sportmaster Lab. Сейчас мы пишем модуль автоматизации физической фотостудии, где работают несколько фотографов, менеджеров, фоторедакторов, кладовщиков и других. Все фото кроссовок, которые вы видите в интернет-магаз...

Controller, но не Massive: реализуем список карточек для iOS 13 и не только с учетом практик чистого кода Привет! Когда мне по работе понадобилось реализовать список карточек на связке UICollectionView и UICollectionViewCompositionalLayout для iOS 13+, я не нашел хорошего примера. Написал свой и хочу поделиться с сообществом. А заодно показать реализацию для iOS11+.Примеры можно...

«Террасофт» приглашает на масштабную презентацию no-code платформы нового поколения — Creatio 8.0 8 февраля состоится Freedom Релиз — одно самых значимых событий в истории «Террасофт». В программе — презентация наиболее мощной версии платформы Creatio, блиц-дискуссия о роли и перспективах развития no-code технологий, а также специальный диджей-сет от звездного гостя Пола...

[Перевод] Объектно-ориентированный анализ BABOK Рассмотрим ситуацию, когда вы являетесь бизнес-аналитиком, который планирует работу над проектом в соответствии с рекомендациями BABOK. Руководитель проекта хочет спланировать свое время, затрачиваемое на деятельность по бизнес-анализу. Вы составляете отчет BABOK, в котором ...

[Перевод] Преодоление сложности в CQRS Эта статья является переводом материала «Tackling Complexity in CQRS».Шаблон CQRS может творить чудеса: он может максимизировать масштабируемость, производительность, безопасность и даже «превзойти» теорему CAP. Тем не менее, например, в своей статье о CQRS Мартин Фаулер утв...

Хабр, не молчи: идёт война РФ с Украиной Вчера войска РФ, после 8 лет войны без опознавательных знаков, теперь уже открыто напали на государство Украина.К херам "аполитичность", Хабр, ало, нас бомбят, гибнут люди, прямо сейчас.Выходите на протесты, меняйте власть в РФ. Времени отсиживаться и писать комментарии нет ...

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

Релокация разработчиков: неочевидные вещи про поиск работы зарубежом Марина, ты уже два года занимаешься помощью в релокации разработчиков и IT-специалистов. Расскажи, что поменялось за последнее время? Первое, что поменялось, — это общественное мнение о русских. Сейчас в некоторых странах Европы начали происходить не очень приятные проц...

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

Как мы потратили на разработку игры 1.000.000 рублей, а заработали 80.000 рублей Мы в MozgoParty уже 3 года делаем онлайн-квизы. Для нас это отлаженный процесс, в котором мы хороши. Но примерно год назад в компании появилась идея сделать игру, непохожую на все то, что создавалось ранее. И выпустить ее MVP за три месяца. Да, мы оптимисты ;)Как только приш...

keyT5 или генерация ключевых слов из текста Я попытался обучить русскоязычную модель ruT5-base и ruT5-large на задаче извлечения ключевых слов из текста. Читать далее

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

Активная конкуренция за RAM в Android Разработав инструмент для визуализации RAM и zRAM в Android, я обнаружила, что в телефонах происходит активная конкуренция за ресурсы. И если процессу понадобятся ресурсы, которые уже заняты кем-то другим, он отберет их, что может привести к критическим ситуациям и конфликта...

Планирование экспедиции. Геодезия и отвага Это продолжение истории Экваториальной Градусной экспедиции в XVIII веке отправившейся к, как следует из названия, экватору, чтобы уточнить форму Земли. Нашу научную экспедицию к берегам Перу мы оставили в том месте, где морской министр Франции, выделивший государственн...

Почему наш стартап переехал с Flask на FastAPI Как так оказалось, что стартап решил поменять стек? Это же затраты и все возникающие при этом сложности переезда. Но если хочешь получить короткий, эргономичный, хорошо читаемый код, приходится идти на жертвы. Но давайте по порядку.Алекс Морозов, co-founder & CTO в компа...

Козерогам не надо мелочиться, а Рыбам - откладывать дела: гороскоп от Павла Глобы на 11 января Во вторник, 11 января, у Тельцов все будет получаться, а Близнецы окажутся на пороге удивительных приключений, если не побоятся сделать шаг вперед. Об этом пишет Slovofraza. Овен Пора обсудить планы с любимой половинкой, чтобы понять, куда двигаться дальше. Телец Прек...

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

А вы знаете, где используется Haskell? Всем привет! Мы хотим продолжить серию постов на тему “где используются эти ваши странные языки программирования”. В прошлый раз мы рассказали про Лисп, а сегодня продолжим разговор про функциональные языки и обратим внимание на Haskell.  Он является основным языком раз...

Пишем асинхронного Телеграм-бота Сегодня я покажу, как написать своего Телеграм-бота на основе asyncio и aiohttp. Мы не будем использовать ни aiogram, ни любые другие библиотеки, а напишем бота с нуля, чтобы немного познакомиться с асинхронным программированием, корутинами и некоторыми примитивами синхрониз...

Custom view на Compose В июле Google выпустил стабильную версию Compose. Это вызвало большой интерес в сообществе. Все вокруг стали поговаривать, что эта технология захватит Android-разработку, и скоро все будут писать на Compose.Я принялся за изучение, заглянул на developer.android.com и нашел ра...

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

Социальная сеть без интернета SSB - это децентрализованная offline-first социальная сеть. Децентрализованная - это значит, что в ней нет сервера, который можно заблокировать, или на котором админ может закрыть вам доступ. Offline-first означает, что всё происходит в первую очередь на вашем устройстве.Инт...

React Hooks простыми словами О хуках в фронтенд-разработке на Хабре писали уже не раз, и в этой статье мы не сделаем великого открытия. Наша цель другая – рассказать про React Hooks настолько подробно и просто без трудной терминологии, насколько это возможно. Чтобы после прочтения статьи каждый понял пр...

[Перевод] Создание игр для NES на ассемблере 6502: рефакторинг Оглавление Оглавление Часть I: подготовка Введение 1. Краткая история NES 2. Фундаментальные понятия 3. Приступаем к разработке 4. Оборудование NES 5. Знакомство с языком ассемблера 6502 6. Заголовки и векторы прерываний 7. ...

Пишем свои модули для Ansible на Python Для жаждующих знаний и прогресса собрали материал из урока Дениса Наумова, спикера курсов Ansible и Python для инженеров. Немного разберёмся с теорией и посмотрим как написать модуль для создания пользователей в базе данных.Материал объёмный. Рекомендуем сразу открыть итогов...

Из грузчика в QA без регистрации и смс Привет, меня зовут Павел Купцов, я —  QA в Петровиче. До QA я добирался несколько лет окольными путями: через техникум, работу грузчиком и «эникейщиком», упорное обучение, когда курсы нужно было искать, а не они находили тебя, через отчаяние и уныние. Но в итоге я добил...

Youtube Timestamps — расширение для показа временных меток из комментариев У YouTube есть возможность оставлять в комментариях временные метки для видео. Просто пишем время в формате hh:mm:ss и YouTube сам превратит это в ссылку. Небезызвестный музыкальный сервис Soundcloud позволяет показывать комментарии к трэкам прямо на таймлайне. Так почему бы...

Килрой был здесь. Самый популярный мем аналоговой эпохи "Кто придумал Килроя и что он должен был значить — никто не знает до сих пор, хотя над этим после обнаружения рисунков на военных объектах и оборудовании ломали головы аналитики СССР и Третьего рейха. Факт в том, что рисунок-мем с Килроем заполнил мир задолго до того, как на...

Миграция ЦОДа в облако: типовые ошибки Чтобы осуществить беспрепятственный переход в облако, предприятиям следует знать о потенциальных сложностях и рисках, связанных с миграцией дата-центров, пишет на портале Network Computing Джоуи Йоре, главный консультант компании ...

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

Реализация Smart Pointers в Delphi, и еще немного В последних версиях Delphi, появилось много новых, интересных возможностей. Сейчас попробуем сделать, с их помощью, что-нибудь полезное. Конкретно, создадим тип, который владеет объектом, ведет себя как этот объект, но при этом автоматически освобождается, когда на него боль...

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

Пример использования WebAssembly-модуля, скомпилированного из Rust, в React-приложении Привет, друзья! На днях прочитал интересную статью, в которой демонстрируется возможность использования WebAssembly-модулей (далее — Wasm), скомпилированных из Rust, в React-приложении. Так вот, статья интересная, но автор толком ничего не объясняет, видимо, исходя из пред...

«Не ведём агрессивный маркетинг, не заставляем покупать прямо сейчас»: как Yamaha Music пишет рекламные статьи в Дзене Что такое неагрессивный маркетинг, сложно ли перестроиться с офлайн-мероприятий на подачу материала через блог и как научиться писать статьи в Дзен с нуля? Специалисты из Yamaha Music (Russia) Анастасия Бахметьева и Кирилл Старцев р...

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

Премьеру финального сезона «Лучше звоните Солу» ждем в двух частях – весной и летом «Лучше звоните Солу» – это приквел сериала «Во все тяжкие», авторство также за Винсом Гиллиганом. Это о том, как элементарная идея полноценно рассмотреть-раскрыть одного персонажа старой истории может вылиться в 6 сезонов. При том, что первоисточник (то бишь «Во все тяжкие...

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

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

Стоит ли переезжать на Кипр по работе? На Кипре безопасно и есть работа в IT. Но просто так на Кипр теперь не попасть, да и визы в Республику Кипр не выдают, если только не релоцироваться через работодателя. Мы как раз посмотрели посмотрели тематические чаты по Кипру с вакансиями и нашли несколько подобных компан...

Intel будет выпускать видеокарты чаще Nvidia и AMD. Новая линейка – каждый год Может быть видеокарты Intel Arc первого поколения и не смогут на равных тягаться с аналогами Nvidia и AMD, но компания, как пишет источник, всерьез намерена навязать конкуренцию в сегменте. Для этого Intel будет выпускать новое поколение видеокарт ежегодно. Ранее мы пи...

Знакомство с p-адическими числами. Часть 1 Изображение с сайта Mathematical Art Galleries В этой серии из двух статей я приглашаю вас заглянуть в один любопытный и не самый популярный уголок математики, в котором обитают необычные создания — p-адические числа, а попутно хочу рассказать о написанной мной Haskell-библ...

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

Xiaomi похоронила своё приложение Mi Fit и передала его новым владельцам Приложение Mi Fit, которое обеспечивает работу экосистемы смарт-браслетов и смарт-часов Xiaomi, теперь называется Zepp Life. Это произошло в результате изменения названия, что произойдет со всеми продуктами Xiaomi с псевдонимом Mi, пишет издание Gizmochina.

История жестких дисков, часть IV — до наших дней Жесткие диски знакомы всем пользователям, без них сложно представить современный компьютер. Конечно, SSD вытеснили жесткие диски в сценариях, где требуется максимальная производительность, например, для загрузочного раздела ОС. Но если нужна максимальная емкость, то без HDD ...

[Перевод] Стилизация однофайловых Vue компонентов Если у вас есть опыт написания однофайловых Vue компонентов, вы, вероятно, сталкивались с написанием CSS в своем компоненте. Они позволяют разработчикам группировать код более логическими способами, а не разбивать компоненты по используемому языку (HTML, CSS или JavaScript)....

Элегантный вопросительный знак В этой заметке я хочу поделиться элегантным решением одной задачи с сайта-хрестоматии RosettaCode. Речь пойдёт о программе, вычисляющей функцию Минковского — одного из инструментов теории чисел и динамических систем. Несмотря на то, что реализовать эту функцию относительно н...

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

Видеокарты AMD подорожали. Все, кроме Radeon RX 6900 XT Несколько дней тому назад мы писали о том, что AMD приняла решение повысить стоимость актуальных видеокарт серии Radeon RX 6000. И вот, как пишет источник, подорожание состоялось – для всех моделей, кроме Radeon RX 6900 XT. Для примера взяты видеокарты Gigabyte (...

Elden Ring: РПГ, Джордж Мартин и прочее Сегодня я рассмотрю дико популярную игру Elden Ring и попытаюсь выяснить, на чем основана эта популярность. Бонусом небольшой тест на системе i7-8700T + GTX 1070.

Пишем простого slack-бота на Java Привет! Я — Саша Казанцев, разработчик в hh.ru. В статье я расскажу, как сделать простого бота в Slack на java и немного о других вариантах использования slack api.Слак обладает обширной и всеобъемлющей документацией и туториалами, и чтобы написать эталонного бота, лучше про...

Kubernetes и другие оркестраторы Привет! Меня зовут Леонид, я DevOps-инженер в компании KTS. В этой статье я рассмотрю различные оркестраторы и объясню, почему Kubernetes — лучший выбор.Нашей компании уже 6 лет, и 4 из них мы живем с Kubernetes. До этого мы испытали все варианты деплоя приложений на се...

В России стартовал мультимедийный проект «Троецарствие» Пекин, 20 декабря 2021 г. /PRNewswire/ — 17 декабря российская аудитория сможет приобщиться к истории и культуре Китая благодаря ста интересным историям аудиоверсии романа «Троецарствие» в эфире телерадиокомпании «Звезда» и петербургского радиоканала Metro FM...

Стоит ли подружить QA и разработку с помощью практики хранения тестов в коде? Заводить тест-кейсы руками в тестохранилищах — долго и скучно. Но ведь есть еще много юнит-тестов, которые пишут разработчики. И не всегда понятно, что они покрывают и как пересекаются с E2E-тестами. Head of QA в Авито, Александр Матвеев, на Test Driven Conf расскажет о том,...

12 причин, почему игры на ПК вылетают 1. Слабое оборудование Вот вроде очевидно, но люди – такие интересные существа! Как еще объяснить стойкое желание некоторых индивидуумов загрузить ТОП-топовую игру на мамонтовый ПК? Не у всех есть привычка сравнивать характеристики своего компьютера с минимальными требован...

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

Sony выпустит первый в истории фильм, созданный с помощью PlayStation Dreams Sony Pictures Classics приобрела права на анимационный фильм под названием «Зимнее путешествие» (Winter’s Journey), который будет частично создан с использованием инструмента для создания игр PlayStation Dreams. Как пишет Deadline, фильм будет сочетать...

Citrix Xen Center – Опыт работы с полностью бесплатной виртуализацией Сразу опишу главный плюс такого решения – Это бесплатно! Любой может более менее полноценно администрировать рабочие места(Windows машины/сервера, linux сервера, любые ОС), работать с бекапами и эффективно использовать мощность железа.Так уж вышло, что профессиональные решен...

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

SymFormer: как мы написали музыку с помощью трансформеров и вариационных автоэнкодеров Когда вы слышите слово «творчество», какие ассоциации приходят к вам в голову? Скорее всего, не в последнюю очередь вы подумаете о музыке. Зачастую она — прямое выражение глубоких эмоций и переживаний. Как будто из идеального мира Платона к нам проникает свет, который композ...

Как мы телеграм-магазин делали: интеграция с движком, функционал, вывод товарной базы В июне 2021 года на выставке e-commerce мы впервые показали интегрированный магазин в телеграм с базовым набором функций. Уже тогда мы попытались вместить десятки категорий с десятками тысяч товаров в чат мессенджера. Но масштаб всего возможного функционала мы только предста...

UIKit ты вообще про UI? Спойлер - нет! Ну, не совсем. Мы привыкли воспринимать UI как визуальную составляющую, но ведь UI – это User Interface. Так вот, интерфейс – это то, с помощью чего пользователь взаимодействует с нашим приложением. В случае с графическим интерфейсом пользователь его видел и в...

Как сохранять историю процессов в Camunda без вреда для них Меня зовут Павел Плетнев, я разработчик в команде кредитных карт в Тинькофф. Хочу поделиться, как можно заранее оптимизировать работу с историей в Camunda или решить проблемы, если вдруг они появились. Читать далее

Экосистема React в 2022 году В данной статье мы рассмотрим текущее состояние экосистемы React, а также какие инструменты и библиотеки нам необходимы чтобы покрыть все основные кейсы для успешной разработки приложения. Читать далее

Windows 11 вынуждает использовать браузер Edge. Разработчики Vivaldi протестуют Как пишет Windows Latest, настройки операционной системы Windows 11 и реклама, вынуждающая пользователей оставить Microsoft Edge в качестве браузера по умолчанию, вызвали недовольство разработчиков Vivaldi. Соучредитель Vivaldi Джон фон Течнер (Jon von Tetzchner) опубли...

Архитектура Вселенной, часть 3: Идея Перед прочтением рекомендуется ознакомиться с предыдущими статьями цикла "Архитектура Вселенной":• Часть 1: Сознание• Часть 2: Относительность• Часть 3: ИдеяВ прошлой части "Архитектуры Вселенной" мы говорили об относительной природе пространства и времени, а сейчас я хотел ...

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

8-дюймовый экран OLED 2К, пара 50-мегапиксельных камер, Snapdragon 888, 4500 мА·ч и 65 Вт. Предварительные характеристики складного флагмана Oppo Find N Один из инсайдеров опубликовал в социальной сети Weibo возможные характеристики смартфона Oppo Find N – эта модель получит большой складной экран и окажется конкурентом таким моделям, как Xiaomi Miz Fold, Huawei Mate X2 и Samsung Galaxy Z Fold3. В последнее время ...

[Перевод] От Java 8 до Java 15 за 10 минут В данной статье рассмотрены крупные нововведения Java начиная с 8 по 15 версии. Читать далее

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

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

Ехать или не ехать? Check list Эта статья не даст вам советов, ехать или не ехать. Принять решение вы должны сами, однако, я попытаюсь систематизировать аргументы ЗА и ПРОТИВ так как сам жил и работал за границей по 3 года дважды - в Америке и Франции. Читать далее

От Prototype Pollution к RCE на ZeroNights X В рамках данной статьи мы рассмотрим уязвимость Prototype Pollution на клиенте и AST-injection на сервере и то, к чему может привести их совместная эксплуатация, а также, как они были встроены для обучения в конкурс “Hack To Be Hired” на ZeroNights X от Академии Digital Secu...

Как защитить сайты на PHP при помощи CrowdSec По данным статистики W3Techs, PHP применяется в 79% сайтов (о которых есть данные об используемых языках программирования). Для их защиты явно нужен собственный баунсер, и он уже добавлен в наш хаб! В этом посте поговорим о том, как этот баунсер может помочь защитить са...

Varonis предупреждает о возможных рисках ошибочных конфигураций Jira В ходе исследования было обнаружено, что API Jira REST предоставляет доступ к гораздо большему объему данных, нежели веб-интерфейс. Эта особенность API не является уязвимостью и проявляется только в случае неверного конфигурирования прав доступа. Тем не менее, администраторы...

Что там в «Мире Hi-Fi»: DAW, ремастеры из игр и ПО по радио В прошлый раз мы обсудили ЯП и библиотеки для работы со звуком. Сегодня продложим тему и поговорим о специальной ОС, открытых решениях и не только. Читать далее

Mafia 4 будет следовать истории Дона Сальери Сегодня появилась информация о грядущей игре Mafia 4. Предполагается, что игра станет приквелом ко всей франшизе и позволит игрокам взять на себя роль Дона Сальери, когда он приходит к власти на Сицилии между 19 и 20 веками. Ходят слухи, что история также будет посвящена при...

Обучение рукописной OCR на синте от GAN'ов Модели распознавания печатного текста (например, с фотографий документов) дают довольно высокие результаты. Это происходит за счёт ограниченного набора шрифтов, цель которых – быть максимально понятными человеку, а также благодаря генерации простой синтетики в виде печати ра...

[Перевод] Structured concurrency в Swift Примечание переводчиков: В Swift 5.5 появилась новая концепция языка async/await. Мы решили опубликовать перевод статьи, чтобы разобраться с structured concurrency.За время подготовки перевода оригинал успели переписать, и в статье ниже мы совместили обе версии: сначала идет...

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

Huawei представляет роутер HUAWEI WiFi Mesh 3 с поддержкой стандарта Wi-Fi 6+ Они обеспечивают высокоскоростную связь по стандарту Wi-Fi 6+ для более чем 250 различных устройств на площади до 600 м2. Благодаря поддержке стандарта Wi-Fi 6+ скорость передачи данных роутера составляет до 3000 Мбит/с, а технология HarmonyOS Mesh+ обеспечивает широкое по...

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

Простая аутентификация на PHP Многие новички до сих пор попадают в тупик при написании простейшей аутентификации в PHP. На Тостере с завидной регулярностью попадаются вопросы о том, как сравнить сохраненный пароль с паролем полученным из формы логина. Здесь будет краткая статья-туториал на эту тему.Discl...

Что такое Web 3.0, и почему он всем стал нужен Последние несколько лет все чаще доносится о том, что нынешняя модель Интернета морально устарела и требует пересмотра — корпорации жадно собирают данные пользователей, устраивают цензуру и знают о юзер больше, чем их ближайшие родственники. Лидеры мнений и индустрии предлаг...

Работники Wildberries выкрали со склада 20 видеокарт GeForce RTX 3070 Ti и попытались их продать, но потом все пошло не так На преступление века отважились работники склада Wildberries в Подмосковье. Как пишет Videocardz со ссылкой на Mash, они вскрыли сейф и выкрали из него двадцать видеокарт GeForce RTX 3070 Ti. Как видно, работники склада не сильно заботились о том, чтобы не попасть на ка...

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

В чём опасность нехватки витамина D для сердца Учёные выяснили, что при недостатке витамина D в организме у человека может возникнуть гипертония. Об этом пишет Daily Express.

Intel выведет на биржу подразделение по разработке технологий для беспилотных автомобилей Mobileye в 2022 году В ходе IPO Mobileye может привлечь больше $50 млрд, пишет WSJ.

Как включить в Google Chrome закадровый перевод видео из Яндекс.Браузера Учите английский язык, он вам сильно пригодится в жизни. Так говорят нам с самого детства, но на большинство почему-то эти уговоры не особенно действуют. Правда, жалеть об этом они начинают уже будучи взрослыми, когда понимают, что не могут ни почитать новости на английском...

Microsoft выпустила Windows 11 Build 22000.706 для инсайдеров Windows в Release Preview Channel Компания Microsoft выпустила Windows 11 Build 22000.706 (KB5014019) для Release Preview Channel для инсайдеров, которые работают на Windows 11. Это обновление включает следующие улучшения: • Новое! Microsoft улучшила опыт подтверждения Family Safety для детской учетной запис...

[Перевод] AI/ML в автоматизации тестирования программного обеспечения Создатели инструментов заявляют о 1000-кратном увеличении производительности. Альтернативный взгляд и несколько важных советов при изучении применения инструментов автоматизации тестирования AI/ML.Невероятно оптимистичные заявления о преимуществах AI/ML инструментов автомати...

Идея для языка программирования искусственного интеллекта. Свойство-ориентированный подход В данной статье предлагается новый свойство-ориентированный подход к организации объектной модели в языках программирования. Основная идея - вынести свойство из объекта и сделать понятия свойства и объекта равноправными. Это позволит получить крайнюю гибкость и универсально...

Как победить scroll в javascript Привет, Хабр!В этой статье я хочу поделиться с вами головной болью, с которой я сталкивался при работе со скроллом и различными путями решения данных проблем. Я считаю, что в итоге получилось достаточно неплохое руководство для начинающих разработчиков, также включающее в с...

[Перевод] Война или мир: используем MATLAB и Python вместе Если вы студент, работаете в академической сфере или на производстве, вы, вероятно, сталкивались с ситуациями, когда вам нужно было объединить работу с более чем одного языка программирования. Это обычное дело в инженерных и научных приложениях, особенно когда они связаны с ...

[Перевод] Эмоциональный код Я зарабатываю программированием с 1979 года, и большую часть этого времени мне приходится работать с чужим кодом. Поначалу было: "Добавьте эту маленькую функцию к тому, что у нас уже есть". Теперь — "как мы можем стать лучше" и " стоит ли сохранять данный код?". Прочтение ко...

[Личный опыт] Жизнь IT-инженера в Болгарии: недорого, спокойно и идеально для семей с детьми В последнее время мы много пишем про страны с околосоветским прошлым вроде Латвии или Польши. Есть еще одна такая интересная страна — Болгария. Там мягкий климат, родственный нашему язык, много русскоговорящих, а в последнее время еще и хорошие условия для работы в IT. Наш г...

[Перевод] ИТ-специалист на $5к: кому платят высокие зарплаты? Редакция сайта DOU.UA решила подробнее проанализировать, кто получает больше всего на рынке, и попыталась составить инструкцию, как добиться столь высоких результатов. Далее – 11 шагов, которые помогут вам получать зарплату более $5000.Внимательный читатель может сказать, чт...

Финишные покрытия. Часть 1: покрытия корпусов для СВЧ Привет! Меня зовут Олеся и работаю СВЧ инженером. Пишу это, чтобы читателям был примерно понятен мой бэкграунд и мотивация. В статье описаны типы покрытий, которые я использую в своей работе. далее

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

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

К 2025 году США удвоят расходы на искусственный интеллект Специалисты аналитической компании IDC попытались заглянуть в ближайшее будущее технологий искусственного интеллекта и пришли к выводу, что к 2025 году расходы на искусственный интеллект в США вырастут до 120 млрд долларов. Этот прогноз соответствует среднегодовому рост...

Кратко, но по делу про энергонезависимую память Intel Optane Поймал себя на ощущении, что хочется поделиться своим опытом работы с интеловской энергонезависимой памятью (Intel Optane memory или Intel PMem). Я буду для краткости называть ее ПМем. Думаю, что несмотря на объем продаж в сотни миллионов долларов, пока мало кто с ней сталк...

Как мы индекс в Elasticsearch строили Всем привет! Меня зовут Данил, и мы в Just AI разрабатываем платформу для создания различных чат-ботов. И для того, чтобы максимально упростить этот процесс, а именно процесс написания сценария работы бота, мы имеем свой собственный DSL.С его помощью можно описать поведение ...

[Перевод] Знакомство с трансформерами. Часть 1 Трансформеры (transformers) — это очень интересное семейство архитектур машинного обучения. Существует много хороших учебных материалов по этой теме (например — вот и вот), но в последние несколько лет трансформеры, в основном, становились всё проще. Поэтому с...

Топ-20 сервисов SMS-активаций: обзор бесплатных и платных вариантов Виртуальный номер необходим, когда нужно зарегистрироваться на сайте или в приложении по коду из SMS, а свой личный номер указывать не хочется. Или он уже используется в другом аккаунте. В таких случаях на помощь приходят сервисы SMS-активации. Среди них есть как бесплатные,...

[Перевод] Подробно о том, как работают React Server Components React Server Components (RSC) — интересная новая фича в React. Есть вероятность, что в ближайшем будущем она сильно повлияет на скорость загрузки страниц, размер бандлов и то, как мы будем писать приложения на React. Мы в Plasmic (место работы автора) делаем визуальный конст...

Ваши персональные данные в «надежных» руках курьеров В январе 2022 года от СМИ пришел запрос, где затрагивалась тема доступности ПДн клиентов курьерам.В ответ, не думая, набросал первый абзац о том, что большинство крупных и средних компаний давно используют виртуальную телефонию и промежуточные АТС для сокрытия номера телефон...

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

Бесплатный Telegram-бот для расшифровки аудио. Рассказываем кратко, как мы его сделали Бот конвертирует голосовые сообщения на русском языке в текстовый формат, также работает с загруженными одноканальными аудиофайлами. Его можно использовать даже в групповых чатах. В основе решения — технологии SmartSpeech от SberDevices. Читать далее

Микросервисный фреймворк Flogo — собираем систему из кирпичиков Для создания микросервисной архитектуры на Go может использоваться фреймворк Flogo, основанный на идеях потока сообщений/данных между микросервисами и реакции на события. В этой статье мы рассмотрим его возможности на примере простой задачи обработки данных телеметрии. Читат...

Как расти быстрее подчинённых. Вширь и вглубь Много лет руковожу программистами, при этом продолжая писать код, придумывать архитектуру, управлять проектами и т.д. Короче, я как все, только ещё хожу на совещания.Рядом много других команд программистов, и у них тоже есть свои начальники. И вот странное дело - сильно они ...

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

Безопасная разработка и уязвимости программного кода Часть 1. Как писать свой код без ошибокНа сегодняшний день трудно представить себе какую-либо отрасль бизнеса, в которой не использовались бы информационные технологии. Не только в банковской сфере, но и в промышленности, транспорте, сельском хозяйстве – везде ИТ играют огро...

Nvidia выпустит три «новые» видеокарты в декабре: GeForce RTX 2060 с 12 ГБ памяти, GeForce RTX 3070 Ti с 16 ГБ и GeForce RTX 3080 с 10 ГБ Как пишет источник, в следующем месяце Nvidia представит сразу три новые видеокарты. Точнее, не новые, а обновленные: они будут построены на нынешних моделях, но получат больше памяти. Таких условных новинок будет три: GeForce RTX 2060 с 12 ГБ памяти GDDR6, G...

[Перевод] Создание игр для NES на ассемблере 6502: приступаем к разработке Оглавление Оглавление Часть I: подготовка Введение 1. Краткая история NES 2. Фундаментальные понятия 3. Приступаем к разработке 4. Оборудование NES 5. Знакомство с языком ассемблера 6502 6. Заголовки и векторы прерываний 7. ...

Scrum в госкомпании: миф или реальность? SCRUM закрепился и в стартапах, и в IT-гигантах, но что на счёт скрама в крупной госкомпании? Попытаемся дать ответ на примере одной из команд разработки Россельхозбанка, а в конце статьи поделимся чек-листом в помощь начинающему скрам-мастеру. Читать далее

[Перевод] Rustenstein 3D: программируем, как будто сейчас 1992 год Дважды в год компания NextRoll организует мероприятие Hack Week, на котором сотрудники на неделю берутся за проект по своему выбору. Это превосходная возможность для экспериментов, изучения новых технологий и объединения с людьми из всех отделов компании. Узнать о Hack Week...

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

Go, я создал: интегрируем Allure в Go красиво Привет! Меня зовут Антон, я ведущий инженер по тестированию в Ozon: занимаюсь созданием и поддержкой end-to-end Go-тестов бэкенда для QA.Мы довольно долго писали тесты в основном на Python. Go – молодой язык, и популярных устоявшихся инструментов у него пока немного. В Pytho...

Какое тестовое задание выдать джависту? Лучше просто поговорить Всем привет, меня зовут Сергей, я руковожу группой серверных программистов студии Whalekit и активно занимаюсь наймом в эту группу. Сервер пишем на Java — соответственно, нанимаем мы тоже джавистов.В 2016 году мы выдавали кандидатам тестовое задание, успешным кандидатам назн...

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

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

Первый хакатон ВСК — от идеи до реализации В конце 21-го года состоялся первый хакатон в истории ВСК! Точнее - это был не совсем хакатон. А почему - читайте далее!Что еще вы найдете в этой статье:• все подробности организации;• цифры и сложности;• как создать почву для решения бизнес-задач;• как повысить лояльн...

FSNotes 5 для iOS — заметочник для гиков Привет, Habr! Больше 4 лет я пишу программу заметочник под macOS и iOS. Я уже упоминал вскольз о нюансах разработки, сегодня время пришло написать о самой программе.Если кратко, то FSNotes это программа для написания, каталогизации и хранения заметок в максимально открытом в...

Новые вызовы и возможности импортозамещения обсудили на Merlion IT Summit 2021 За последний год даже самые убежденные скептики могли удостовериться в том, что импортозамещение для российского государства – это не утопический проект, который через какое-то время надоест, а реально действующая программа развития экономики, в которую инвестируются огромны...

7 атрибутов хорошего firmware В этой статья предлагаю обобщить, перечислить и обсудить общие системные атрибуты хорошего firmware (прошивки) для микроконтроллерных проектов, которые не зависят от конкретного приложения или проекта. Читать далее

[Перевод] История ретро-консолей с точки зрения программиста, часть 2 Мы продолжаем обзор игровых консолей с точки зрения истории их развития. В прошлый раз мы остановились на 1990-ых годах — времени NEC TurboGrafx-16, Nintendo SNES и Sega Genesis. Сегодня продолжим с этого момента и поговорим о том, как на рынке игровых консолей появились Son...

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

Huawei выпустила игровой контроллер Beitong с очень низкой задержкой Компания Huawei официально представила игровой контроллер под названием Beitong Smart Gaming Controller.Beitong Smart Wireless Gaming Controller, как следует из названия, является беспроводным. Он предназначен для использования в качестве аксессуара для телевизоров Huawei Vi...

[Перевод] ROS книги по робототехнике переведенные на русский язык Robot Operating System это фреймворк который позволяет эффективно программировать современных роботов. Читать далее

Gainward анонсировала видеокарту GeForce RTX 3090 Ti Phantom Как ведущий бренд на рынке графики, Gainward с гордостью представляет новую серию GeForce RTX 3090 Ti Phantom. Разработанная для самых требовательных геймеров и создателей контента, GeForce RTX 3090 Ti оснащена рекордными 10 752 ядрами CUDA и может похвастаться мощностью 78 ...

Обсуждение: сможет ли технология data-over-audio заменить QR-коды Недавно мы рассказывали о проекте, позволяющем передавать данные по WebRTC с помощью звука. Обсудим еще одну аудиотехнологию, которая уже занимает нишу бесконтактных платежей в супермаркетах, ресторанах и даже на транспорте. Читать далее

Как я создал собственный 3D движок и игру на нём за 20 месяцев Речь идёт о игре Speebot, которая была выпущена в Steam в 2017 году.Я разрабатывал эту игру с января 2016 года в своё свободное время в одиночку. Мною выполнено всё программирование, дизайн игрового процесса, создание графики и музыки. Кроме того, я написал собственный игров...

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

Главный секрет операторов match/case в пайтоне Не так давно увидела свет версия языка пайтон 3.10. В ней был добавлен pattern matching statement (оператор сопоставления с шаблонами). Как гласит официальное описание этого оператора в PEP622, разработчики в большей мере вдохновлялись наработками таких языков как: Scala, Er...

[Перевод] Зарубежный опыт: как избавиться от 80% кода, увеличить скорость разработки и уменьшить количество ошибок Мы продолжаем знакомить читателей нашего блога с интересными международными публикациями. Ранее мы перевели материал с практическими советами по обучению для ИТ-специалистов, сегодня же коснемся темы абстракций – популярного и эффективного средства разработки.Под катом тех– ...

Вылетает Ватсап на Айфоне. Что делать При всех своих недостатках для многих именно WhatsApp является основным инструментом общения. Поэтому, когда с мессенджером происходит что-то неладное, его пользователи начинают бить тревогу. Я хорошо помню, какая была паника, когда Ватсап и другие сервисы Фейсбук отключили...

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

Чаты из WhatsApp можно будет перенести с Android на iOS WhatsApp разрабатывает новую функцию, которая позволит пользователям импортировать свою историю чата WhatsApp при переходе с телефона Android на iPhone. Информационное издание WABetaInfo обнаружил эту опцию в бета-версии приложения WhatsApp для iOS (версия 22.2.74) и предост...

[Перевод] GitOps с GitLab: CI/CD Tunnel GitLab можно использовать как первоклассный инструмент GitOps, и здесь мы покажем как. Это пятое практическое руководство из серии, посвящённой разным задачам пользователей, включая подготовку базовой инфраструктуры, управление ей и развёртывание поверх неё различных сторонн...

[Перевод] Как Илон Маск уволил своего ассистента после просьбы о прибавке Я глубоко уважаю Илона Маска, даже несмотря на то, что его критикуют и называют «маркетологом, выехавшим на наработках NASA». Пусть даже такая критика оправдана — человечеству не хватает здорового драйва и стремления к чему-то далёкому. Все-таки это первый человек в истории,...

Страх и ненависть в RouterOS: что такое сетевое соединение в ядре Linux (часть 3 — NAT и сетевые соединения) В статье рассмотрено понятие «соединение» для TCP и UDP протоколов в ядре операционной системы Linux на примере работы оборудования MikroTik. Дополнительно рассматриваются особенности работы технологии NAT в указанном контексте. Материалы носят в основном теоретический хара...

Игра Oddworld Soulstorm Enhanced Edition запускается на Xbox и PlayStation Поклонники Oddworld будут рады узнать, что новое издание Oddworld Soulstorm Enhanced Edition теперь доступно на платформах Xbox и PlayStation, обеспечивая геймерам новое приключение. Посмотрите трейлер , чтобы узнать больше о том, чего вы можете ожидать от игры, а также крат...

Комикс: Технический долг в разработке игр Откопала классное видео от образовательного канала Extra Credits, в формате «как объяснить, что такое технический долг даже ребёнку». Ну, или очень далёкому от этого взрослому. Мне так понравились иллюстрации, что я сделала из этого видео комикс. Покажите его своему менеджер...

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

Реверс-инжинирим структуру БД PostgreSQL по плану запроса к ней Большая часть оптимизаций запросов к базам PostgreSQL может выполняться "механически", следуя разного рода маркерам в плане выполнения запроса, которые подскажут, что и как можно ускорить. Но "глубинные" переработки алгоритма, вроде описанных в статье про DBA-детектив, требу...

История жестких дисков, часть III — Миниатюризация Жесткие диски знакомы всем пользователям, без них сложно представить современный компьютер. Конечно, SSD вытеснили жесткие диски в сценариях, где требуется максимальная производительность, например, для загрузочного раздела ОС. Но если нужна максимальная емкость, то без HDD ...

Первый древнейший: в чём уникальность языка программирования LISP В этой статье мы поговорим об одном из самых старых языков программирования ― Lisp. Несмотря на свой внушающий уважение возраст, он всё ещё находится в строю и заставляет переосмысливать всю теорию программирования. Так что же это за язык и чем он примечателен?Лисп, или LISP...

[Перевод] Вёрстка в 2022. Часть 1: Теория "Разработчик – это человек, который переводит мысли заказчика на язык машины" @mikita_duИдея статьи появилась год назад, думал назвать «Вёрстка в 2021», но как-то затянулось… Весной 2021 года Microsoft объявила, что с 15 июня 2022 года прекращается поддержка IE11 (да, не для...

В сети появилась возможная дата анонса GTA 6 Французский инсайдер и журналист Крис Клиппель поделился новостями о возможной дате анонса GTA 6. Он рассказал, в каком году может состояться анонс игры и ее выход. Читать полную статью

Python и Samila. Делаем красиво Как при помощи языка программирования Пайтон и библиотеки Samila создавать красивые изображения, даже с минимальными усилиями. Читать далее

[Перевод] Умные конструкторы для case классов Одним из наибольших преимуществ использования Scala является его типобезопасность. Если подходить к выбору типов в нашем коде осознанно и с разумной степенью осторожности, то компилятор может помочь нам найти более правильное решение или же указать, где мы можем ошибаться.Ес...

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

[Перевод] Акторы Swift под капотом Акторы (Actors) — это фича, являющаяся частью структурированного параллелизма (Structured Concurrency) Swift, которая предлагает совершенно новый формат для написания и обработки асинхронного кода. Хотя они и являются чем-то инновационным для языка Swift, сама технология нов...

Вслед за льготами на посылки могут ввести льготы на ввоз авто. В Госдуме предлагают ввести льготную пошлину в 5% при ввозе авто в страну физическим лицом Российский рынок новых авто находится в глубоком кризисе, вторичный рынок авто тоже падает. Заводы простаивают, бренды из страны уходят, запчасти растут в цене, но ездить на чем-то надо. Чтобы оживить рынок, депутат Госдумы Иван Сухарев предложил рассмотреть возможность...

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

Intel и AMD приостановили поставки процессоров в Россию Как пишет РБК со ссылкой на источники на IT-рынке, компании AMD и Intel приостановили поставки процессоров в Россию. Представители AMD и Минпромторга ситуацию не комментируют, Intel же прямо на вопрос не ответила. В компании отметили, что «внимательно следят ...

Консольные изображения ( от ЧБ до 24bit ) В данной статье будет рассмотрен прогресс от ЧБ картинки в консоли до 24 bit изображения в ней жеЧёрно белое -> 48 цветов -> 216 цветов -> 24 bit Читать далее

Книга «Python и DevOps: Ключ к автоматизации Linux» Привет, Хаброжители! За последнее десятилетие технологии сильно изменились. Данные стали хитом, облака — вездесущими, и всем организациям понадобилась автоматизация. В ходе таких преобразований Python оказался одним из самых популярных языков программирования. Это практичес...

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

Опыт переезда в облако VKCS (IaC, IaC и в продакшн) Дисклаймер: Я написал такую статью, какую сам хотел бы прочитать полгода-год назад, когда мы стартовали миграцию в облако. Мне бы она здорово помогла сэкономить силы, время и нервы – надеюсь, теперь поможет кому-то ещё. Здесь нет исчерпывающей экспертизы, только немного моег...

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