Социальные сети Рунета
Четверг, 25 апреля 2024

[Перевод] Перенос десктопных приложений на .NET Core С тех пор, как я начала работать с сообществом над переносом десктопных приложений с .NET Framework на .NET Core, я заметила, что существует «два лагеря»: представители одного хотят очень простой и короткий список инструкций для переноса своих приложений на .NET Core, в то в...

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

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

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

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

Chrome Audit на 500: Часть 1. Лендинг В инструментах разработчика браузера хром есть вкладка «Audit». На ней расположился инструмент который называется Lighthouse, служит он для анализа насколько хорошо сделано веб приложение. Недавно я решил протестировать одно приложение и ужаснулся результатам. Сразу по нес...

Пишем на Java для Nintendo DS Введение Все началось с того, что я случайно нашел список homebrew программ (программы, разработанные усилиями пользователей для устройств, не предназначенных для запуска пользовательского ПО) для Nintendo DS и в нем увидел одну очень интересную строчку, а именно: «Pstros ...

[Из песочницы] ES6 Простым языком Шаблонные литералы Шаблонные литералы заключены в обратные кавычки (` `) вместо двойных или одинарных. Они могут содержать подстановки, обозначаемые знаком доллара и фигурными скобками (${выражение}). Пример: var name = "bill"; console.log(`Hello ${name}`); // He...

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

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

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

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

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

[Перевод] Почему SvelteJS возможно лучший фреймворк для новых веб-разработчиков Любой веб-разработчик, который занимается этим хотя бы несколько лет, наверняка день за днем слышит подобный вопрос: Я действительно хочу стать веб-разработчиком, но я не знаю с чего начать. Есть какие-то предложения? Лет 10 назад ответ был очень прост. Просто создайте in...

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

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

Prisma-CMS как движок для быстрого создания MVP Наверняка многие слышали понятие MVP (Минимально жизнеспособный продукт вики). На хабре тоже много статей про MVP, но в основном это или просто описание что такое MVP и для чего оно, или различные success и не очень story. Но я не нашел ни одной статьи, где бы описывалось на...

Что будет с вашим цифровым наследием после смерти? Какие технические последствия имеет смерть в цифровую эпоху? Что делать разработчикам? Кому и как оставить свое онлайн-наследство? На эти вопросы отвечает Джон Эванс (Jon Evans) в статье, опубликованной на TechCrunch. Cпециально для «РосКомСвободы» Илья Фесенко подготовил п...

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

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

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

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


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

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

Avalonia первая встреча Когда мы встречаем новый язык, мы пишем «Hello word», а когда встречаем новый UI, то создаем блокнот. Здесь же я хочу показать простейший пример дружбы с корссплатформенным GUI Framework AvaloniaUI. Читать дальше →

Система управления проектами по модели Open Core в госсекторе Продолжаем рассказывать вам об опенсорсных продуктам реализованных на JS фреймворке — IONDV. Framework. Сегодня поговорим о системе управления проектами, которая была одним из наших первых масштабных проектов и которую изначально мы реализовали для правительства Хабаровского...

Пробую .NET Core + Kubernetes + appmetrics + prometheus + grafana + jobs + health checks Краткое знакомство с kubernetes для разработчиков на примере разворачивания простого шаблонного сайта, с постановкой его на мониторинг, выполнением джобов по расписанию и health checks (все исходники прилагаются) — Установка Kubernetes — Установка UI — Запуск своего прил...

C/C++ из Python Про то как вызывать Python из C написал в прошлой статье, теперь поговорим как делать наоборот и вызывать C/C++ из Python. Раз начал писать об этом, то раскроем всю тему до конца. Тем более, что ни чего сложного здесь нет тоже. Читать дальше →

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

[Перевод] 26 рекомендаций по использованию типа var в Java The Java Local Variable Type Inference (LVTI) или кратко — тип var (идентификатор var — это не ключевое слово, а зарезервированное имя типа) был добавлен в Java 10 с помощью JEP 286: Local-Variable Type Inference. Являясь 100% функцией компилятора, она не влияет на байт-код...

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

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

Синхронизация клиентских запросов в Spring Сегодня предлагаю Вам разобрать одну практическую задачу о гонке клиентских запросов, с которой я столкнулся в МаксимаТелеком при разработке back-end для нашего мобильного приложения MT_FREE. При старте клиентское приложение асинхронно отправляет «пачку» запросов к API. При...

Atlassian Confluence: расширяем на python В Альфастраховании мы активно пользуемся "Вики", движком которого выступает Atlassian Confluence. Когда я первый раз с ним всерьез столкнулся (в попытке создать в нем контент), мне в нем не хватило "динамичности" — хотелось иметь возможность программно формировать части стра...

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

[Перевод] Редактирование текста тоже вас ненавидит Опубликованная месяц назад статья Алексис Бингесснер «Рендеринг текста вас ненавидит» очень мне близка. В далёком 2017 году я разрабатывал интерактивный текстовый редактор в браузере. Неудовлетворённый существующими библиотеками на ContentEditable, я подумал: «Эй, да просто...

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

[Перевод] Пишем API на Python (с Flask и RapidAPI) Если вы читаете эту статью, вероятно, вы уже знакомы с возможностями, которые открываются при использовании API (Application Programming Interface). Добавив в свое приложение один из многих открытых API, вы можете расширить функциональность этого приложения либо же допол...

Обработка системных вызовов посредством LD_PRELOAD с единой точкой входа Делая пере-реализацию QInst на LLVM, я столкнулся с такой проблемой: QEMU в режиме эмуляции одного процесса естественным образом перехватывает все «гостевые» системные вызовы. В итоге плагин инструментации имеет единую точку входа для их предобработки, где можно по номерам S...

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

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

[Из песочницы] Реализация горячей перезагрузки С++ кода в Linux * Ссылка на библиотеку в конце статьи. В самой статье изложены механизмы, реализованные в библиотеке, со средней детализацией. Реализация для macOS еще не закончена, но она мало чем отличается от реализации для Linux. Здесь в основном рассматривается реализация для Linux. Г...

Создание бэкенд приложения для онлайн чата Apollo, Node.js Некоторое время назад я работал над мобильным приложением, функционал которого включал в себя удобный онлайн-чат. И теперь я решил написать статью с краткой инструкцией, как создать чат, используя apollo server и node.js на бэкенде, а так же react native и apollo client на к...

[Перевод] Новости из мира OpenStreetMap № 484 (22.10.2019-28.10.2019) Данные из OSM + Blender + QGIS + … + творческий подход Долли Андриацифераны 1 | Dolly Andriatsiferana(@privatemajory) – Map data OpenStreetMap contributors Картографирование Жан-Луи Циммерман приводит еще один пример, наверное, самой распространенной в OSM проблемы — «ка...

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

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

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

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

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

Создание и обновление списков рассылки в Zimbra Collaboration OSE на основе групп и пользователей Active Directory 1. Пара слов от автора В комментариях к прошлой статье мне задали интересный вопрос об автоматическом формировании списков рассылки на основе групп безопасности AD. Есть задача – есть решение. Правда, оговорюсь сразу, решение несколько костыльное (почему – читать далее), но ...

[Из песочницы] Пишем первый микросервис на Node.js с общением через RabbitMQ Со временем, каждый проект растет и реализовывать новый функционал в существующий монолит становится все сложнее, дольше и дороже для бизнеса. Один из вариантов решения данной проблемы — использование микросервисной архитектуры. Для новичков или для тех, кто впервые сталкива...

[Из песочницы] Parse & Android: рекомендации начинающим разработчикам Аннотация В данной статье я бы хотел поделиться общими впечатлениями от использования BaaS – решения под названием Parse для разработки бэкэнда Android-приложения, рассказать о всех «подводных камнях», с которыми мне пришлось столкнуться в период разработки. Впервые эту плат...

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

[Из песочницы] Анализ скроллинга страниц в Google Data Studio Добрый день, меня зовут Чакканбаев Ильхом я автор блога SeoPulses, хотел бы поделиться переводом и реализацией на практике статьи michaelhoweely.com. Для того чтобы создать полноценный и понятный отчет для блога или статейного сайта в Google Data Studio потребуется использов...

MIDI-router на Raspberry Pi Хочу рассказать о том, как решить проблему, которая наверняка знакома любителям аппаратных синтезаторов. Что делать, если хочется состыковать MIDI-контроллер и синтезатор, но у одного из них есть только USB разъем и нет MIDI? Причем, по понятным причинам хочется все это сдел...

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

Как узнать пароль от Wi-Fi, к которому подключён ваш Android-смартфон За время использования своего Android-устройства вы, скорее всего, подключались к десяткам сетей Wi-Fi. Школа, дом, работа, спортзал, дома ваших друзей и семьи, кафе – каждый раз, когда вы вводите один из этих Wi-Fi-паролей, ваше Android-устройство сохраняет его для безопас...

Исправляем паттерн проектирования — Singleton в PHP Недавно я писал о том, как сломать паттерн проектирования — Singleton в PHP. После написания статьи я искал новый вариант реализации паттерна: есть ли способ создать Singleton в PHP, не давая возможности создавать новые экзепляры класса с помощью Closure::bind()? Читать даль...

Реестр печати с расчетом И так, доброго всем времени суток)Данный пост начну с небольшого рассказа.Я думаю как и многие из нас, я занимаюсь печатью на заказ, правда пока в небольших объемах, но всё же столкнулся с некоторой проблемой. Я старался всегда вести какой-то учет заказов, чтобы собирать ста...

Исповедь рекламного агентства из глубинки: взлёты, падения и внедрение CRM «Я CIO, CTO, швец, жнец и на дуде игрец в небольшом рекламном агентстве в топ-85 регионе России. На первый взгляд, все эти полиграфии, концепции и нанесения страшно далеки от Хабра. Однако это не так. Сложные станки, автоматизация бизнеса, CRM, склад — неполный список ИТ-инф...

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

Полная капитуляция Nvidia. Компания добавит мониторам с G-Sync поддержку Adaptive-Sync В начале года компания Nvidia сделал то, чего от неё мало кто ожидал. Она добавила своим видеокартам поддержку Adaptive-Sync. Это позволило использовать видеокарты GeForce с мониторами без поддержки G-Sync, но с поддержкой Adaptive-Sync. При этом Nvidia создала список ...

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

[Из песочницы] CSS-переход свойства height от 0px до auto Здравствуй, Хабр! Хочу поделиться ещё одним способом создания css-перехода (transition) свойства height от 0px до auto. Столкнулся с данной проблемой при разработке веб-компонентов TreeView и DataGrid. В TreeView решил сделать плавное развёртывание/свёртывание узлов, а в ...

Как создать ссылку на сайт в виде QR-кода на iOS iOS, несмотря на более ранний релиз, развивалась далеко не так стремительно, как Android. К примеру, долгое время в iPhone не было встроенного сканера QR-кодов и пользователям приходилось прибегать к помощи сторонних приложений, которые умели с ними работать. Однако по мере...

Настройка сервера для развертывания Rails приложения при помощи Ansible Не так давно мне было необходимо написать несколько ansible playbooks для подготовки сервера к деплою rails приложения. И, на удивление, я не нашел простого пошагового мануала. Копировать чужой плейбук без понимая происходящего я не хотел и в итоге пришлось читать документац...

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

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

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

Как ускорить Google Chrome и уменьшить расход памяти на 95%? Мы не часто пишем о браузере Chrome для десктопных систем, но когда речь заходит о действительно удобных решениях, не поделиться ими с читателями не можем. В этот раз речь пойдет о его оптимизации. Всем известно, что он активно использует ресурсы оперативной памяти при боль...

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

Как не дать идее погибнуть и собрать команду, которая ее не убьет Когда наше digital-агентство только открылось, возник вопрос: как все начать и не запороть. Мы хотели создать что-то большое. Что-то, вокруг чего объединились бы единомышленники. Здесь мы расскажем, как не дать идее умереть и как собрать команду, которая ее не убьет. В са...

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

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

[Перевод] Автоматизация Android. Супер простое руководство по созданию первого Espresso-теста Здравствуйте, друзья. В преддверии старта курса «Mobile QA Engineer», хотим поделиться с вами переводом интересного материала. Что такое Espresso? Нет, это не напиток, который вы пьете каждый день, чтобы взбодриться. Espresso — это тестовый фреймворк с открытым исходным к...

Как взять сетевую инфраструктуру под свой контроль. Глава четвертая. Автоматизация. Темплейты Эта статья является шестой в цикле статей «Как взять сетевую инфраструктуру под свой контроль». Содержание всех статей цикла и ссылки можно найти здесь. Оставив несколько тем позади, я решил все же начать новую главу. К безопасности вернусь чуть позже. Здесь я хочу обсудит...

FunTech iOS-meetup #1 Приглашаем вас на первый FunTech iOS-meetup, который пройдёт 23-го марта в Москве. Программа «Крутим RunLoop. Как устроена лента ВКонтакте», VK.com, Александр Терентьев В своём докладе Александр расскажет о том, с какими задачами и проблемами при реализации сложных колле...

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

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

[Перевод] Пишем свой сетевой слой на Swift: протокол-ориентированный подход Сейчас практически 100% приложений используют работу с сетью, поэтому вопрос организации и использования сетевого слоя встает перед каждым. Есть два основных подхода к решению этой проблемы, это либо использование сторонних библиотек, либо собственная реализация сетевого с...

Анонс FunTech QA-automation meetup Всем привет! Приглашаем QA-инженеров на наш первый митап по тестированию, посвящённый автоматизации. Программа «Автотесты, объединяющие подходы, платформы и сердца», Михаил Чирков, ivi.ru Преимущества и недостатки кроссплатформенных автотестов (в нашем случае речь о плат...

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

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

Блокировка Telegram, Hetzner подсеть /16, опыт общения с РКН Работаю в достаточно крупной консалтинговой компании с представительствами по всему миру. Головной офис в Германии… Так сложилось, что, уехав из России около 20 лет назад, до сего момента про РКН и блокировки я лишь читал и сопереживал. Информация ниже, я так понимаю, не но...

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

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

Сколько оперативной памяти на самом деле необходимо смартфонам в 2019 году Когда рынок Android-смартфонов начал своё существование, производители использовали 256/512 МБ оперативной памяти. Этого было достаточно для того времени, но, к сожалению, сегодня такие цифры выглядят нелепо. Согласно статистике, за последние пару лет количество оперативной...

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

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

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

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

История одного «разработчика» или как новичку написать приложение для iOS Итак май 2018 года. Предпринято 7 попыток за 7 лет начать программировать что-то под iOS. И каждый раз одно и тоже: то Objective-C что-то страшное и не понятное, то нету идеи. И дальше Hello World, раз в год, вообщем дело не заходило… В этот раз новый Xcode и новый для ме...

Лес не сдается технологиям поиска, но инженеры наносят ответный удар Фото: «Лиза Алерт». Если в лесу пропал человек, лучший способ его найти — оправить тренированных поисковиков на прочесывание. Ни одна технология поиска пока не может заменить людей. В начале лета мы писали про несколько команд, которые в рамках конкурса «Одиссея» разрабаты...

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

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

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

Must для Фильмов и Сериалов 1.3 Must — социальная сеть для любителей кино и сериалов. Общайтесь с друзьями, оценивайте, рецензируйте, отслеживайте и находите фильмы и сериалы на свой вкус, а также управляйте списком избранного. Новая система персонализированного рейтинга Must Match со встроенным машинным о...

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

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

[Из песочницы] Изучая go: пишем p2p мессенджер со сквозным шифрованием Yet another P2P Messenger Читать отзывы и документацию о языке не достаточно, чтобы научиться на нем писать более менее полезные приложения. Обязательно для закрепления нужно создать что-то интересное, чтобы наработки можно было бы использовать в других своих задачах. Стать...

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

LuaVela: реализация Lua 5.1, основанная на LuaJIT 2.0 Некоторое время назад мы анонсировали публичный релиз и открыли под лицензией MIT исходный код LuaVela – реализации Lua 5.1, основанной на LuaJIT 2.0. Мы начали работать над ним в 2015 году, и к началу 2017 года его использовали в более чем 95% проектов компании. Сейчас хоче...

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

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

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

Обзор 14 headless cms 2019 Некоторое время назад в одной заметной на российском рынке публичной компании, в которой я работал, встал вопрос об использовании headless cms. Среди множества реализаций нужно было выбрать одну. Это рассказ о том, как я формировал критерии выбора, как анализировал cms-ки, и...

Почему мне не нравится приложение «Таймер» на iPhone Таймер на Apple Watch и на iPhone Не знаю, как вы, а я постоянно пользуюсь функцией «Таймер» на Apple Watch: когда хочется знать, сколько времени осталось до посадки самолета, сколько еще нужно запекать мясо, ну или проснуться утром в электричке до своей остановки (да, знаю,...

[Из песочницы] JAMstack: Как создать свой блог используя Gatsby + Contentful + Netlify Вы уже слышали о новом подходе JAMstack? Возможность писать веб-приложения на любимом фреймворке, управлять контентом из админ панели, а на выходе получать полностью валидные HTML-страницы построенные согласно с самыми последними рекомендациями SEO, PWA и a11y. Интересно? То...

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

[Перевод] Стратегии деплоя в Kubernetes: rolling, recreate, blue/green, canary, dark (A/B-тестирование) Прим. перев.: Этот обзорный материал от Weaveworks знакомит с наиболее популярными стратегиями выката приложений и рассказывает о возможности реализации наиболее продвинутых из них с помощью Kubernetes-оператора Flagger. Он написан простым языком и содержит наглядные схемы, ...

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

Как быстро очистить смартфон от ненужных контактов Сегодня это сложно представить, но раньше (а если быть точным, то в начале 2000-х) память записной книжки большинства телефонов ограничивалась 150-200 контактами. Со временем количество ячеек памяти росло, пока и вовсе это ограничение не было снято. И сегодня на наших сматр...

Связный список на Python: Коты в коробках И снова здравствуйте! В преддверии старта курса «Разработчик Python» подготовили для вас небольшой авторский материал о связных списках на Python. Python очень удобный и многогранный язык, но по умолчанию не имеет такой структуры данных как связный список или LinkedList. ...

Большой гайд по профессии архитектора решений (+список полезных ссылок) Еще лет 10 лет назад роль архитектора решений (Solution Architect) на проектах выполняли сами разработчики. Теперь это отдельная профессия, довольно востребованная и активно обсуждаемая. Вместе с коллегами-архитекторами подробно разбираемся во всех деталях и рассказываем, ка...

[Из песочницы] За что я ненавижу Eloquent ORM Всем привет. Хочу перед вами исповедаться и рассказать немного о том, что я чувствую, когда разрабатываю на Laravel. Нет, не подумайте, я обожаю этот фреймворк и безумно благодарен команде, которая его создала и поддерживает, они делают крайне крутое дело и, на мой взгляд, ...

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

«Я бы открыл на юге России особую зону ИТ» — 10 вопросов программисту #11. Новый сезон Прошлым летом мы запустили рубрику «10 вопросов программисту», и на протяжении 10 выпусков в ней было довольно весело. Хорошие люди, у которых не всегда есть доступ к огромной аудитории, смогли высказаться. Кто-то нашел понимание, кто-то наткнулся на критику. Перед 11 вы...

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

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

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

С новым годом, с новым MQTT/UDP Привет. Как я уже писал недавно (Первая краткая статья о MQTT/UDP), MQTT/UDP — протокол на базе MQTT, но: Ходит поверх UDP broadcast (не нужен брокер, почти не нужна конфигурация) До неприличия простой в реализации (10 строк на си + UDP/IP стек — и вы отправляете данные с...

Facebook, WhatsApp и Instagram хотят отказаться от поддержки смартфонов Huawei Проблемы, с которыми Huawei столкнулась после внесения в список угроз национальной безопасности США, не ограничились только запретом на использование Android и сервисов Google. Постепенно о прекращении отношений с китайской компанией объявили Wi-Fi Alliance, SD Association,...

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

Как я решил проблему с Bootcamp и macOS Mojave У многих из нас, однажды купивших Mac, не получается расстаться с прошлым. С прошлым в виде компьютеров с Windows. Хорошо, что есть возможность запустить Windows на Mac! Кто-то использует Bootcamp из-за абсолютной несовместимости программ для OS X и Windows, а программы нуж...

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

[Перевод] Сверхпростое логгирование в Javascript — два декоратора, и готово Вам еще не надоело писать logger.info('ServiceName.methodName.') и logger.info('ServiceName.methodName -> done.') на каждый чих? Может вы, так же как и я, неоднократно задумывались о том, чтобы это дело автоматизировать? В данной статье рассказ пойдет о class-logger, как...

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

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

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

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

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

Как отписаться от всех подписок в Instagram Если вы активно используете Instagram, то наверняка у вас скопилась не одна сотня (а то и тысяча) подписок. И из всех аккаунтов, на которые вы подписаны, порой по-настоящему вам интересна от силы пара десятков. Но при взгляде на огромное количество подписок становится не по...

SOLIDWORKS Simulation. Урок 2 Приветствую всех!Продолжаю развивать тему моделирования нагрузок в SolidWorks. Вот ссылка на первый урок, посвященный введению в тему, а так же разбору основных и необходимых действий.Урок 1 - https://3dtoday.ru/blogs/apollone/solidworks-simulation-lesson-1/ .Во втором уроке...

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

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

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

Концепты VueJS для backend разработчиков — мастер-класс 22 июня 22 июня в конгресс-центр «Альфа» пройдет мастер-класс «Концепты VueJS для backend разработчиков» Ведущий — Сергей Рябенко имеет пятнадцатилетний опыт коммерческой разработки в различных ролях. Работал разработчиком в LinguaLeo и Head of Engineering в SalesLift. Последний г...

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

Реализация паттерна Page Object на Python + pytest Когда я начинал изучать автоматизацию тестирования, не мог понять — “что такое Page Object и как его реализовать на Python + pytest?”. Штудируя интернет, нашел реализацию на других языках и фреймворках: обучающие статьи, которые были непонятны для меня. Поэтому решил написат...

Как быстро открыть конкретный раздел в настройках iOS Это стало возможным с приложением «Команды» для iOS Пару недель назад на Reddit было обнаружено сообщение, в котором утверждалось, что Apple восстановила возможность запуска определенных разделов приложения «Настройки» с помощью приложения «Команды» в iOS и iPadOS ...

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

Как быстро посмотреть интересные предупреждения, которые выдает анализатор PVS-Studio для C и C++ кода? Время от времени программисты, которые начинают знакомиться с анализатором кода PVS-Studio, спрашивают: «Есть ли список предупреждений, которые точно указывают на ошибки?» Такого списка нет по той причине, что неинтересные (ложные) предупреждения в одном проекте, в другом о...

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

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

Реализация целого типа в CPython На Хабре уже были статьи о подробностях реализации менеджера памяти CPython, Pandas, я написал статью про реализацию словаря. Казалось бы, что можно написать про обычный целочисленный тип? Однако тут не всё так просто и целочисленный тип не такой уж и очевидный. Если вам и...

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

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

Повторное использование форм на React Привет! У нас в БКС есть админка и множество форм, но в React-сообществе нет общепринятого метода — как их проектировать для переиспользования. В официальном гайде Facebook’a нет подробной информации о том, как работать с формами в реальных условиях, где нужна валидация и п...

[Перевод] 7 полезных сайтов и приложений для изучения английского Интересный факт – 20% населения планеты хотя бы на каком-то уровне говорит на английском языке, а его носителями являются всего 5% населения. При этом, этот язык – пожалуй, главный в интернете. По статистике, на нем написано 55,5% всего размещенного онлайн-контента. Так ...

Телега для датасайентиста How to deploy Python Telegram bot using Webhooks on Google Cloud Platform Вместо предисловия — Напиши телеграм-бота. Сейчас даже школьники пишут, — сказала она. — А почему бы и нет, — подумал я тогда ( — Ну, ну, — сказал бы я сейчас). Мы сидели в Бине и за чашкой кофе обсуж...

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

Успех не без чужой помощи: как «вырастить» готовый проект для рынка через преакселератор В своих постах мы неоднократно говорили о том, что после финала конкурса «Цифровой прорыв» успешные команды смогут доработать проекты в рамках преакселератора и сделать продукты уже для рынка. Программа стартанула 30 сентября, и мы уже можем подвести первые итоги. Но сначала...

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

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

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

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

Создаем куб Для начало мы открываем программу SketchUp.И так берем карандаш и тянем вдоль до нужного размера например 20 х 20 мм это 2 смДалее мы используем функцию вытянуть И тянем до нужного размера как я и писал 20 мм х 20 мм. Вот и все в принципе но если нам нужно полость внутри куб...

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

Еще одно приложение Google получило поддержку темной ... С оглядкой на то, что Android Q будет иметь специальную настройку для включения общесистемного темного режима, Google продолжает добавлять темную тему во многие свои фирменные приложения. В первую очередь тех, которые обновлены в соответствии с последними нормами Material De...

Многообразный мир embedded systems и место Embox в нем Проекту Embox уже исполнилось 9 лет, но многие не понимают, что это такое и с чем его едят зачем он нужен. Некоторые из тех, кто слышал о проекте и знают, что это операционная система, считают, что Embox — это “отечественная ОС”. Действительно, задумывался Embox как попытка ...

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

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

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

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

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

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

Организуем работу с приложениями на Mac Каждый пользователь Mac имеет определенный набор приложений для работы. Это может быть браузер, мессенджер, почтовый клиент, прочие программы. Увы, в macOS нет встроенных инструментов (если не брать в расчёт Automator), которые бы позволили запускать сразу несколько приложе...

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

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

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

Blameless environment: никто не должен писать качественный код На РИТ++ Никита Соболев (sobolevn) выступил, как он сам назвал это, с проповедью на тему качества кода и процессов в компании. Особо впечатлительных просим налить себе ромашкового чаю, но отойти от экранов не предлагаем. Вы можете не соглашаться ни с одним из тезисов, настаи...

IP-KVM через QEMU Устранение неисправностей при загрузке операционной системы на серверах без KVM — непростое занятие. Создаем себе KVM-over-IP через образ восстановления и виртуальную машину. В случае возникновения проблем с операционной системой на удаленном сервере, администратор загруж...

[Перевод] С++, определен ли тип: предварительное декларирование нужных объектов В прошлый раз, мы использовали SFINAE, чтобы понять, есть ли у типа определение, и мы использовали это в сочетании с if constexpr и универсальными лямбда-выражениями, чтобы код мог использовать тип, если он определен, при этом все еще принимаясь компилятором (и отбрасываясь)...

Это интересно! 1.29 Это интересно! — Развивайся с нами 🌎 Всё что ты хотел знать о мире теперь собрано в одном месте. Это интересно в картинках! Только интересные и познавательные записи. Все что ты знаешь о мире — это только вершина айсберга! Наше приложение создано специально...

ResNet50. Своя реализация Всем привет. Библиотека нейросети описана в моей прошлой статье. Здесь решил показать как можно использовать обученную сеть из TF (Tensorflow) в своем решении, и стоит ли. Под катом сравнение с оригинальной реализацией TF, демо приложение для распознавания картинок, ну и… в...

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

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

Рабочие шестерни для станков. История про два интересных заказа.  Начну с того, что до знакомства с моим первым принтером, никогда не создавал 3д модели, черчение - было в институте на первом курсе - 14 лет назад (как много времени прошло...) ))) Про шестерни, только краем уха слышал, знаю зубчики есть и...

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

React Native: делаем draggable & swipeable список Сегодня трудно кого-то удивить возможностью свайпать элементы списка в мобильных приложениях. В одном нашем react-native приложении тоже была такая функциональность, но недавно возникла необходимость расширить её возможностью перетаскивать элементы списка. А поскольку процес...

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

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

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

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

[Перевод] Деревья квадрантов и распознавание коллизий Эта неделя была короткой, в понедельник и вторник я продолжал работать над системой 2D-освещения. Остальное время я потратил на реализацию деревьев квадрантов (quadtree). В этой статье я поделюсь своей реализацией и мыслями, возникшими в процессе её проектирования. Во-пер...

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

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

Запускаем php скриптики через php-fpm без web сервера. Или свой FastCgi клиент (под капотом) Приветствую всех читателей "Хабра". Дисклеймер Статья получилась довольно длинная и тем кто не хочет читать предысторию, а хочет перейти сразу к сути прошу прямиком к главе "Решение" Вступление В данной статье хотелось бы рассказать о решении довольно нестандартной задачи, с...

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

Делаем вездесущий Splash Screen на iOS Привет Хабр! Я расскажу о реализации анимации перехода со сплэш скрина на другие экраны приложения. Задача возникла в рамках глобального ребрендинга, который не мог обойтись без изменения заставки и внешнего вида продукта. Для многих разработчиков, участвующих в крупных...

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

Простая реализация небольших CAM на ПЛИС Введение Как-то раз мне потребовалось по работе реализовать небольшой блок ассоциативной памяти. Почитав, как это делается у Xilinx на BlockRAM (BRAM) или на SRL16, я несколько опечалился, так как их реализации занимали довольно много места. Решил попробовать сделать его сам...

Как сделать свой 3D-аватар на любом Android-смартфоне Если у вас смартфон на Android и при этом вы смотрите с завистью на владельцев iPhone из-за того, что они могут создавать свои 3D-аватарки, сейчас же прекратите. У обладателей смартфона на популярнейшей в мире мобильной ОС тоже есть возможность создать свой собственный вирт...

Список полезных книг по анализу данных, математике, data science и machine learning Хабр, привет! Написал пост, который идет строго в закладки, он со списком полезнейших книг по анализу данных, математике, data science и machine learning. Они будут полезны как новичкам, так и профессионалам. Для удобства можете читать здесь или использовать удобный google ...

Гайд по автоматическому аудиту смарт-контрактов. Часть 2: Slither Анализатор: Slither Описание: Open-source static analysis framework for Solidity githib: https://github.com/trailofbits/slither Это статический анализатор кода, написанный на python. Он умеет следить за переменными, вызовами, и детектирует вот такой список уязвимостей. У каж...

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

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

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

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

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

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

Web Security Testing Starter Kit Всем привет! Меня зовут Андрей. Уже 10 лет я занимаюсь поиском уязвимостей в различных веб-сервисах. и готов поделиться своими знаниями с вами. В мае прошлого года я выступал с докладом про это на конференции Heisenbug, а теперь готов поделиться своими знаниями еще и здесь,...

#видео | В США испытали дрон с самой большой грузоподъемностью Грузовой дрон Elroy Air Сегодня доставкой посылок обычно занимаются курьеры, которые вынуждены добираться до заказчиков минуя многочисленные пробки. Из-за этого люди могут ждать свою посылку по несколько часов или даже дней, но что бы было, если перевозкой товаров занимались...

Сортировка и группировка чатов Telegram: новый клиент AiGram Messenger с Искусственным интеллектом Чего не хватает в мессенджере Telegram? Больше всего, пожалуй, сортировки и группировки чатов, и хотя многие пользователи давно просят об этом разработчиков приложения, они не торопятся с реализацией данных функций. И если на платформе Android еще можно найти сторонние клие...

Xiaomi рассказала, как обновить Mi 9 и Mi Mix 3 5G до Android Q Вчера мы писали о том, что только-только анонсированная ОС Android 10 (она же Android Q) в виде третьей бета-версии стала доступна для Google Pixel всех поколений и еще 15 смартфонов, среди которых оказались Xiaomi Mi 9 и Mi Mix 3 5G. А сегодня производитель рассказал, ...

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

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

[Из песочницы] Небольшой бэкдор на Flask или как управлять компьютером в локальной сети Привет, Хабр! Недавно я посмотрел скачанную версию стрима по программированию «Как создать свое веб-приложение на Flask». И решил закрепить свои знания в каком-нибудь проекте. Долго не знал, что написать и мне пришла идея: «А почему бы не сделать мини-бэкдор на Flask?». В ...

Apple велит сотрудникам скрывать от пользователей проблемы с клавиатурами MacBook Air и Pro В прошлом месяце Apple признала наличие проблем в работе клавиатур с механизмом «бабочка» третьего поколения. Вопреки предыдущим заявлениям компании о полном отсутствии конструктивных изъянов, количество жалоб от пользователей, столкнувшихся с залипанием и отсутствием хода ...

Обзор MINImax Tinyverse. Необычная стратегия Сегодня мы поговорим о достаточно необычном проекте, который создан специально для фанатов мультиплеера. Здесь вы сможете показать, насколько вы хорошо разбираетесь в стратегии и тактике, насколько умеете обманывать врага и заманивать его в ловушки. Итак, давайте разомнем па...

[Из песочницы] (5-2) Способа перенести большую SQL таблицу Введение Всем привет! Это моя первая статья и пишу я ее от лица младшего инженера-разработчика на языке C#. Так что здесь не будет каких-то подробных сведений о SQL, лишь практические сведения и размышления по решению довольно не очевидной задачи, с которой мне пришлось стол...

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

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

5 функций Android 10, которые Google скопировала у iPhone Справедливости ради отметим, что и Apple иногда тоже «подсматривает» некоторые фишки у Android. Но не в этот раз С выхода Android 10 прошло совсем не так много времени и пользователи устройств, на которых уже доступно обновление, вовсю устанавливают себе новую верс...

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

Загрузка ФИАС в БД на MSSQLSERVER подручными (SQLXMLBULKLOAD) средствами. Как это (наверное) не нужно делать Эпиграф: «Когда у тебя в руках молоток, всё вокруг кажется гвоздями». Как-то давным-давно, кажется – в прошлую пятницу, обходя окрестности офиса, озаботилось окаянное начальство тем, что я провожу время в праздности и созерцании котиков и кошечек. — А не загрузить ли теб...

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

Java Native Image: проверка возможности использования Не так давно Oracle выпустил первый релиз проекта GraalVM (https://www.graalvm.org/). Релизу был сразу присвоен номер 19.0.0, видимо, для того чтобы убедить, что проект зрелый и готов к использованию в серьезных приложениях. Одна из частей этого проекта: Substrate VM — фре...

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

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

SOLIDWORKS Simulation. Урок 1 Недавно писал пост, про свою держалку филамента, показав свои результаты симуляции нагрузок системы, и несколько человек написали мне, чтобы я подсказал как делать эту симуляцию. И я решил, что, возможно, стоит оформить это как серию уроков, и мне будет полезно скомпоновать ...

Kotlin Native: следите за файлами Когда вы пишите command line утилиту, последнее, на что вам хочется полагаться, так это на то, что на компьютере где она будет запущена установлен JVM, Ruby или Python. Так же хотелось бы на выходе иметь один бинарный файл, который будет легко запустить. И не возиться слишко...

Заметка: Онлайн-чат средствами SSH Привет, Сообщество! Не так давно пользователь с ником maximmasterr рассказал про свою реализацию системы онлайн-чата посредством использования технологии SSH. В этой заметке мне бы хотелось поделиться с вами ещё одной реализацией SSH-чата, которую разработал Андрей Петров....

ЧПУ выжигатель с нихромовой проволокой часть 1. Очень много всякой рекламы о чудесном выжигателе. Не буду писать здесь даже название, все и так поймут. Объясню лишь, что не бывает профессиональных выжигателей такого типа. Все они собираются, как говорится на коленке. И стоимость в 50 + тысяч рублей, извините, завышена в т...

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

В iOS 13 можно узнать, как громко вы слушаете музыку в наушниках Узнавать о громкости можно не только с iPhone, но и с Apple Watch Считанные дни остаются до официального релиза iOS 13. Обновление содержит множество новых функций, среди которых есть довольно занимательная штука — контроль уровня шума. Многие скачивают себе всякие «из...

История одной НЕ уязвимости Некоторое время назад мне предоставилась возможность поэксперементировать с настройками одного заурядного роутера. Дело в том, что первое апреля обязывало меня разыграть своих товарищей с университета. В университеть была Wi-Fi сеть. Мною было решено поднять на своем роутере...

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

[Из песочницы] Трансформация кода в Android Вместо вступления Всё началось с того, что мне захотелось изучить тонкости настройки Gradle, понять его возможности в Android разработке (да и вообще). Начал с жизненного цикла и книги, постепенно писал простые таски, попробовал создать свой первый Gradle плагин (в buildSrc)...

[Перевод] Создаём процедурные глобусы планет Искажения, бесшовный шум и как с ними работать. Генерируем планету Один из простейших способов генерации планеты — использование шума. Если мы решим выбрать его, то у нас есть пара возможных вариантов. Давайте рассмотрим каждый и определим лучший: Шум Перлина (Perlin Noi...

Passper WinSenior: восстановление забытого пароля Windows без переустановки операционной системы Бывают моменты, когда вы не можете зайти на компьютер из-за банальной ошибки – забыли пароль. Или вам отдали тот же ноутбук, который оказался заблокированным. Ничего страшного! Есть решение от подобной неудачи и называется оно Passper WinSenior.Благодаря данной программе вы ...

H.I.D.E. 0.20.6 Хочешь поиграть в прятки в Белом доме? Устанавливай одну из лучших игр в жанре Prop Hunt. Тебе нравятся игры в жанре Prop Hunt? Сегодня миллионы игроков в играют в такие игры. Что такое жанр Prop Hunt? Это командная игра, где игроки делятся на Охотников и Предм...

Изменились системные требования Windows 10 May 2019 Update После более чем шести месяцев разработки и тестирования Windows 10 19H1 первый крупный запуск весеннего обновления практически готов к глобальному внедрению. И, как следует из названия, развертывание Windows 10 May 2019 Update начнется с мая месяца.В интересах беспрепятствен...

Как использовать Facebook Messenger без аккаунта Facebook Какое-то время назад Facebook создала отдельное приложение Messenger для обмена сообщениями. Тогда многие не поняли такого странного хода (да он и не ясен до сих пор). Зачем выводить в отдельную программу функцию, которая и так хорошо работает? В этом был бы смысл, если бы ...

Как внедрить аналитику и не сломать приложение? Привет! Меня зовут Соснин Илья. Я работаю в Lamoda Android разработчиком. Крашу кнопочки, прогаю списочки и, к сожалению, пишу аналитику… Lamoda — это Data Driven Company, в которой все решения принимаются на основе поведения пользователей. Сначала мы наблюдаем и только пот...

Rails + Postgres + bindings Привет друзья. Ни для кого не секрет, что работая на крупных проектах со сложной логикой, Active Record становится не помощником, а обузой. Представьте, что вам необходимо сделать очень сложный запрос для PostgreSQL нативным образом (на чистом SQL), где должно присутствова...

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

Лёгкое программирование: канбан-доска для GitLab за один рабочий день Рабочий понедельник начался со следующего диалога: Руководитель (P): У тебя в команде не понятно, кто чем занимается. Я (Я): Это да, у нас нет инструмента, который бы отображал общую картину работы над задачами. В гитлабе есть канбан-доски, но они только в контексте проекто...

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

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

Automator: как запускать сразу несколько приложений за раз Automator можно по праву назвать одним из самых недооцененных приложений на macOS. Увы, но многие пользователи не догадываются о скрытых возможностях данной утилиты. Тем не менее потенциал заложенный в программу действительно огромен. Сегодня мы расскажем о службе, которая ...

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

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

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

Что делать тимлиду, чтобы команда не выгорала Недавно в подкасте "Цинковый прод" мы обсуждали выгорание. Я решил структурировать некоторые мысли и оформить в виде статьи История первая Однажды, когда я еще был простым линейным разработчиком, я решил пофрилансить. Друг попросил доработать одну довольно хитрую систему, п...

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

Как я пришел к формальной спецификации RISC-V процессора на F# Томными зимними вечерами, когда солнце лениво пробегало сквозь пелену дней — я нашел в себе силы заняться реализацией давней мечты: разобраться как же устроены процессоры. Эта мечта привела меня к написанию формально спецификации RISC-V процессора. Проект на Github Читать д...

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

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

Что такое Magisk и зачем вам нужно установить его на свой Android-смартфон О том, что такое root-права (или права суперпользователя) знают практически все обладатели смартфонов под управлением Android. Однако не многие в курсе, что есть кое-что получше, чем обычные root-права. Это Magisk, особая модификация ПО вашего телефона таким образом, чтобы ...

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

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

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

5G и WiFi 6: когда две сетевые технологии лучше, чем одна Сейчас о 5G не пишет и не говорит только ленивый (кстати, свою статью о сетях и устройствах пятого поколения мы уже опубликовали). Но есть и еще одна относительно новая сетевая технология — это WiFi 6. Иногда приходится читать дискуссии о том, что лучше, 5G или WiFi 6. На...

Пишем простой модуль Magisk для Android Введение Одним вечером я устал менять TTL после перезагрузки устройства и подумал как можно было бы делать это автоматически. Android же Linux и на нем должен быть аналог systemd или он сам. В процессе исследований мой взор пал на Magisk. На удивление разработать модуль для ...

Spring Boot 2: чего не пишут в release notes Когда у масштабного проекта происходит масштабное обновление, всё никогда не бывает просто: неизбежно возникают неочевидные нюансы (проще говоря, грабли). И тогда, как бы хороша ни была документация, с чем-то поможет только опыт — свой или чужой. На конференции Joker 2018...

Как убрать красные глаза с фото на iPhone или iPad без дополнительных приложений Проблема стара, как сама индустрия фотографии, неприятна, но давно решена, причем не одним способом. Функция устранения «красных глаз» в очах людей перед объективом мобильного коммуникатора есть практически в каждом тематическом приложении, что для iOS, что под Android. А на...

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

Как отключить звук Google Assistant на Android А вы знали, что Google Assistant — единственный голосовой ассистент с ночной темой? Google Assistant – один из лучших голосовых ассистентов. Сказываются обширные языковые познания и практически полное отсутствие проблем с распознаванием человеческой речи. Тем не менее,...

«Ростелеком» уже потратил 3 миллиарда на реализацию «закона Яровой». Но, это только начало Сколько еще нужно закупить, не знает никто

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

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

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

Сетевой комбайн: ASUS RT-AC88U Смартфоны заменили нам КПК и телефоны, телевизоры объединили функции простого «ящика» и видеопроигрывателя, а роутеры так и остались обособленными устройствами. На производстве такое положение дел понятно и вопросов не вызывает, а в домашней среде выглядит странно. К чему ра...

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

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

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

[Перевод] Крохотные образы Docker, которые верили в себя* [отсылка к американской детской сказке "Маленький паровозик, который верил в себя " ("The Little Engine That Could") — прим. пер.]* Как автомагически создавать крохотные docker-образы для своих нужд Необычная одержимость Последние пару месяцев я был одержим навязчивой идеей...

Как запланировать отправку WhatsАpp-сообщений на Android Мы уже рассказывали вам о том, как запланировать отправку сообщения в почтовом клиенте. Это очень удобная функция. Но что насчет мессенджеров? Например, самого популярного среди пользователей смартфонов WhatsАpp? Никаких проблем. Если хотите узнать, как это сделать — ...

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

К чему приложить прикладного лингвиста? “Что за дело? Это многих славных путь.” Н.А. Некрасов Всем привет! Меня зовут Карина, и я “совместитель” — совмещаю учёбу в магистратуре и работу технического писателя в Veeam Software. О том, как у меня это вышло, я и хочу рассказать. Заодно кто-то узнает, как можно прийти...

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

Arend – язык с зависимыми типами, основанный на HoTT (часть 2) В первой части статьи про язык Arend мы рассматривали простейшие индуктивные типы, рекурсивные функции, классы и множества. 2. Сортировка списков в Arend 2.1 Упорядоченные списки в Arend Определим тип упорядоченных списков как пару, состоящую из списка и доказательства его ...

[Из песочницы] Импорт отчета по звонкам из CoMagic в BigQuery по расписанию с помощью Google Cloud Functions Для чего При сложной структуре рекламных кампаний и большого количества звонков становятся необходимы дополнительные инструменты хранения, обработки и анализа информации о поступающих обращениях. Часто нужен быстрый доступ к данным за большой период времени. Иногда необходим...

Триллион маленьких шинглов Источник изображения:www.nikonsmallworld.com Антиплагиат – это специализированный поисковик, о чем уже писали ранее. А любому поисковику, как ни крути, чтобы работать быстро, нужен свой индекс, который учитывает все особенности области поиска. В своей первой статье на Хабре...

Особенности настройки Palo Alto: SSL VPN Несмотря на все преимущества межсетевых экранов Palo Alto, в рунете не так много материалов по настройке этих устройств, а также текстов, описывающих опыт их внедрения. Мы решили обобщить материалы, накопленные у нас за время работы с оборудованием этого вендора и рассказа...

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

Пост-пост, мета-мета. Учимся писать на Хабр — А далеко до релиза? — Да пара вёрсток. Докатился — пишу на Хабр о том, как писать на Хабр. Хотя причины есть — я пять лет занимаюсь этим, перевидал и перепробовал кучу инструментов, так что теперь делюсь с вами самыми лучшим. Я расскажу о том, как прийти от HTML-разметки...

[Из песочницы] Кризис DDD сообщества Год назад Максим Аршинов (marshinov) выступил с докладом "Быстрорастворимое проектирование". Отличный доклад, харизматичный спикер, полезные материалы в конце. Этот доклад изменил моё понимание того что я делал — кто из нас не пытался интуитивно применить pipeline-архитектур...

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

ZX Spectrum 128k своими руками. Часть 2 Первая часть здесь Все изображения кликабельны. Прошло больше года c того момента как я написал статью про сборку клона ZX Spectrum «Ленинград». И за это время его возможности существенно расширились. Не думал что я буду писать ее продолжение, но все таки статей по ретрок...

DJ Palina La Diva — исполнитель, чьи концерты не пропускают Она — самый сексапильный немецкий диджей всех времен. Она — это Palina La Diva, и она отправляется в тур по Европе, Азии и, конечно же, США. Первой ее признала родная страна, где Палина добилась невероятного успеха: стала резидентом одного из самых популярных ноч...

[Перевод] Реализация анимации в React Native Перевод статьи подготовлен специально для студентов курса «ReactJS/React Native-разработчик». Трудно себе представить мобильное приложение, в котором нет анимации. В вебе анимации обычно простые, если они есть вообще (максимум – одна страница сменяет другую). Анимации же...

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

Что такое арбитраж трафика В современном мире очень много доступных способов заработка, которые не требуют особых затрат и для их реализации даже не обязательно выходить из дома. Главное условие – наличие компьютера и доступа к сети Интернет. Одним из таких способов является арбитраж трафика. Это инте...

Как соединить наушники Galaxy Bunds с любым вашим гаджетом На сегодняшний день практически все производители наушников для мобильных телефонов представили свои версии «убийц» AirPods. Однако одними из наиболее удачных (или, как минимум, наиболее известных) стали Galaxy Bunds от южнокорейской компании Samsung. Эти небольши...

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

Lazarus — пишем компонент для анимации спрайтов Вместо предисловия В одесской школе ученики 8-го класса на уроках информатики используют бесплатную кроссплатформенную среду разработки Lazarus (официальный сайт: www.lazarus-ide.org), внешне и внутренне очень напоминающую любимый многими Delphi, использующую версию Object P...

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

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

Создаём Azure DevOps extension У нас есть проект с настроенным CI/CD-процессом. Когда разработчик заканчивает задачу и вливает свои изменения в develop\qa, автоматически запускается билд, который выкладывает новую версию приложения на тестовую среду. В идеальном мире тестировщик автоматически узнаёт о зад...

[Из песочницы] Топ 5 ошибок в моих ReactJS приложениях Больше 4х лет назад я влюбился в ReactJS и с тех пор все Fron End приложения разрабатываю при помощи этого замечательного инструмента. За это время я и команды, в которых мне повезло поработать, наделали кучу ошибок, многие из которых были благополучно исправлены. Множество ...

WatchOS: ставим приложения без iPhone Apple Watch 4 и 5 на ладони Apple Watch всегда рассматривались как некое дополнение к iPhone, поэтому нет ничего удивительного в том, что при своей функциональности они не «умели» многих вполне очевидных на первый взгляд вещей. К счастью, watchOS 6 привнесло долгожданные изм...

[Из песочницы] Schemathesis: property-based тестирование для API схем Фото Chris Keats на Unsplash Многие компании, и мы в том числе, перешли от монолитов к микросервисам ради лучшей масштабируемости и ускорения циклов разработки. У нас всё еще есть монолитные проекты, но они постепенно заменяются набором небольших и аккуратных микросервисов....

Приложения для электронных книг на операционной системе Android. Часть 4. Игры В сегодняшней, четвёртой (предпоследней), части статьи о приложениях для электронных книг на операционной системе Android будет рассмотрена только одна, но обширная тема: игры. Краткое содержание предыдущих трёх частей статьиВ 1-ой части были подробно рассмотрены причины, п...

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

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

Делегирование обратной зоны подсети менее /24 в BIND. Как это работает Встала однажды передо мной задача, отдать одному из клиентов право на редактирование PTR-записей отданной ему подсети /28. Автоматизации для редактирования настроек BIND извне у меня нет. Поэтому я решил пойти другим путем — делегировать клиенту кусок PTR-зоны подсети /24. ...

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

#Опрос: Главная проблема AirPods оказалась выдумкой? Самая распространенная проблема AirPods, заключающаяся в риске непроизвольной потери одного из наушников из-за неплотно прилегающей к ушной раковине, конструкции чрезмерно раздута. Это показал опрос, который AppleInsider.ru провел среди участников своего официального чата в...

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

Как заблокировать номер на Android Благодаря появлению мобильных телефонов поддерживать связь с семьей и друзьями стало намного проще и быстрее. Однако не все люди, которые нам звонят, являются теми, с кем мы хотели бы разговаривать. Позвонить может кто угодно: спаммеры, банки и другие нежелательные абоненты...

Проблемы общего кода в микросервисах Всем привет! Недавно на конференции PGConf в Москве один из докладчиков демонстрировал «микросервисную» архитектуру, упомянув мимоходом, что все микросервисы наследуют от одного общего базового класса. Хотя никаких пояснений по реализации не было, создалось впечатление, что...

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

Лучшие казуальные игры для Android (2019) Рынок мобильных игр растёт, вместе с тем самым популярным жанром в Google Play является казуальный (около 58,38%). В связи с этим мы отобрали лучшие казуальные игры для Android. Почему казуальные игры настолько популярны? Играют на смартфонах, как правило, чтобы занять своб...

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

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

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

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

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

Для PES Club Manager вышло сезонное обновление, в игре появилась подписка Manager Pass Обновление для футбольного симулятора eFootball PES 2020 вышло еще 17 октября, а теперь подоспел новый сезон в PES Club Manager. Его представили с апдейтом 3.0.0. Главные нововведения: списки игроков за сезон 2019-20 гг. приведены в актуальное состояние, а также улучшен алг...

Работаем с USB Custom HID на Android В современных Android — приложениях для взаимодействия с другими устройствами чаще всего используются беспроводные протоколы передачи данных, как например Bluetooth. В годы, когда часть устройств имеют беспроводную зарядку, сложно представить себе связку Android устройства ...

[Из песочницы] Эволюция самого популярного инструмента любого разработчика В любой среде разработки есть инструмент с названием «Output». Нет нужды описывать что он делает, поскольку абсолютно все разработчики его используют в своей работе ежедневно. Он прост и консервативен. По сути не менялся десятилетиями и до этих пор выглядит как то так: Т...

[Перевод] Собственная реализация библиотеки ECS На этой неделе я начал работать над своим движком для игры Vagabond и приступил к реализации шаблона entity-component-system. В этой статье я хочу рассказать о своей реализации, которая свободно доступна на GitHub. Но вместо простого комментирования кода я хочу объяснить, ...

То, чего не хватало Nokia все это время Nokia 9 PureView – это тот самый долгожданный успех HMD Global. Еще до того, как смартфон от пытающегося вернуть себе позиции на рынке финского бренда поступил в продажу, он уже исполнил свое предназначение и стал одним из самых запоминающихся смартфонов прошедшей выставки ...

Как узнать размер любого файла на iPhone или iPad Одно из главных нововведений iOS 12 — приложение «Быстрые команды». Новая программа позволяет пользователям не только создавать цепочки действий для автоматизации повседневных и рутинных операций, но и совершать действия, которые изначально не были предусмотрены iOS. ...

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

[Перевод] Новости из мира OpenStreetMap № 472 (30.07.2019-05.08.2019) How to carve OSM data into a slade plate – by Harald Hartmann 1 | Foto Harald Hartmann | Map data OpenStreetmap contributors Картографирование Продолжаются дискуссии (в Twitter, в списке рассылки) вокруг онлайн-редактора от Facebook — RapiD'a. Если вы хотите серьезно погр...

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

Задержки, «прожорливость», а теперь ещё и перегрев. Пользователи Google Stadia столкнулись с ещё одной проблемой Казалось бы, огромных задержек и «прожорливости» вполне достаточно, чтобы о Google Stadia сложилось не самое приятное впечатление, но оказалось, что это не всё. На форумах Reddit начали появляться записи пользователей, которые столкнулись с ещё одной...

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

Первый же суперкомпьютер с новыми CPU AMD Epyc будет одним из самых мощных в мире Как сообщают источники, правительство Великобритании заключило контракт на создание суперкомпьютера, который станет самым мощным в Европе. Система получит название Archer2 и будет создана компанией Cray. Что интересно, создана она будет на основе процессоров AMD Epyc, ...

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

[Из песочницы] Настройка reverse proxy для Nextcloud и ONLYOFFICE Привет, Хабр! Я занимаюсь тестированием редакторов документов ONLYOFFICE, а также тестированием интеграции редакторов в сторонние сервисы. К нам часто обращаются пользователи с различными проблемами при настройке, решения которых просто так не найти. Одна из самых популярных...

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

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

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

Обзор KingSmith WalkingPad . Лучшая беговая дорожка для дома? (Xiaomi WalkingPad) Не так давно мы побывали на выставке IFA 2019, где помимо многочисленных новинок, много внимания уделялось реальной реализации концепции «умного» дома. Все идет к тому, что скоро нам не нужно будет совершать лишних телодвижений для рядовых задач, таких как готовка, стирка, п...

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

Свободная Рисовалка — песочница крафт по клеточкам 1.0 Вам нравится рисовать рисунки по клеточкам? Вы рисовали рисунки по клеточкам в тетради? Тогда это замечательно приложение по клеточкам именно для Вас! В интернете есть множество картинок по клеточкам. Смотрите или создавайте свои собственные образы рисунков по клеточкам, по ...

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

Замените Android на Windows. Разработчики призывают Microsoft изменить свой смартфон Surface Duo На своём недавнем мероприятии Microsoft неожиданно представила Surface Duo — складывающийся смартфон с двумя экранами, работающий под управлением Android. Позже мы узнали, что компания никогда не рассматривала для этого устройства никакую иную ОС, а о возрождении...

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

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

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

Два приложения, бесплатные сегодня (и одно со скидкой) AirDisk Pro (Бесплатно) | Flight Unlimited X (Бесплатно) | Vintage Degign (75 руб.) Ежедневно мы вручную отбираем для вас лучшие предложения из App Store, которые становятся бесплатными или распространяются с большой скидкой. Каждый день новые и лучшие приложения для ваших ...

Универсальная память: SRAM, DRAM и флеш-память в одном флаконе В наши дни существует не один вид памяти, каждый из которых применяется для той или иной задачи. Они со своими задачами справляются достаточно хорошо, но есть ряд недостатков, которые не дают возможность назвать какой-либо из этих вариантов памяти универсальным. Если добав...

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

CLRium #6: Парный доклад про Lock-Free, много теории и практически-полезных знаний Совсем скоро, 29-30 ноября в Санкт-Петербурге и 06-07 декабря — в Москве мы запустим шестой семинар по .NET. На этот раз — по теме многопоточки и конкурентности. Мы уже писали об этом пару раз на Хабре, но сегодня — День Программиста и есть отличный повод дать вам всем компл...

AMA с Хабром, v 7.0. Лимон, донаты и новости Каждую последнюю пятницу месяца я делаем AMA с Хабром — перечисляю список сотрудников, которым вы можете задать любой вопрос. Сегодня вы также можете задать нам любой вопрос, но вместо списка сотрудников будут слёзы счастья и радости по поводу того, что мы стали миллионерами...

Полный цикл тестирования React-приложений. Доклад Авто.ру Стремление уйти от ручного регрессионого тестирования — хороший повод внедрить автотесты. Вопрос, какие именно? Разработчики интерфейсов Наталья Стусь и Алексей Андросов вспомнили, как их команда прошла несколько итераций и построила тестирование фронтенда в Авто.ру на базе ...

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

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

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

Как открывать ссылки в самом приложении, а не в Safari Можно открывать ссылки в приложениях прямо из Телеграмм С каждой новой версией iOS Apple уделяет пристальное внимание возможностям поделиться контентом — сейчас, например, можно открыть нужную ссылку в гораздо большем количестве приложений, чем несколько лет назад. Одн...

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

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

Как сканировать документы в приложении «Файлы» в iOS 13 Сканировать документы можно не только с помощью приложения «Заметки» Многие знают, что встроенное приложение «Заметки» обладает очень полезной возможностью — сканировать документы или любую другую информацию с бумажных носителей. Данная функция появилась еще ...

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

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

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

RPA 2019: роботизация по-русски В компании «Аплана Бизнес-решения» развивают собственную RPA-платформу. Российский рынок Robotic Process Automation быстро развивается, на нем появляются отечественные продукты. Так, в сентябре 2018 года компания «Аплана Бизнес-решения» выпустила RPA-п...

Слёрм DevOps: от Git до SRE со всеми остановками 4-6 сентября в Санкт-Петербурге, в конференц-зале Selectel пройдет трехдневный Слёрм DevOps. Мы строили программу, исходя из мысли, что теоретические труды по DevOps, как и мануалы к инструментам, каждый может прочитать самостоятельно. Интересны только опыт и практика: расс...

Как украсить местечковый Комикон с помощью прутка для 3d принтера от BestFilament часть 1 Здравствуйте всем! Хотелось бы поделится с вами опытом изготовления крупногабаритных вещей на 3d принтере. В рамках подготовки местного фестиваля, нашей команде предстояло выполнить большой объем работ за короткий промежуток времени. Примерно за 3 месяца нами было израсходов...

[Перевод] Использование Typescript с React – руководство для новичков Друзья, в преддверии выходных хотим поделиться с вами еще одной интересной публикацией, которую хотим приурочить к запуску новой группы по курсу «Разработчик JavaScript». Потратив последние несколько месяцев на разработку приложений на React и библиотек с использованием T...

Буквы и палитра: самые простые способы сделать яркую сторис Чтобы сделать интересную сторис в Instagram не обязательно устанавливать дополнительные программы или изучать Photoshop. Теплица собрала очень простые приемы для привлечения внимания подписчиков, которые каждый может освоить за несколько минут минут.  Несколько надп...

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

В Android Q стало намного проще делиться постами из Twitter и фото из Instagram Если вы когда-нибудь пытались отправить человеку или нескольким людям пост из Instagram, видео из YouTube, изображение из галереи смартфона или пост из Twitter, то должны прекрасно понимать, что я имею ввиду, когда говорю, что придумать что-то менее логичное, чем меню шерин...

[Из песочницы] Рефакторинга много не бывает Привет, Хабр! Представляю вашему вниманию перевод статьи "Refactoring — oops, I’ve been doing it backwards" автора Джастина Фуллера (Justin Fuller). Я очень завишу от рефакторинга, и не боюсь признать это, но есть только одна проблема: я всегда делал это задом на...

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

Как развлечь себя с помощью vk api В какой-то момент моей жизни я понял, что для счастья мне нужно создать 10 страниц-копий самого себя во Вконтакте и добавиться одновременно всеми в друзья к людям из френдлиста моей основной страницы. Для подробностей реализации идеи — прошу под кат. Читать дальше →

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

Долгожданный шаг в сторону сложно структурированных документов (+видео) Этой статьей на Хабре мы с большим удовольствием анонсируем вам, друзья, что от шаблонных жестко структурированных документов мы перешли к распознаванию различных сложно структурированных. А это, поверьте, совсем другая песня! За деталями добро пожаловать под кат. Читать да...

[Из песочницы] Как совместить преимущества ноутбука и стационарного компьютера? Разбор проблемы и идеи решения В данный момент ноутбуки и персональные компьютеры сильно отличаются друг от друга. Под системным блоком стационарного компьютера, как правило, понимается «башня» преимущественно стандарта midi-tower, весом килограмм в 15-20 (или больше), занимающий огромное пространство под...

Gibbets: Bow Master 1.0.27 Gibbets Bow Master – крутой проект созданный молодыми разработчиками. Цель игры попасть стрелой веревку и спасти человека от смерти. Игра, в которой чтобы преуспеть нужно много тренироваться и уметь целиться. Так же вы должны быть готовы к тому что при прицеливании вы н...

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

[Перевод] Новшества JavaScript: итоги Google I/O 2019. Часть 1 Материал, первую часть перевода которого мы сегодня публикуем, посвящён новым стандартным возможностям JavaScript, о которых шла речь на конференции Google I/O 2019. В частности, здесь мы поговорим о регулярных выражениях, о полях классов, о работе со строками. Ретроспект...

Еще раз о passport.js Недавно мне передали на поддержку проект на express.js. При изучении кода проекта я обнаружил немного запутанную работу с аутентификацией/авторизацией которая базировалась, как и 99,999% случаев, на библиотеке passport.js. Этот код работал и следуя принципу «работет — не тро...

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

[Из песочницы] Нужно ли писать weak self в Grand Central Dispatch? Тут у нас возник спор: нужно ли писать [weak self] в GCD? Один говорит: – [weak self] нужно писать везде! Второй говорит: – Нет, даже если не писать [weak self] внутри DispatchQueue, утечки памяти не будет. Вместо того, чтобы разбираться, легче написать пару строк. Тяжеле...

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

Руководство по Apple Subscriptions Notifications для iOS. Так ли они хороши на самом деле? Итак, у вас есть приложение с автоматическими возобновляемыми подписками. Оно прекрасно работает, пользователи безудержно оформляют премиум подписки и пишут хвалебные отзывы. Красота! Всем привет, меня зовут Денис, я руководитель проекта Apphud – сервиса аналитики авто-возо...

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

Учебные проекты на Godot — Pong (часть 1) Создание и настройка сцены игрового процесса Приветствую вас, хабровчане! Как и обещал в конце прошлой статьи, я обратил свой взгляд на игровой движок. Правда мне больше приглянулся Godot. Почему? Тема для отдельной статьи размышления, а я не умею долго думать и, тем более, размышлять. Несмотря на то, что Pong имеетс...

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

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

Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис. Часть 2 (Реализация API на стороне 1С) 1. Выбор способа обмена. Описание API. 2. Реализация API на стороне 1С. 3. Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис. Часть 3(BroadcastReceiver. Получаем данные) Пособий как создать HTTP-сервис в интернете предостаточно. Поэтому сразу опишу реализац...

[Из песочницы] Рассылка Push-уведомлений с SpringBoot сервера Предисловие Приветствую Вас. Недавно передо мной стала задача — настроить Push-уведомления на сайте. С этим я столкнулся впервые и во много разобраться мне помогла эта статья. В ней же уже есть описание серверной стороны, но, в процессе изучения данной темы я обнаружил более...

Неоднозначный Preform Приветствую всех!Несколько месяцев уже использую принтер Form2, машина очень стабильная, настраивать в ней особо нечего, и писать не о чем, скууучно) Но интересные моменты есть.Здесь я рассказывал о своих первых впечатлениях о Форм2.Здесь я рассказывал о своем опыте настройк...

[recovery mode] Цель оправдывает средства? (!) Черное и серое SEO Попытаюсь коротко рассказать про черное и белое SEО. Что это такое, стоит ли пользоваться и т.д.Для начала, сама аббревиатура SEO, расшифровка которой звучит, как: «Search Engine Optimization», уже предполагает некую «серость». Слово «оптимизировать» хоть и не звучит как что...

[Перевод] Глупая причина, по которой не работает ваше хитрое приложение машинного зрения: ориентация в EXIF Я много писал о проектах компьютерного зрения и машинного обучения, таких как системы распознавания объектов и проекты распознавания лиц. У меня также есть опенсорсная библиотека распознавания лиц на Python, которая как-то вошла в топ-10 самых популярных библиотек машинного ...

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

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

Table Tennis Touch 3.1.1328.4 Вы искали лучшую игру про настольный теннис? — Видимо, пришло ваше время, потому что на минувшей неделе для Android появилась игра Table Tennis Touch, которую по праву можно назвать лучшей о таком виде спорта, как настольный теннис. Для этого звания у Table Tennis Touch есть...

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

Как включить музыку на нескольких Android-устройствах одновременно Сегодня у многих из нас есть беспроводные колонки. И если вам нужно в компании включить музыку, то с громкостью проблем не возникнет. А что делать, если колонка разрядилась\сломалась? Выход есть — можно запустить музыку на нескольких устройствах одновременно. При этом...

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

Авторы Anthem о работе над полётами: «Они могли поломать игру» Французское издание JeuxVideo взяло интервью у нескольких руководителей разработки Anthem. Они поделились своим опытом работы над механикой полётов. По словам авторов, создание сбалансированного вертикального геймплея потребовало много усилий и преодоления огромного...

Как мы пробивали Великий Китайский Фаервол (ч.2) Привет! С вами снова Никита — системный инженер из компании SЕMrush. И этой статьей я продолжаю историю про то, как мы придумывали решение обхода Китайского Фаервола для нашего сервиса semrush.com. В предыдущей части я рассказал: какие появляются проблемы после того, как пр...

Как кастомизировать экран блокировки смартфона Кастомизировать экран блокировки может быть крайне полезно На экран блокировки смартфона выводится масса интересной и нужной информации. А еще масса интересной информации ждет вас на нашей страничке в Яндекс.Дзен. Так что не подписывайтесь обязательно. При этом операционная ...

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

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

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

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

Первый митап по Flutter в Петербурге – 26 сентября Мы в Wrike очень любим Dart и Flutter. На связке Dart+Angular пишем фронтенд основного продукта, SPA Wrike, а флаттер просто бескорыстно любим и создаем на нем внутренние тулы. Два года назад мы придумали русскоязычное сообщество дарт и флаттер разработчиков (сейчас в нем бо...

Как мы делали SCRUM Страшный сон команды разработчиков — это когда до начала разработки надо «нырнуть» в неизвестную предметную область и «проэстимейтить» half-baked idea. При этом нужно буквально «подписаться кровью» за результат в назначенный срок за фиксированные деньги. На деле дать точную...

Илья Зверев:“За эти годы OpenStreetMap оброс такой серьезной инфраструктурой, что можно рисовать карту не выходя из дома Илья Зверев — неформальный лидер российского сообщества OpenStreetMap. Вот уже почти 10 лет он всячески продвигает OSM: создает новые приложения и пишет статьи, развивает сообщество и выступает на конференциях. Насколько дружелюбен OSM, что он делал два года в Совете OSMF и...

Назад в 1985: представляем Windows 1.11 Мы долго интриговали вас в Twitter, делая посты о чем-то новом, связанном с Windows. И вот время пришло! К выходу третьего сезона сериала «Очень странные дела» мы с ребятами из Netflix создали приложение с Windows 1.11, которое поможет вам вернуться в 80-е (действия сериа...

[Перевод] Реализация PEG парсера Вдохновленный лишь частичным пониманием PEG, я решил попробовать его реализовать. Результат может получиться и не самым лучшим среди парсеров PEG общего назначения — их уже много (например, TatSu написан на Python и генерирует код Python) — но это хороший способ разобраться ...

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

Как это было у тех кто дошёл… Чтобы вывести свой проект в какой то хороший уровень нужно время.  А что такое время?! Иногда 6 месяцев, иногда год, иногда два, иногда 3. Но эти сроки для многих кажутся какими то космическими. Какой срок готов работать человек в России над своим проектом или идей?! Неделя....

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

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

Светильник Wb Nightlight Всем привет! Хочу поделиться с вами результатами создания светильника, который я сделал в качестве подарка одной симпатичной девушке)     Изначально я хотел взять готовый проект, который видел в одном посте на этом сайте. Это была лампа, напечатанная на принтере zmorph. Одна...

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

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

Ещё раз об ImmutableList в Java В своей предыдущей статье "Рукоблудие вокруг ImmutableList в Java" я предложил вариант решения поднятой в статье "Неизменяемых коллекций в Java не будет – ни сейчас, ни когда-либо" проблемы отсутствия в Java неизменяемых списков. Решение тогда было проработано только на уров...

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

Обзор GeForce NOW в России: плюсы, минусы и перспективы В октябре этого года облачный игровой сервис GeForce Now начал работу в России. Собственно, он был доступен и раньше, но для регистрации нужно было получить ключ, который доставался далеко не каждому игроку. Теперь можно зарегистрироваться и играть. Об этом сервисе я уже ...

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

Фантастические плагины, vol. 1. Теория Жизнь с многомодульным проектом не так уж проста. Чтобы избежать рутины создания нового модуля мы создали собственный плагин для Android Studio. В процессе реализации мы столкнулись с отсутствием практической документации, перепробовали несколько подходов и откопали множеств...

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

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

[Из песочницы] Бюджетная водянка для GPU. Знакомство и первый опыт Хочу поделиться с Вами, как Я собирал свою первую «бюджетную», местами самодельную, систему водяного охлаждения. Где-то на пути создания встречались неудобства, а где-то удача улыбалась. Я не ожидаю от СВО каких-то чудес и рекордов, а всего лишь хочу немного снизить температ...

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

[Перевод] Тёмная сторона поискового маркетинга: как и зачем Google собирает нашу личную информацию Когда какого-нибудь ленивого журналиста осаждают мрачные предчувствия по поводу Алексы от Amazon или Google Home, он пишет что-то в духе: «Даже Оруэлл не мог предвидеть, что мы сами пригласим Большого Брата к себе домой». При этом он упускает один важный момент: виртуальные ...

Приложения для iOS должны начать занимать меньше места За прошедшие несколько лет вес мобильных приложений заметно вырос. Однако компания Apple планирует бороться с этим ростом. Специально для решения этой проблемы купертиновцы доработали язык Swift так, чтобы финальное приложение после компиляции занимало на 8-15% меньше, чем с...

Anet A8 установка на оси X рельсы MGN12 Являюсь владельцем двух принтеров: ANET A8 и ZAV MAX PRO.ANET A8, по моим понятиям, рабочая лошадка, которая после доработки работает как часы. Владею им уже с пару лет, и Direct extruder очень радует. Мучаясь с Bowden на ZAVe - желания ANET переводить на Bowden нет ни малей...

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

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

[Из песочницы] Пишем блог на микросервисах – часть 2 «API Gateway» В первой части нашего цикла статей «Пишем блог на микросервисах» мы описали общий подход к решению задачи. Теперь пришла очередь API Gateway или API GW. В нашем c ptimofeev API GW мы реализуем следующие функции: Конвертация REST запросов в gRPC запросы и наоборот. Логир...

Разработчики недовольны методом распределения доходов из Google Play Pass Компания Google сообщила, что на размер выплат разработчикам, чьи приложения представлены в Google Play Pass, будет влиять количество времени, проведенного в них игроками. Также будет учитываться мнение игроков (или пользователей программ) о контенте. Получается, что разраб...

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

Антирейтинг 2018 Эта статья написана по аналогии со статьей «Как не надо писать на Хабр: Антирейтинг 2017». Статьи взяты за 2018 год, точнее, начиная с индекса 345000. Кроме отрицательных значений рейтинга, есть список по абсолютному количеству минусов (видимо, самые обсуждаемые темы, в бо...

[Перевод] Реализация шаблона проектирования Command в Unity Вы задавались когда-нибудь вопросом, как в играх наподобие Super Meat Boy реализована функция реплея? Один из способов её реализации — выполнять ввод точно так же, как это делал игрок, что, в свою очередь, означает, что ввод нужно как-то хранить. Для этого и многого другого...

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

[Перевод - recovery mode ] Как правильно обрабатывать ошибки: тишина — не всегда хорошо У меня никогда не было какого-то особого мнения относительно обработки ошибок. Если я начинала работать с существующим кодом, я продолжала выполнять задачу, над которой трудился автор исходника; если писала код с нуля — делала то, что казалось мне правильным. Но недавно...

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

Электрички Москвы (и не только): спасибо тем, кто помогал в этом году Электричка слева — Аэроэкспресс — теперь тоже добавлена в приложение. В день расписание у нас просматривают 600 тысяч человек, поэтому каждое маленькое изменение имеет эффект большого масштаба. Я хочу немного отчитаться о том, что мы добавили в приложение электричек по п...

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

[Перевод] PEG парсеры Несколько лет назад меня кто-то спросил имеет ли смысл превести Python на PEG-парсер (или на грамматику PEG; я не помню точно кто и когда это было). Тогда я немного посмотрел на него, но так и не пришёл к какому-либо выводу, а потому и отбросил эту тему. Недавно я узнал боль...

Microsoft To-Do теперь поддерживает закрепление списков в виде «живых» плиток в меню «Пуск» Компания Microsoft выпустила новое обновление приложения To-Do для Windows 10 и iPad, которое принесло с собой несколько приятных улучшений. На Windows 10 пользователи получили возможность закреплять отдельные списки в качестве динамических плиток в меню «Пуск», тогда как н...

ID@Xbox в России: расширение горизонтов гейминга Совсем недавно в Москве состоялось мероприятие в рамках программы для независимых разработчиков игр ID@Xbox. Участники показали 14 новых инди-игр, включая Felix the Reaper, King’s Bounty 2 и другие, а также пообщались с европейским руководителем ID@Xbox Агостино Симонетта....

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

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

Как строить, развертывать и тестировать Waves RIDE dApp Здравствуйте! В статье я покажу, как написать и запустить на ноде Waves обычный dApp. Рассмотрим необходимые инструменты, методы и пример разработки. Схема разработки dApps и обычных приложений почти не отличается: Пишем код Пишем автоматизированное тестирование Запуска...

Создаем видео из фотографий Очень часто у пользователей возникает желание сделать красивый фильм из фотографий. Это отличный подарок, например, или дополнение к подарку. Однако, если делать это в не в специальном софте, то вы потратите кучу времени и сил. Намного эффективнее скачать приложение ФотоШОУ ...

Automator: Массовая рассылка писем Automator можно по праву назвать одним из самых недооцененных приложений на macOS. Увы, но многие пользователи не догадываются о скрытых возможностях данной утилиты. Тем не менее потенциал заложенный в программу действительно огромен. Сегодня мы расскажем о службе, которая ...

Шестерни в Box2D Добрый день, дорогой читатель! Это уже четвертая статья по Box2D. И здесь я предложу готовое решение для программистов. Мне самому нужны были шестерни для моего проекта, и я сделал 4-х, 6-и, 12-и и 24-х зубчатые колеса. Код занял 2115 строк, 4 дня работы. И я хочу поделиться...

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

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

Нужна помощь 😫 Всем привет ! Столкнулся с такой проблемой на телефоне сяоми 3s: Вообщем, есть сд карта на 32 Гб, телефон в «безопасности» её видет(пишет свободно 30гб ) но когда на телефоне (оперативка) кончается память, выдает что нету вообще памяти… Хотя карта есть и она работает. Что де...

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

Microsoft заблокировала установку Windows 10 на старых Mac Пользователи старых Mac вновь попали под раздачу: корпорация Microsoft запретила установку самого последнего обновления Windows 10 (1903) на устаревшие компьютеры Apple. В список «пострадавших» входят все Mac, выпущенные до 2012 года. По утверждениям представителей Microsof...

ANdroid Camera2 API от чайника Не так давно я возился со своей роботележкой, пытаясь водрузить на нее ANDROID смартфон. Моей, то есть его задачей, было сделать тележку эволюционно продвинутой. Чтобы она, так сказать, чувствовала мир его сенсорами, смотрела его глазом (камерой), слышала микрофоном и руга...

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

Запчасти к УМК "Пионер" Автор статьи: Михеенко В.Я.Должность: методист ГК “Геоскан”Дата: 30 марта 2019 годаКому будет полезна статья: ожидающим запчастей пользователямЦикл “Запасные части к УМК “Пионер”. Часть 1”Существует легенда, что Генри Форд был настолько скуп, что исследовал свалки в поисках ...

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

Как сделать частичную копию iPhone и создать рингтон в одном приложении С этого года Apple прекратит поддержку iTunes в привычном для нас виде — в компании считают, что в эпоху беспроводных технологий и «облаков» полноценный инструмент для трансфера данных с iPhone на компьютер (и наоборот) по проводу просто не нужен. Доля правды, конечно...

[Перевод] Почему все мои игры выглядят так отстойно Мы потратили на создание этой игры несколько лет. От неё зависит будущее нашей семьи. Почему же она так ужасно выглядит? Я уже 25 лет зарабатываю на жизнь написанием инди-игр. У нас с женой есть небольшой семейный бизнес. Мы создаём низкобюджетные ролевые игры в ретро-стил...

Реализация горячей перезагрузки С++ кода в Linux и macOS: копаем глубже *Ссылка на библиотеку и демо видео в конце статьи. Для понимания того, что происходит, и кто все эти люди, рекомендую прочитать предыдущую статью. В прошлой статье мы ознакомились с подходом, позволяющим осуществлять "горячую" перезагрузку c++ кода. "Код" в данном случае — ...

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

pg_stat_statements + pg_stat_activity + loq_query = pg_ash? В качестве короткого дополнения к статье Попытка создать аналог ASH для PostgreSQL. Задача Необходимо связать историю представлений pg_stat_statemenets, pg_stat_activity. В результате, используя историю планов выполнения из сервисной таблицы log_query, можно получить очень ...

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

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

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

Рекомендательная система для Directum Club. Часть первая, коллаборативная Каждый день пользователи по всему миру получают большое количество различных рассылок — только через сервис MailChimp ежедневно рассылают миллиард писем. Из них открывают 20.81%. Ежемесячно пользователи наших сайтов получают рассылки с отобранными редактором материалами. Эти...

Пользователи хотят Windows 10X на Surface Duo Хотя многие поклонники Windows Phone поняли прагматичное решение Microsoft выпустить свое устройство Surface Duo на Android, есть пользователи, который все еще требует, чтобы Microsoft выполнила то, что она обещали за многие годы – Surface Phone под управлением Windows. Даже...

[Перевод] Модуль dis в Python и свертка констант Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Web-разработчик на Python». Поехали! Недавно я очень удивился, когда обнаружил, что >>> pow(3,89) работает медленнее, чем >>> 3**89 Читать дальше →

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

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

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

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

Австрия продала первые частоты связи 5G на аукционе за €188 млн Об этом пишет ТАСС со ссылкой на австрийскую Службу по регулированию радиовещания и телекоммуникаций (RTR).Покупателями первых частот стали крупнейшие мобильные операторы Австрии: A1 Telekom Austria, T-Mobile и Drei, а также четыре региональные интернет-компании. "Это п...

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

Билайн введет в эксплуатацию сеть 5G в 2020 году Сейчас оператор занимается процессами модернизации, первая фаза которой завершится в сентябре 2019 года. Билайн заявляет, что скорость мобильного интернета после этих нововведений вырастет в три раза. Непосредственно ввод в эксплуатацию сетей пятого поколения (это вторая фа...

Определение кодировки текста в PHP вместо mb_detect_encoding Существует несколько кодировок символов кириллицы. При создании сайтов в Интернете обычно используют: utf-8 windows-1251 koi8-r Еще популярные кодировки: iso-8859-5 ibm866 mac-cyrillic Вероятно это не весь список, это те кодировки с которыми я часто сталкиваюсь. Иног...

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

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

Топ-5 нововведений Android Q, которые давно есть в iOS Мало кто помнит, что были времена, когда iOS не отличалась широким набором функций, а большинство нововведений, которые появлялись в обновлениях ОС, в той или иной степени были позаимствованы у Android. Но поскольку ничего вечного не бывает, то пришло время для обратного за...

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

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

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

Устанавливаем Vmware ESXi на Mac Pro 1,1 В статье описываю свой опыт установки VMware ESXi на старинный Apple Mac Pro 1,1. От заказчика поставлена задача – расширить файловый сервер. Как создавался файловый сервер компании на PowerMac G5 в 2016, и какого было обслуживать созданное legacy достойно отдельной стать...

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

Custom instruments: когда signpost недостаточно Instruments для Xcode компании Apple — это инструменты для анализа производительности iOS-приложения. Их используют для сбора и отображения данных, которые необходимы в отладке кода. В прошлом году Apple презентовала Custom Instruments. Это возможность расширить стандартный ...

Одна из лучших читалок для iPhone и iPad стала еще лучше Ее уже загрузили тысячи человек. Попробуйте и вы (теперь скачать можно бесплатно!), проходите по этой ссылке, если нет времени читать всю статью. Вообще, мы уже неоднократно рассказывали вам о приложении i2Reader Cloud, которое по мнению нашей редакции является одной из луч...

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

Как я покупал Anycubic Photon S с российского склада Алиэкспресс Всем привет! Хочу поделиться своей историей, возможно кому-то пригодится и поможет не совершать моих ошибок. Решил я обновить свой парк и попробовать Anycubic Photon S. Конечно же первым делом побежал искать "официальный магазин" и попал на Алиэкспресс, вот сюда. Это наверно...

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

iPhone OS 3.0 и поле искажения реальности… В третьей версии дебютировало столько функций, ставших основой iOS и до сих пор используемых в ней, что назвать её “пустоватой” или “недостаточно серьезной”, казалось бы, совершенно невозможно. Но в трех из четырех публикаций утверждалось именно это. 17 марта 2009 года сост...

Laravel: разбираем основные понятия. Часть третья: «Заключительная» Считанные дни остаются до старта нового курса от OTUS — «Framework Laravel». В преддверии старта курса делимся заключительной частью авторской публикации о основных понятиях в Laravel. Важно: данная серия публикаций не имеет отношения к образовательной программе курса и явля...

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

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

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

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

Обзор Baseus Letour Dual U Charger. Сетевая зарядка с двумя USB Согласитесь, пользователи мобильных устройств часто встречаются с проблемой, когда не хватает разъемов для зарядки, либо во время очередной поездки приходится брать сразу несколько адаптеров питания, чтобы была возможность зарядить свой смартфон и планшет в одно время. Сегод...

Борьба Умов 5.0.6 Борьба Умов — социальная игра-викторина с более чем 20000 вопросами, звуковыми эффектами и анимациями. В Борьбе Умов вы можете соревноваться с друзьями или случайными соперниками.В игре 6 раундов, по 3 вопроса в каждом. Вам и сопернику предлагаются одинаковые вопросы. ...

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

[Из песочницы] Переделка колонок Radiotehnika S-30 Позвольте поделить старой историей о том, как я делал себе «нормальный» звук после переезда в Питер в далеком 2009 году. Итак, через некоторое время после переезда в новый город, я обнаружил возле дверей своего дома пару колонок S-30. По их внешнему виду было сразу заметно,...

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

[Перевод] Структура данных B-дерево Всем привет! Мы запустили новый набор на курс «Алгоритмы для разработчиков» и сегодня хотим поделиться интересным переводом, подготовленным для студентов данного курса. В деревьях поиска, таких как двоичное дерево поиска, AVL дерево, красно-чёрное дерево и т.п. каждый узе...

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

[Из песочницы] Изменяем содержимое нотификации приложения iOS Привет! В этой статье я хочу поделиться своим опытом использования одного не очевидного (по крайней мере для меня) варианта изменения текста уведомления приложения, отправкой дополнительных данных через UNUserNotificationCenter. Я надеюсь эта статья будет полезна для нович...

Automator: Как быстро запускать избранные веб-страницы Automator можно по праву назвать одним из самых недооцененных приложений на macOS. Увы, но многие пользователи не догадываются о скрытых возможностях данной утилиты. Тем не менее потенциал заложенный в программу действительно огромен. Сегодня мы расскажем о службе, которая ...

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

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

Поймал бан за форк deepNude на gitlab.com В одной из статей опубликованных на хабре я в комментах вычитал, что на gitlab.com есть копии deepNude, чисто из любопытства нашел ее и сделал форк «на всякий случай». Через 3 часа после этого я не смог запушить код, т.к. улетел в бан… Читать дальше →

[Из песочницы] Как я сделал удобной разработку на Vue.js с server-side рендерингом Всем привет! Начну с небольшой предыстории. Свой новый проект я решил попробовать сделать на Vue.js. Мне нужен был серверный рендеринг (SSR), CSS модули, code-splitting и прочие прелести. Разумеется, для повышения производительности разработки нужна была горячая перезагр...

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

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

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