Архив за 22 апреля 2019 - 9

Гнев на код: программисты и негатив - 1

Я смотрю на кусок кода. Возможно, это худший код, что мне когда-либо встречался. Чтобы обновить всего одну запись в базе данных, он извлекает все записи в коллекции, а затем отправляет запрос на обновление каждой записи в базе, даже те, которые обновлять не требуется. Тут есть map-функция, которая просто возвращает переданное ей значение. Есть условные проверки переменных с очевидно одинаковым значением, просто поименованных в разных стилях (firstName and first_name). Для каждого UPDATE’а код отправляет сообщение в другую очередь, которая обрабатывается другой serverless-функцией, но которая выполняет всю работу для другой коллекции в той же базе данных. Я не упомянул, что эта serverless-функция из облачной «сервис-ориентированной архитектуры», содержащей более 100 функций в окружении?

Как вообще можно было такое сделать? Я закрываю лицо и явственно всхлипываю сквозь смех. Мои коллеги спрашивают, что случилось, и я в красках пересказываю Worst Hits Of BulkDataImporter.js 2018. Все сочувственно кивают мне и соглашаются: как они могли так с нами поступить?
Читать полностью »

Компания Huawei сегодня опубликовала отчёт по итогам первого квартала 2019 года. В частности, мы уже писали про то, что компания смогла нарастить выручку на 39%, до 26,78 млрд долларов.

Но ещё внушительнее выглядит рост продаж смартфонов. За прошедший квартал Huawei реализовала 59 млн смартфонов, а это в полтора раза больше, чем годом ранее, когда компания продала «лишь» 39 млн аппаратов.

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

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

Читать полностью »

Так уж сложилось, что в СНГ довольно популярен русский Q&A ресурс по ИТ тематике — Тостер. Однако чего-то ему не хватало, когда я начал плотно с ним знакомиться. Это и вылилось в улучшение в виде браузерного расширения. Встречайте.

Ключевые особенности:

  • Название: Toster Comfort.
  • Статистика пользователей: процент вопросов с решением; карма с Хабра; сводка из профиля — всё это в списке вопросов Тостера.
  • Уведомления: в реальном времени на сайте, на иконке, плюс push-уведомления, много настроек, сайт должен быть открыт (вики).
  • Фильтры: условия на основе формул: можно скрывать вопросы, раскрашивать их цветом, а также показывать уведомления, — всё это гибко настраивается в виде логических условий (вики).
  • Интерфейс: мелкие улучшения, например, показ точных дат или отображение статуса подписки в списке вопросов.
  • Интерфейс Хабра: мелкие улучшения (опционально), например, линии на отступы в комментариях.
  • Open source: можно переделать под себя, если очень хочется (исходники).
  • Free: MIT License.
  • Потребление памяти: 30-50МБ, в зависимости от опций и интенсивности использования Тостера
  • Размер: 93КБ для v0.8.1 (распакованный, не минимизированный код).
  • Фреймворк: отсутствует, чистый JS (минимализм).
  • Качество кода: среднее, смешение стилей, большие функции, грязные приёмы, мало комментов.
  • Разрешения: toster.ru, habr.com, notifications, storage, unlimitedStorage

Читать полностью »

Привет от команды Тостера! Сегодня мы запускаем новую фичу, которая позволит опытным пользователям Тостера брать на себя права кураторов тегов. Подробности под катом.

Тостер даёт пользователям больше прав - 1
Читать полностью »

В конце прошлой недели смартфон Nokia 9 PureView получил обновление, исправляющее множество проблем и недоработок. К сожалению, апдейт не только решил старые проблемы, но и принёс новые.

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

Правда, в данном случае речь будет идти о топовой версии. В частности, она получит 12 ГБ ОЗУ и 512 ГБ флэш-памяти.

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

Amazon захватила 50% интернет-рынка в Америке. В прошлом году за пятинедельный период со Дня благодарения (22 ноября в США) 89% расходов клиентов крупнейших торговых площадок в Штатах пришлось на этот один интернет-магазин. За 2017-й год акции компании совершили ралли на 55%, в 2018-м – еще на 30%. Причина простая: у компании лучшая инфраструктура, плюс она знает, что давать покупателям. Независимые продажники, третьи лица, обеспечивают до 70% покупок на сайте. И компании нужно знать, какие из них выдавать в поисковой выдаче, и на какие устраивать скидки.

Из сотен миллионов товаров, размещенных на площадке, каждый день компания отбирает всего пару тысяч. Какими параметрами при этом руководствуется компания, чтобы обеспечить максимальные продажи? Как выбирает этот 0,1% подходящих вещей? Или берет товары наугад, рискуя разочаровать покупателей?Читать полностью »

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

Читать полностью »

Через «пару десятилетий» мозг подключат к Интернету - 1

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

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js