Социальные сети Рунета
Вторник, 16 апреля 2024

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

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

А какая разница какой Collation выбрать? Статья подготовлена для студентов курса «MS SQL Server разработчик» Хочу поделиться историей из одного из предыдущих проектов, которая иллюстрирует, что Collation нужно выбирать очень вдумчиво. И о том, что бывает, если этот параметр все-таки выбрали неверно, и какие вариант...

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

Админ без рук = гиперконвергенция? Это миф, достаточно распространённый в сфере серверного железа. На практике же гиперконвергентные решения (когда всё в одном) нужны много для чего. Исторически сложилось, что первые архитектуры были разработаны Amazon и Google под свои сервисы. Тогда идея была в том, чтоб...

Курс «Основы эффективной работы с технологиями Wolfram»: более 13 часов видеолекций, теория и задачи Все документы курса можно скачать здесь. Этот курс я прочел пару лет назад для довольно обширной аудитории. Он содержит очень много информации о том, как устроена система Mathematica, Wolfram Cloud и язык Wolfram Language. Однако, конечно, время не стоит на месте и за по...

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

[Перевод] От Witcher 3 до Cyberpunk: эволюция дизайна квестов CD Projekt The Witcher 3 известен своим превосходным дизайном квестов, но разработчик игры CD Projekt Red обещает в своём новом проекте Cyberpunk 2077 развить и улучшить проверенный подход. На E3 2019 директор отдела квестов Матеуш Томашкевич рассказал нам, чему он научился, управляя...

[Из песочницы] Генератор мемов на Ruby для привлечения интереса к языку По моему мнению язык Ruby перестал быть популярным как в 2012 — 2014 году и поэтому у меня возникло желание пока про язык совсем не забыли, попробовать его снова донести в массы, ведь Ruby по моему мнению самый удобный и практичный язык для веб разработки. Я с неделю назад ...

Терраформируй это: обзор Terragenesis В App Store/Google Play можно найти самые разные игры, поэтому я не сильно удивился, когда в одном из профильных чатов меня спросили, знаю ли я игру о терраформировании небесных тел. Посмотрев ее, решил написать небольшой обзор, потому что игра, на мой взгляд, хоть и не без ...

[Из песочницы] Подсчет скорости скачивания в вашем приложении Предыстория Есть у меня маленький и уютный pet-project, который позволяет качать файлы из интернета. Файлы при этом группируются и пользователю отображается не каждый файл, а некоторая группировка. И весь процесс скачивания (и отображение этого процесса) сильно зависел от да...

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

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

[Перевод] Замена EAV на JSONB в PostgreSQL TL; DR: JSONB может значительно упростить разработку схемы БД без ущерба производительности в запросах. Введение Приведем классический пример, наверное, одного из старейших вариантов использования в мире реляционных БД (база данных): у нас есть сущность, и необходимо сохрани...

Как я пытался починить поиск по картам для водителей. Часть 2 Первое, что хочется сказать — это было сложно. Гораздо сложнее, чем я думал. Я имел до этого весьма жесткий опыт выведения продуктов в релиз на работе, однако никогда не дотаскивал до продакшена персональные проекты. Они у меня все заканчивались на прототипах разной степени ...

[Из песочницы] Структуры данных в Java. Полезные методы вспомогательных классов Привет, habr! Я Software Engineer в EPAM. Более 8 лет я работаю с legacy-кодом, написанном на языке Java (предвосхищая комментарии, отмечу, что понимание и терпимость к legacy началась задолго до EPAM, в заключении вы найдёте ответ, почему). Часто в работе я сталкивался с ...

[Перевод] Стандарт WASI: запуск WebAssembly за пределами веба 27 марта мы в Mozilla объявили о начале стандартизации WASI, системного интерфейса WebAssembly (WebAssembly system interface). Зачем: разработчики начали применять WebAssembly за пределам браузера, потому что WASM обеспечивает быстрый, масштабируемый, безопасный способ запу...

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

Иллюзия иммутабельности и доверие как основа командной разработки Вообще я C++ программист. Ну так получилось. Подавляющее большинство коммерческого кода, который я написал за свою карьеру, — это именно C++. Мне не очень нравится такой сильный перекос моего личного опыта в сторону одного языка, и я стараюсь не упускать возможности написать...

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

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

ЧПУ в хоббийной мастерской (часть 1) Работа программиста имеет один существенный недостаток: как правило, мы не можем потрогать результат своего труда. Можем наслаждаться красотой кода, восторгаться оригинальностью алгоритма, но пощупать программу, увы, никак. Меня этот нюанс профессии всегда расстраивал. Чт...

5 ошибок, которые следует избегать при создании 3D-моделей для 3D-печати Известно, что процесс моделирования для аддитивного производства не всегда прост: в 3D-моделировании, как и в 3D-печати, не существует единственно верного решения. Мы используем разное программное обеспечение, печатаем из разных материалов и используем разные 3D-принтеры и...

Делаем ретро-игру из 80-х или как готовить макеты для лазерной резки Хабр, привет! Так получилось, что меня давно просили сделать старую настольную игру из СССР — «Сражение». Вот пришло время выполнять обещание, заодно решила показать как создавать макеты для лазерной резки и что получается в итоге. Большой сложности в этом нет, но есть неко...

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

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

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

Экономия на мобильной кросс-платформенной разработке: кейс Skyeng Привет, я Андрей Кучеренко, тимлид мобильной разработки Skyeng. Мы делаем мобильные приложения под iOS и Android. У них одинаковая функциональность и одинаковый с точностью до стилистики интерфейс. Но из-за разных платформ разработка вроде бы одного приложения получается до...

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

Проблема автоматической калибровки на Flsun QQ-S (Прошивка 2.0.7) Недавно купил себе Flsun QQ-S и столкнулся c очень неприятной проблемой. После автоматической калибровки разница высот между разными краями стола составляла более 0.5. Печать в такой ситуации полна ужаса и разочарования. На более менее крупной модели один край размазан о сте...

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

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

Слава богу, что я не менеджер Я довольно давно работаю DBA + database performance expert + еще много чего в одной крупной компании. Работа очень комфортная, но какое-то время я переживал из-за того, что моя позиция тупиковая. Расти по карьерной лестнице мне решительно невозможно: я единственный человек в...

Пять студентов и три распределённых key-value хранилища Или как мы писали клиентскую C++ библиотеку для ZooKeeper, etcd и Consul KV В мире распределённых систем существует ряд типовых задач: хранение информации о составе кластера, управление конфигурацией узлов, детекция сбойных узлов, выбор лидера и другие. Для решения этих зада...

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

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

Альтернатива центру сертификации от Microsoft Пользователям нельзя доверять. В большинстве своем они ленивы и вместо безопасности выбирают комфорт. По статистике, 21% записывают на бумаге свои пароли от рабочих аккаунтов, 50% указывают одинаковые пароли для рабочих и личных сервисов. Среда тоже враждебна. 74% организац...

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

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

[Перевод] Есть ли что-то общее у разных песен-хитов? Если выполнить вход на Spotify.me, то можно получить персонализированную сводку того, как Spotify понимает вас через музыку, которую вы слушаете на этом сайте Spotify. Это круто! Я слушаю много музыки и люблю работать с данными, поэтому это вдохновило меня на попытку анали...

Выпущены накопительные обновления для Windows 10 19H1 и 19H2 на канале Release Preview Инсайдеры на канале Release Preview получили новые накопительные обновления для Windows 10 19H1 и 19H2, которые изменяют номер сборки системы на 18362.329 и 18363.329 соответственно. Список изменений для обоих обновлений одинаковый: Исправлена проблема, из-за которой некото...

Тяжёлое бремя времени. Доклад Яндекса о типичных ошибках в работе со временем В коде самых разных проектов нередко приходится оперировать временем — например, чтобы завязать логику работы приложения на текущее время у пользователя. Старший разработчик интерфейсов Виктор Хомяков описал типичные ошибки, которые встречались ему в проектах на языках Java,...

[Из песочницы] Размышления о Agile The measure of intelligence is the ability to change. Albert Einstein Предисловие Представляю ИТ-сообществу “Размышления о Agile” или можно назвать данную статью так, “Agile, это все же философия или проектная методология?”. Цель данной статьи — обсудить с ИТ-сообществом в...

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

Шорты про Scrum Гибкий суррогат Словом «Scrum» называются, как минимум, две сущности: философия и фреймворк. Философия, или подход к работе, описан в книге Джеффа Сазерленда. Фреймворк, т.е. алгоритм действий, описан в документе под названием Scrum Guide. Философия превратилась в фреймворк,...

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

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

История одной проблемы со Speedometer, или Как Chromium управляет памятью Современный браузер — это крайне сложный проект, в котором даже безобидные с виду изменения могут приводить к неожиданным сюрпризам. Поэтому существует множество внутренних тестов, которые должны такие изменения отловить до релиза. Тестов никогда слишком много не бывает, поэ...

Основы шаблонов С++: шаблоны функций Дисклаймер: статья была начата еще в феврале, но, по зависящим от меня причинам, закончена не была. Тема очень обширна, поэтому публикуется в урезаном виде. Что не поместилось, будет рассмотренно позже. Невозможно разбираться в современном С++, не зная, что такое шаблоны п...

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

Ломаем игру на память: целый детектив Эта игра не давала нам покоя несколько месяцев. Правила очень простые: надо выкладывать карточки с картинками и придумывать сказку. Потом вспомнить её. Простая штука на запоминание, подумали мы. Сто раз в такое играли, и всё наше образование просто вопит, что сейчас буд...

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

Mail.ru выпустила новый браузер Atom с акцентом на «безопасность и приватность» В июле 2018 года компания Mail.ru прекратила разработку браузера «Амиго», хорошо знакомого многим пользователям, которые пытались удалить его из системы. Однако крупнейшая интернет-компания России не могла остаться без своего браузера. Поэтому разработчиков просто перевел...

Универсальный DSL. Возможно ли это? Язык предметной области. Не перегружен конструкциями языка общего назначения. При этом позволяет всего несколькими строчками реализовать весьма сложную логику. Все это — DSL. Однако создание DSL требует от разработчика соответствующей квалификации. Регулярное использование...

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

Как я разрабатываю и тестирую API со своим «велосипедом» PieceofScript PieceofScript — простой язык для написания сценариев автоматического тестирования HTTP JSON API. PieceofScript позволяет: описывать методы API в формате YAML, с названием метода на почти естественном языке, что удобно для чтения тестов достаточно гибко описывать модели в...

Sapphire S и равномерное натяжение ремней X Y Для механики CoreXY важна одинаковая натяжка ремней. На принтере Sapphire S кроме того не задумана плавная натяжка ремней. На нем к тому же просто примерно одинаково натянуть ремни то еще развлечение с использованием стяжек. Есть много разных рекомендаций по равномерной натя...

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

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

Сопла для e3d V6. Всем привет! Решил поделиться с вами своим мнением по поводу сопел. На одном из Youtube каналов, в обзоре увидел сопла от Треугольников. Так как сопла это расходник, то парочку всегда нужно иметь в запасе, были заказаны сопла Triangle lab, собственно о них и пойдет речь.Срав...

Техническая ипотека: что и кому должен тимлид Всем привет! Меня зовут Александр Афенов. Я тимлид команды разработки Order Processing в компании Lamoda. В прошлом году я выступал на TeamLead Conf 2018. Запись выступления доступна по ссылке. В своем докладе я расскажу историю того, как стал тимлидом, с какими проблемами...

Микросервисы. Версионность в системах непрерывной интеграции и развертывания CI/CD на примере использования TFS Проблематика Для больших и технически сложных проектов, над которыми как правило одновременно работают много распределенных команд, существует известная проблема версионности разрабатываемого ПО, которую разные компании решают по-разному. Читать дальше →

Как мы слили финал IT-Планеты по программированию Не мы плохие, а багов много. Разработка искусственного интеллекта для игры “Хоккей” за ~7 часов. Изначально статья планировалась о стратегиях участников, о том, что они успели сделать за конкурсное время и рады ли проделанной работой, но, опросив финалистов восемь, стало яс...

noexcept-ctcheck или несколько простых макросов, чтобы компилятор помогал при написании noexcept кода При разработке на C++ время от времени приходится писать код, в котором исключения не должны возникать. Например, когда нам нужно написать не бросающий исключений swap для собственных типов или определить noexcept move-оператор для своего класса, или вручную реализовать нетр...

[Перевод] Питон, пожирающий мир: как побочный проект одного разработчика стал популярнейшим языком программирования Разочаровавшись в недостатках существовавших языков программирования, Гвидо Ван Россум создал язык Python. Сейчас этот язык используют миллионы людей, и Ник Хит беседует с ван Россумом о прошлом и будущем языка. Гвидо Ван Россум в штаб-квартире Dropbox в 2014 году В конце ...

Nubia Z19 превзойдет Huawei P30 Pro по возможностям фронтальной камеры Сегодня генеральный директор Nubia Ни Фэй (Ni Fei) подтвердил, что компания делает флагманский камерофон. Если верить словам Ни Фея, предстоящий смартфон Nubia Z19 будет напрямую конкурировать с Huawei P30 Pro. Как отметил Ни Фэй, мобильная фотография в последнее время ...

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

[Из песочницы] Сeph — от «на коленке» до «production» Выбор CEPH. Часть 1 У нас было пять стоек, десять оптических свичей, настроенный BGP, пару десятков SSD и куча SAS дисков всех цветов и размеров, а ещё proxmox и желание засунуть всю статику в собственное S3 хранилище. Не то чтобы это всё было нужно для виртуализации, но раз...

Как проводить Code Review по версии Google Вопросы код-ревью меня интересуют очень давно. Много раз возникали те или иные проблемы то с качеством кода, то с климатом в коллективе. И действительно, code review — это если не единственное, то одно из самых главных мест для возникновения конфликтов в коллективе разработч...

[Из песочницы] Ansible + авто git pull в кластере виртуальных машин в облаке Доброго дня У нас имеется несколько облачных кластеров с большим количеством виртуальных машин в каждом. Все это дело у нас хостится в Hetzner'e. В каждом кластере у нас имеется по одной мастер-машине, с нее делается снэпшот и автоматически разносится по всем виртуалкам вн...

[recovery mode] Data Engineer – самая сексуальная профессия XXI века Недавно в разговоре с HR’ами одной крупной компании прозвучало «Каждый data engineer, приходящий к нам на интервью, мечтает стать data scientist’ом». Меня это тогда сильно удивило и стало очень обидно за дата инженера, честно говоря. Мы здесь (и не только) уже публиковали ...

[Из песочницы] Арифметика fixed-point на C++ Сегодня расскажу Вам что такое fixed-point, зачем он нужен и как его можно использовать. Существует такая проблема когда производительность приложения может заметно ухудшиться из-за особенностей вычисления на числах с плавающей точкой. Как правило CPU заточен под целочислен...

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

[Перевод] JavaScript не нужно ничем заменять — другие языки тоже столкнутся с теми же проблемами «Существует только два вида языков: те, на которые жалуются и те, которыми никто не пользуется», — Бьёрн Страуструп, создатель C++ Очень часто слышатся заявления о том, что JavaScript нужно заменить каким-то другим языком. Причиной всегда становится то, что у JavaScript нак...

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

Выборка данных с ORM — это просто! Или нет? Введение Практически любая информационная система так или иначе взаимодействует с внешними хранилищами данных. В большинстве случаев это реляционная база данных, и, зачастую, для работы с данными используется какой-либо ORM фреймворк. ORM устраняет большую часть рутинных оп...

[Из песочницы] OpenVPN и Active Directory (Kerberos без пользовательских сертификатов) Про OpenVPN написано много гайдов, в том числе и про авторизацию через Active Directory. Большинство из них сводится к использованию LDAP, подхода с использованием Kerberos, оформленного в полноценную статью, я не нашел. Впрочем, чего-то нового тут изобретено не будет, я лиш...

Профилирование со сверхсветовой скоростью: теория и практика. Часть 1 Привет! Из заголовка вы уже поняли, о чём я собираюсь рассказать. Тут будет много хардкора: мы обсудим Java, С, С++, ассемблер, немного Linux, немного ядра операционной системы. А ещё разберём практический кейс, поэтому статья будет в трёх больших частях (достаточно объёмных...

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

Похоже, Apple тайком решила проблему Flexgate в ноутбуках MacBook Pro Компания Apple не славится тем, что умеет признавать свои ошибки. Некоторые недостатки своих устройств курпетинцы отчаянно пытаются не замечать или же говорить, что это особенность, а не недостаток. Однако при этом нельзя сказать, что Apple никогда не исправляет ошибки...

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

[Перевод] Метод CASE: гуманный мониторинг Дзииииииинь! На часах 3 утра, вы смотрите чудесный сон, и вдруг — звонок. На этой неделе вы дежурите, и, видимо, что-то случилось. Автоматизированная система зовет разобраться, в чем дело. Это важный момент управления современными компьютерными системами, но давайте посмотр...

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

Радиопередачи из далекой галактики повторились. Что бы это значило? Астрономы зафиксировали второй повторяющийся быстрый радиовсплеск, который сильно похож на первый. Это обнаружение позволяет предположить, что в космосе может быть намного больше этих загадочных сигналов. Этот всплеск, который получил название FRB 180814.J0422+73, входит в ...

Что такое DevOps Определение DevOps очень сложное, поэтому приходится каждый раз запускать дискуссию об этом заново. Только на Хабре тысяча публикаций на эту тему. Но если вы это читаете, то наверняка знаете, что такое DevOps. Потому что я — нет. Привет, меня зовут Александр Титов (@osminog)...

The Unic – уникальная бесконечная головоломка о поиске одинаковых текстур выйдет 25 апреля Давайте на секунду отвлечемся от MMORPG, бесплатных стратегий, обнадеживающих портов с ПК и три-в-ряд, и взглянем на что-нибудь совсем необычное. Головоломка The Unic – это проект создателей Swim Out, который лично мне напомнил легендарную Blendoku. В этой игре вам предстои...

Apple извинилась за проблемы с клавиатурами MacBook Сегодня случилось достаточно редкое событие. После негативной статьи в The Wall Street Journal, в которой редактор издания в очередной раз заострил внимание на проблеме залипания клавиш в разных моделях MacBook, купертиновцы принесли пользователям извинения. Правда, представ...

Цемент марки Интеграция Вчера поднял тему «Бизнес, не горюй» о том, каковы реальные целей ИТ-проектов. Не все поверили, что я говорю серьезно, но я не шучу. Я уверен, что нам (кто мы и сколько нас?) нужны кейсы по достижению реальных целей. Подсадить, зацементировать, выжать и поучиться. Разумеет...

Использование бинарного дерева в swift с помощью enum на примере OCR Была цель создать приложение на mac, которое может распознавать текст кода с изображений и видео. Хотелось сделать так, чтобы даже при большом объеме кода, текст распознавался менее, чем за секунду. Проблема облегчается тем, что язык на котором пишут код всегда английский ...

Карьерные стероиды. Путь Самурая Метод карьерного роста «Путь Самурая» как-то язык не поворачивается назвать стероидом, потому что он… Не знаю, правильный, что ли. Честный, настоящий, добрый и пушистый. Потому в жизни встречается не очень часто. Я смог вспомнить только четыре примера, и не все они из моей ...

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

Как мы используем цепи Маркова в оценке решений и поиске багов. Со скриптом на Python Нам важно понимать, что с происходит с нашими студентами во время обучения, и как эти события влияют на результат, поэтому мы выстраиваем Customer Journey Map — карту клиентского опыта. Ведь процесс обучения — не нечто непрерывное и цельное, это цепочка взаимосвязанных событ...

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

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

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

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

Golang: специфические вопросы производительности Язык Go набирает популярность. Настолько уверенно, что появляется все больше конференций, например, GolangConf, а язык входит в десятку самых высокооплачиваемых технологий. Поэтому уже имеет смысл разговаривать о его специфических проблемах, например, производительности. Кро...

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

Почему не SQL? Без преувеличения можно сказать, что SQL — один из самых распространенных в мире языков. Информационные системы могут быть написаны на Java, Python, JavaScript, C#, PHP и десятке других языков, но SQL база в том или ином виде будет в абсолютном большинстве таких систем. Ср...

Apple не платит российским разработчикам ПО уже несколько месяцев Редкая презентация Apple обходится без упоминания об очередном рекорде, который установил App Store. Результатом такого успеха становятся многомиллионные выплаты, которые компания перечисляет разработчикам приложений, публикуемых в фирменном каталоге. Вот только деньги от п...

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

Личный опыт и выводы после смены профессии с дизайнера на программиста О чем эта статья По сути статья о том каким образом мой образ мысли должен был поменяться при смене профессии, понимание контекста и того на какие моменты стоит обращать внимание, а так же насколько сильно выбор "что же мне учить" влияет на последубщие годы развития личной к...

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

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

Куда приводят мечты: Андеграунд На календаре 12 марта 2040 года. Время 5.30. У меня, двадцатилетнего студента-историка сегодня важный день. Вечером состоится мое первое выступление в “Андеграунде”, и я очень хочу, чтобы оно было успешным. Тема — “Куда приводят мечты или итоги четвертой промышленной революц...

[Перевод] Указатели в Python: в чём суть? Если вы когда-нибудь работали с такими низкоуровневыми языками, как С или С++, то наверняка слышали про указатели. Они позволяют сильно повышать эффективность разных кусков кода. Но также они могут запутывать новичков — и даже опытных разработчиков — и приводить к багам упр...

Лучшая программа для обработки фото На сегодняшний день фотография является неотъемлемой частью нашей культуры и занимает огромный пласт в творчестве. Стоит также заметить, что стало довольно много фотографов, которые любят свою работу и стараются сделать её идеально. Если вы перейдете по данной ссылке https:/...

[Из песочницы] Перенос данных бэкапа новой версии MS SQL Server на более старую версию Предыстория Как-то раз для воспроизведения бага мне потребовался бэкап production-базы. К моему удивлению я столкнулся со следующими ограничениями: Бэкап базы был сделан на версии SQL Server 2016 и не был совместим с моей SQL Server 2014. На моем рабочем компьютере в кач...

WearOS теряет еще одно популярное приложение WearOS переживает не лучшие времена. С каждым месяцем эта операционная система становится еще более удобной и стабильной, а не так давно Google удалось существенно увеличить скорость её работы, но популярность WearOS, к сожалению, наоборот падает. Это связано как с недостато...

[Из песочницы] Как мы DLP-систему выбирали (практический опыт) Привет, Хабр! Не так давно возникла довольно типичная ситуация — руководство дало команду «Выбрать систему защиты данных от утечки». Основной критерий выбора — способность решить задачу не допустить утечек критически важной (по мнению руководства) документации, файлов и тому...

[Перевод] Модели дженериков и метапрограммирования: Go, Rust, Swift, D и другие В некоторых сферах программирования нормально хотеть написать такую структуру данных или алгоритм, которые могут работать с элементами разных типов. Например, список дженериков или алгоритм сортировки, которому нужна только функция сравнения. В разных языках предложены всев...

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

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

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

С чего начать изучать веб-разработку в 2019 году или HTML Academy VS Codecademy VS FreeCodeCamp Привет, Хабр! Хочу поделиться своими мыслями о самых популярных площадках для изучения веб-разработки HTML Academy, Codecademy, FreeCodeCamp (мне бы хотелось прочитать подобную статью, когда я только начинала учиться веб-разработке самостоятельно). *Данный обзор является мо...

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

[Из песочницы] С чего начать при подборе персонала впервые Я тимлид в небольшой команде разработчиков. Зимой 2018 года один из наших сильных разработчиков ушел в декрет. И я столкнулась с проблемой подбора персонала. Ранее опыта в проведении собеседований и поиске подходящего кандидата у меня не было. Все знания, которые меня были н...

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

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

[Перевод] Courier: мигрирование Dropbox на gRPC Примечание переводчика Большинство современных программных продуктов не являются монолитными, а состоят из множества частей, которые взаимодействуют друг с другом. При таком положении дел необходимо, чтобы общение взаимодействующих частей системы происходило на одном языке...

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

Как мы сделали прототип приложения для остановочных ремонтов Привет! Меня зовут Андрей Грачев, и я продакт-менеджер в СИБУРе. У нас в СИБУРе регулярно происходят «остановочные ремонты». Это что-то вроде профилактики, планового обслуживания и ремонта, на время которого весь завод или часть его полностью останавливается. Такие ремонты...

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

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

[Перевод] Развертывание кластера Kubernetes в OpenStack с помощью Kubespray Kubernetes быстро стал стандартом для поставок и масштабирования контейнерных приложений и управления ими. Это очень гибкое и универсальное решение с открытым исходным кодом. У него обширная документация, и в ней не всегда легко найти нужный раздел. Поэтому Kubernetes так н...

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

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

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

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

Так-Так-Так и никакого Тика. Чем отличаются процессоры Intel Core разных поколений на основе одной архитектуры С появлением процессоров Intel Core седьмого поколения многим стало понятно, что стратегия «Тик-так», которой Интел следовал всё это время, дала сбой. Обещание уменьшить технологический процесс с 14 до 10 нм так и осталось обещанием, началась долгая эпоха «Така» Skylake, в...

Развитие игровой стратегии Microsoft: Game Core и игры с Xbox на ПК Последние несколько лет компания Microsoft достаточно агрессивно развивает собственное игровое направление. Вначале свет увидела самая мощная в мире консоль под названием Xbox One X, а теперь же ведётся работа над сервисом потоковой передачи игр Project xCloud, публичное те...

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

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

MQTT/UDP, предвесенние итоги: дистанционная конфигурация и цифровая подпись Зима кончается, и это повод подвести очередную черту и рассказать, что нового появилось в MQTT/UDP. Для начала, ссылки на предыдущие введение и статью. Спасибо всем, кто с интересом отреагировал и отдельно тем, кто делился мыслями. Вы мне очень помогли с подходом к цифрово...

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

Пишем XGBoost с нуля — часть 1: деревья решений Привет, Хабр! После многочисленных поисков качественных руководств о решающих деревьях и ансамблевых алгоритмах (бустинг, решающий лес и пр.) с их непосредственной реализацией на языках программирования, и так ничего не найдя (кто найдёт — напишите в комментах, может, что...

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

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

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

[Перевод] 30.000$ за решение задач о Правиле 30 для клеточных автоматов — конкурс от Стивена Вольфрама Оригинал перевода в моём личном блоге Прямая трансляция Стивена Вольфрама о конкурсе (на английском) Поясним для читателей, что означает «Правило 30» — это элементарный клеточный автомат (см. Wiki), состояние которого (правило построения нового уровня ячеек на основе старо...

Плагины Jira: несколько примеров успешного изобретения велосипеда Мы в Mail.ru Group вкладываем много сил в развитие продуктов компании Atlassian и, в частности, Jira. Благодаря нашим усилиям свет увидели плагины My Groovy, JS Includer, My Calendar, My ToDo. Все эти плагины мы развиваем и активно используем внутри компании. Мы получаем...

[Из песочницы] 10 самых распространенных ошибок Spring Framework Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 10 Most Common Spring Framework Mistakes» автора Toni Kukurin. Spring, вероятно, один из самых популярных Java-фреймворков, а также могучий зверь для укрощения. Хотя его базовые концепции довольно легко понять, д...

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

Как сделать BTC-транзакцию без сдачи из мелких монет Многие кошельки биткоина при выборе монет для отправки предпочитают использовать крупную монету, баланс которой больше отправляемой суммы. После каждой такой транзакции образуется монета-сдача. Через какое-то время весь кошелёк зарастает такими монетами порядка 0.001 (~10 д...

[Перевод] Новый GitLab 12.0 с визуальными ревью и списком зависимостей Dev, Sec и Ops GitLab 12.0 — это ключевой выпуск на пути к реализации подхода, который будет охватывать все элементы DevSecOps и позволит всем вносить свой вклад. У нас был очень увлекательный год — мы много работали над решением, которое объединило бы все команды. Сообщест...

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

Что же такое «Модель предметной области»? Привет, Хабр. Сегодня зашел в канал #school в русскоязычном GoCommunity в Slack и обнаружил там один интересный диалог. Данный диалог навел меня на некоторые мысли относительно того, как коллеги интерпретируют понятие “модель предметной области (домена)”. Как оказалось, су...

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

Что выбрать — iPad Pro 2017 или 2018 года? В 2018 году Apple серьезно обновила iPad Pro. Этому поспособствовала и высочайшая производительность, достигнутая за счет процессора Apple A12X, и долгое время автономной работы, и новый форм-фактор. Но настолько ли он хорош, чтобы отказываться от покупки «прошки» предыдуще...

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

Как сгенерировать гипотезы о потребностях потенциальных потребителей вашего будущего продукта Подавляющее большинство бизнесов умирает потому, что предлагают продукт, который не нужен потребителям. Это известное высказывание Эрика Риса, автора методики Lean Startup. Как не попасть в эту ловушку со своим проектом? Ответ прост – прежде чем делать продукт, нужно прове...

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

Три дзена reactive extensions "Reactive Extensions" — это больше, чем фреймворк. Хотя бы потому, что существует практически идентичная реализация (с поправкой на особенности конкретного языка и соответствующих практик оптимизации) под каждый популярный ЯП. Есенин утверждает, что «большое видится на расст...

Спасение утопающих — наше дело: как бороться с демотивацией в команде Я 18 лет в IT. Последние 10 из них руковожу: под моим подчинением в разное время были 200 человек.  Интересно, что я помню каждого, кто из них уволился и по какой причине. Помню не потому, что у меня хорошая память, а потому, что увольнялись они очень редко.  В этой статье...

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

Как я данные с BLE-градусника от Xiaomi забирал Предыстория: в качестве одного из хобби у меня случился «Умный дом». Хочется красивых устройств, но при этом ещё хочется свободы и приватности. Поэтому занимаюсь скрещиванием ужика Xiaomi с ёжиком Home Assistant. Для поддержания комфортных условий нам нужно знать, а что воо...

[Перевод] Язык программирования Swift на Raspberry Pi Raspberry PI 3 Model B+ В этом мануале мы разберем основы использования Swift на Raspberry Pi. Raspberry Pi — небольшой и недорогой одноплатный компьютер, потенциал которого ограничен лишь его вычислительными ресурсами. Он хорошо известен техногикам и любителям DIY. Это о...

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

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

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

[Перевод] Mozilla WebThings на Raspberry Pi — начало работы от переводчика Mozilla сделала универсальный хаб для устройств умного дома, чтобы связать вместе устройства разных вендоров и протоколов (в т.ч. Zigbee и Z-Wave), и управлять ими без использования облаков и из одного места. Год назад была новость о первой версии, а сегодня ...

Как создать Python wrapper и не сойти с ума Недавно на Хабре прочитал статью про очень полезный инструмент, и так как я уже давно искал какой-то проект, чтобы начать контрибьютить, решил посмотреть, что там есть на гитхабе и чем можно помочь. Одно из issue было на счет создания обертки (дальше буду использовать wrappe...

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

Как я не стал специалистом по машинному обучению Истории успеха любят все. И на хабре их достаточно много. «Как я получил работу с зарплатой 300 000 долларов в Кремниевой долине» «Как я получил работу в Google» «Как я заработал 200 000 $ в 16 лет» «Как я попал в Топ AppStore с простым приложением курса валют» «Как я …» и е...

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

И-н-в-о-й-с. Как продавать в интернете без сайта — Пожалуйста, вышлите нам инвойс! — Не слышу! — Вышлите инвойс! — Что выслать??? — Инвойс. Говорю по буквам: Инна! Наталия! Валерий! Ольга! Ирина! Сергей! — Кто эти люди???? Один мой знакомый решает студентам задачи по программированию — у него нет своего сайта, но е...

«Познать кайдзен»: что собой представляет эта философия для улучшения производственных процессов Кайдзен используют компании самых разных размеров: от стартапов до крупных предприятий вроде Toyota. Рассказываем, чем помогает и как работает этот фреймворк. Читать дальше →

С сожалением об отсутствии в C++ полноценного static if или… … как наполнить шаблонный класс разным содержимым в зависимости от значений параметров шаблона? Когда-то, уже довольно давно, язык D начали делать как "правильный C++" с учетом накопившегося в C++ опыта. Со временем D стал не менее сложным и более выразительным языком, чем C...

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

Как развернуть SAP HANA: разбираем разные методы SAP HANA — популярная in-memory СУБД, включающая сервисы хранилищ (Data Warehouse) и аналитики, встроенное промежуточное ПО, сервер приложений, платформу для настройки или разработки новых утилит. За счет устранения задержек традиционных СУБД с SAP HANA можно сильно увеличит...

Понимание Q-learning, проблема «Прогулка по скале» Это перевод статьи Understanding Q-Learning, the Cliff Walking problem Lucas Vazquez В последнем посте мы представили проблему «Прогулка по скале» и остановились на страшном алгоритме, который не имел смысла. На этот раз мы раскроем секреты этого серого ящика и увидим, чт...

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

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

Где же начинается программирование Давным давно мы разработали высокоуровневую платформу для разработки бизнес-приложений lsFusion. Оставалось дело за малым: найти того, кто будет на ней писать. Было решено разместить на сайтах по поиску работу соответствующую вакансию. Но возник вопрос: что указывать в кач...

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

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

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

[Перевод] Как соединить GitLab и Pantheon и оптимизировать рабочие процессы Drupal и WordPress Наш гость, создатель инструментов для разработчиков из Pantheon, рассказывает, как автоматизировать деплои WordPress с помощью GitLab CI/CD. В Pantheon я занимаюсь связями с разработчиками, поэтому всегда ищу новые способы помочь разработчикам WordPress и Drupal решать проб...

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

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

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

[Перевод] Не потерял ли GraphQL актуальности в эпоху HTTP/2? Недавно Фил Стерджен опубликовал твит, который сильно задел любителей GraphQL. В этом твите речь шла о том, что GraphQL — это, по определению, технология, которая противоречит сущности HTTP/2. О том, что уже вышел стандарт HTTP/3, и о том, что автор твита не очень понимает т...

Как сделать триггер DAG'а в Airflow, используя Experimental API При подготовке наших образовательных программ мы периодически сталкиваемся со сложностями с точки зрения работы с некоторыми инструментами. И на тот момент, когда мы с ними сталикваемся, не всегда есть достаточно документации и статей, которые помогли бы с этой проблемой спр...

Компоненты-агностики в Angular Когда работаешь над библиотекой переиспользуемых компонентов, вопрос API встает особенно остро. С одной стороны, нужно сделать надежное, аккуратное решение, с другой — удовлетворить массу частных случаев. Это относится и к работе с данными, и к внешним особенностям различных...

Как и зачем проводить цифровую трансформацию банка? Сергей МОНИН, председатель правления Райффайзенбанка В 2018 г. мы начали широкомасштабную цифровую трансформацию нашей продуктовой разработки. Это процесс не на один год. Поэтому до его начала мы сформировали четкое видение того, что и, главное, зачем нужно сделать банку.

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

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

[Перевод] Портфолио UX-дизайнеров: лучшие практики Сегодня мы хотим поделиться мыслями о том, что необходимо для создания хорошего портфолио UX-дизайнера. Представим, что Вам необходимо портфолио, чтобы получить заказ на UI/UX работу. Если Вы лишь начинаете работать в этой сфере или взяли достаточно большой перерыв в своей ...

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

Java REPL вам не ScriptEngine Привет, Хабр! Меня зовут Дима, я разработчик в команде “Архитектура” в hh.ru. Среди прочего, я занимаюсь тем, что делаю разработку проще для коллег. Выполнение кода в продакшене является типовой задачей. Поэтому когда я услышал, что с этим есть проблемы, я решил заняться и...

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

OnePlus представила телевизоры с QLED-экранами, поддержкой 4K HDR и Android TV Компания OnePlus анонсировала в Индии две модели телевизоров: Q1 и Q1 Pro. Новинки работают под управлением операционной системы Android TV на базе Android 9 Pie. OnePlus TV Q1 и Q1 Pro имеют одинаковую 55-дюймовый 4K QLED-дисплей и обладают большинством одинаковых функций…

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

Домашние камеры наблюдения Yi Dome Camera 1080p и Yi Home Camera 1080p: разные аппараты с одинаковыми достоинствами У рассмотренных камер много плюсов: безупречное качество изготовления, эффективная ночная подсветка, незаметная надежная работа, чувствительный Wi-Fi-адаптер, чуткий микрофон и довольно громкий встроенный динамик с обратной аудиосвязью, быстрая несложная настройка, продуманн...

Как загрузить профессиональную площадку объявлений в свой iPhone Говорят, «чтобы продать что-либо ненужное, нужно сначала купить что-нибудь ненужное». А что если с покупкой возникают проблемы? Согласитесь, далеко не всегда на разных барахолках и площадках с объявлениями можно найти нужный товар, а если закупка нужна в больших масштабах, к...

Мультяшная MMORPG с элементами выживания Dawn of Isles вышла на iOS Dawn of Isles– это мультиплеерное приключение с элементами выживания от NetEase. Один из необычных элементов игры, как для этого жанра, - мультяшный визуальный стиль, а не типичное пафосное фэнтези. Кого-то такая «детскость» может и оттолкнет, но большинству что-то новое дол...

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

Тестирование Huawei Mate X еще не завершено Сегмент гибких или складывающихся устройств только зарождается. Они вызывают жаркие споры и большинство считают их тупиковой ветвью развития мобильников, а прошедшие премьеры складных смартфонов они называют не более чем заигрыванием технологиями. Многие уверены, что такие у...

[Из песочницы] Первое, что нужно сделать запуская проект на Django Приветствую сообщество, встала передо мной задача написать социальную сеть. А коль скоро язык программирования, которым я более-менее владею — это Python, я выбрал фреймворк Django для реализации проекта. Чтобы не тратить время на написание HTML шаблонов и CSS стилей, эти фа...

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

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

Как зависит перевод термина trunk от вендора коммутаторов? На эту ошибку (или, если хотите, разночтение) я обратил внимание во время проверки перевода по коммутаторам NETGEAR. Дело в том, что при переводе термина “trunk” нужно обязательно учитывать, чьей трактовки придерживается вендор — Cisco или HP, ибо между ними очень разный тех...

[Из песочницы] Опыт создания игры для Android в одиночку с нуля и как ее зафичерили на Google Play Привет! Меня зовут Ибрагим, я — начинающий инди-разработчик. У меня всегда было желание заняться программированием, но меня отпугивала сложность и неопределенность выбора (что именно изучать и делать). И лишь 2 года назад я все-таки преодолел этот психологический барьер, смо...

Мы написали самый полезный код в своей жизни, но его выкинули на помойку. Вместе с нами Я повесил у себя в подвале боксерскую грушу, приклеил на нее стоковое фото типичного менеджера и запихал внутрь динамик, чтобы он проигрывал фразы, которые меня злят. Например, груша говорит: «Бизнесу не нужен твой идеальный код. Ему нужно решить проблему так, чтобы прибыл...

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

Настройка OctoPrint на Raspberry PI 3b+ С момента .как у меня появился первый 3д принтер, прошло больше полугода. За это время  3д печать и адитивное производство в целом стало приноситьмне дополнительный доход и сейчас у меня в строю уже 3 принтера. Однако постоянно сидеть с принтерами и сделать за их работо...

Люди не готовы к биткоину или биткоин к массовому принятию? Мой учитель по предмету “История экономической теории” очень часто любил повторять одну фразу: “Не оценивайте мысли исторических личностей как современный человек, постарайтесь сами стать их современниками и тогда поймете мотивы возникновения этих идей”. Это был хоть и очеви...

Fluent Design проникает на Android, iOS и в веб-приложения На разных платформах Microsoft будет предлагать одинаковый внешний вид своих продуктов.

[Из песочницы] Хранение и автоматическая сортировка фото и других файлов. Работа с файлохранилищем на базе NAS Synology Давно хотел написать про то как я храню свои файлы, как делаю бэкапы, но все никак не доходили руки. Недавно тут появилась статья, в чем-то похожую на мою но с другим подходом. Сама статья. Я уже много лет пытаюсь найти идеальный для себя метод для хранения файлов. Думаю я ...

[Из песочницы] Описание подхода к организации и тестированию кода с использованием Redux Thunk Всем привет! В этой заметке я хотел бы поделиться своим подходом к организации и тестированию кода с использованием Redux Thunk в проекте на React. Путь к нему был долог и тернист, поэтому постараюсь продемонстрировать ход мыслей и мотивацию, которые и привели к итоговому ре...

ReactiveX Redux Все, кто работает с Redux, рано или поздно сталкиваются с проблемой асинхронных действий. Но современное приложение разработать без них невозможно. Это и http-запросы к бэкенду, и всевозможные таймеры/задержки. Сами создатели Redux говорят однозначно — по умолчанию поддержив...

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

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

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

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

Серию Honor 20 снабдили Bluetooth, работающим на расстоянии до 200 метров Нет смысла объяснять, что такое Bluetooth, так как, полагаю, это знают все, кто не провел в пещере последние лет 20. Эта технология должна быть знакома большинству именно потому, что она используется в современном мире буквально ежедневно (если не чаще) для таких задач, как...

[Из песочницы] Как в условиях трэшевой архитектуры и отсутствия навыков в Scrum мы создали кросс компонентные команды Привет! Меня зовут Александр, и я руковожу ИТ разработкой в УБРиР! В 2017 году мы в центре развития сервисов информационных технологий УБРиР поняли, что пришло время глобальных изменений, а точнее — agile-трансформации. В условиях интенсивного развития бизнеса и быстрого ...

[Перевод] Проблема, которую вы решаете, важнее, чем код, который вы пишете Программисты, кажется, забыли реальную цель программного обеспечения — это решать реальные проблемы. 50 лет назад, в 1968 году, была организована рабочая конференция по программной инженерии, которая была организованна при поддержке «Научного Комитета НАТО». В то время лю...

Maven-путь построения Go проектов Сначала небольшая предыстория. В начале 2010-х, я сделал небольшую утилиту-конвертер для BIN файлов эмулятора БК-0010 в WAV файлы. Утилита была написана на Python с целью максимальной переносимости, работала без проблем и я на какое то время забыл о ней. Но в 2016м появился ...

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

Самодельный нагревательный стол Всех приветствую, господа и дамы. Я к Вам сегодня с маленьким экспериментом. Собираю себе ещё один принтер в качестве очередного проекта по самообучению (или от нечего делать — не знаю), но вот незадача — область печати у него какая-то нестандартная вышла, а именно 17×15 см,...

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

[Перевод] Пространственные манипуляции в 2D с помощью Signed Distance Fields При работе с полигональными ассетами можно отрисовывать только по одному объекту за раз (если не учитывать такие приёмы, как batching и instancing), но если использовать поля расстояний со знаком (signed distance fields, SDF), то мы не этим не ограничены. Если две позиции им...

[Из песочницы] Как технология in-memory изменила бизнес-аналитику Примерно 5 миллисекунд проходит от запроса до ответа, если данные хранятся на жестком диске. SSD отвечает в 300 раз быстрее — за 150 микросекунд. Оперативной памяти требуется в 300,000 раз меньше времени — лишь 15 наносекунд.* Можно долго рассуждать о том, как бизнес-анал...

PHP-библиотеки для e-commerce: работа с АТОЛ и Payture, парсинг кодов GS1 и другие задачи Привет, меня зовут Павел Савельев, я руководитель отдела автоматизации бизнес-процессов в Lamoda. Мы работаем с очень разными задачами, и стараемся подобрать для каждой наиболее удобный инструментарий. Соответственно, мы используем разные языки — в наших системах можно встре...

Резервное копирование, часть 5: Тестирование bacula и veeam backup for linux В данной заметке будут рассматриваться различные "большие" программные средства для резервного копирования, включая коммерческие. Список кандидатов: Veeam Agent для Linux, Bacula. Будет проверяться работа именно с файловой системой, чтобы было удобно сравнивать с предыдущим...

Test Maturity Model: как тестировщику оценить проект и спланировать процессы Привет! Меня зовут Миша, и я Senior QА с коммерческим опытом более 6 лет. Сейчас я работаю в Provectus, но начинал я свой путь тестировщика еще в студенческие годы с участия в альфа- и бета-тестах различных игр. В какой-то момент подумал: «Почему бы не начать заниматься этим...

Дроны компании Wing начали доставку товаров в одном из регионов Австралии Последнее время тема доставки товаров дронами поднимается достаточно редко. Некоторые крупные компании уже давно готовы к этому, однако законодательные нормы в большинстве случаев не дают возможности развернуть бизнес такого рода. У холдинга Alphabet есть компания Wing...

Тесты или типы? — Rust version Пару дней назад 0xd34df00d опубликовал здесь перевод статьи, описывающей, что можно узнать о функции в разных языках, если рассматривать её как "чёрный ящик", не используя информацию о её реализации (но, разумеется, не мешая ей пользоваться компилятору). Разумеется, получаем...

[Перевод] Введение в детерминированные сборки на С/С++. Часть 1 Перевод статьи подготовлен специально для студентов курса «Разработчик С++». Что такое детерминированная сборка? Детерминированная сборка — это процесс сборки одного и того же исходного кода с одной и той же средой и инструкциями сборки, при котором создаются одни и те же...

Заменить Object на var: что может пойти не так? Недавно я столкнулся с ситуацией, что замена Object на var в программе на Java 10 приводит к исключению в процессе выполнения. Мне стало интересно, много ли разных способов добиться такого эффекта, и я обратился с этим вопросом к сообществу: A puzzle: provide a Java code sam...

Историю не обманешь: у HarmonyOS от Huawei есть шанс победить Android Android — лидер на рынке мобильных операционных систем, но надолго ли? Этой весной рынок чуть было не лишился одного из самых заметных производителей смартфонов. Речь, конечно, идёт о Huawei, которую совершенно неожиданно обложили санкциями и запретили ей использовать ...

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

Создаем отдел джунов в помощь основным командам, используя лишь Slack, Jira и синюю изоленту Почти вся команда разработки Skyeng, состоящая из более чем 100 человек, работает удаленно и требования к специалистам всегда были высоки: мы искали синьоров, fullstack-девелоперов и мидлов. Но в начале 2019 года мы впервые наняли трех джуниоров. Сделано это было по нескол...

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

[Перевод] Всё, что нужно знать об автоматических переносах в CSS Недавно меня пригласили выступить с вечерней лекцией в Типографском обществе Австрии. Для меня стало большой честью последовать по стопам таких светил, как Мэтью Картер, Вим Краувел, Маргарет Калверт, Эрик Шпикерман и покойная Фреда Сэк. Я рассказал о некоторых золотых пр...

Как в Яндекс.Практикуме побеждали рассинхрон на фронтенде: акробатический номер с Redux-Saga, postMessage и Jupyter Меня зовут Артём Несмиянов, я фулстек-разработчик в Яндекс.Практикуме, занимаюсь в основном фронтендом. Мы верим в то, что учиться программированию, дата-аналитике и другим цифровым ремёслам можно и нужно с удовольствием. И начинать учиться, и продолжать. Любой не махнувший ...

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

Проблемы пакетной обработки запросов и их решения (часть 1) Практически все современные программные продукты состоят из нескольких сервисов. Часто большое время отклика межсервисных каналов становится источником проблем с производительностью. Стандартное решение такого рода проблем — это упаковка нескольких межсервисных запросов в од...

Async/await в C#: концепция, внутреннее устройство, полезные приемы Доброго времени суток. В этот раз поговорим на тему, в которой начинал разбираться каждый уважающий себя адепт языка C# — асинхронное программирование с использованием Task или, в простонародье, async/await. Microsoft проделали хорошую работу — ведь для того, чтобы использов...

Книга «Java для всех» Привет, Хаброжители! Данная книга предназначена для начинающих. Вот уже многие годы язык Java входит в число самых популярных и востребованных. Он красивый, эффектный и, самое главное, очень производительный. Но, к сожалению, не самый простой. Именно поэтому спрос на Java-...

Реализация пользовательского интерфейса OpenStack LBaaS При реализации пользовательского интерфейса балансировщика нагрузки для виртуального приватного облака мне пришлось столкнуться с существенными трудностями. Это привело меня к размышлениям о роли фронтенда, чем хочу поделиться в первую очередь. А далее обосновать свои разм...

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

Patch’ти — не считается: сказ о патч-менеджменте в лицах и красках Наверно, все SOC-аналитики спят и видят, как их детектирующие правила отлавливают модные техники проправительственных APT-группировок, а расследования приводят к обнаружению эксплойтов для zero-day уязвимостей. К сожалению (или к счастью), большая часть инцидентов, с которым...

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

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

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

[Из песочницы] Какой уровень востребованности PHP разработчиков на 1 квартал 2019 года? На рынке труда программисты PHP являются одними из наиболее востребованных специалистов. За последние 3 года их популярность среди работодателей выросла на более чем на 12%. PHP — самый распространенный язык программирования общего назначения с открытым исходным кодом, многи...

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

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

[Перевод] Как генерируются подземелья в Enter The Gungeon В последнее время я много играл в Enter The Gungeon. Это потрясающая, ужасно сложная игра в жанре bullet hell, сильно напомнившая мне Binding of Isaac. Но чем больше я играл в неё, тем больше осознавал малозаметную гениальность дизайна подземелий. Существует много процедур...

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

Гендиректор Huawei: мы станем компанией №1 даже без Google Huawei не просто сможет выжить без Google, но и стать компанией №1 Когда США только наложили санкции на Huawei, закрыв ей доступ к американским технологиям, эксперты разной степени компетентности стали строить прогнозы, что будет с компанией и как долго ещё ей удастся удержи...

DevFest Siberia 2019: взгляд на тренды из глубинки А вот у нас в Сибири… У нас за Уралом проходит не так уж много конференций, митапов, а в моём родном городе поиск по запросу «коворкинг» вообще выдает ресторан всемирной сети быстрого питания. Поэтому разные мероприятия, где можно в обществе умных людей послушать доклады опы...

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

Расширяем функционал штатной аудиосистемы Всем привет. Являюсь обладателем десятилетнего японца, в котором меня все устраивало, за исключением штатной аудиосистемы — в ней отсутствовал Bluetooth. Способов решения этой проблемы целых три: 1. Купить затычку в прикуриватель и не выпендриваться. Минусы: Качество звук...

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

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

Топ ошибок со стороны разработки при работе с PostgreSQL HighLoad++ существует давно, и про работу с PostgreSQL мы говорим регулярно. Но у разработчиков все равно из месяца в месяц, из года в год возникают одни и те же проблемы. Когда в маленьких компаниях без DBA в штате случаются ошибки в работе с базами данных, в этом нет ничег...

Python для Веба: что нужно знать джуниору, чтобы работать и развиваться Мы сделали сокращенную расшифровку с главными мыслями из Python Junior Podcast: в нем мы обсудили, с чего начинать и куда податься начинающему разработчику на Python. В последнее время у нас много контента для миддлов и сеньоров, но этот выпуск — точно для джунов. Аудио- и...

«Почему нельзя было сделать, как на старой?»: Блогер рассказал, что ему не понравилось в обновлённой Mazda CX-5 2019 года Автовладелец рассказал о «косяках» обновлённой Mazda CX-5 2019 года и обратил внимание на её сильные стороны. Блогер на канале «Доводим до ума» выпустил новое видео, в котором сделал обзор на обновлённую Mazda CX-5 2019 года. Двигатель объёмом 2,5 литра, 194 лошадиные силы,...

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

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

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

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

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

[Из песочницы] 20 проектов, 20 языков, срок вчера Представьте: у вас есть 7 команд разработчиков общей численностью более 100 человек. Они одновременно пилят 13 приложений. Работа ведется в 20 репозиториях. Все приложения нужно переводить. Какие-то на 6 языков, какие-то на 20. А какие-то на 13, но это совсем другой набор ...

10 верстальщиков на 30 команд. Вы рехнулись? Всем привет! Меня зовут Костя, и я руковожу отделом верстки в компании Wrike. В нашем отделе сейчас работает 10 человек, и все эти ребята пришли в компанию в разное время, у них различный опыт и задачи в отдельных командах. При этом все сотрудники — прекрасные специалисты, к...

[Перевод] Пиксельный Lo-fi в Unity Визуальный стиль моей находящейся в разработке игры LAUNDRY GAME (да, это бессовестная реклама) основан на больших чётких пикселях в 3D. Я обожаю 3D в низком разрешении. Мне задавали много вопросов о том, как я это сделал, поэтому я решил написать туториал. Примечание: это...

[Из песочницы] Как казаки GICSP сертификат получали Всем привет! На всеми любимом портале было много разных статей по сертификации в области ИБ, поэтому претендовать на оригинальность и неповторимость контента не собираюсь, но все же очень хотел бы поделиться своим опытом получения GIAC (Global Information Assurance Company) ...

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

[Из песочницы] Объединение нескольких пакетов в одно пространство имен Python Иногда возникает необходимость разделить несколько пакетов, лежащих в одном пространстве имен по разным физическим путям. Например, если вы хотите иметь возможность передавать разную компоновку плагинов, имея возможность в последствии добавлять их, не контролируя их располож...

Делаем свой Google Call Screening на основе Voximplant и Dialogflow Возможно, вы слышали или читали про функцию Call Screening, которую Google выкатил для своих телефонов Pixel в США. Идея отличная – когда вам поступает входящий звонок, то виртуальный ассистент начинает общаться, в то время как вы видите этот разговор в виде чата и в любой ...

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

[Из песочницы] Про мобильную приватность и Open Source Привет Хабр. Не так давно у меня появилось желание написать целую серию статей о безопасности, приватности и анонимности в интернете. Я не хочу тратить время читателей, в очередной раз описывая весьма плачевную ситуацию со сбором персональных данных, все это и так уже бы...

Run, Gopher, run! — о чем поговорим на GolangConf Мы обещали 5-6 причин перейти на Go, так и получилось! На GolangConf — конференции полностью посвященной Go — 7 октября будет 5 докладов с пометкой «Переход на Go» для тех, кто только собирается или начинает использовать этот язык в своих проектах. Но это только начало. С п...

Allure-Android. Информативные отчеты для мобильной автоматизации Автоматизация мобильных приложений довольно молодая сфера: фреймворков много и многие проекты сталкиваются с проблемой выбора самого «быстрого, стабильного, простого в использовании». Также и мы около двух лет назад стояли перед выбором нового инструмента автоматизации тести...

[Перевод] Jetpack Compose Jetpack Compose это отдельный набор инструментов разработанный для упрощения разработки UI. Он соединяет модель реактивного программирования с лакончностью и лёгкостью использования языка программирования Kotlin ПРИМЕЧАНИЕ: Jetpack Compose в настоящее время находится в ст...

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

Fruits Legend 2 5.8.3925 Fruits Legend 2 — очередная игра из жанра «три в ряд». Приложение «Фрукты Легенда 2» от разработчика appgo предлагает вам сотню красочных уровней, наполненных различными препятствиями и бонусами. Собирайте фрукты в ряды, причём в самых разных направлениях: горизонталь, ...

Играть в игровые автоматы Выбирайте только лучшее для себя и своего время прохождения, и если вы решили начать играть в игровые автоматы или хотя бы попробовать, то конечно стоит выбрать лучшее казино, с высоким рейтингом, проверенное и безопасное, а значит это будет онлайн казино: http://slotokub.co...

Битва невыпущенных видеокарт: AMD Radeon RX 5700 XT обходит Nvidia GeForce RTX 2060 Super в игре Начало июля будет жарким для всех, кто ждет новые видеокарты: в продажу едва ли не одновременно поступят новинки AMD (Radeon RX 5700 и Radeon RX 5700 XT) и Nvidia (GeForce RTX 20 Super). До этого момента полноценных сравнений производительности не будет, но уже сейчас и...

[Из песочницы] React Native — серебряная пуля для всех проблем? Как мы выбирали кросс-платформенный инструмент для Profi.ru Всем привет, меня зовут Геворг. Я Head of Mobile в Profi.ru. Хочу поделиться с вами историей нашего эксперимента с React Native. Расскажу, как мы оценивали плюсы и минусы разработки на React Native — в теории и на практике. Статья будет полезна тем, кто интересуется кросс-пл...

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

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

3D-карты Zotac GeForce GTX 1660 Ti засветились на фото Сетевые источники поделились изображениями двух моделей видеокарты GeForce GTX 1660 Ti, которая еще не была представлена официально. Речь идет о вариантах от компании Zotac. Младшая модель относится к линейке Twin Fan, а старшая к линейке AMP. Очевидно, что во втором случае ...

[Из песочницы] Extension в Dart (Flutter) В недавном релизе языка Dart 2.6 в языке появилась новая функция, static extension или статические методы расширения, который позволяет вам добавить новые методы к существующим типам. Зачем вообще нужны extension? Как их использовать и на что они годятся? Введение Начнём ...

Рисовать — это 10% работы UX-дизайнера Привет, Хабр! Меня зовут Никита. Год назад я пришёл работать в Промсвязьбанк UX-дизайнером в команду по разработке интерфейсов ДБО для малого и среднего бизнеса. В то время нашей команде прилетали совершенно разные задачи, с разных продуктов. Зачастую уже в виде четко описан...

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

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

[Из песочницы] Длинные имена слишком длинные Привет, Хабр! Представляю вашему вниманию перевод статьи "Long Names Are Long" автора Bob Nystrom. Одно из умных вещей которые делает Google это строгие code review. Каждое изменение, прежде чем вам разрешат его внести в основную ветку, рассматривается как минимум ...

[recovery mode] Успехи и неудачи при создании своего проекта (стартапа) Привет, друзья. Решил сегодня написать не о конкретном техническом решении, а о том, зачем эти технические решения вообще нужны. Слово «Стартап» уже порядком набило оскомину, поэтому буду употреблять «Свой проект». В статье будет много философии и аналитики. Так как без этог...

Game of Evolution — смесь из кликера и merge-механики в сеттинге эволюции Кликеры — очень необычный жанр. По сути, это развлечение с доведенным до абсолюта уровнем простоты. В кликерах действительно можно ничего не делать и «получать удовольствие». Если, конечно, не считать активными действия процесс периодического входа в игру, чтобы собирать наг...

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

История DashaMail: от запуска клона американского email-стартапа до ссор с инвесторами и нового старта В наши дни в интернете огромное количество историй самых разных стартапов, особенно зарубежных. Часто их довольно интересно читать, но не приукрашенных рассказов об опыте создания проектов в Рунете до сих пор не так много. Мы решили исправить эту ситуацию и рассказать свою...

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

[Перевод] Cython: более чем 30-кратное ускорение Python-кода Python — это язык, который любят многие программисты. Этим языком невероятно легко пользоваться. Всё дело в том, что код, написанный на Python, отличается интуитивной понятностью и хорошей читабельностью. Однако в разговорах о Python часто можно слышать одну и ту же жалобу н...

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

На рынке голосовых ассистентов пополнение. Встречайте: Oppo Breeno На сегодняшний день в мире существует три самых популярных и распространённых голосовых ассистента: Google Assistant, Amazon Alexa и Apple Siri. Также есть Microsoft Cortana, которая пока не столь успешна, и можно выделить Samsung Bixby. Однако голосовые помощники &mdas...

Используем mcrouter для горизонтального масштабирования memcached Разработка высоконагруженных проектов на любом языке требует особого подхода и применения специальных инструментов, но когда речь заходит о приложениях на PHP, ситуация может обостриться настолько, что приходится разрабатывать, к примеру, собственный сервер приложений. В д...

Обзор Factory Inc. Классная казуальная игра В последнее время разработчики игровых проектов стали все чаще и чаще обращать внимание на казуальные игры, так как для реализации подобных проектов совершенно не нужно тратить много сил и времени. Достаточно взять уже придуманную другими стратегию, использовать ее для созда...

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

[Из песочницы] 9 альтернатив плохой команде (шаблону проектирования) Что это и зачем? При проектировании разработчик может столкнуться с проблемой: у существ и объектов могут быть разные способности в разных сочетаниях. Лягушки прыгают и плавают, утки плавают и летают, но не с гирей, а лягушки могут летать с веткой и утками. Поэтому удобно ...

[Из песочницы] Обходим лимит поиска LinkedIn, играя с API Лимит Есть на LinkedIn такое ограничение — Лимит коммерческого использования. Крайне вероятно, что вы, как и я до недавнего времени, никогда не сталкивались и не слышали о нем. Суть лимита в том, что если вы используете поиск людей вне ваших контактов слишком часто (точн...

Xiaomi решила проблему с доступом к Google Assistant на своих смартфонах Полноэкранные жесты управления были представлены в оболочке MIUI 9 для избранных моделей Xiaomi, а теперь доступны широко для самых разных смартфонов производителя. Заработавшие жесты навигации не оставляли возможности для удобного быстрого доступа голосового помощника ...

[Перевод] Настало время сделать новый Windows Terminal profiles.json Я говорил об этом в течение нескольких месяцев, но если вы не слышали, вышел новый Windows Terminal. Вы можете скачать его из Windows Store и сразу же начать использовать. Все бесплатно и open source. На момент написания этой статьи Windows Terminal где-то около версии 0.5....

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

Интерфейсы как абстрактные типы данных в Go Не так давно коллега ретвитнул отличный пост How to Use Go Interfaces. В нем рассматриваются некоторые ошибки при использовании интерфейсов в Go, а также даются некоторые рекомендации по поводу того, как их все-таки стоит использовать. В статье, упомянутой выше, автор приво...

[Перевод] 10 самых влиятельных языков программирования последних 50 лет и их создатели В IT-вселенной существует множество языков программирования. С каждым годом их становится всё больше и больше. Например, сравнительно недавно появились языки Scala, Kotlin, Go и Closure. Но история говорит нам о том, что выживут лишь немногие из них. Языки, о которых пойдёт...

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

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

Зачем Senior разработчику учить студентов У нас в Veeam есть образовательный проект с лаконичным названием Veeam Academy. Посвящён он практике разработки на С#. Если не вдаваться в детали, то суть его такова: мы берём студентов-старшекурсников и за три месяца приводим их сугубо теоретические институтские знания в со...

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

DEV Labs 2019. Python для решения нетривиальных задач. Онлайн-митап Уважаемые коллеги! Приглашаем принять участие в онлайн-митапе серии DEV Labs, который пройдёт 20 марта и будет посвящён языку Python. Расскажем о применении Python в сфере проектирования систем «умного дома» и рассмотрим примеры решения задач по распознаванию человеческих д...

MSI GT75 9SG Titan стоит 4400 долларов В последнее время игровые ноутбуки становятся все мощнее и мощнее. Когда-то давно мы с уверенностью говорили о том, что ноутбуки никогда не догонят стационарные компьютеры в плане производительности, а сейчас MSI GT75 9SG Titan легко уделает большинство компьютеров. Например...

Microsoft назвала Android лучшей операционной системой для своего нового продукта Ранее в этом месяце Microsoft представила смартфон с двумя экранами под названием Surface Duo. В этом устройстве странным оказался не только дизайн, но и операционная система, на которой он работает. Да, Microsoft решила сделать выбор в пользу Android 10, при этом разра...

iКасса или как мы приручили «цифрового кассира» Эволюция технологий не всегда заметна обычным потребителям: кто там зарелизил 125-е обновление и почему оно лучше 124-го, понятно далеко не всем. Но когда ты заходишь вечером в обычную «Пятёрочку» за хлебом, а перед тобой вместо знакомой Гали оказывается «цифровой кассир», п...

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

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

[Перевод] Метаморфическое тестирование: почему об этой перспективной методике почти никто не знает Должен признаться: я читаю ACM Magazine. Это делает меня «ботаником» даже по меркам программистов. Среди прочего, я узнал из этого журнала о «метаморфическом тестировании». Раньше я никогда о нём не слышал, как и все люди, которых я спрашивал. Но научная литература по этой ...

Виртуальная машина своими руками Иногда в голову приходит какая-то мысль избавиться от которой очень сложно. Такое произошло и со мной. Я решил создать виртуальную машину (VM), учитывая то, что на тот момент у меня не было идей, мне показалось, что это прекрасная мысль. Если вы заинтересовались, то вперёд п...

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

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

Как бороться с flaky тестами в opensource-сообществе С проблемой flaky-тестов сталкиваются многие проекты, и тема эта уже не раз поднималась на Хабре. Тесты, не определившиеся со своим состоянием, постоянно отнимают не только машинное время, но и время разработчиков и тестировщиков. И если в коммерческой компании можно выделит...

[Из песочницы] «Толстый и тонкий» или как я осваивал нейросети Часть 1 Введение «Нейросеть» – понятие, известное достаточно давно. В начале двухтысячных, во время учёбы в ВУЗе, я столкнулся с этой любопытной штуковиной. Прочитав научно-популярную литературу по этой теме, я сделал вывод, что это, как минимум, «забавно» и у меня возникла...

[Перевод] Y Combinator: «Поначалу некоторые из крупнейших технологических компаний выглядят как игрушки» Поначалу некоторые из крупнейших технологических компаний выглядят как игрушки. С классической точки зрения построения бизнеса такого быть не должно. Игрушки для развлечения. Предприятия, особенно огромные, предназначены для зарабатывания денег. Игрушки маленькие и огранич...

Как мы учились рисовать тексты на Canvas Мы разрабатываем платформу для визуальной коллаборации. Для отображения контента мы используем Canvas: на нём рисуется всё, в том числе тексты. Готового решения для отображения текстов на Canvas один в один как в html не существует. За несколько лет работы с отрисовкой текст...

5 способов сделать Python-сервер на Raspberry Pi. Часть 1 Привет, Хабр. Сегодня в большом числе проектов домашней (и не только) автоматизации используется Raspberry Pi. При этом достаточно удобно иметь не только прямой доступ к устройству, но и использовать браузер — это позволяет выполнять необходимые действия и с компьютера, и с...

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

Разработчики против бизнеса Меня зовут Дмитрий Волков. За время работы менеджером продуктов у меня накопилось много историй о победах и провалах, как правильно выстраивать коммуникацию между разработкой и бизнесом, и чего делать ни в коем случае нельзя. Сегодня я расскажу две таких истории. Некоторы...

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

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

Как мы пересадили всю команду на другой язык за один день (на самом деле — нет) func main() { envs.UpdateDotenv() ctx := context_os.Context(context.Background()) res := resources.Get(ctx) ready := readiness.New() ready.AddProbe(func() { //add some initialization }) h := handlers.New(res) s := server.NewServer(ready) s.HandleFunc("/test", h.Tes...

Эволюция кластерного взаимодействия. Как мы внедряли ActiveMQ и Hazelcast В течение последних 7 лет я вместе с командой занимаюсь поддержкой и развитием ядра продукта RealtimeBoard: клиент-серверным и кластерным взаимодействием, работой с базой данных. У нас Java с разными библиотеками на борту. Запускается всё вне контейнера, через Maven-плагин....

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

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

[Перевод] Из волшебной математической функции – одно решение, чтобы править ими всеми Три года назад Марина Вязовска из Швейцарского федерального технологического института в Лозанне поразила математиков, обнаружив самый плотный способ упаковки сфер одинакового размера в восьми- и 24-мерном пространствах (во втором случае – при помощи четырёх соавторов). А ...

Hippopotamus АБС Фигурка или скорее статуэтка на 100% является моей личной прихотью. Модель, совершенно нежданная и негаданная, родилась по вдохновению. Просто захотелось. Ну и заодно протестировал новую эмаль. И чтобы не простаивал 3d принтер, в тот же вечер поставил в печать.Бегемот он нав...

[Перевод] Крутые фичи Visual Studio 2019 Несколько дней назад мы объявили об общей доступности Visual Studio 2019. Лично я использую Visual Studio 2019 с момента первой внутренней сборки — задолго до выпуска Preview 1 в декабре 2018 года. За это время обнаружилось много маленьких особенностей, которые заставили мен...

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

DevConfX::Management – доклады управленцев простыми словами Привет, Хабровчане! Очень скоро пройдет юбилейная, десятая конференция DevConf. В рамках секции менеджмента эксперты поделятся своим опытом и своими знаниями в сфере управления. Представляем вашему вниманию некоторые из докладов секции: Страх и ненависть работы в высокотехн...

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

[Из песочницы] Ускорение компиляции в Xcode на swift С ростом проекта, скорость компиляции проекта замедляется. Особенно это заметно становится, когда тестируешь программу, делая параллельно небольшие изменения в программе. Сначала давайте узнаем как долго компилируется проект до наших улучшений. ЧТобы это сделать надо в тер...

[Из песочницы] Мой подход к реализации делегатов в C++: вызов функции с неизвестными параметрами во время выполнения Предыстория Мне нравится язык C++. Я бы даже сказал, что это мой любимый язык. Кроме того, для своих разработок я использую технологии .NET, и многие идеи в нём, по моему мнению, просто восхитительны. Однажды мне пришла в голову идея – как реализовать некоторые средства рефл...

Немного технической лирики о C++ Tools от JetBrains, и при чем тут единороги Начну не с моего типичного “Привет, Хабр! У нас тут очередной крутой релиз”, а с “Привет, меня зовут Настя, я ПММ в JetBrains и я отвечаю за наши инструменты для C++”. Или нет, попробую еще раз, вот так: “Привет, пишет вам C++ разработчик с 8-летним стажем, который 5 лет наз...

Третья в мире после Android и iOS. Разработчики операционной системы KaiOS получили 50 млн долларов инвестиций Операционная система KaiOS сделала то, что не смогли сделать многие другие. Сейчас это одна из самых популярных платформ для обычных кнопочных телефонов. Некоторые источники даже стали называть телефоны с такой ОС умными телефонами, но при этом это ещё не полноценные см...

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

Как мы хостили скандальный имиджборд 8chan 8chan (новое название 8kun) — популярный анонимный форум с возможностью пользователей создавать собственные тематические разделы сайта и самостоятельно их администрировать. Известен своей политикой минимального вмешательства администрации в модерирование контента, из-за чег...

Дозиметр для Серёжи. Часть I. Polimaster — Охотники за нуклидом В связи с участившимися вопросами от друзей и знакомых с ключевой фразой «какой дозиметр купить? а у тебя самого что?» решил я собрать воедино разбросанную в разных местах информацию и рассказать о своем приборном парке и всем, что с этим парком связано. Хронологию рассказа ...

ShineButton: сияющие кнопки (WCL)ShineButton - две библиотеки для iOS и Android от разных авторов, но с одинаковыми эффектами для кнопок.

Под кого подстраивать систему управления? Минута философии на портале. Не пугайтесь, и простите за циничное изложение. Вступление, часть первая. Известно, что иерархические структуры управления обладают существенным недостатком. ИТ-подразделения крупных компаний, в которых (подразделениях) трудятся 800-1000 человек,...

[Из песочницы] Инкапсуляция для настоящих самураев, или нюансы, связанные с ключевым словом internal в C# Пролог: internal is new public Каждый из нас мечтал о проекте, где всё будет сделано правильно. Это кажется вполне естественным. Как только ты узнаёшь о самой возможности писать хороший код, как только слышишь легенды о том самом коде, который можно легко читать и изменять, ...

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

[Из песочницы] Основы реактивного программирования с использованием RxJS Часть 1. Реактивность и потоки Данная серия статей посвящена реактивности и ее применению в JS с использованием такой замечательной библиотеки как RxJS. Для кого эта статья: в основном, здесь я буду объяснять основы, поэтому в первую очередь статья рассчитана на новичков в ...

4K проектор BenQ TW2700 на Hi-Fi Show 2019 и новые приоритеты в развитии проекторов для домашних кинотеатров Рассуждать с умным видом о разнице 4K и 4K UHD разрешений - это модно, но уже не актуально, потому что увидеть эту разницу можно только с лупой. На первый план опять выходит проблема цветопередачи и компания BenQ первой предлагает фундаментальное решение этой задачи. Для пра...

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

[Из песочницы] Как зеленый джуниор свой hot-reloader писал Предыстория Пару строк обо мне для общего понимания уровня автора и решаемой проблемы. Меня зовут Евгений и я веб-разработчик зеленый junior frontend developer. Еще какой-то год назад я работал в совершенно другой сфере и только в теории задумывался о смене профессии, но при...

Dirt Rally Driver 0.9.59 Краткое описание: Приготовьтесь сесть за руль 18 машин и победить в более чем 100 гонках Описание: Dirt Rally Driver HD  — Это новые раллийные гонки с открытым миром, в которых вы отправитесь покорять бездорожье в трех разных странах. Приготовьтесь сесть за руль 1...

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

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

[Перевод] Дизайн уровней и геймплея roguelike на примере Cogmind Многие годы я использовал довольно стандартизированный подход к дизайну каждой новой карты Cogmind, и хотя сейчас их счёт уже идёт на десятки, в своём блоге я его никогда не рассматривал. В основном это вызвано тем, что подробный анализ всего процесса потребует раскрытия ку...

[Из песочницы] Как я проработала 3 месяца в Я.Маркете и уволилиась Первая попытка Все началось с того, что я люблю ходить по конференциям и частенько хожу на них в Яндекс, Mail.ru и другие крупные компании. Однажды мне написал HR из Яндекса и попросила сделать тестовое на стажера фронтенд разработчика. Я его сделала, вот оно. По условию он...

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

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

К вопросу о bitset «Не пора ли, друзья мои, нам замахнуться на Вильяма, понимаете ли, нашего Шекспира? ». Прочитал недавно пост про кастомную клавиатуру и в очередной раз подумал, что было бы неплохо написать эталонную (то есть такую, которую не стыдно подписать своим именем и выложить на вс...

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

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

Как я работал в Турции и познакомился с местным рынком Объект на «плавающем» фундаменте для защиты от землетрясений. Меня зовут Павел, я руковожу в КРОК сетью коммерческих дата-центров. Мы за последние лет 15 построили заказчикам точно больше сотни ЦОДов и крупных серверных, но этот объект — самый крупный из зарубежных. Он нах...

[Из песочницы] Про котэ, жену, двух сыновей, идею… и не только. История с продолжением Привет, Habr. Для меня эта площадка нова, и откровенно было немного страшно размещать свой опус. Но как говориться, волков бояться в лес не ходить, созрел. Попаду ли я в нужную секцию не знаю, но вроде говорят что в «Я Пиарюсь», таких как я не бьют… В публикации будет 25 фо...

[Из песочницы] Настройка FreePBX + GoIP В Интернете довольно много примеров настройки. Но ни один из них у меня не заработал как надо. Одной из проблем с которой я столкнулся было неправильное определение линии при входящем звонке. В свое время нигде не нашел мануал для решения этой проблемы. Поэтому решил выложит...

[recovery mode] «Так я понял, что теперь я дата инженер, и по-другому можно себя спозиционировать на рынке» Хабр, привет! Еще одно интервью с нашим выпускником – Николай Рекубратский, тимлид команды разработчиков в компании XING. Николай рассказал о жизни в Германии, о ресурсе, на котором он нашел работу, чем европейские специалисты отличаются от российских в подходе к работе, о в...

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

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

Обзор Drops. Изучаем иностранные языки Сегодня мы проварим о приложении Drops, которое открывает пользователю доступ к изучению иностранного языка — у вас громадный выбор языков, удобная система обучения и отсутствие требований вливать реальные деньги. Разве можно от этого отказаться? Давайте посмотрим, как это в...

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

Больше статистики сайта в своём маленьком хранилище Анализируя статистику сайта, мы получаем представление о том, что происходит с ним. Результаты мы сопоставляем с другими знаниями о продукте или сервисе и этим улучшаем наш опыт. Когда анализ первых результатов завершён, прошло осмысление иформации и сделаны выводы, начинае...

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

[Из песочницы] Первое рабочее место или как начать разработку API на Node.js Введение В данной статье хотел бы поделиться своими эмоциями и приобретенными навыками в разработке первого REST API на Node.js с использованием TypeScript, как говорится, с нуля. История достаточно банальная: «Закончил университет, получил диплом. Куда же пойти работать?» К...

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

[Из песочницы] Python + Raspberry Pi + Pixhawk и квадрокоптер. Или как не надо делать роботов Привет, Хабр! Меня зовут Алексей, уже 7 лет я ведущий разработчик Smart TV-решений в крупной компании из Ижевска, занимающейся заказной разработкой. Каждый год у нас проводится конкурс новогодних украшений, и каждый раз мы ничего не украшаем, а пилим всякие технологичные шт...

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

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

Оптимизация производительности .NET (C#) приложений Статей с подобным заголовком достаточно много, поэтому постараюсь избежать банальных тем. Надеюсь, что даже очень опытные разработчики найдут здесь что-то новое для себя. В данной статье будут рассмотрены только простые механизмы и подходы к оптимизации, которые позволят п...

Вот чем отличаются режимы Night Mode и Pro Mode в камере Galaxy S10 Многие фанаты просили Samsung предоставить для камеры Galaxy S10 специальный режим для ночной съемки. Первая версия ночного режима в камере Galaxy S10 пользователей совсем не впечатлила, и поэтому было приятно видеть, что Samsung на этом не остановилась, выпустив еще одно о...

Печать одной модели на одном принтере, результат разный на слайсерах CURA4.3.0 и Simplify3D 4.1. Печать одной модели на одном принтере, результат разный на слайсерах CURA4.3.0 и Simplify3D 4.1.После CURA4.3.0 деталь совершенно неприличная получилась.Основные настройки ширина-экструзия-скорость-температуры одинаковые в обоих слайсерах.

Личный опыт. Как мы подключали международную телефонию: сравнение 6 виртуальных АТС Не так давно я столкнулся с необходимостью выбора виртуальной АТС. В бизнесе моей компании произошли кое-какие изменения: появились новые услуги, в том числе направленные не только на сегмент b2b, но и на b2c. А с появлением частных клиентов оказалось и что многие люди по-...

[recovery mode] «Жить в кайф» или моя история от прокрастинации к саморазвитию Здравствуй, друг. Сегодня речь не пойдет о сложных и не очень аспектах языков программирования или каком-то Rocket Sience. Сегодня я расскажу тебе короткую историю о том, как я встал на путь программиста. Это моя история и ее уже не изменишь, но если она поможет хотя бы одн...

[Из песочницы] Работа Xamarin c SDK, написанном на C Не так давно у меня был интересный проект на Xamarin Forms для нескольких платформ: Android iOS UWP MacOS Нам было необходимо создать библиотеку, которая смогла бы подключаться к нескольким нашим проектам: Xamarin.Forms, Android на Java, Cordova, а также позволять сторонн...

Удалённое управление эмулятором Fceux с помощью Python В статье я опишу, как сделать эмулятор NES управляемым удалённо, и сервер для удалённой отправки команд на него. Зачем это нужно? Некоторые эмуляторы различных игровых консолей, в том числе и Fceux, позволяют писать и запускать пользовательские скрипты на Lua. Но Lua – пл...

SVG в реальной жизни. Доклад Яндекса Привет, меня зовут Артём, я руководитель одной из групп разработки интерфейсов в Яндексе. Неделю назад на Я.Субботнике я рассказал, как мы использовали SVG для создания внутреннего календаря. Это расшифровка моего доклада, несколько историй из реализации виджета календаря: м...

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

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

3 главные проблемы Windows 10 May 2019 Update Microsoft решила в этот раз не торопиться с обновлением Windows 10 версии 1903, поэтому и дала больше месяца тестирования для нового крупного обновления. И поэтому релиз May 2019 Update должен состоятся в конце мая, да и название теперь обновление имеет не April 2019 Update,...

Пользователи пожаловались на странный баг iOS Пользователи жалуются на то, что их пароли передаются на устройства их родственников. Но баг ли это? iOS 13 сложно назвать самым стабильным обновлением из тех, что когда-либо выпускала Apple. Кажется, даже iOS 9, которая до сих пор считается одной из наиболее проблемных верс...

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

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

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

Как прошёл Mobius 2019 Piter (и немного о следующем Mobius) С петербургского Mobius прошёл уже месяц, а мы только сейчас подводим итоги. Но если для участника конференция заканчивается на заполнении формы обратной связи, то для организаторов всё иначе: нужно ещё дождаться всех откликов, проанализировать их и сделать выводы на будущ...

Как попасть в топ Google в ЕС/США в нише разработки и найти клиентов с большими бюджетами Пост лучше всего подойдет разработчикам «one-man-company» или командам. Я расскажу, как достаточно легко и просто (при отсутствии или минимальном бюджете) попасть в топ поисковой выдачи в развитых странах в нише разработки и перестать бороться за клиентов в СНГ, которые хотя...

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

Трансляция проектов и библиотек из Altium Designer в PADS Professional Часто у инженеров возникает необходимость транслировать проекты из одной САПР в другую. На предприятиях не редко бывает такая ситуация, когда разные отделы проектируют в разных САПРах. Также трансляция проектов может потребоваться, когда ваша система проектирования уже не с...

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

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

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

[Перевод] Ускоряем JavaScript-код с использованием типа данных Set Автор материала, перевод которого мы сегодня публикуем, говорит, что уверен в том, что многие JavaScript-разработчики пользуются, в основном, такими типами данных, как Number, String, Object, Array и Boolean. В большинстве случаев этого вполне достаточно. Но если нужно сдела...

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

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

[Перевод] Отлаживаем развертывание ПО со strace Моя основная работа — это, по большей части, развертывание систем ПО, то есть уйму времени я трачу, пытаясь ответить на такие вот вопросы: У разработчика это ПО работает, а у меня нет. Почему? Вчера это ПО у меня работало, а сегодня нет. Почему? Это — своего рода отладка,...

Безопасность Helm Эмоджи классные, с их помощью можно даже отразить всю суть рассказа о самом популярном пакетном менеджере для Kubernetes: коробка — это Helm (это самое подходящее, что есть в последнем релизе Emoji); замок — безопасность; человечек — решение проблемы. Конечно, построить...

Speed Booster 1.4 Speed Booster & RAM Cleaner очистит ваш телефон, повысит производительность и сделает ваше устройство намного быстрее. Особенности : Boost & Clean Пусть телефон станет мощным за одно нажатие. Одно нажатие и Speed Booster & RAM Cleaner даст вашему телефону новую ж...

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

По следам Industrial Ninja: как взламывали ПЛК на Positive Hack Days 9 На прошедшем PHDays 9 мы проводили соревнование по взлому завода по перекачке газа — конкурс Industrial Ninja. На площадке было три стенда с различными параметрами безопасности (No Security, Low Security, High Security), эмулирующих одинаковый индустриальный процесс: в воз...

Хэллоуин, Google и кладбище мертвых медиа-продуктов С тех пор, как Google появился на рынке, утекло много воды. Сейчас компания является крупнейшим мировым разработчиком и производителем медиа-контента, без которого просто невозможно представить настоящее. Достаточно вспомнить такие продукты, как Android, Gmail, YouTube, Goog...

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

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

В режиме пробного запуска на Android вышел красивый платформер Deeprealm Odyssey Студия Invictus, которая может быть известна вам сериями вертолетных экшенов Dustoff или ритм-платформеров Give It Up!, выпустила на Android красивый платформер Deeprealm Odyssey. Это игра, в которой вы будете управлять воином-лисом, спускающимся в подземелья в поисках прик...

VBA и Python для автоматизации Excel и MS Office Поводом для заметки послужила статья на Хабре, в которой автор описывал, как он решал на Python задачу сбора и анализа метаданных из файлов Excel. Эта заметка более подробно раскрывает всем известный тезис: Под конкретную задачу надо выбирать наиболее подходящий инструмент п...

[Из песочницы] Как и зачем я писал парсер для сайта Tradingview. Автоматизация торговли своими руками Проблема: На текущий момент наиболее удобным и полноценным программным обеспечением (далее ПО) для автоматизации торговли на российском биржевом рынке является небезызвестный ТСЛАБ. Несмотря на несомненные плюсы в виде удобного визуального редактора для написания торговых ск...

[Из песочницы] Авторизация в Apple Pay для самых маленьких Внимание будет уделено конкретному моменту — это получения криптограммы со стороны Apple после того как покупатель прошёл TouchID или FaceID. Языком на бэкенде будет PHP. Меня зовут Александр, я младший PHP-программист компании Moguta, и мне пришлось столкнуться на своем пу...

Разработчик, помни — трафик твоего приложения смотрят На данный момент существует так много типов уязвимостей, что разработчики совсем забывают об элементарных из них. На днях мне удалось обойти авторизацию в новом приложении WOG (ТОВ «ВОГ РІТЕЙЛ» — вторая по величине сеть АЗС в Украине). В 2017 году, точно такую же уязвимость...

Steam назвал лучшие игры 2018 года Компания Valve подвела итоги ежегодной премии Steam Awards, в рамках которой пользователи Steam выбирают лучшие игры и голосуют за лучшего разработчика. В этот раз победителей выбирали в восьми категориях, хотя в 2016 и 2017 годах их было значительно больше: 12 и 13 соответс...

Игра Crazy Mankey Многие любители азартных игр по достоинству оценили веселый стимулятор Crazy Mankey. На сайте play-crazy-monkey.co данный игровой автомат предоставлен для всех посетителей в круглосуточном доступе. Каждый, желающий просто весело провести время и освоить игровой автомат с обе...

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

[Перевод] Прекратите усердствовать с комментариями в коде Привет, Хабр! Сегодня вашему вниманию предлагается весьма дискуссионная статья, затрагивающая важный аспект философии "Чистого Кода". Автор статьи берет на себя смелость утверждать, что в большинстве случаев комментарии в коде вредны, но также не забывает указать, когда без...

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

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

OnePlus 7, OnePlus 7 Pro, Asus Zenfone 6, Google Pixel 3a XL и Xiaomi Mi 9 сравнили по времени работы без подзарядки в реальных условиях На YouTube-канале Mrwhosetheboss опубликовали сравнение времени работы без подзарядки смартфонов Asus Zenfone 6, OnePlus 7, OnePlus 7 Pro, Google Pixel 3a XL и Xiaomi Mi 9, которые оснащены аккумуляторами емкостью 3700, 4000, 5000, 3700 и 3300 мА•ч соответственно. ...

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

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

Как менялись зарплаты и популярность языков программирования за последние 2 года В нашем недавнем отчёте по зарплатам в ИТ за 2 полугодие 2019 многие интересные подробности остались за кадром. Поэтому мы решили осветить самые важные из них в отдельных публикациях. Сегодня попробуем ответить на вопрос, как менялась зарплата у разработчиков разных языков...

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

Нахождение объектов на картинках Мы занимаемся закупкой трафика из Adwords (рекламная площадка от Google). Одна из регулярных задач в этой области – создание новых баннеров. Тесты показывают, что баннеры теряют эффективность с течением времени, так как пользователи привыкают к баннеру; меняются сезоны и тре...

Хрупкий кабель дисплея MacBook Pro: очередная ловушка, в которую загнали себя инженеры Apple Кабели, о которых идёт речь, свободно обёрнуты вокруг платы контроллера дисплея. Они туго натягиваются при открытии крышки экрана, что со временем приводит к надрыву Специалисты iFixit подробно разобрали очередную ошибку дизайна в ноутбуках Apple. Ошибки проектирования в ...

Компилятор Ангуляр в 200 строчек кода Привет. Меня зовут Роман, и я не изобретатель велосипедов. Мне нравится фреймворк Angular и экосистема вокруг него, и я разрабатываю с его помощью свои веб-приложения. С моей точки зрения, основное преимущество Angular в долгосрочной перспективе базируется на разделении кода...

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

Английский алфавит для Детей. Недавно увлекся изучением 3D моделирования. И решил за одно сделать что-то полезное) в итоге родился вот такой проект с Алфавитом. Эти буквы не просто нужно напечатать. Их можно раскрасить в месте с ребенком акриловыми красками, можно напечатать разными цветами, разные слои ...

Видеозвонки, WebRTC и браузер: как это работает и как согреть «замерзающую» трансляцию Для большинства из нас видеосвязь в браузере — нечто вроде черного ящика. Есть изображение собеседника на экране, звук, возможность общения. Но что происходит там, внутри? Об этом сегодня и поговорим. Статья сделана на основе доклада нашего сотрудника, Кирилла Рогового....

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

Протокол «Энтропия». Часть 1 из 6. Вино и платье Привет, Хабр! Некоторое время назад я разместил на Хабре литературный цикл «Бредни программиста». Результат, вроде бы, получился более-менее не плохой. Еще раз спасибо всем, кто оставил теплые отзывы. Сейчас, я хочу, опубликовать на Хабре новое произведение. Хотелось написат...

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

PVS-Studio 7.04 Лето — не только сезон отпусков, но и время плодотворной работы. Солнечные дни так сильно заряжают энергией, что хватает сил и на поздние прогулки, и объёмные коммиты кода. Второй летний релиз PVS-Studio 7.04 получился достаточно большой, поэтому предлагаем вашему вниманию ...

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

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

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

Чем ацетон отличается от... другого ацетона, или Не все ацетоны одинаково полезны Когда я год назад впервые начал работать с 3D-принтером, то на этом сайте узнал, что такое "ABS-сок", и как его правильно пить использовать.В кладовке у меня на тот момент стояло две литровые бутыли с этой волшебной жидкостью - одна матовая полиэтиленовая неизвестного уже те...

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

Вавилонский подряд: 5 проблем безопасности в строительном бизнесе Во дворе одного из строящихся домов появилось поселение рабочих-строителей: десятки типовых бытовок по 8 спальных мест, ряд синих туалетных кабинок, отдельно стоящие здания столовой и бани. В первый месяц в благоустроенный городок на работу ходило 500 человек. Через месяц ...

[Перевод] Зачем нужны дженерики? Эта статья о том, что будет означать добавление дженериков в Go, и почему я считаю, что нам это следует сделать. Также я коснусь возможного изменения архитектуры языка ради добавления дженериков. Go вышел 10 ноября 2009-го. Меньше чем через сутки появился первый комментари...

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

Изменения CHANGE Как наверняка знают читатели портала realitsm.ru, в единственной доступной на текущий момент книге новой версии ITIL «ITIL® Foundation. ITIL 4 Edition» была описана практика (practice) Change control. Её назначение увеличивать количество (долю) успешных изменений услуг и про...

Как сделать костыль для Тинькофф Инвестиций своими руками или уведомления об action required for take profit / stop loss Есть такой брокер — Тинькофф Банк. И есть проблема в том, что на текущий момент этот брокер не имеет приказов take profit / stop loss. Поэтому, если вы хотите торговать более активно, то вам нужно костылить какое-то временное решение, пока в недрах Тинькоффа программисты раз...

Игра фреймворков: тренды JavaScript в 2019 TypeScript против ES6, React против Angular, Jest против Mocha… Не хуже нашумевшего сериала, эти «битвы» держат поклонников JavaScript в напряжении, заставляя их задумываться: «Что же учить дальше?» К тому же, армии пользователей каждой из технологий приводит настолько убеди...

Автоверстка и стили в Unity: наш новый пайплайн и инструменты для UI Начну с главного: мы сделали удобный инструмент для верстки и изменили пайплайн работы. Теперь по порядку. В мобильных играх много разных интерфейсов, включая HUD и огромное количество экранов для меты. UX-дизайнеры их проектируют, UI-дизайнеры отрисовывают, а чтобы всё ...

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

Поиски «идеального» GUI. Путь новичка Изучая первый язык я хотел видеть кнопочки, а не только текст в консоли. Я сделал на Python3+tkinter калькулятор. Это заняло 585 строк. Применив к коду магию py2app, я получил bundle размером 45MB. Мне не понравилась работать с py2app. Иногда все переставало работать, если и...

Умные витрины с проекторами Epson Прием использования проекторов в витринах известен давно, но не стал популярным из-за двух проблем. Что это за проблемы и как они решаются можно было увидеть на стенде Epson на выставке ISE 2019 Первая проблема - неправильная оценка необходимой яркости проекторов Корень этой...

СУММА ВСЕХ СЛАГАЕМЫХ |--1--| Тривиальное и скучное псевдонаучное фэнтези о работе психического аппарата человека и AI в избитом образе прекрасной феи. Нет ни одной причины это читать. --1-- Я сидел в оцепенении в ее кресле. Под флисовым халатом по голому телу текли крупные градины холодного пота. Я н...

Четыре крутых приложения для электронной почты на iOS Приложения для электронной почты являются популярной категорией в App Store по одной простой причине — почти всем нам нужен доступ к письмам на iPhone и iPad. В то время как у Apple есть собственное приложение Mail, интегрированное в iOS, некоторые пользователи хотят ...

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

Проблемы точного земледелия и как с ними жить Публикую размышления моего коллеги, которого нет на хабре, по его просьбе. Привет, Меня зовут Сева Генин. Я много лет занимался ГИС и агрохимией, а сейчас участвую в разработке onesoil.ai – бесплатной платформы для фермеров всего мира с AI внутри. Тема для хабра немного не...

[Перевод] Настройка НА-кластера Kubernetes на «голом железе» с kubeadm. Часть 1/3 Всем привет! В этой статье я хочу упорядочить информацию и поделиться опытом создания и использования внутреннего кластера Kubernetes. За последние несколько лет эта технология оркестровки контейнеров сделала большой шаг вперед и стала своего рода корпоративным стандартом дл...

Песнь льда (кровавый Enterprise) и пламени (DevOps и IaC) Тема DevOps и IaC очень популярна и развивается быстро. Однако большинство авторов касаются сугубо технических проблем на этом пути. Я же опишу проблемы, характерные для большой компании. Решения у меня нет — проблемы, в общем, фатальны и лежат в области бюрократии, аудита, ...

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

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

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

VAST — новый и очень дорогой научно-фантастический 3D-шутер для iOS Я в каком-то плане понимаю разработчиков бесплатных игр — они в первую очередь хотят заработать. Но для меня подобное развлечение сразу же теряет в привлекательности. Поэтому любая платная игра на контрасте почти всегда воспринимается как нечто более качественное. Но сегодня...

[Перевод] Конференция DEFCON 19. Три поколения DoS-атак (с участием аудитории в качестве жертв). Часть 2 Конференция DEFCON 19. Три поколения DoS-атак (с участием аудитории в качестве жертв). Часть 1 Но что еще хуже… Я попытался разработать проект для своих студентов, и получалось забавно, но проблема заключалась в том, что нельзя было посмотреть «убиваемые» адреса, так как эт...

Что можно сделать со старыми коробками от iPhone и iPad После переезда в новую квартиру у меня было две головные боли: где достать кота, чтобы он перешел порог (на самом деле нет) и… как организовать пространство. Да, мне нужны были (да что я говорю, до сих пор нужны) эти маленькие, большие, картонные или пластиковые штуки для х...

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

На что способна колонка HomePod? Обзор скрытых возможностей Умная колонка HomePod поступила в продажу в начале 2018 года. На тот момент устройство было сложно назвать многофункциональным, но ситуация кардинально изменилась с выходом нескольких крупных обновлений. Сейчас HomePod действительно способен на многое, хотя по своим возможн...

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

Почта Mail.ru представила новое мобильное приложение Для современных интернет-сервисов мобильное приложение становится основным интерфейсом, которым на ежедневной основе пользуется большинство аудитории. Мобильная аудитория Почты Mail.ru превысила аудиторию web-версии ещё в 2018 году. На данный момент почти 60% владельцев ящик...

По разные стороны государства: как Facebook прожаривали в Конгрессе США, пока «Телеграм» воевал с ФСБ Пути «Фейсбука» и «Вконтакте» разошлись так основательно, что никто давно не попрекает VK его происхождением. Разошёлся «Вконтакте» по разным дорогам и с Павлом Дуровым. А с успехом мессенджера «Телеграм» прекратились сравнения Дурова с Марком Цукербергом. Остались только дв...

[Перевод] Используйте __main__.py Зачем нужен __init__.py знает, наверное, любой питонист, но что насчёт __main__.py? Я видел немало проектов либо рабочих, либо на Github, которые не используют это магический файл, хотя могли бы сделать свою жизнь проще. На мой взгляд, __main__.py это лучший способ для взаим...

Как не промахнуться с бюджетом на серийное производство корпусов: 20 примеров из практики бюро по инженерному дизайну Публикация всего двух статей о том, как самостоятельно оценить стоимость производства корпуса для прибора (первая и вторая) подняла просто волну запросов из серии «А вот сколько будет стоить наш корпус при тираже 5-100-1000- ∞ штук?» Как выясняется в ходе общения, большин...

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

[Перевод] Gap — светлое будущее для отступов в Flexbox (как в Grid) Одна из моих любимых частей спецификации CSS Grid — это grid-gap. Они позволяют легко создавать отступы между элементами внутри сетки. Margins и приёмы, к которым мы прибегаем, чтобы реализовать их в разных ситуациях, долгое время были одним из главных моментов, раздражаю...

[Из песочницы] PHPDump — Отладка в консоли Google Chrome и взаимодействие с CMS MODX Сразу к делу Есть собственный продукт который успешно мне помогает в отладке и назвал его PhpDump. В свое время CMS MODX побудил меня написать свой отладчик. Конечно же есть var_dump, phpConsole, xDebug в PHP. Но тут я со своим PhpDump. Скажу что решение не идеальное, но о...

Подходы к сегментации мобильных игроков — перевод Алисса Перез из команды Google Play Dev написала статью, которую мы перевели. В ней много полезной информации о подходах к сегментации пользователей: юзер-таргетинге и его связи с развитием бизнеса. Основная цель каждой мобильной игры — создать для игроков что-то интерес...

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

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

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

[Перевод] 10 Git-команд, которые стоит знать разработчику В этой статье мы обсудим разные Git-команды, которые могут оказаться полезными для разработчика или специалиста по Big Data. Вы узнаете, как проверять, удалять и приводить код в порядок. А еще рассмотрим способы выхода из Vim и экономию времени с помощью псевдонимов Bash ...

Плата за бренд: Xiaomi Mi 9T окажется дороже Redmi K20, хотя характеристики этих моделей совершенно одинаковы Братья-близнецы Xiaomi Mi 9T и Redmi K20 не будут никак различаться по технической части, но маркетологи все же решили развести эти модели за счет цены и вариантов памяти. Инсайдер Мукул Шарма (Mukul Sharma) опубликовал изображения, позволяющие наглядно оценить разницу ...

[Из песочницы] GridmiAPI — простая и гибкая библиотека Android для работы с REST&RPC Здравствуйте, хабровчане! Когда занимаешься разработкой сетевых приложений под платформу Android, понимаешь, что одно и другое приложение похоже друг на друга. С этой мыслью у большинства разработчиков инициализируется и другая мысль — «Почему бы мне не использовать какие-л...

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

[Из песочницы] PHP: Как разобрать сложный XML-файл и не утонуть в собственном коде Доброе время суток! Сфера применения XML-формата достаточно обширна. Наряду с CSV, JSON и другими, XML — один из самых распространенных способов представить данные для обмена между различными сервисами, программами и сайтами. В качестве примера можно привести формат Commerc...

[Перевод] Мы только что распечатали микрофон на 3D-принтере в лаборатории – а дальше вообще будет полная научная фантастика Идея создания физического объекта из цифрового файла кажется захватывающей. Она вызывает в памяти репликаторы из «Звёздного пути», способные сделать всё, от одежды до запчастей для космического корабля и еды. Сегодняшняя 3D-печать совершает впечатляющие шаги в этом направл...

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

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

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

10 PostCSS плагинов, которые сэкономят время вашему верстальщику У нас, у фронтендеров, есть такая категория инструментов, которые никак не решают стоящие перед нами задачи, а скорее влияют на сам процесс их решения. Изменяют его. Отношение к таким инструментам самое разное – начиная от мании в духе “давайте эту штуку пихать везде, это ж...

Как все начиналось: история паяльника и появление современных инструментов Паяльник второй половины XIX века, который нагревался на огне Пайка известна человеку около 4 тысяч лет — это исторически доказано. Разные народы в разное время паяли золотые, серебряные изделия и предметы из других металлов. Все паяльники до момента изобретения электриче...

[Перевод] Почему для открытия меню Windows читает один файл сто тысяч раз? «Проводник тратит 700 мс на то, чтобы открыть контекстное меню панели задач. 75% этого времени он выполняет 114 801 операцию считывания из одного файла, средний объём считываемых данных 68 байт. Мне стоит написать пост об этом, или достаточно саркастичного твита?» За комп...

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

Новые ключевые слова в Java В ближайшем будущем в языке Java появятся новые фичи, над которыми сейчас идет работа в рамках проектов Valhalla, Panama и Loom. Расширение языка — дело непростое, тем более — языка, в котором акцент делается на обратную совместимость; поэтому для того, чтобы их интеграция в...

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

Подводные камни пользовательских CSS-свойств Автор курса Нетологии «HTML-верстка» Стас Мельников рассказал о нюансах, которые могут усложнить работу с пользовательскими CSS-свойствами. Правила синтаксиса названий пользовательских свойств Мы привыкли, что встроенные CSS-свойства нечувствительны к регистру. Поэтому сл...

LG Electronics закроет производство смартфонов на своём родном рынке Как сообщает источник, компания LG Electronics намерена перенести производство смартфонов из Южной Кореи во Вьетнам. Сделано это будет для сокращения расходов, ведь данный бизнес у LG уже достаточно давно убыточный. К концу этого года LG свернёт своё производство в Пхё...

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

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