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

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

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

Нужно ли чистить строки в JavaScript? Что? Строки могут быть «грязными»? Да, могут. //.....Какой-то код console.log(typeof str); // string console.log(str.length); // 15 console.log(str); // zzzzzzzzzzzzzzz Вы думаете, в этом примере строка занимает 30 байт? А вот и нет! Она занимает 30 мегабайт! Читать дальше...

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

[Из песочницы] F-strings или как сделать код чуть более быстрым и читаемым В Python есть 3 способа форматировать строки, и один из них лучше других. Но не будем забегать наперед — о каком именно форматировании вообще речь? Каждый раз когда мы хотим поприветствовать пользователя по имени нам нужно вставить строку с именем в строку-шаблон. Большинс...

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

В современном автомобиле строк кода больше чем… Количество строк кода в современном автомобиле в 200 раз больше чем в Шаттле, в 60 раз больше, чем в истребителе F-22 Raptor, в 50 раз больше, чем в телескопе Хаббл, в 20 раз больше чем в марсоходе Curiosity, в 4 раза больше чем в истребителях пятого поколения, в 2 раза бо...

QVD-файлы — что внутри, часть 2 В первой статье о структуре QVD файла я описал общую структуру и достаточно подробно остановился на метаданных. В этой статье я опишу формат хранения информации о колонках, поделюсь своим опытом трактовки этих данных. Итак (вспоминаем) QVD файл соответствует реляционной табл...

[Перевод] IBM, память на линиях задержки и история дисплея 80×24 символа У терминала DEC VT100, проданного в количестве более миллиона штук, был дисплей 80×24 символа Чем объяснить популярность терминалов 80×24 и 80×25 символов? Недавняя запись в другом блоге подвигла меня на небольшое исследование. Источником строк длиной в 80 символов очевидн...

[Из песочницы] Как продублировать цели из Яндекс.Метрики в Google Analytics Что делать, если вы настроили большое количество целей в Яндекс.Метрике через Google Tag Manager (GTM), и нужно срочно перенести эти цели в качестве событий в Google Analytics (GA)? Конечно, можно перенастроить каждый тег на параллельную отправку событий в GA и в Метрику, но...

[Из песочницы] 2 минуты с Webpack tree-shaking и re-export Вступление Позвольте мне начать. У нас был монолитный фронтэнд с большим наследием. Сервисы жили в одних файлах с компонентами. Всё было вперемешку и с лозунгом на фасаде: “Пусть всё будет под рукой – так легче найти, что надо". И не важно, что длина файла 200+, 300+, 5...

Задачи с собеседований: является ли строка палиндромом Еще одна популярная задача с собеседований разработчика – нужно определить является ли строка палиндромом. Палиндромом называется строка, которая пишется одинаково слева направо и справа налево (в том числе пустая). При определении “палиндромности” строки д...

Можно ли считать статистику при малом количестве данных? В целом ответ – да. Особенно, когда есть мозги и знание теоремы Байеса. Напомню, что среднее и дисперсию можно считать только, если у вас имеется определенное количества событий. В старых методичках СССР РТМ (руководящий технический материал) говорилось, что чтобы считать ср...

[Перевод] Основы PowerShell: определение конца строки с определенным символом Знаете ли вы, что можно определить, заканчивается ли строка определенным символом или начинается с него в PowerShell? Томас Рейнер (Thomas Rayner) ранее поделился на CANITPRO.NET, как это легко сделать с помощью регулярных выражений (regular expressions) или, проще говоря, R...

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

[Из песочницы] Новичку only: 10 вещей, которые вы должны знать как веб-разработчик Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Things You Should Know As a Web Developer» автора Anuupadhyay. Написание тысячи строк кода и превращение в веб-сайт — одна из творческих и сложных вещей для веб-разработчиков. Если вы в этом деле новичок, увидели ...

Умеренный Hardening для Firefox Современный веб состоит из множества разных технологий, которые предоставляют самые разные возможности… но ещё и создают немалое количество угроз. Современные браузеры давно стали самыми сложными приложениями на компе, обогнав по сложности даже ядро ОС (в Firefox в нескольк...

И ещё о сортировках И ещё о сортировках Рискну опять поднять эту тему. Начну со ссылки на статью Михаила Опанасенко (oms7), очень впечатляющую по объёмам проделанной работы, а также по количеству приведёных ссылок. Свой материал начал готовить, не зная об этой публикации, что впоследствии, посл...

7 вещей, которые вы не знали о поиске в Google Поисковик Google — это уже, практически, неотъемлемая часть нашей жизни. Не даром же возник глагол «загуглить»! Практически каждый день мы используем систему от Google для поиска самой разной информации, однако не все знают, что искать ее можно куда более пр...

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

Функция buildargv с помощью Ragel Забавное использование Ragel State Machine Compiler для создания функции разбора строки на int argc, char *argv[]. Все началось с того, что понадобилась функция buildargv, чтобы разбирать строку для последующей передачи в int main (int argc, char *argv[]) { body } Ну ладно п...

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 1 Сегодня мы предлагаем вашему вниманию первую часть перевода материала о том, как в Dropbox занимаются контролем типов Python-кода. В Dropbox много пишут на Python. Это — язык, который мы используем чрезвычайно широко — как для бэкенд-сервисов, так и для настольных клиентс...

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

[Перевод] Рассказ о том, почему я до сих пор использую jQuery Многие, когда речь заходит о jQuery, говорят так: «Просто пользуйтесь обычным JavaScript. Библиотека jQuery вам не нужна». Что тут сказать? Я не нуждаюсь во многих вещах, но, несмотря на это, хорошо, когда они есть. Так и jQuery. Я в этой библиотеке не нуждаюсь, но её, опред...

Метапрограммирование в JavaScript и TypeScript Пролог Хочу представить на Ваш суд ряд мини статеек, в которых будут описаны приемы и основы метапрограммирования. В основном я буду писать об использовании тех или иных техник в JavaScript либо в TypeScript Эта первая (и надеюсь не последняя) статья из серии. Так что же так...

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

Бенчмарк как основание для принятия решения об изменении кода Билл Кеннеди в одной из лекций своего замечательного курса Ultimate Go programming сказал: Многие разработчики стремятся оптимизировать свой код. Они берут строчку и переписывают ее, говоря, что так станет быстрее. Нужно остановиться. Говорить, что тот или иной код быстрее, ...

Работа с API КОМПАС-3D → Урок 16 → Управляющие символы Продолжаем цикл статей по работе с API САПР КОМПАС-3D. Управляющие символы уже несколько раз встречались нам на предыдущих уроках цикла. Тогда каждый раз говорилось, что выводимые строки не должны их содержать, так как КОМПАС обрабатывает их особым образом. Теперь пришло вре...

Автоматизация импортов в Python До После import math import os.path import requests # 100500 other imports print(math.pi) print(os.path.join('my', 'path')) print(requests.get) import smart_imports smart_imports.all() print(math.pi) print(os_path.join('my', 'path')) print(requests.get) Так получи...

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

Интервью с Виталием Брагилевским: «Мир, в котором все будут программировать на Haskell — это вряд ли хороший мир» Виталий Брагилевский (@_bravit) пока что еще преподает в ЮФУ курсы по Haskell и теории алгоритмов. Также, дает выездные курсы в других городах, является редактором и переводчиком множества книг о Haskell и функциональном программировании, состоит в комитетах Haskell 2020 и...

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

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

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

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

[Перевод] Интервью — 10 вопросов про Swift. Часть 2 До запуска курса «iOS-разработчик» остается все меньше времени, поэтому сегодня мы продолжаем публиковать материал из серии «10 вопросов про Swift». Первую часть которого можно прочитать тут. Объясните дженерики в Swift? Дженерики (универсальные шаблоны) позволяют вам пис...

Как запустить Google Assistant на Galaxy Watch Несмотря на ребрендинг, который Google провела с Android Wear, переименовав ее в Wear OS, платформа так и осталась не слишком привлекательной для пользователей. Как показала практика, уж если люди и выбирают смарт-часы для работы в паре с Android-смартфоном, то чаще всего и...

Microsoft осквернила командную строку: в ней появились вкладки, темы и… эмидзи Шло время, менялись операционные системы и их пользователи, но святая святых Windows – приложение командной строки – оставалось практически неизменным. И вот сегодня традиционный миропорядок рухнул – Microsoft на мероприятии Build 2019, которое в эти д...

[Перевод] Как сделать ваш HTML отзывчивым, добавив одну строку кода на CSS Привет, Хабр! представляю вашему вниманию перевод статьи «How to make your HTML responsive by adding a single line of CSS» автора Per Harald Borgen. В этой статье я научу вас, как использовать CSS Grid для создания крутой сетки изображений, которая изменяет количество сто...

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

Что такое Initial Exchange Offering (IEO) и чем оно отличается от ICO? В начале 2017 года, был бум ICO, в которых было обмануто очень много людей. Теперь на смену ICO пришли IEO, которые должны уменьшить количество скам проектов. Ранее я уже писал про IEO от Huobi, советую посмотреть. Что такое IEO? Первоначальное биржевое предложение, как ...

Число DDoS-атак за год выросло на 241% Количество как крупных, так и мелких распределенных атак типа «отказ в обслуживании» (DDoS) продолжает расти. Такой вывод позволяют сделать данные, собранные специалистами в области компьютерной безопасности, работающими в компании Neustar. Если верить подг...

Luxoft и автомобили: 100 млн. строк кода, «гаджет на колесах», и… причем здесь Mercedes? Сегодня автомобиль создают не только инженеры и маркетологи, но также и разработчики ПО. Ведь количество различные вспомогательных систем может исчисляться десятками: от них напрямую зависит не только комфорт использования автомобиля, но и безопасность поездки. Что сейчас пр...

[Перевод] Настройка PHP-FPM: используем pm static для максимальной производительности Я в двух словах расскажу, как лучше всего настроить PHP-FPM, чтобы увеличить пропускную способность, снизить задержку и более стабильно использовать процессорные ресурсы и память. По умолчанию строка PM (process manager, менеджер процессов) в PHP-FPM имеет значение dynamic,...

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

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

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

ConfigureAwait, кто виноват и что делать? В своей практике я часто встречаю, в различном окружении, код вроде того, что приведен ниже: [1] var x = FooWithResultAsync(/*...*/).Result; //или [2] FooAsync(/*...*/).Wait(); //или [3] FooAsync(/*...*/).GetAwaiter().GetResult(); //или [4] FooAsync(/*...*/) .Configur...

Подсветка принтера средствами Marlin и SKR v1.3 Доброго дня. Сам не профи но устанавливая апгрейд для своего Ender 3, плату SKR 1.3 и тихие драйвера 2130 ковырял с нуля марлин, готовые сборки это хорошо но как говорится лучше самому. Наткнулся на кусок кода отвечающего за подсветку. Тоесть средствами самого Марлина и наше...

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

[Из песочницы] Поднимаем читаемость кода в iOS разработке Представьте себе книгу, в которой нет деления на главы, а все идет без логической и смысловой разбивки, книгу, где нет абзацев, нет точек и запятых, книгу, где в первой строке рассказывается про одно, во второй про другое, в третьей опять про первое. Представили? Смогли бы...

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

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

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

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

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

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

Восемь советов по началу работы с DevOps Уже мало у кого ещё остаются сомнения в том, что DevOps в настоящее время становится мейнстримом. Но если эта парадигма ещё не укоренилась в вашей организации, с чего стоит начать свой путь в DevOps? Также возможно, что ваша организация уже начала своё путешествие &mdas...

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

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

Как приложения попадают в топ App Store Попасть в топ-10 приложений не так-то просто В августе 2019 года App Store исполнилось 11 лет. За этот относительно небольшой промежуток времени, Apple совершила самую настоящую революцию на рынке мобильных приложений. Сейчас фирменный каталог насчитывает сотни тысяч приложе...

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

Регулировка скорости отрыва на Photon 1 Многие люди сталкивались с большой скоростью отрыва слоя на первой серии Фотон. Регулировка изменением G кода возможна и известна многим. Все было нормально до того момента, как пользователи обновились до версии  бета 17 прошивки фотона. Я понимаю, что кто-то уже догада...

Как включить новый раздел «Обзор» в Chrome на Android? Google настолько часто обновляет свои мобильные браузеры Chrome и Chrome Canary для Android, что порой кажется, уследить за всеми нововведениями просто невозможно. Любопытные разработчики и обычные пользователи с выходом каждой новой бета-версии начинают перелопачивать весь...

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

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

[Перевод] JDK 9/JEP 280: конкатенация строк никогда больше не будет прежней И снова здравствуйте. Как мы уже писали, на следующей неделе стартует новая группа обучения по курсу «Разработчик Java», по устоявшейся традиции делимся с вами переводом интересного материала по теме. Начиная с JDK 9 конкатенация строк претерпела значительные изменения. JE...

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

[Перевод] Самое простое объяснение принципа работы современных алгоритмов симметричного шифрования (Нашёл в твиттере тред с очень крутым объяснением работы симметричных шифров. Его написал Colm MacCárthaigh один из основных контрибьюторов Apache. Я спросил разрешение Колма на перевод, он любезно согласился). Я объясню вам доступным языком, что происходит при шифровании да...

Анализ производительности виртуальной машины в VMware vSphere. Часть 1: CPU Если вы администрируете виртуальную инфраструктуру на базе VMware vSphere (или любого другого стека технологий), то наверняка часто слышите от пользователей жалобы: «Виртуальная машина работает медленно!». В этом цикле статей разберу метрики производительности и расскажу, ...

[Перевод] Настало ли время для URL, содержащих эмодзи? Домены с эмодзи существуют уже много лет, но до сих пор не обрели популярность [К сожалению, редактор Хабра не позволяет вставлять в текст эмодзи. Эмодзи-ссылки можно найти в оригинальном тексте статьи (копия статьи на сайта Archive) / прим. перев.] Если вы введёте в адре...

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

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

«Пока, Google!». Как отключить Google Ассистента Иногда голосовой помощник от поискового гиганта, Google Ассистент, может быть действительно очень полезным инструментом, который может как помочь найти что-то в интернете, так и распознать песню, отыскать что-то на карте и массу чего еще. Только вот бывает и так, что назойл...

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

«А вместо процессов у них там практики…» Такую фразу довольно часто можно услышать или прочитать в обсуждении новой версии ITIL® 4. Корректно ли это утверждение? Насколько «вместо»? Есть ли разница между процессами и практиками? Действительно, существенную часть объёма книги составляет раздел, в котором для тех, кт...

MVCC-3. Версии строк Итак, мы рассмотрели вопросы, связанные с изоляцией, и сделали отступление об организации данных на низком уровне. И наконец добрались до самого интересного — до версий строк. Заголовок Как мы уже говорили, каждая строка может одновременно присутствовать в базе данных в не...

Должны ли строки в Python быть итерируемы? И сотворил Гвидо строки по образу C, по образу массивов символов сотворил их. И увидел Гвидо, что это хорошо. Или нет? Представьте, что вы пишете совершенно идиоматичный код по обходу неких данных с вложенностью. Beautiful is better than ugly, simple is better than complex,...

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

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

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

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

[Перевод] Обработка 40 ТБ кода из 10 млн проектов на выделенном сервере с Go за $100 Написанной мной инструмент командной строки Sloc Cloc and Code (scc), который теперь доработан и поддерживается многими отличными людьми, подсчитывает строки кода, комментарии и оценивает сложность файлов внутри каталога. Здесь нужна хорошая выборка. Инструмент подсчитывает ...

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

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

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

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

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

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

Выделение активной строки таблицы на чистом CSS Несколько дней назад мой друг попросил помочь с решением задачи, которая была на его собеседовании. Интервьюер дал ему следующий фрагмент кода: tbody:hover tr { opacity: 0.24; } Также добавил: “Сейчас, при наведении на таблицу, все строки становятся блеклыми. А требуется ...

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

Google сделала Chrome для Android по-настоящему удобным. Наконец-то Компания Google испытывает обновленный интерфейс адресной строки в Chrome для устройств под управлением Android, узнали журналисты 9To5Google, изучив нововведения бета-версии мобильного веб-браузера. В основном все изменения, которые должен привнести будущий апдейт, сосредо...

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

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

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

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

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

[Из песочницы] Помогаем Queryable Provider разобраться с интерполированными строками Тонкости Queryable Provider Queryable Provider не справляется вот с этим: var result = _context.Humans .Select(x => $"Name: {x.Name} Age: {x.Age}") .Where(x => x != "") .ToList(); О...

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

Полный привод в матрицах 4×4 Само умножение нехитрое, элементы строк умножаются на столбцы поэлементно и складываются. Как корректно умножать можно посмотреть здесь Языковая часть написана на Delphi, а для оптимизации код выполнен с применением встроенного 64-х битного ассемблера. Рассматриваются 4 прак...

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

Firefox и Chrome объявили войну всплывающим уведомлениям В теории эта опция вполне может быть полезна, но на практике лишь раздражает пользователей. Как показало проведенное Mozilla Foundation исследование, 99% таких предложений просто игнорируются пользователями, а 48% - отклоняются.Но дело не только в раздражении. Всплывающие ув...

Элементарный Canvas Если вы изучаете веб совсем недавно, но уже успели увидеть различные красивые эффекты на сайте, по типу системы частиц или какие либо игры разработанные на canvas'e и вас это заинтриговало, но изучать что-то новое очень страшно, то я вам готов продемонстрировать, как за 50 с...

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

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

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

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

Microsoft представила Windows Terminal – новую командную строку для Windows В рамках стартовавшей вчера конференции для разработчиков Build 2019 компания Microsoft представила новое приложение для Windows 10 под названием Windows Terminal, которое объединит в едином интерфейсе командные строки PowerShell и CMD, а также подсистему Windows Subsystem f...

[Из песочницы] Windows service. Поиск системных ошибок и отображение их в WinForm C# В этой статье мы разберем как с нуля создать приложение, которое будет работать со службами windows и отображать системные ошибки в WinForm (C#). План этой статьи: Создание службы Event Viewer Код службы Проверка работы службы(Запуск службы вручную) Отображение WinForm ...

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

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

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

Боитесь привидений? Ученые говорят это потому, что вы сами так хотите Костюм на Хэллоуин или настоящий призрак? Знаете какие дома в Америке и Европе продаются лучше других? Дома с привидениями. Да, вопреки сюжетам популярных фильмов ужасов. Одной из причин такого поведения взрослых людей является их желание соприкоснуться с чем-то сверхъестест...

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

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

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

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

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

Как активировать новое меню расширений в Google Chrome Как скрыть расширения в Google Chrome Расширения являются ключевой функцией Google Chrome, которая помогла ему обрести популярность. Благодаря расширениям он, по сути, превратился из просто удобного браузера в подобие операционной системы с собственным ПО и диспетчером задач...

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

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

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

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

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

На мобильных выйдет очень красивая головоломка Dream Detective Студия FunPlus, в портфолио которой есть такие популярные развлечения как King of Avalon, Guns of Glory и Lumia Saga, готовит необычную головоломку под названием Dream Detective. Это игра-расследование, в которой вам предстоит путешествовать по Земле снов и раскрывать причу...

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

[Перевод] Когда «Zoë» !== «Zoë», или почему нужно нормализовывать Unicode-строки Никогда не слышали о нормализации Unicode? Вы не одиноки. Но об этом надо знать всем. Нормализация способна избавить вас от множества проблем. Рано или поздно нечто подобное тому, что показано на следующем рисунке, случается с любым разработчиком. «Zoë» — это не «Zoë» Читать...

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

Доверяй, но проверяй! Как проверить свою модель с помощью облака IBM (Watson OpenScale) Проблема доверия предсказаниям, сделанных моделями машинного обучения, становится все более и более актуальна. Чем существеннее решение, принимаемое на основании этого предсказания, тем меньше доверия. Вызвано это в первую очередь тем, что далеко не всегда понятно, что же ...

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

Помощь девопсам по внедрению PKI Ключевые интеграции Venafi У девопсов и так много работы, а от них ещё требуют экспертных знаний по криптографии и инфраструктуре открытых ключей (PKI). Это неправильно. Действительно, у каждой машины должен быть валидный TLS-сертификат. Они нужны для серверов, контейнеро...

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

[Из песочницы] Почему вы должны думать о функциональном программировании Привет, Хабр! Представляю вашему вниманию перевод своей статьи «Why you should think about functional programming», посвященной функциональному программированию. Почему вы должны думать о функциональном программировании? Давайте ответим на следующие вопросы: всегда ли в...

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

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

Использование DiagnosticSource в .NET Core: практика В предыдущей статье я рассказал про механизм DiagnosticSource и на простом примере показал, как с его помощью можно перехватывать запросы в базу данных через классы SqlConnection и SqlCommand и измерять время их выполнения. В настоящее время DiagnosticSource уже используется...

Новая сборка Microsoft Edge Dev принесла функцию «Коллекции» Компания Microsoft выпустила новую сборку Microsoft Edge на базе Chromium под номером 78.0.256.2 для канала Dev, которая принесла с собой функцию «Коллекции», поддержку системного меню «Поделиться» в Windows 10, а также включает в себя большое количество исправлений и улучш...

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

[Перевод] Воссоздание шрифтов с экрана ЭЛТ Изучение глифов на терминалах DEC VT100 и VT220 Недавно я немного увлёкся эмуляцией аналоговых медиа: хотелось воссоздать растровую графику ЭЛТ, как на «стеклянных терминалах» прошлого, таких как культовая серия VT от Digital Equipment Corporation (DEC). В процессе возник ...

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

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

Apple и Xiaomi лидируют в России и речь не о смартфонах Аналитики «Яндекс.Маркета» изучили спрос на наушники, Bluetooth-гарнитуры, портативную и компьютерную акустику и узнали, какие модели были популярны в этом году. Самым востребованным брендом в категории наушников и гарнитур оказался Apple, а моделью — ...

Количество и качество DDoS-атак растет Кроме того, по данным "Лаборатории Касперского", во втором квартале была зафиксирована атака длительностью 509 часов (21 день). Это новый рекорд: ранее он составлял 329 часов. В целом же доля длительных атак стала меньше, чем в начале года.Количество DDoS-атак, нап...

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

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

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

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

Google рассказала разработчикам, как использовать темную тему в Android Q Во время прошедшего вчера мероприятия Google I/O компания, наконец, официально представила Dark Theme (темную тему или темный режим) для Android 10 Q. Мы, конечно, ожидали, что это случится, так как предпосылки к этому были уже давно, но до сих пор мы не услышали ни слова о...

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

ФАС оштрафовала Google за рекламу услуг по написанию дипломов Комиссия ведомства установила, что при наборе в строке поиска Google словосочетания "дипломная работа заказать" под строкой поиска отображались объявления о соответствующих услугах с пометкой "реклама". Штраф за это нарушение составил 100 тыс. рублей.

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

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

В новой версии MIUI для смартфонов Xiaomi и Redmi можно ограничить время использования каждого приложения Ранее компания Xiaomi представила в MIUI 10 функцию под названием Screen Time, которая позволяет узнать количество полученных уведомлений и разблокировок смартфона, а также точное время использования различных приложений. В ближайшее время вы сможете установить вре...

Выявляем процессы с дисковой активностью в Linux TL;DR: статья рассказывает об удобном, быстром и надежном способе определения Linux-программ, записывающих данные на диск, что помогает в выявлении большой или аномально частой нагрузки на дисковую подсистему, а также позволяет оценить накладные расходы файловой системы. Это...

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

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

[Перевод] Параллельные запросы в PostgreSQL В современных ЦП очень много ядер. Годами приложения посылали запросы в базы данных параллельно. Если это отчетный запрос ко множеству строк в таблице, он выполняется быстрее, когда задействует несколько ЦП, и в PostgreSQL это возможно, начиная с версии 9.6. Понадобилось 3 ...

Хороший, плохой, злой… и другой В ноябре 2014 года я делился с читателями своими мыслями по поводу нового алгоритма агрегирования, названного мной «Среднее с динамическими весами». Трудно представить, но с тех прошло уже 4.5 года. Еще труднее представить, чтобы с тех пор по данной теме у нас не появилось н...

[Из песочницы] Распределённый чат на Node.JS и Redis Небольшой вопрос/ответ: Для кого это? Людям, которые мало или вообще не сталкивались с распределенными системами, и которым интересно увидеть как они могут строится, какие существуют паттерны и решения. Зачем это? Самому стало интересно что и как. Черпал информацию с разных...

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

Умные алгоритмы обработки строк в ClickHouse В ClickHouse постоянно возникают задачи, связанные с обработкой строк. Например, поиск, вычисление свойств UTF-8 строк или что-то более экзотическое, будь то поиск типа учёта регистра или поиск по сжатым данным. Всё началось с того, что руководитель разработки ClickHouse Лёш...

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

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

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

Глобальная стабильная версия MIUI 10 вышла на Redmi Note 7 Pro Компания Xiaomi начала распространение глобальной стабильной версии прошивки MIUI 10.2.6.0PFHINXM, которая распространяется по воздуху. Первой страной, в которой стало доступно обновление, оказалась Индия. В ближайшие прошивка будет выпущена и в других регионах. Да...

В Windows появится командная строка со смайлами и ядром Linux Приложение Windows Terminal появится в общем доступе летом и станет единым интерфейсом для взаимодействия пользователя со средами CMD (классическая командная строка), PowerShell (средство автоматизации, включающее в себя командную строку и язык сценариев) и Windows Subsystem...

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

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

Программирование микроконтроллеров ESP8266/ESP32 написанием YAML конфиг файлов Будучи поклонником системы управления "умным домом" Home Assistant я недавно открыл для себя интересный инструмент, тесно с HA интегрированный и ранее на Хабре не освещенный — ESP Home (ранее ESPhomeYAML). ESP Home представляет собой набор библиотек и инструментов, генерирую...

Э — Эксперимент. Или как наука помогает проектировать интерфейсы Читая различные книги и статьи по психологии, сохранила себе в копилку некоторое количество интересных экспериментов, которые могут натолкнуть на мысли и решения при проектировании интерфейса, дизайна, подаче материала (товара и пр.). Описанные эксперименты не новы, но их...

Сколько мегапикселей необходимо камере смартфона? ... Много мегапикселей — вредно. Такого мнения придерживается целый ряд экспертов, но производители продолжают гонку мегапикселей. Есть немало тех пользователей, которые «клюют» на количество мегапикселей и компании с радостью этому потакают. В результаты сего...

[Перевод] Time Travel Debugging в Visual Studio Enterprise 2019 Превью-версия Time Travel Debugging (TTD) в Visual Studio Enterprise 2019 позволяет записывать выполнение веб-приложения, запущенного на виртуальной машине Azure, а затем точно восстанавливать и воспроизводить алгоритм. TTD интегрируется с нашим предложением Snapshot Debugge...

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

Klipper TMC2208 UART Не большое продолжение темы TMC2208 v2 UART.Многих заинтересовала тема прошивки Klipper и UART. Что-ж, попробую удовлетворить спрос.Для чего? Сами по себе драйвера тихие, но глючные и слабые из-за своего автоматического режима работы и частым явлением является пропуск шагов....

Муки с калибровкой стола Re-De-Bot на Т-образных шпильках или как в прошивке Marlin отключить выключение питания двигателей по оси Z Собрал себе принтер Re-De-Bot.В начале, по оси Z, я использовал обычные оцинкованные шпильки из строительного магазина, отнюдь не идеальной прямоты, диаметром 8 мм. Качество печати  получилось на 3+. Но при этом я ждал из китая Т-образные шпильки. И вот они наконец приш...

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

Мнение: 4 основные камеры — новый тренд на рынке смартфонов или пыль в глаза потребителей? Фотография при помощи смартфона становится все более популярной. А значит все востребованнее становятся и модели телефонов, обеспечивающие лучшее качество снимков. И если раньше можно было улучшать оптику, объективы и матрицу, то теперь этого уже недостаточно. После более и...

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

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

NASA опровергла одну из теорий появления воды на Луне Из-за отсутствия атмосферы и слабой гравитации, на Луне не может накапливаться большое количество воды. Несмотря на это, в небольших количествах она там все-таки есть — в очередной раз это было доказано в 2018 году, когда индийский спутник «Чандраян-1» окончательно подтверд...

[Из песочницы] Domain Driven Design: Value Objects и Entity Framework Core на практике На Хабре и не только написано приличное количество статей про Domain Driven Design — как в общем про архитектуру, так и с примерами на .Net. Но при этом зачастую слабо упоминается такая важнейшая часть этой архитектуры, как Value Objects. В этой статье я постараюсь раскрыт...

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

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

[Перевод] Возможности современного JavaScript, о которых вы могли не знать Несмотря на то, что в последние семь лет я пишу на JavaScript почти каждый рабочий день, должен признаться, что уделяю мало внимания сообщениям о нововведениях от ES. Главные возможности вроде async/await и прокси — это одно, но ещё каждый год идёт поток мелких поэтапных и...

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

[Из песочницы] Хранение настроек в памяти Базового устройства Привет! Если Вам посчастливилось подержать в руках микроконтроллер ESP32 (мне посчастливилось больше и у меня в руках M5Stack) от китайской компании ESPRESSIF, то этот пост, возможно, будет полезен. Бывает ситуация, когда необходимо сохранить какие-то параметры в энергонеза...

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

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

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

Говорят, Haskell — язык для гениев и академиков. Правда? Однажды я разговаривал с основателем израильского стартапа, который разрабатывал скоростную базу данных на GPU. В их стеке были Haskell и C++, и основатель жаловался, как тяжело найти людей в команду. В Москву он прилетал в том числе искать хороших программистов. Я остор...

Сравнение репитеров сотовой связи. RF-Link 1800/2100-75-23 и AliExpress Noname Для сравнения выбраны модели идентичные по характеристикам. Aliexpress желтый Noname и RF-Link 1800/2100-75-23 – по паспорту оба усиливают диапазоны 1800 и 2100 МГц на 75 дБ и имеют выходную мощность 200 мВт (23 дБм). Важное замечание в статье не рассматривается ценовая разн...

[Перевод] Механизм Heap only tuples в PostgreSQL Postgresql отличается от других СУБД тем, что в ней при операции UPDATE, изменений в существующей строке не происходит, а вместо этого делается копия строки, которая отличается от оригинала значениями колонок, затронутых апдейтом — в оригинале они старые, а в копии — изменён...

6 советов по измерению удовлетворенности пользователей Часто проводится много дискуссий о том, что измерять при оценке  службы поддержки ИТ и управления ИТ-услугами. В книгах ITIL предлагают множество всевозможных параметров: ключевые показатели эффективности (KPIs), критические факторы успеха (CSF) — так много, что л...

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

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

[Из песочницы] Драйвер шагового двигателя. Тестируем микросхему L9110 Откуда «ножки» растут В настоящее время стали доступны и приобрели популярность различные станки с программным управлением. Это лазерные и фрезерные резчики и гравёры. А так же 3D принтеры. Все эти станки имеют один общий узел — шаговый двигатель. И этому двигателю нужен др...

[Из песочницы] Open Session In View в Spring Boot: Скрытая угроза Все здесь правы, каждый по-своему, и, следовательно, все здесь не правы. "Сказка о Тройке" (А. и Б. Стругацкие)Если вы используете Spring Data JPA, то после обновления на Spring Boot 2 при старте приложения можете заметить в логе новое предупреждение: spring.jpa.op...

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

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

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

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

Реализация пула соединений в WCF для .Net Core с использованием HttpClientFactory Наш продукт разрабатывается на платформе .Net Core 2.2 с использованием WCF 4.5 для взаимодействия с SOAP сервисом клиента. В процессе работы сервиса разработчики шины данных заметили высокую нагрузку на сервер. Далее стали появляться проблемы с доступом к сервису. В результ...

Видеокарт GeForce RTX Super и GeForce GTX Super станет больше Если вы думали, что линейка 3D-карт Nvidia Super уже сформирована и не нуждается в дополнениях, то это не так. Как пишет источник, компания работает над пятью новыми моделями. Правда, они предназначены не для настольных компьютеров, а для ноутбуков. Новинки станут ответ...

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

Xiaomi «оптимизирует» и частично сократит количество рекламы в MIUI Представители Xiaomi уже неоднократно высказывались в пользу сокращения рекламы в MIUI. Вот и на этот раз Бай Пэн (Bai Peng), главный менеджер отдела интернет-бизнеса Xiaomi, высказался в том же ключе. В компании на самом деле работают над двумя вариантами, которые, су...

Первые сведения о нововведениях Android Q beta 5 Недавний отчет разработчиков с форума XDA Developers показывает, что новая бета-версия десятого Android (Android Q beta 5) будет поставляться с новыми навигационными жестами. Согласно последним сведениям, эта бета-версия от Google включает функцию бокового возврата...

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

Слухи: первое живое фото и опыт использования Galaxy S10+ После большого количества слухов о новом флагмане Samsung Galaxy S10+ и публикаций его визуализаций появилась первая живая фотография. Она была сделана пассажиром автобуса, совершающего рейсы к штаб-квартире Samsung в Сувоне (Корея) и опубликована участником форумов Reddit H...

Mozilla назвала «вредным» предложение Google о распространении веб-пакетов с цифровой подписью Механизм Signed HTTP Exchanges (SXG) Месяц назад на конференции для разработчиков компания Google предложила технологию «порталов», которая призвана обеспечить новый способ загрузки и навигации по веб-страницам. По сути, <portal> — это более продвинутая и современная...

Улучшаем Flyingbear Ghost часть №2 Вот наконец получилось склепать видеоролик и вот с чем я хочу поделиться:1. Решил я раскошелится и поставил клон Btech Боуден экструдера Dual Drive (качеством доволен нареканий нет), а также тефлоновую трубку с внутренним диаметром 1.9 мм (за счет меньшего внутреннего диамет...

Что такое «минимальная жизнеспособная практика (MVP)»? В новой книге ITIL ® 4 Create, deliver and support, которая, правда, пока что доступна только по подписке, описан довольно «простой» подход к определению охвата любой практики. Он называется «минимальная жизнеспособная практика» (minimum viable p...

[Из песочницы] Что такое информация? Исследование How Much Information, проведенное в 2009 году показало, что количество потребляемой в неделю информации с 1986 года выросло в 5 раз. С 250 тысяч слов в неделю до 1,25 миллиона! С тех пор это цифра увеличилась в разы. Далее следуют более ошеломительные показатели...

Полезный тест: Core i9-9900K против Ryzen 9 3900X, Ryzen 7 3700X, Ryzen 7 2700X и Ryzen 7 1700X на одинаковых частотах Многочисленные тесты процессоров Ryzen 3000 показали, что при сходных ценах решения Intel в сравнении с новинками AMD полностью неконкурентоспособны. Но многие поклонники Intel ещё с выходом первого поколения CPU Ryzen упрекали AMD в том, что она играет нечестно, и её п...

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

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

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

Спортфишка — ваше место для получения дополнительного заработка В современном мире каждый из нас неоднократно в интернете находился в поисках успешного варианта заработка, который вы сможете найти здесь: http://sportfishka.com/. Это и понятно, ведь всем хочется жить достойно, получать хорошие деньги, наслаждаться этой жизни в конце концо...

WWDC 2014: история появления Swift Главное событие пресс-конференции по случаю открытия WWDC 2014 года случилось в самом её конце. Ему уделили совсем немного времени. Крис Латнер, умеющий захватить внимание аудитории и делать с ней все что захочет, был скован и непохож на себя. И тем не менее, WWDC 2014 вошл...

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

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

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

В macOS Catalina можно подписывать документы с помощью iPhone и iPad Подпись цифровых документов — дело достаточно муторное. Как правило, чтобы подписать PDF-файл, его нужно сначала распечатать, а уже потом, подписанный, отсканировать. Apple заметно упростила эту процедуру на Mac, но раньше для подписи документов в «Просмотре» был нуже...

Функциональное программирование с точки зрения EcmaScript. Чистые функции, лямбды, имутабельность Привет, Хабр! Сегодня мы начнём говорить на очень важную тему — функциональное программирование. Значение ФП в современной веб-разработке трудно переоценить. Архитектура любого крупного современного проекта включает в себя пользовательские библиотеки функций и на собеседов...

[Перевод] Python как предельный случай C++. Часть 2/2 Продолжение. Начало в «Python как предельный случай C++. Часть 1/2». Переменные и типы данных Теперь, когда мы окончательно разобрались с математикой, давайте определимся, что в нашем языке должны означать переменные. В С++ у программиста есть выбор: использовать автоматичес...

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

Владельцы OnePlus 7 Pro подвергли сомнению объективность DxOMark. OnePlus обещает исправиться OnePlus 7 Pro, который был выпущен в мае этого года, высоко оценили специалисты лаборатории DxOMark, поставив ему 111 баллов, тогда как лидеры рейтинга Huawei P30 Pro и Samsung Galaxy S10 5G имеют всего на 1 балл больше. Однако реальные пользователи OnePlus 7 Pro подвер...

Воссоздан очень редкий Jaguar 1963 года Diez Concepts Реконструкция старой модели была создана специалистом Марком Диезом (Marco Diez), известным по другим подобным работам, при помощи компаний Fast Cars Ltd. и RS Panels. Машину представили на мероприятии The Quail, A Motorsports Gathering в Калифорнии, США. ...

[Перевод] Улучшенные четыре правила проектирования ПО Привет, Хабр! Представляю вашему вниманию статью "Four Better Rules for Software Design" автора David Bryant Copeland. David Bryant Copeland — архитектор ПО и технический директор Stitch Fix. Он ведет свой блог и является автором нескольких книг. Мартин Фаулер недавно создал...

[Перевод] Гибкие таблицы на CSS Grid Просмотр списка лидов («холодных» контактов) Поскольку мы уже запустились, я, наконец, могу рассказать о секретном проекте, над которым работал последние два года. Одна из интересных функций Teamwork CRM — просмотр списка (list view). Это мощный компонент, который встреч...

[Из песочницы] Проблемы основных паттернов создания data-driven apps на React.JS Для создания интерфейсов React рекомендует использовать композицию и библиотеки по управлению состоянием (state management libraries) для построения иерархий компонентов. Однако при сложных паттернах композиции появляются проблемы: Нужно излишне структурировать дочерние эле...

Расчет нулевой гипотезы, на примере анализа зарплат украинских программистов Решил поделиться, да бы и самому не забывать, как можно использовать простые статистические инструменты для анализа данных. В качестве примера использовался анонимный опрос относительно зарплат, стажа и позиций украинских программистов за 2014 и 2019 год. (1) Этапы анализа...

Процессоры AMD Ryzen 7 3700X и Ryzen 9 3900X: новая микроархитектура Zen2 и уже 12 ядер на знакомой платформе AM4 Повышение «однопоточной» производительности — задача сложная. Зато если получится, итог будет кумулятивным. И Zen2 это в очередной раз блестяще подтверждает: новые ядра даже при сохранении их количества быстрее всегда и всюду. Не надо задумываться, насколько хорошо используе...

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

Фильтр Калмана для минимизации энтропийного значения случайной погрешности с не Гауссовым распределением Введение На Habr математическое описание работы фильтра Калмана и особенности его применения рассматривались в следующих публикациях [1÷10]. В публикации [2] в простой и доходчивой форме рассмотрен алгоритм работы фильтра Калмана (ФК) в модели «пространства состояний», Сл...

[Перевод] Kubernetes tips and tricks: как повысить продуктивность Kubectl — это эффективный инструмент командной строки Kubernetes и для Kubernetes, пользуемся мы им ежедневно. У него много функций, и с ним можно развертывать систему Kubernetes или его базовые фичи. Вот вам полезные советы, как быстрее кодить и деплоить в Kubernetes. Чита...

[Перевод] Как была устроена графика NES Выпущенная в 1983 году домашняя консоль Nintendo Entertainment System (NES) была дешёвой, но мощной машиной, достигшей феноменального успеха. При помощи блока обработки изображений (Picture Processing Unit, PPU) система могла создавать достаточно впечатляющую по тем времена...

[Перевод] Проблема со связанными переменными: как превратить оптимизатор из врага в друга Автор статьи – Виктор Варламов, OCP. Оригинал статьи опубликован 07.07.2017. Отдельное спасибо автору перевода — brutaltag. В нашей системе подготовки отчетности обычно выполняются сотни длительных запросов, которые вызываются различными событиями. Параметрами запросов с...

JS. Proxy. Подводный камень, о котором нужно знать Эта статья будет интересна тем кто использует Proxy, для реактивности или рефлексии. Поведение JS методов, нам хорошо знакома если мы просто используем их в рамках объекта. Если метод передается через свойство другому объект, то он работает с тем this, который определен в р...

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

[Перевод] Теория вместо эвристики: становимся лучше как frontend-разработчики Перевод Becoming a better front-end developer using fundamentals instead of heuristics Наш опыт показывает, что не имеющие технического образования разработчики и самоучки чаще полагаются не на теоретические принципы, а на эвристические методы. Эвристика — шаблоны и пров...

Минтруд и «Ростелеком» разошлись в оценке количества чиновников, которые получат смартфоны на отечественной ОС Sailfish В мае прошлого года на Хабре сообщалось, что федеральные чиновники будут работать с мобильными устройствами на базе ОС Sailfish. В начале 2018 года был подготовлен проект по обеспечению представителей российских властей новыми устройствами, который подали на рассмотрение в...

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1 Серверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями. Наше серверное приложение — это монолит, представ...

Dota 2 – игра покорившая миллионы Dota 2 является одной из самых популярных онлайн игр, если не самой популярной. Число игроков, которые играют в данную игру неуклонно растет. Несмотря на определенное количество героев и итемов, которые можно использовать в игре, каждая игра непохожа на предыдущую. Практичес...

Кейс: Как узнать сколько бабла будет у вашего ютуб-канала в будущем Есть сайт на котором вы можете узнать сколько вы будете зарабатывать на своём Ютуб-канале через 2 месяца, полгода, год, 5 лет. Вот этот сайт — https://socialblade.com/ Вводите в поисковую строку урл вашего Ютуб-канал и получаете нужную статистику. Ну, а затем в меню на...

Игры, которые яростно просятся с ПК и консолей на Андроид и IOS В 2018 году вышло немало хороших мобильных игр: Oddmar, Pocket City, Rebel Inc., Off The Road, Brawl Stars, Grimvalor и некоторые другие. Но тенденция такова, что среди наиболее запомнившихся — не эксклюзивы, а порты. Например, Fortnite – одна из самых популярных игр в истор...

Функция «Коллекции» стала доступна в Microsoft Edge Canary Пользователи предварительной версии Microsoft Edge Canary теперь могут опробовать новую функцию «Коллекции», которая была анонсирована в рамках конференции разработчиков Build 2019. Новая функция доступна в актуальных сборках браузера в качестве экспериментального флага. «К...

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

Просел трафик после изменений на сайте ИМ – как восстановить? Вопрос клиента: После изменения h1, Title и Description на товарных карточках и на главной странице просел трафик из поисковиков на 20%. Интернет-магазину 4 года, заголовки менялись примерно на 2 тыс. страниц. Суть изменений – сделали более точное вхождение и привели все в е...

Краеугольные камни уничтожения медленного кода в Wolfram Language: ускоряем код в десятки, сотни и тысячи раз Скачать файл с кодом и данные можно в оригинале поста в моем блоге Картинка к вебинару и посту взята не просто так: в определенном смысле символьное ядро Wolfram Language можно сравнить с Таносом — если бы его мощь была бы направлена в правильное русло, он мог бы стать самы...

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

Как Apple определяет, какое устройство из лежащих рядом поймет команду «Привет, Siri» Еще в iOS 10 появилась функция, которая активирует голосового ассистента операционной системы по команде «Привет, Siri» не на всех устройствах сразу, а только на нужном. Но как Apple определяет нужное устройство, и чего следует ожидать, когда вокруг вас несколько устройств ...

Разработчик показал, как сделать iOS 13 в разы удобнее Закрытость iOS серьезно усложняет жизнь пользователям iPhone и iPad. Конечно, с одной стороны, хорошо, что таким образом Apple пытается обеспечить нашу с вами безопасность. Но ведь с другой, зачастую все эти системные ограничения, запрещающие использование сторонних приложе...

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

Выбор аудиотехники 2019 по версии Яндекс-Маркет Аналитики Яндекс.Маркета изучили спрос на наушники, Bluetooth-гарнитуры, портативную и компьютерную акустику и узнали, какие модели были популярны в этом году. Наушники и Bluetooth-гарнитуры Самым востребованным брендом оказался Apple, а моделью — Apple AirPods. ...

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

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

Топ-5 скрытых функций Chrome для Android, о которых вы не знали Google Chrome – даже мобильный – полон огромного количества незаявленных функций. Речь, конечно же, идет о так называемых флагах, которые скрыты от рядового пользователя и, по сути, представляют собой экспериментальные нововведения, чья реализация все еще находится под вопр...

Performance tuning and troubleshooting баз данных в наши дни К сожалению, сейчас роль специалистов по Performance tuning и troubleshooting баз данных урезается только до последнего — troubleshooting'a: практически всегда к специалистам обращаются, только когда проблемы уже достигли критической точки, и их нужно решить «еще вчера». Да ...

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

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

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

SonarQube и IntelliJ IDEA: правильная интеграция SonarQube — отличный инструмент для внедрения статического анализа кода в процесс разработки ПО. Он поддерживает как используемую у нас в компании Java, так и большое количество других языков программирования. На данный момент этот инструмент плотно вошёл в нашу жизнь, сле...

Самые большие телескопы. От записной книжки и глаза до 340 мегапиксельной камеры и дата-центров. Часть 1 Прошло почти 11 лет после того, как я окончил КНУ им. Т. Шевченко по специальности физик-астроном. Это были интереснейшие годы в развитии науки и астрономии в частности, которые мною были упущены, так как разум был поглощён проектом, сгенерировавшим трафика больше, чем вся Б...

Apple выпустила iOS 13 beta 6, macOS 10.15 beta 6 и tvOS 13 beta 6 Сегодня, 7 августа, Apple выпустила шестую бета-версию iOS 13 для разработчиков. Несмотря на то что обычно в Купертино предпочитают выпускать тестовые версии обновлений в понедельник или вторник, в последнее время компания все реже соблюдает сложившееся правило, отталкиваяс...

Dark mode: за и против использования тёмного режима Тёмные режим или dark mode - это одна из наиболее популярных опций у пользователей современных смартфонов. Это касается как операционных систем от Apple и Google, так и множества приложений - тёмный режим интегрирован в пользовательский интерфейс почти везде. Оказывается,...

[Перевод] Дизайн низкополигональных персонажей Персонаж — это личность. Без истории нет индивидуальности. Каждый хороший персонаж начинается с истории, а дизайн персонажа должен рассказать эту историю. В своей предыдущей статье How To Make Low Poly Look Good я говорил, что главная цель низкополигонального (low poly) ди...

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

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

[recovery mode] Вышел Perl 5.30 Вчера, 23 мая, состоялся релиз Perl 5.30.0. Новость была объявлена в Usenet-группе perl.perl5.porters одним из ключевых разработчиков Perl — Sawyer X. По сравнению с предыдущим стабильным релизом, 5.28.0, вышедшим около 11 месяцев назад, было изменено около 620.000 строк код...

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

Обеспечение безопасности в беспроводных протоколах на примере LoRaWAN Привет, Хабр. Мне хотелось бы в очередной раз поговорить о том, как обеспечивается базовый (читай: минимально необходимый) уровень безопасности данных в беспроводных сетях, используемых в IoT-устройствах, на примере LoRaWAN. Почему именно LoRaWAN? Во-первых, потому, что эт...

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

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

[Из песочницы] Зачем нужны ranges из C++20 в простой числодробилке? В последнее время интервалы (ranges), которые должны войти в стандарт C++20, довольно много обсуждают, в том числе и на Хабре (пример, где много примеров). Критики интервалов хватает, поговаривают, что они слишком абстрактны и нужны только для очень абстрактного кода читаем...

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

Huawei Harmony OS станет одной из лучших в 2020 В недавнем интервью старший вице-президент Huawei по связям с общественностью Джой Тан (Joy Tan) заявил, что в коде операционной системы Harmony OS меньше строк, чем в коде Android, при этом новая операционная система имеет более высокий уровень безопасности. Harmony OS...

А не фигню ли я опять делаю? Как и зачем внедрять метрики качества Привет, Хабр! Когда-то мы использовали метрику «Вроде бы стало лучше» для оценки качества наших релизов. Но потом мы решили довериться чему-то более надёжному. В этой статье я расскажу о том, как искал гайд по метрикам, не нашёл и создал свой. Читать дальше →

[Перевод] Автоматические canary деплои с Flagger и Istio CD признано в качестве практики корпоративного программного обеспечения и является результатом естественной эволюции устоявшихся принципов CI. Однако CD по-прежнему является довольно редким явлением, возможно, из-за сложности управления и страха перед неудачными деплоями, в...

2 лайфхака: альтернативы классическому поиску в Microsoft SQL Server Привет, Хабр! Наши друзья из Softpoint подготовили интересную статью про Microsoft SQL Server. В ней разбирается два практических примера использования полнотекстового поиска: Поиск по «бесконечным» строкам (напр., Комментарии) в противовес обычному поиску через LIKE; Пои...

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

Google заявила о достижении «квантового превосходства» Результаты работы коллектива исследователей опубликованы в журнале Nature.Термин "квантовое превосходство" используется для обозначения такого рода скорости вычислений, которая на нынешних компьютерах заняла бы тысячи лет.Задача, решение которой позволило исследова...

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

[Перевод] Скорость хранилища подходит для etcd? Спросим fio Короткая история о fio и etcd Производительность кластера etcd во многом зависит от производительности его хранилища. etcd экспортирует некоторые метрики в Prometheus, чтобы предоставить нужные сведения о производительности хранилища. Например, метрику wal_fsync_duration_se...

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

[Перевод] Пришло время заменить GIF на AV1 видео Сейчас 2019 год, и нам пора бы принять решение относительно GIF (нет, речь не об этом решении! Здесь мы никогда не договоримся! — тут речь о произношении в английском, для нас это не актуально — прим. перев.). GIFы занимают огромное количество места (обычно по несколько ме...

Нам пишут: Эффект низкой базы Существует три вида лжи: ложь, наглая ложь и статистика. (с) Чарльз-Вентворт Дильк, английский политический деятель. Самого господина Дилька уже мало кто помнит, но его крылатое выражение актуально по сей день. Причина, по которой Сэр Чарльз-Вентворт поставил научную отрасл...

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

Повышаем информативность ошибок в Go – github.com/ztrue/tracerr После многолетнего опыта работы с php и js, я привык иметь в ошибках стектрейс и смотреть на место, где произошла ошибка прямо из эррор-репорта. Пересев на Go пару лет назад, я был несколько удивлен, что в Go другие правила и нужно угадывать стектрейс по какой-нибудь строке ...

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

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

[Перевод] Как я нашёл баг в GNU Tar Автор статьи — Крис Зибенманн, системный администратор Unix в университете Торонто Время от времени в моей работе происходит нечто странное, что заставляет задуматься, даже если сразу непонятно, какие следуют выводы. Недавно я упомянул, что мы нашли ошибку в GNU Tar, и исто...

[Из песочницы] Коротко о главном: Clean Architecture, Robert C. Martin Это будет рассказ о впечатлении о книге, а также будут рассмотрены некоторые понятия и знания, которые, благодаря этой книге, были изучены Архитектура Можете ли вы, читая эту публикацию, дать четкий ответ на вопрос, что такое архитектура? Что такое архитектура в контексте п...

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

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

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

Ответы на поисковые запросы будут показываться в адресной строке Всего месяц назад мы писали о влиянии функции zero-click, благодаря которой пользователи получили возможность получать ответы прямо на странице поисковой системы, не кликая по ссылкам. Но, как оказалось, можно пойти ещё дальше.В ближайшем обновлении Google Chrome появится фу...

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

Поиск по документам и другие обновления AppMetrica Документация AppMetrica переехала с https://tech.yandex.ru на собственный домен. Кроме того, была переработана структура раздела, стала проще и логичней.  На новой платформе заработал поиск по документам. Теперь легче искать не только ключевые слова, но и конкретные ста...

Что мы хотим увидеть в новом MacBook Pro Если верить информации авторитетного аналитика Минг Чи-Куо, Apple работает над новым поколением MacBook Pro с обновленным дизайном. Пока сложно сказать, какие именно изменения получит профессиональные ноутбуки компании, однако наверняка у каждого пользователя есть свой спис...

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

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

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

Apache Tomcat получил важное обновление защиты Разработчики Apache Software Foundation (ASF) обновили сервер приложений Tomcat, чтобы устранить обнаруженный ранее RCE-баг. Брешь CVE-2019-0232 позволяла взломщикам выполнять сторонний код в уязвимых системах и брать их под контроль. В начале марта о проблеме сообщили специ...

Как оценивать эффективность подрядчика по SEO План вебинара 1) Оцениваем метрики производства: скорость сбора семантики, качество семантического ядра, количество страниц к внедрению и внедренных страниц. Скорость сбора семантического ядра (новые страницы + расширение существующих кластеров); Качество я...

[Перевод] Python как предельный случай C++. Часть 1/2 От переводчикаБрендон Роудс − весьма скромный человек, представляющий себя в твиттере как «Python-программиста, возвращающего долг сообществу в форме докладов или эссе». Число этих «докладов и эссе» впечатляет, равно как и число свободных проектов, контрибьютором которых Бре...

Uber создаёт собственную ОС Как уточнил генеральный директор Uber Дара Хосровшахи (Dara Khosrowshahi), при помощи таких изменений компания намерена создать "собственную операционную систему для повседневного использования".Uber провела крупную презентацию нового приложения в Сан-Франциско 26 ...

Монитор Samsung S32R750UEI: диагональ 32 дюйма, разрешение 4К, матрица VA и удобная подставка Внешне монитор Samsung S32R750UEI привлекает внимание необычной конструкцией подставки, экономящей место на рабочем столе и допускающей варианты расположения блока экрана, недоступные типичным штатным подставкам. Условно безрамочный экран смотрится выигрышно, но это уже не я...

Скрытая камера не только у Xiaomi и Samsung. Huawei спрячет камеру, вспышку и датчики под экран смартфона Всемирная организация интеллектуальной собственности (WIPO) выдала компании Huawei патент на разработку, описывающую скрытую под экраном смартфона камеру.  Голландский ресурс LetsGoDigital доработал схематичные иллюстрации из патента до реалистичных рендеров, позв...

[Перевод] Рукопожатие SSH простыми словами Secure Shell (SSH) — широко используемый протокол транспортного уровня для защиты соединений между клиентами и серверами. Это базовый протокол в нашей программе Teleport для защищённого доступа к инфраструктуре. Ниже относительно краткое описание рукопожатия, которое происхо...

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

Что я узнал, протестировав 200 000 строк инфраструктурного кода Подход IaC (Infrastructure as Code) состоит не только из кода, который хранится в репозитории, но еще людей и процессов, которые этот код окружают. Можно ли переиспользовать подходы из разработки ПО в управление и описание инфраструктуры? Будет не лишним держать в голове эт...

Древности: вестник тлена или незапланированное устаревание В конце 2017 года компания Apple признала, что снижает производительность старых iPhone, чтобы компенсировать деградацию батареи. Хотя такая практика позже была прекращена, этот инцидент вновь поднял тему запланированного устаревания, когда производители товаров намеренно ог...

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

Новая пасхалка от Google — Танос и Перчатка бесконечности против поисковых результатов Гугл Если написать в строке поиска Google слова: «Танос», «Thanos», «Перчатка бесконечности», то откроется страничка с необычной поисковой пасхалкой. Читать дальше →

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

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

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

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

Huawei Mate 30 Pro получит две камеры по 40 Мп Если вы с нетерпением ждали смартфон Huawei Mate 30, то следующая новость должна немного скрасить ваши ожидания. Согласно новой информации, предстоящий китайский флагман получит не одну, а целых две камеры с разрешением 40 Мп. Но что еще приятнее, сенсоры обеих камер будут ...

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

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

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

[Из песочницы] Бесконечный и нелепый список того, что вам нужно знать, чтобы безопасно использовать публичные сети Wi-Fi Привет, Хабр! Представляю вашему вниманию перевод статьи «The Complete, Endless, Ridiculous List of Everything You Need to Be Safe on Public Wi-Fi» автора Patrick F. Wilbur. Wi-Fi сети, вебсайты, протоколы, которые мы используем, не обеспечивают нам необходимой безопасност...

5. Калибровка Очень путанно получилось, заранее извиняюсь.Тут придется почитать. Я пользовался статьями  ссылкассылкассылкассылкассылкаОчень советую прочесть и добавить в закладки.Когда все собрано и вроде готово нужно загрузить свежую прошивку Marlin на наш принтер. Берем тут ссылка . И...

MSI B350M Pro-VDH. Что нужно знать перед покупкой? Давно назревал этот материал. От MSI B350M Pro-VDH я натерпелся в своё время мощно. С одной стороны, благодаря ней я пересел на AM4 и возвращаться на лазурную сторону не планирую. С другой – эта мать заставляла меня и в сервис бегать, и с представителями MSI в Twitter ...

Почти все настройки, необходимые для нормальной печати Cura 3.6. Часть 1. Вкладки Качество и ограждение. Решил собрать здесь список настроек, необходимые для решения почти любой задачи. Не претендую на мастера/гуру 3D печати, но всё же новичку это может помочь.Как включать или выключать настройки? 1) Настройка Cura... 2)Вкладка ПараметрыЗдесь можно заметить поле поиска (1), пун...

[Перевод] Печальная судьба спецификаторов формата функции printf для символов Юникода в Visual C++ Поддержка Юникода в Windows появилась раньше, чем в большинстве остальных операционных систем. Из-за этого многие проблемы, связанные с представлением символов, в Windows решались не так, как в других системах, разработчики которых отложили внедрение нового стандарта до лучш...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 45. Настройка OSPF На прошло видеоуроке мы изучили раздел 2.4 тематики ICND2, где я в очень доступной манере рассказал, как работает протокол OSPF, как формируются соседские отношения роутеров и создаются таблицы маршрутизации. Сегодня мы ещё немного рассмотрим теорию вопроса, после чего перей...

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

HTTPS не всегда такой безопасный, как кажется. Уязвимости найдены у 5,5% сайтов HTTPS Один из топовых сайтов Alexa (центральный кружок), защищённый HTTPS, с поддоменами (серым) и зависимостями (белым), среди которых есть уязвимые (штриховая заливка) В наше время значок защищённого соединения HTTPS стал стандартным и даже необходимым атрибутом любого серьёзн...

Почему нам не нужна камера на 100 Мп в смартфоне В прошлом году 40-мегапиксельные смартфоны снова вернулись на рынок, а случилось это аж через пять лет после того, как был представлен Nokia Lumia 1020 с камерой на 41 Мп. С тех пор выросло не только качество самих сенсоров, но даже немного подросло количество мегапикселей,...

[recovery mode] QtCreator и его использование в качестве IDE для Rust В общем попросил я у коллеги маленький гайд по тому как настроить QtCreator в качестве IDE для Rust и с его разрешения выкладываю. Сам Я использую CLion и позже напишу о том как с ним дела обстоят на этом поприще. Мопед не мой. Я просто разместил объяву. (с) Что нужно совре...

Не ведитесь на 100Mp камеры в смартфонах - это не лучший выбор Смартфонами, в которых установлены камеры с высоким разрешением, сегодня уже никого не удивишь. Но на замену 48-мп сенсорам готовятся камеры на 64 и даже 108 Мп. Оба решения были официально анонсированы и должны появиться в смартфонах уже в скором времени. Фактически, в этом...

[Перевод] Мегапакет: как разработчикам Factorio удалось решить проблему с мультиплеером на 200 игроков В мае этого года я участвовал в качестве игрока в MMO-мероприятии KatherineOfSky. Я заметил, что когда количество игроков достигает определённого числа, через каждые несколько минут часть из них «отваливается». К счастью для вас (но не для меня), я был одним из тех игроков,...

Нагрузочное тестирование CPU и SSD облачных хостеров: сравниваем Selectel, Servers, MCS и Я.Облако Мы постоянно работаем с интернет-магазинами и сервисами и периодически у наших клиентов встает вопрос, где же им хостить свои проекты. Вопросы эти более чем обыденные: какой хостинг выбрать, в каком регионе, что решать с конфигурацией. В последние годы все большее предпочт...

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

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

[Перевод] Почему ['1', '7', '11'].map(parseInt) возвращает [1, NaN, 3] в Javascript? Javascript — странный. Не верите? Ну попробуйте тогда преобразовать массив строк в целые числа с помощью map и parseInt. Запустите консоль (F12 на Chrome), вставьте код ниже и нажмите Enter ['1', '7', '11'].map(parseInt); Вместо ожидаемого массива целых чисел [1, 7, 11] мы ...

Понимание джойнов сломано. Это точно не пересечение кругов, честно Так получилось, что я провожу довольно много собеседований на должность веб-программиста. Один из обязательных и банальнейших вопросов, который я задаю — это чем отличается INNER JOIN от LEFT JOIN. Чаще всего ответ примерно такой: "inner join — это как бы пересечение множест...

Новая версия MIUI 10 изменила строку состояния Xiaomi Mi 9 и исправила ошибки Флагманский смартфон Xiaomi Mi 9 получил новую прошивку MIUI V10.2.16.0.PFACNXM, которая добавляет несколько новых функций. Во-первых, обновление вносит изменения в отображение информации в районе каплевидного выреза экрана, в котором находится селфи-камера. В описании ...

Робот, который поедет за вашей улыбкой. Делаем дешевую тележку для изучения ROS.Часть 1-я, железная Начав изучать ROS (Robotic operation system), сначала поражаешься, как тут «все сложно», от количества информации про топики, ноды,actions голова идет кругом. И, первое желание — вернуться в управлении роботом на старые добрые скрипты. Но нет. Каждый взрослый мужчина должен ...

Решение задания с pwnable.kr 05 — passcode. Перезапись таблицы связей процедур через уязвимость форматной строки В данной статье разберем: что такое глобальная таблица смещений, таблицей связей процедур и ее перезапись через уязвимость форматной строки. Также решим 5-е задание с сайта pwnable.kr. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиват...

[Перевод] Разрабатывать приложения под Android — словно быть (демонетизированным) ютубером Как известно, некоторые авторы на YouTube крайне недовольны условиями, которые предлагает эта платформа. Аналогичное сражение сейчас ведут разработчики Android-приложений на платформе Google Play. Попытаюсь за 20 минут объяснить, что не так с Android. Когда-то Android счита...

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

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

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

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

Распознаём дату и время в естественной речи Задача Привет, Хабр! Увлёкся я навыками для Алисы и стал думать, какую пользу они бы могли принести. На площадке много разных прикольных игр (в том числе мои), но вот захотелось сделать рабочий инструмент, который действительно нужен в голосовом исполнении, а не просто копи...

Курсоры БД в Doctrine Используя курсоры, вы сможете порционно получить из БД и обработать большое количество данных, не расходуя при этом память приложения. Уверен, перед каждым веб-разработчиком хотя бы раз вставала подобная задача, передо мной тоже — и не раз. В этой статье я расскажу, в каких...

Redux. Простой как грабли Мне уже доводилось заглядывать в репозиторий библиотеки redux, но откуда-то появилась мысль углубиться в его реализацию. Своим в некотором роде шокирующим или даже разочаровывающим открытием я хотел бы поделиться с сообществом. TL;DR: базовая логика redux помещается в 7 ст...

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

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

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

Google Photos: находит фотографии по тексту, размещенному ... Буквально на этой неделе сервис Google Photos опубликовал в своем Twitter-е объявление, что начиная с августа месяца пользователи смогут искать (и находить) фотографии по тексту, который находится на самом снимке. Например, если у вас есть фотография с изображением дорожного...

Повышаем продуктивность на GitHub: советы для новичков и не только От переводчика: публикуем для вас статью Даррена Барнса, который делится своим опытом работы с GitHub. Его советы будут полезны, в первую очередь, новичкам. Возможно, и опытный кодер найдет что-то для себя. GitHub — отличный сервис, которым пользуются пусть не все, но ...

Как использовать WhatsApp на планшете У современного пользователя уже давно есть несколько гаджетов для общения. И почти везде стоят одинаковые мессенджеры для того, чтобы постоянно оставаться на связи. Но принято считать, что WhatsApp можно использовать лишь на настольном ПК или на смартфоне. В то время, как п...

Предварительный обзор Aerocool SI-5200 RGB. С RGB-подсветкой Сегодня мы с вами посмотрим на достаточно интересный корпус для вашего компьютера, который обладает целым перечнем преимуществ, но и без недостатков не обошлось. Нужно понимать, что на корпус обычно либо выделяют очень много денег, либо покупают что-то дешевое просто ради то...

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

Как получить безлимитное хранилище для оригиналов в Google Фото на iOS Чтобы хранить в облаке фото в исходном качестве, необязательно переходить на платный тариф Наверное, все уже знают, что сервис «Google Фото» позволяет выгружать в облако неограниченное количество фотографий в высоком, но не исходном качестве. Для этого снимки автоматически с...

Новая версия MIUI 10 исправила ошибки в работе камеры и не только Xiaomi продолжает вносить небольшие улучшения в свою фирменную оболочку MIUI, чтобы улучшить пользовательские впечатления владельцев смартфонов Xiaomi и Redmi. Сегодня появился список изменений MIUI 10 Global Beta 9.4.25, которая содержит большое количество оптимизаций ...

«Упрощенная» PUBG Mobile Lite вышла на Android в Индии PUBG Mobile— одна из самых популярных игр в истории (как минимум по количеству одновременно играющих игроков), и она не планирует сдавать позиции. На днях издатель Tencent выпустил в Индии проект PUBG Mobile Lite, созданный разработчиками оригинальной версии и оптимизирован...

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

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

pudge встраиваемая база данных в 500 строк на golang pudge — встраиваемая key/value база данных, написанная на стандартной библиотеке Go. Остановлюсь на принципиальных отличиях от существующих решений. Stateless pudge.Set("../test/test", "Hello", "World") Пудж автоматически создаст базу данных test, включая вложенные дире...

MVCC-7. Автоочистка Напомню, что мы начали с вопросов, связанных с изоляцией, сделали отступление про организацию данных на низком уровне, подробно поговорили о версиях строк и о том, как из версий получаются снимки данных. Затем мы рассмотрели внутристраничную очистку (и HOT-обновления), обыч...

Учимся использовать многозадачность на Samsung Galaxy под управлением One UI Совсем недавно мы рассказывали вам о том, почему дисплеи новых Samsung Galaxy S10 не иначе как чудо техники. Ко всему прочему, эти дисплеи, в хорошем смысле этого слова, просто огромны. К слову, в последних нескольких поколениях линейки Galaxy S экраны хоть и были меньше, н...

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

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

[Из песочницы] Основные проблемы разработки современных интерфейсов Привет, Хабр! Представляю вашему вниманию перевод поста Дэна Абрамова «The Elements of UI Engineering» о современных проблемах и задачах, которые должны быть решены в хорошем интерфейсе. Автор разбирает фундаментальные проблемы при разработке интерфейсов, осмысление и решени...

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

Как управлять загрузками в Safari на Mac (macOS) Если вы используете браузер Safari в качестве основного, то наверняка что-то загружали через него. В этой статье мы расскажем, как использовать «загрузочный» интерфейс Safari по-максимуму. ПО ТЕМЕ: Как автоматически переключать язык (раскладку) на клавиатуре в macOS или Wind...

[Из песочницы] Пишем бот для рыбалки в игре Albion Online на языке Python Всем привет, я являюсь счастливым пользователем операционной системы GNU/Linux.И как многим известно, игрушек идущих на линукс без дополнительных танцев с бубном намного меньше чем в «Винде». И еще меньше игр в жанре MMORPG. Однако, где-то пол года или год назад я узнал ...

[Перевод] Создаем бота для несложной отчетности при помощи Python и Google BigQuery Есть ли у вас задачи, которые повторяются изо дня в день, из недели в неделю? Например, написание отчетов. Вы запрашиваете данные, проводите анализ, визуализируете (делаете графики, диаграммы), а затем отправляете начальнику. Но что, если все это автоматизировать? В это...

Огромный аккумулятор, современная платформа Qualcomm и стереодинамики за 175 долларов. Представлен смартфон Oppo A5 (2020) Вчера мы писали про смартфон Oppo A9 (2020), который, несмотря на наличие экрана HD+, получился весьма интересным. Но вчера стоимость смартфона была неизвестна, а вот сегодня мы можем закрыть этот пробел. Итак, за новинку просят 235 либо 270 долларов. Напомним, во второ...

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

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

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

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

Не заменимый помощник в Microsoft Office Word Большинство пользователей ПК сталкиваются с проблемами во время работы в программе Ворд, так как в разных её версиях алгоритмы работы могут быть различны. Наиболее часто пользователи сталкиваются с такой проблемой, как включить линейку в Ворде. Порой изучить все правила поль...

Погода-Weather 5.0.9 Одно нажатие кнопки и в строке состояния появится сводка погоды для вашего региона, где проживаете. Функциональное и простое в использовании приложение, позволит всегда быть в курсе текущих погодных условий. Разработчики приложения «Погода» сделали интерфейс максимально...

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

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

Брешь в браузерах Xiaomi допускает подмену URL Независимый исследователь Ариф Хан (Arif Khan) обнаружил незакрытую уязвимость в Android-браузерах Mi и Mint производства Xiaomi. Баг позволяет выполнить подмену URL и направить пользователя на вредоносную или фишинговую страницу. Брешь найдена в международных версиях прилож...

CSS переменные и цветовая тема для сайта в несколько строк Один из способов использовать CSS переменные уже сегодня Создадим сайт который динамически поддерживает светлую, тёмную и цветовые темы. Интерактивное демо Создаём базовый цвет который будет меняться. Привязываем его к data-theme на html. html[data-theme='green'] { --...

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

Планы AMD на ближайший год: настольные процессоры Ryzen 4000 выйдут в августе 2020 года, а мобильные — в начале того же года Вчера мы говорили о слухах, которые утверждали, что новые настольные APU AMD могут выйти уже в ноябре или декабре. Но также источник говорил, что есть вероятность анонса уже на CES 2020 в январе. Если верить неофициальной дорожной карте, которую опубликовал другой источ...

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

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

Почему во Вселенной больше материи, чем антиматерии? Почему мы существуем? Это, пожалуй, самый глубокий вопрос, который может показаться совершенно выходящим за рамки физики элементарных частиц. Но наш новый эксперимент на Большом адронном коллайдере ЦЕРН приблизил нас к ответу. Чтобы понять, почему мы существуем, нужно сперв...

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

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

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

Исследование: плотность мощности IT-оборудования в стойках ЦОД растет До недавнего времени средняя мощность IT-оборудования в ЦОД составляла 5 кВт на стойку. Теперь ситуация иная. Сорок пять процентов участников опроса 451 Research, который охватил в общей сложности 750 респондентов, заявили, что ожидают выхода на среднюю плотность в 11 кВт н...

Google обновила Android Auto – более интуитивный интерфейс и темная тема по умолчанию Сегодня в США стартует конференция Google I/O, на которой компания представит массу новинок, как аппаратных, так и программных. Но как минимум одну новинку Google не стала утаивать до последнего – речь об обновленном интерфейсе автомобильной информационно-развлека...

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

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

Как настроить и подключить ваши новые AirPods (2-го поколения) В марте Apple дебютировала с AirPods второго поколения, представив несколько обновлений по сравнению с оригинальными популярными беспроводными наушниками с одноименным названием. Если вы только что получили пару новых наушников Apple, вы будете использовать их для прослушива...

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

MVCC-5. Внутристраничная очистка и HOT Напомню, что мы рассмотрели вопросы, связанные с изоляцией, сделали отступление про организацию данных на низком уровне, а затем подробно поговорили о версиях строк и о том, как из версий получаются снимки данных. Сегодня займемся двумя довольно тесно связанными вопросами: ...

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

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

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

[Перевод] Вышел Windows Terminal Preview 0.7 Представляем новый релиз Windows Terminal preview! Это выпуск v0.7. Как и всегда вы можете скачать Terminal из Microsoft Store или со страницы релиза на GitHub. А вот и новинки: Обновления Windows Terminal Панели (panes) Теперь вы можете разделить окно терминала на нескольк...

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

Microsoft выпускает обновление для исправления функции SFC в Windows 10 В июле у ряда пользователей Windows 10 возникли проблемы при исправлении поврежденных файлов с помощью функции sfc /snannow, и Microsoft сообщила, что виновником является обновление для Защитника Windows.Функция командной строки Windows 10 sfc /snannow не работает со следующ...

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

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

F#3: Форматирование текста При работе с любым языком вам, скорее всего, нужно будет отформатировать текст, и F# ничем не отличается. Поскольку F# является языком .NET, мы всегда можем использовать Console.WriteLine (..) и String.Format (..), где мы можем использовать любой из обычных форматеров, кото...

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

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

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

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

Как установить Android SDK на Windows, Mac и Linux 22 октября 2008 года в Android появился магазин приложений Play Market. С тех пор прошло больше 10 лет и сегодня Google Play насчитывает почти 3 миллиона приложений в их числе Telegram с каналом AndroidInsider. Как же разработчикам со всего мира удается создавать качественн...

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

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

[Из песочницы] Ускоряем сайт с JivoSite. Отложенная загрузка онлайн-консультанта При оценке скорости загрузки сайта сервисом Google, обратил внимание, что довольно много очков теряем из-за установленного онлайн-консультанта JivoSite. При удалении кода онлайн-консультанта с сайта, проект набирает на 16 очков больше для мобильной версии и на 19 очков больш...

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

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

Корпус be quiet! Silent Base 601 Window Orange: современное решение с достойными потребительскими качествами Корпус be quiet! Silent Base 601 Window Orange является современным решением с интересным дизайном, качественным исполнением и достойными потребительскими качествами. Инновации, если так можно выразиться, тут были направлены на улучшение удобства при сборке системы, и они ег...

Marlin2, FULL_GRAPHIC_SMART_CONTROLLER и кракозябры на экране Решил тут обновить прошивку на бутерброде из RuRAMPS4d v1.3 и Arduino Due и с удивлением обнаружил, что на прошивке от июня 2018 экран работает прекрасно, а на прошивке от июня 2019 показывает исключительно кракозябры.Оказалось, марлиновцы работали над уменьшением влияния вы...

Как Иван метрики DevOps делал. Объект влияния Прошла неделя с тех пор как Иван в первый раз задумался над метриками DevOps и понял, что управлять с их помощью надо временем поставки продукта (Time-To-Market). Даже на выходных он думал про метрики: «Ну и что, что я измерю время? Что оно мне даст?» Действительно, что да...

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

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

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

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

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

В Android Q добавят возможность останавливать приложения прямо в лончере Функция под названием Digital Wellbeing впервые дебютировала в Android Pie и уже сразу была тепло принята пользователями мобильной операционки за свою высокую функциональность и полезность. С помощью Digital Wellbeing пользователи получали доступ к информации, связанной с и...

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

Риккардо Спаньи: биткоин не будет единственной используемой криптовалютой Ведущий разработчик Monero и сооснователь проекта Tari Рикардо ‘Fluffypony’ Спаньи заявил, что те, кто считает, что биткоин будет единственной криптовалютой, которая выживет в долгосрочной перспективе, не понимают, что это противоречит самой человеческой природе....

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

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

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

Google Pixel 4 получит камеру с оптическим зумом и инфракрасную камеру для идентификации владельца В исходном коде приложения Google Camera появились указания на кое-какие особенности смартфона Pixel 4. В частности, строки со словом «Telephoto» явно указывают на то, что в смартфоне будет объектив, обеспечивающий оптический зум. Само собой, он войдет в сос...

#Мнение: Почему в дешевые телефоны не ставят старые процессоры от флагманов? Далеко не каждый готов отдать 70-80 тысяч рублей за новый флагманский смартфон при том, что среди устройств среднего ценового сегмента сегодня есть вполне привлекательные смартфоны, которые порадуют и дизайном, и возможностями. В таких смартфонах используются специально раз...

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

[Перевод] Learn OpenGL. Урок 7.2 – Отрисовка текста В некоторый момент ваших графических приключений вам захочется вывести текст через OpenGL. Вопреки тому, что вы могли ожидать, получить простую строку на экране довольно сложно с низкоуровневой библиотекой, такой как OpenGL. Если вам не нужно больше 128 различных символов дл...

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

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

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

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

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

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

Самые редкие и самые дорогие языки программирования Принято считать, что языки программирования, такие как Rust, Erlang, Dart, а также некоторые другие являются самыми редкими в мире IT. Поскольку я подбираю IT специалистов для компаний, постоянно контактируя с айтишниками и работодателями, я решила провести личное исследован...

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

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

[Перевод] Состояние алгоритма: что происходит с инди-разработчиками в Steam? Бизнес создания инди-игр всегда был сложным, но недавно он стал ещё сложнее. 5 октября прошлого года Valve объявила о внесении изменений в алгоритмы Steam, которые привели к уменьшению трафика у игр, не ставших бестселлерами. Это уже вредит инди-разработчикам, но я думаю, м...

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

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

Who is HubEx? Как мы создали платформу для управления сервисом оборудования Иногда можно услышать такую фразу «чем старше продукт, тем он функциональнее». В век современных технологий, далеко идущего web и модели SaaS это утверждение почти не работает. Залог успешной разработки это постоянный мониторинг рынка, отслеживание запросов и требований клие...

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

Pointer и Value семантика в определении получателя метода Создание новых типов данных — важная часть работы каждого программиста. В большинстве языков определение типа состоит из описания его полей и методов. В Golang помимо этого нужно решить, какую семантику получателя для методов нового типа использовать: значение (value) или ук...

Пустота: Google показала, как будет выглядеть страница поисковой выдачи в случае принятия «Директивы о копирайте» Уже сегодня в Европейском Совете пройдёт голосование за печально известный законодательный акт, который прозвали «Директивой о копирайте» (Copyright Directive). Документ большой и охватывает много аспектов, касающихся авторского права, но если кратко, б...

Просто и на C++. Основы Userver — фреймворка для написания асинхронных микросервисов В Яндекс.Такси придерживаются микросервисной архитектуры. С ростом количества микросервисов мы заметили, что разработчики много времени тратят на boilerplate и типичные проблемы, при этом решения не всегда получаются оптимальные. Мы решили сделать свой фреймворк, с C++17 и ...

Кастомизация Repetier: добавляем физические кнопки для управления принтером Нравится мне repetier за относительно простую кастомизацию прошивки. Но почему-то сложилось так, что на repetier тяжелее найти какую-либо информацию из-за не слишком большой популярности. В основном все предпочитают пользоваться Марлином. Да и сообщества у Marlin побольше бу...

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

Глобальный топ самых мощных смартфонов по версии AnTuTu: почти без изменений На прошлой неделе мы увидели, что лидерами китайского сентябрьского топа AnTuTu стали Vivo NEX 3, Vivo iQOO Pro и ASUS ROG Phone 2. Глобальный рейтинг традиционно менее интересен, да и изменений по сравнению с прошлым месяцем в нет совсем немного. Так, первые 3 позиции вооб...

Обзор Life After: Night Falls — какой будет жизнь после такого? После прочтения книги «Кровь, пот и пиксели» Джейсена Шрейера я стал по-другому относиться к разработчикам видеоигр. Я понял, что многие из них работают за идею, а не за деньги. Осознал, что издатели часто давят на авторов даже больше, чем нам кажется. Но я также нашел приме...

[Перевод] Улучшенный sandboxing для Groovy скриптов От переводчика: При разработке CUBA Platform мы заложили в этот фреймворк возможность исполнения пользовательских скриптов для более гибкой настройки бизнес-логики приложений. О том, хороша или плоха эта возможность (и мы говорим не только о CUBA), ведутся долгие споры, но ...

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

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

[Перевод - recovery mode ] Тюнинг производительности запросов в PostgreSQL Настройка производительности базы данных — разработчики обычно либо любят это, либо ненавидят. Я получаю удовольствие от этого и хочу поделиться некоторыми методами, которые я использовал в последнее время для настройки плохо выполняющихся запросов в PostgreSQL. Мои методы ...

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

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

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

[Перевод] Сторона личности Пола Аллена, о которой знало не так много людей, как мне бы хотелось Статья из блога Билла Гейтса — американского предпринимателя, общественного деятеля, филантропа, создавшего компанию Microsoft совместно с Полом Алленом [1953-2018] (с которым они были приятелями со школы) Пол Аллен был одним из самых любопытных людей, которых я знал. Ещё...

Какие приложения установлены на моём смартфоне Данная тема довольно популярна в сети Интернет, поэтому написать материал о приложениях, которые установлены на моём смартфоне, был просто обязан. Скажу сразу, в игры не играю, поэтому из установленных только PUBG. Для многих смартфон – это просто средство для совершения зв...

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

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

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

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

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

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

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

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

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

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

Цена удобства: Microsoft закрывает свой магазин электронных книг без сохранения доступа к уже купленным материалам В современном мире всё более число сервисов, услуг и прочего переходит в «облако». Всё меньшее количество людей хранит музыку на накопителе ПК. Это же касается фильмов и многих других данных. Однако не всегда даже в случае с крупными компаниями пользователи...

Изменения Cura 4.3.0 4.3.0Ultimaker S3.В этом выпуске представлен новый профиль для наших последних 3D-принтеров S-line: Ultimaker S3. Оглазые бета-тестеры, возможно, заметили и этот дополнительный профиль принтера в бета-версии. Молодцы тем, кто это заметил. Узнайте больше об Ultimaker S3, чита...

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

[recovery mode] Интеграция Опенкарт с учетными системами Опенкарт — один из самых распространенных интернет-магазинов. Во многих случаях возникает задача интеграции со складской учетной системой (чаще всего с 1С). Интеграция предполагает, как минимум, передачу заказов с ИМ в складскую систему для их обработки и отправки товаров п...

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

[recovery mode] Инкрементальный бекап в дюжину строк Что самое важное для бекапов? Правильно, воспроизводимость. Поэтому давайте сделаем велосипед на коленке и на опции --link-dest у rsync. У нашего велосипеда не будет сложной структуры данных в стиле git как у restic, ни кучи бекендов как у duplicity. Но мы сможем восстановит...

Очень много менеджеров Эта статья написана вместе с Екатериной Корнеевой (Wrike, Customer Success Manager). Екатерина является профессионалом с 4-летним опытом работы в продажах и клиентском сервисе. В современных компаниях, распространяющих свой продукт под подписке (SaaS), количество менеджеро...

Xiaomi уменьшит количество рекламы в MIUI через 3 месяца Главный менеджер подразделения MIUI Experience рассказал в социальной сети Weibo, какие шаги Xiaomi предприняла для уменьшения количества рекламы и улучшения её качества в прошивке MIUI. Так, компания отзовёт некоторые рекламные слоты и объявит планы по дальнейшему их…

Raspberry Pi + CentOS = Wi-Fi Hotspot (или малиновый роутер в красной шляпе) В Интернете огромное количество информации по созданию Wi-Fi точек доступа на базе одноплатного ПК Raspberry. Как правило, подразумевается использование родной для «малинки» операционной системы — Raspbian. Являясь адептом RPM-based систем, я не мог пройти мимо этого малень...

Луна могла образоваться из океана магмы, который когда-то покрывал Землю Есть несколько теорий о том, откуда на самом деле взялась Луна. Наше лучшее предположение заключается в том, что Луна образовалась, когда в Землю ударился большой объект, известный как Тейя. В результате столкновения было выброшено огромное количество мусора на орбиту, кото...

[Перевод] Представляем шрифт Cascadia Code Cascadia Code наконец-то здесь! Вы можете установить его непосредственно со страницы релизов в нашем репозитории на GitHub или автоматически получить его в следующем обновлении Windows Terminal. Постойте, что за «Cascadia Code»? Cascadia Code был представлен в мае этого г...

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

[Перевод] Оттенки значений в английском языке: как использовать глаголы Advise, Recommend, Suggest Английский язык часто воспринимается как нечто не столь сложное, как некоторые другие языки – взять тот же немецкий. Но на самом деле в нем есть достаточное количество трудностей и тонких моментов («Пишется Ливерпуль, а читается Манчестер» ). Один из них, вызывающий личн...

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

[Из песочницы] Назад в будущее с WebAssembly Привет, Хабр! Представляю вашему вниманию перевод статьи «Back To The Future With WebAssembly» автора Attila Vágó. Данный пост является переводом статьи, в которой рассказывается о свойствах WebAssemly и Emscripten. Оригинал статьи на английском языке. Автор статьи Аттила ...

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

Atom – браузер на движке Chromium Сейчас многие крупные компании используют движок Chromium для создания своего браузера. Та же Microsoft поняла, что конкурировать с Хромом на движке Chromium практически невозможно, поэтому она также переходит на этот движок. Российские компании тоже активно используют данны...

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

Samsung перевела Galaxy S7 на новую методику обновления Подход Apple к обновлениям своих смартфонов всегда отличался от подхода ее конкурентов. Если в Купертино старались обеспечивать iPhone апдейтами на протяжении не менее четырех-пяти лет, то редкий аппарат под управлением Android мог рассчитывать на получение хотя бы трех нов...

Huawei представила ИИ-процессор Ascend 910 и новый фреймворк Mindspore Компаниям, работающим в сфере создания ИИ-технологий и машинного обучения, требуются специальные процессоры высокой производительности. До недавнего времени в этом сегменте было не так много крупных игроков, среди которых можно выделить Intel, NVIDIA, Qualcomm и Google. Судя...

[recovery mode] Вертикальное письмо в современном IT Привет, Хабр! Двунаправленным письмом в наше время никого не удивить. Оно поддерживается управляющими символами Уникода, для него создан HTML-тег <bdo>. Но горизонтальные письменности – не единственные существующие и применяемые для записи человеческой речи. Кроме обыч...

Не пора ли прекращать делать обзоры спринтов? Для многих команд разработчиков такое периодическое мероприятие как спринт ревью, или обзор спринта, морально устарел и уже изжил себя. И, похоже, пора перестать этим заниматься. Так считает Майк Кон (Mike Cohn), один из соавторов и основателей Scrum и Scrum Alliance. Звучит...

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

Переключатели функциональности (feature toggles): виды, преимущества и работа с ними в .NET Переключатель функциональности — это инструмент, позволяющий переключаться со старой функциональности на новую, не пересобирая приложение и не выпуская его заново. Реализуется добавлением в код условного оператора (if), который дает возможность управлять поведением программ...

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