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

Можно ли обойтись без нативных языков, разрабатывая на Flutter и RN? Привет! Меня зовут Дима, я разрабатываю мобильные приложения на Flutter в Пиробайт. Все чаще мне приходится сталкиваться с задачами, в которых требуется обращение к нативному API устройства. Пакетов на pub.dev для решения этих задач мне всегда хватает. Но бывают моменты, ког...

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

Project Loom. Не только виртуальные потоки Начиная с Java 19 нам доступны виртуальные потоки, которые отличаются от обычных, тем что умеют освобождать поток операционной системы во время блокирующих I/O операций. Для этого на уровне JVM был реализован механизм сохранения в хипе и восстановления из хипа стека вызова....

[Перевод] Анатомия shadcn/ui Если вы следите за новинками экосистемы JavaScript, то должны были слышать об интересной библиотеке пользовательского интерфейса (user interface, UI) под названием shadcn/ui. Вместо того, чтобы распространяться в виде пакета npm, компоненты shadcn/ui добавляются с помощью ...

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

Своё кастомное межсервисное взаимодействие с блекджеком и gRPC Привет, Хабр! Меня зовут Ильяс. Мы с командой делаем собственный Service Mesh в Ozon Tech, и в этой статье я расскажу, как можно за вечер реализовать свое супер кастомное межсервисное взаимодействие. К концу статьи мы с вами напишем современные алгоритмы балансировки, настро...

Отключаем ненужный функционал плагина для Jira с помощью кастомной аннотации Spring Привет, Хабр! Меня зовут Игнат, в Samokat.tech я пишу плагины, автоматизации и интеграции для Jira. Как разработчик-самоучка, который до «вот этого всего» немного писал на Java, но не пользовался ни средствами сборки (привет, Maven!), ни фреймворками (привет, Spring!), ...

Почему в ботах телеги желательно использовать Webhook вместо Polling Привет, коллеги! Сегодня у нас на повестке дня выбор между двумя гигантами: Polling и Webhook. И если вы когда-либо задавались вопросом, почему именно Webhook является go-to решением для большинства проектов, то это статья для вас.Помните, как в начале 2010-х все разрабы акт...

Как использовать html-элемент <dialog>? Привет, Хабр! Меня зовут Александр Григоренко, я фронтенд-разработчик. В основном, занимаюсь разработкой приложений на React, но также постоянно экспериментирую с различными технологиями.В своей работе я часто создаю собственные или использую уже готовые UI-компоненты. Пробл...

[Перевод] Почему я отказался от GraphQL GraphQL — невероятная технология, привлёкшая много внимания с тех пор, когда я начал в 2018 году использовать её в продакшене. Вам не придётся долго листать мой блог, чтобы увидеть, как я раньше продвигал её. После создания множества React SPA поверх путаницы нетипизированны...

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

[Перевод] Ranking Functions: ROW_NUMBER Четыре функции ранжирования: ROW_NUMBER, RANK, DENSE_RANK и NTILE появились в SQL Server 2005 и отличаются от обычных скалярных функций тем, что результат, который они выдают для строки, зависит от других строк выборки. От агрегатных функци...

Из тестирования в техподдержку и обратно В тестирование попала впервые пару лет назад - это была маленькая аутсорсинговая компания, в которую меня позвал их HR, увидев моё резюме в телеграмме. К сожалению, через пару месяцев в компании начались проблемы и бОльшую часть сотрудников уволили или отправили в “отпуск”...

concurrent.futures в Python Привет, Хабр! Сегодня мы взглянем на одну из самых интересных библиотек в Python для работы с параллельным выполнением задач - concurrent.futures.Каждый разработчик сталкивается с ситуациями, когда необходимо выполнять задачи параллельно. Это может быть I/O-операции, которые...

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

Как я писал свою библиотеку для работы с Telegram В далекий 2019 год, когда про ковид никто не слышал и других жестей еще не было на горизонте, я читал очередную статью как “правильно” писать очередного бота на телеграм. И в очередной раз у меня крутилась мысль: че код так паршиво выглядит то? Где-то в то время телеграм еще...

Пишем GPT4 ботов на coze.com Нет времени объяснять! Bytedance тестирует платформу создания АИ ботов, coze.com, в том числе на базе gpt-4/gpt-3.5/Dalle-3 с возможностью интеграции в телеграм/дискорд. На данный момент ограничений практически нет, бесплатный доступ к огромному количеству сервисов, включая...

Нестандартное решение для бесконечно рвущегося кабеля наушников для ПК Доброго времени суток хабравчане, сегодня хочу поделиться с вами нестандартным решением проблемы рвущегося кабеля наушников ПК. Читать далее

GPT vs Copilot: кто лучший помощник в написании UI-тестов для iOS? Мы выпускаем обновления приложений Lamoda минимум 4 раза в месяц. С каждым обновлением идут серьезные изменения: новые продукты, внедрение ML-моделей и так далее. У нас налажен процесс тестирования нового кода, но есть нюанс: проверять перед релизом нужно не только новую фун...

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

Pandas в pandas'е: упаковываем документацию в датафрейм Документация к сложным библиотекам на питоне (напр. pandas) хранится в doc-строках и разбросана по сотням страниц сайта. В этой статье мы с помощью небольшого кода упакуем её (информацию из документации для каждого класса и метода) в... датайфрейм. Но зачем? Во-первых, это п...

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

[Перевод] Пишем «Змейку» в 12 строк кода на PyTorch Давайте рассмотрим, как использовать линейную алгебру и тензорные операции, чтобы создать всем известную игру в 12 строк. Будем использовать PyTorch и NumPy. Можно было использовать даже какую-то одну из библиотек, но у PyTorch прекрасное Tensor API, а в NumPy есть хороша...

Готовимся к вопросам по вёрстке на интервью Frontend-разработчика: свойство display За свою карьеру у меня было достаточно много собеседований. Конечно, одной из основных тем вопросов была вёрстка. Немного похвалюсь. Не было вопроса, на который я не ответил. Недавно у меня появилось желание снова проверить себя и показать сообществу свои ответы на самые ...

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

Метод SMART. Что это и почему про него важно знать руководителю? Привет! Меня зовут Лера, я в управлении проектами уже 7 лет. Реализовывала проекты на стыке AR/VR/ML-технологий в сервисной компании. Сейчас работаю в EdTech и параллельно занимаюсь менторством начинающих проджектов и руководителей.Прежде чем мы перейдем к основной...

[Перевод] Почему я отказался от разработки игр на Rust, часть 3 Часть 1Часть 2Ситуация с GUI в Rust просто ужаснаВ сообществе Rust ходит шутка, что на 5 игр существует 50 игровых движков; наверно, ещё одна такая шутка нужна про фреймворки GUI. Люди пробуют разные подходы, что, учитывая полную обобщённость Rust как языка, имеет смысл. Но ...

Kotlin Object Multiplatform Mapper Складывается такое впечатление, что дописать свою приложение для Android мне суждено не скоро. Каждый раз начиная писать новую версию (так как старая была написана не до конца, использовалась только мной, а через пару-тройку лет простоя - проще написать заново) своего прилож...

[Перевод] 10 самых распространенных проблем при линтинге Dockerfile'ов Весной 2023 года разработчики Depot добавили в свой сервис возможность проверять Dockerfile'ы при каждой сборке.В этой статье они делятся десятью наиболее распространенными проблемами при линтинге Dockerfile'ов, разбирают каждую проблему и объясняют, почему она возникает и к...

[Туториал] Пишем собственные Spark Native Functions (Часть 2) В предыдущей своей статье Почему стоит начать писать собственные Spark Native Functions? (Часть 1), которая является переводом и которая вдохновила меня на собственные изыскания, был разобран пример, как написать свою Spark Native Function по генерации UID. Это, конечно, здо...

Зачем в Scala трамплины и как их использовать В этой статье директор департамента разработки российской компании «Криптонит» и «скалист» Алексей Шуксто рассказывает о специфической технике функционального программирования, которая называется «трамплин» (trampoline).Если кратко, то «трамплин» — это постоянный вызов в цик...

Account Abstraction: что это такое и зачем нужно криптомиру Привет всем! Меня зовут Паша, я web3 разработчик в команде MetaLamp, мой основной стек – Solidity. Последнее время я часто сталкивался с задачами, требующими применения технологии Account Abstraction, поэтому я решил собрать базовые знания о ней в одну статью. Эта статья пом...

Diplodoc — открытый набор инструментов для создания документации Всем привет, меня зовут Женя Колесников, я из команды Yandex Infrastructure. Сегодня я расскажу, как мы пришли к написанию документации в концепции Docs as Code, придумали для этого набор инструментов, назвали его красивым именем Diplodoc и выложили в опенсорс — теперь вы то...

Побит новый рекорд емкости HDD. 30 ТБ и 400 градусов Цельсия внутри Многие задаются вопросом, как хранить данные дома или на работе. Надо же не только установить систему на жесткий диск, но еще куда-то сложить несколько сезонов любимого сериала, фотографии друзей и родных, видео с котиками, да и для игр тоже нужно много места. А если вы рабо...

Первые шаги в тест-дизайне: Разбираемся в базовых техниках QA Привет, дорогой читатель! Если ты здесь, значит, ты либо только начинаешь свой путь в мире QA, либо ищешь простые и понятные объяснения сложных тем. В любом случае, ты попал по адресу.Для чего же нужен тест-дизайн? Тест-дизайн — это сердце тестирования. Он позволяет определи...

Как работает протокол X11 на самом нижнем уровне X11 это тот механизм на чем работает весь графический интерфейс Unix подобных ОС. Но мало кто знает как он работает на самом деле. Потому что с годами он оброс слоями и слоями библиотек, которые стремятся скрыть саму сущность протокола. А протокол в своей сути прекрасен. О...

Room для Kotlin Multiplatform. Пробуем нативное решение Всем привет! На связи Анна Жаркова, руководитель группы мобильной разработки в компании Usetech. В начале мая Google нас порадовали релизами нескольких библиотек для локальных хранилищ. Наконец, в приложения Kotlin Multiplatform можно полноценно использовать Room (версия 2....

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

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

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

Хабр — Итоги 2023 года Итак, 2023 год. Обнаружена планета с высокой вероятностью существования жизни, на 3D‑принтере учатся печатать сердце, сделаны шаги в борьбе с раком и деменцией, одобрили первое лекарство от болезни Альцгеймера и разработали препарат от болезни Б...

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

Рисуем эффект «Таноса» на Android (и не только) Привет! Вопрос мобильным разработчикам: часто ли вам приходится работать с необычным UI? Если вы ответили утвердительно, то я по-доброму вам завидую. В своей повседневной практике мне в основном приходится работать со стандартным набором компонентов и их базовой настройкой. ...

От каждого по способностям. Как мне удалось прокачать инженерную культуру своей команды, не будучи тимлидом Привет, Хабр! Меня зовут Кирилл Веркин, я Senior QA в СберМаркете. Эта статья о том, как за 1,5 года моя команда прокачала уровень инженерной культуры с нуля до самого высокого среднего балла в компании среди 105 команд. (Да, у нас есть уровни инженерной культуры!) Хочу...

Подключение Google Gemini Pro к проекту на Python Несколько дней назад я решал задачу подключения Yandex GPT, и главной сложностью там было освоение Yandex Cloud Console. В остальном API - вылитая LLaMa 2.С Google Gemini история иная. Документация консоли содержит те самые вставки "New to Google Cloud", отсутствие которых ...

Проблема понимания существующего кода, или Как делать иногда [не] надо Я столкнулся с тем, что я иногда не понимаю код, с которым мне приходится работать. И это сильно сказывается на моей производительности и на качестве конечного результата. Неделю назад я прочитал статью Плохо девелопмент за авторством @dalerank(Сергей Кушниренко), в которой ...

[recovery mode] Как вести несколько проектов и не сойти с ума. Очередная статья про тайм-менеджмент Привет! Меня зовут София, я маркетолог проекта Fitil, в блоге которого публикую эту статью. Fitil — это сообщество для знакомств и общения. Мы стартап, а значит, задач очень много.Кроме Fitil я веду ещё два проекта как маркетолог: занимаюсь позиционированием, запусками ...

OpenAI запускает GPT Store — как создать свой custom GPT с внешними API вызовами Вчера вечером, 10 января 2024 г., OpenAI официально запустили GPT Store. Давайте разберемся, что это такое, и что оно дает. А затем создадим свой собственный GPT и добавим его в GPT Store.Концепция "custom GPT" в терминах OpenAI - это кастомный набор инструкций (custom promp...

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

Библиотека на Go для работы с RuStore API Привет, Хабр!Меня зовут Энрике, и я работаю Go-разработчиком в RuStore. Сегодня хочу рассказать про библиотеку на Go для комфортной работы с API магазина приложений RuStore. Иногда авторизация через API и получение JWE-токена занимают больше времени, чем хотелось бы. С ...

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

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

Библиотека Scout — быстрый и безопасный DI на Kotlin Привет! Меня зовут Александр Миронычев. Я занимаюсь инфраструктурой приложения Яндекс Маркет под Android. Около двух лет назад при работе над модульностью у меня появилось желание написать собственную библиотеку для внедрения зависимостей, которая позволила бы ускорить сборк...

Пишем свой вариантный тип C++ 17 привнес в язык достаточно много нововведений, в том числе шаблон std::variant (хоть в Boost он есть уже довольно давно). Фактически, последним вышедшим и полноценно реализованным стандартом C++ на тот момент, как я начал изучать данный язык, являлся как раз C++17, поэ...

Новости с книжных полок: нужно ли программистам читать книги Опрос показал, что около 60% россиян регулярно читают книги (минимум одну за последние три месяца). Миф о том, что Россия — одна из самых читающих стран, не совсем миф. Но так ли привержены чтению программисты, особенно, когда ситуация в IT меняется чуть ли не каждый де...

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

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

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

[Перевод] Почему я отказался от разработки игр на Rust, часть 4 Часть 1Часть 2Часть 3Dynamic borrow checking вызывает неожиданные вылеты после рефакторингаВ процессе написания статьи я обнаружил ещё один случай вылета нашей игры из-за пересекающегося World::query_mut. Я работаю с hecs уже около двух лет, такие проблемы — это не трив...

Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии В этой статье показано, как приготовить систему «холодных» конфигов для большого Android-приложения, построенного на многомодульной архитектуре. Под «холодными» конфигами здесь подразумеваются настройки приложения, которые нужно делать локально на девайсе без необходимости з...

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

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

Как подключиться к Flutter приложению в режиме нативного debug на ОС Аврора Привет, Хабр! Меня зовут Юрий Петров, я Flutter Team Lead в Friflex и автор ютуб-канала «Юрий Петров | Всё об IT». Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. А также мы делаем  свой вклад в развитие экосистемы Аврора + Flutter. В эт...

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

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

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

Исследуем Скрытые Сокровища: Малоизвестные Библиотеки Python для Аналитики Данных Введение: Привет, Хабр! Сегодня мы исследуем мир менее известных, но чрезвычайно полезных библиотек Python, которые могут значительно обогатить ваш аналитический инструментарий.

Улучши свой iPhone без затрат: 5 крутых бесплатных приложений из App Store С каждым годом в App Store для iPhone становится всё больше приложений. Можно найти софт практически на все случаи жизни, начиная от различных мессенджеров и социальных сетей и заканчивая фоторедакторами с искусственным интеллектом и различными медицинскими дневниками. Одна...

[Перевод] Я счастлив, что больше не веб-разработчик Я написал своё первое одностраничное веб-приложение на Javascript в 2005 году, сразу после того, как узнал о XMLHttpRequest и до появления серьёзных фреймворков. Я оставил профессиональную веб-разработку примерно в 2009 году (а начал её в 1997 году с WebObjects), а последний...

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

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

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

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

Почему умение дебажить один из самых важных навыков для разработчика Привет! Меня зовут Абакар и я работаю главным тех лидом в Альфа Банке. Меня часто посещает вопрос — «А какой навык всё-таки самый полезный для разработчика?». Понятное дело, что ответ на этот вопрос обязан быть комплексным и скилл сет разраба не должен ограничиваться одним н...

Хватит маппить все руками, используй Mapster Привет, Хабр! Меня зовут Георгий, я С#-разработчик в SimbirSoft. Хочу рассказать об опыте использования библиотеки Mapster: как он может упростить разработку, сэкономить силы и частично избавиться от рутины маппинга.Данная статья подойдет и тем, кто только собирается открыть...

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

Как мы анализируем потребление памяти нативными приложениями Технологическая платформа 1С:Предприятие – это большой программный продукт (только на С++ - более 10 миллионов строк кода, а есть ещё Java и JavaScript). Подробнее про устройство платформы можно прочитать тут.В процессе эксплуатации решений, созданных на платформе 1С:Предпри...

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

Как решить проблему уязвимостей бизнес-логики? Поломать приложение еще до написания кода Всем привет. Меня зовут Нияз Кашапов, я AppSec Lead в СберМаркете. Улучшаю процессы безопасной разработки уже более 5 лет. Начинал карьеру в финтехе, где занимался безопасностью кода, фич и бизнес-процессов в онлайн-банкинге. А сейчас продолжаю начатое в одном из самых быстр...

Локальный веб-сервер для разработки с помощью Docker К вам в отдел выходит новый коллега-разработчик и, прежде чем брать первые задачи в одном из проектов, первым делом ему нужно запустить его у себя локально. Если это Senior Full Stack разработчик с опытом администрирования Linux, то установка и настройка конфигов Nginx,...

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

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

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

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

AMD отключила новую функцию Anti-Lag+, из-за которой геймеров блокировали в Counter Strike 2 Компании AMD пришлось отключить свою свежую функцию Anti-Lag+ во всех играх. Свежий драйвер Radeon Software Adrenalin 23.10.2 выходит всего через неделю после предыдущего, где Anti-Lag+ получила поддержку Counter Strike 2.  Напомним, оказалось, что защитное ПО Val...

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

RecTools – OpenSource библиотека для рекомендательных систем Если вы когда-либо работали с рекомендательными системами, то знаете, что все необходимые и самые часто используемые инструменты разбросаны по разным библиотекам. Более того, каждая из таких библиотек имеет много уникальных особенностей, к которым нужно приноровиться (наприм...

Подборка: навыки и инструменты начинающего Go-разработчика Привет! Меня зовут Александр Тетеркин, я Go-разработчик в VK. Раньше я писал на Python, потом перешел на Go — пишу на этом языке уже три года, а также являюсь наставником на курсе «Go-разработчик с нуля».Я знаю, что новички в любой сфере задаются вопросами о том, с чего нача...

[Перевод] Xv6: учебная Unix-подобная ОС. Глава 5. Прерывания и драйверы устройств Драйвер управляет устройством - настраивает, отправляет команды, обрабатывает прерывания и общается с процессами, которые ожидают завершения ввода-вывода. Код драйвера зависит от конкретного устройства, поэтому изучайте документацию на устройство, чтобы понять код драйвера.У...

Пишем сложный Page object для playwright тестов вместе с Dorama Всем привет! Сегодня расскажу о том, как удобно организовать Page Object для большого проекта с использованием Playwright и библиотеки Dorama. Большинство современных веб-проектов имеют сложный интерфейс с переиспользуемыми компонентами. Причем компоненты могут переиспользов...

2d движок для игр Javascript Game Engine (JsGE) Привет всем. Меня зовут Артурас, я пишу на Javascript. Полтора года назад я уволился из оффшорной компании и решил написать свой движок для браузерных 2d игр. Сегодня - делюсь результатами. Читать далее

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

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

Google полностью отказалась от функции Nearby Share Похоже, что Google решила переименовать достаточно известную функцию Nearby Share в Android и скоро начнёт называть её Quick Share, что вполне логично. Проблема этого гениального решения только в том, что Samsung также использует то же самое название для своей службы быстрог...

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

Карантин UI-тестов в iOS Всем привет! Я Тимур — iOS разработчик в платформенной команде hh.ru. Сегодня я расскажу о нестабильных UI-тестах в iOS, и как мы с ними справляемся.Мы уделяем массу внимания UI-тестам, ведь именно они обеспечивают качество и стабильность в наших iOS-приложениях. Сейчас...

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

Решаем задачу асинхронного ввода-вывода с библиотекой Asio Привет, Хабр! Меня зовут Илья Казаков, я C++ разработчик в команде систем хранения данных  компании YADRO, одна из моих задач — реализация эффективных IO-bound программ под Linux. На одном из проектов мы с командой использовали Asio — библиотеку C++ для сетевого и ...

Сложности роста Ruby-приложений Привет! Меня зовут Валентин Бритвич, я Unit Lead интеграций в СберМаркете. Когда СберМаркет был стартапом, мы начинали с одного Rails-монолита, но бизнес рос, и стали появляться сотни партнёров на подключение, кастомные интеграции, которые нужно поддерживать, а с ними и проб...

Почему native Account Abstraction в zkSync лучше ERC-4337 Привет, Хабр! Меня зовут Рома Ярлыков, я разрабатываю смарт-контракты на Solidity в MetaLamp. В этой статье я расскажу, как реализован Account Abstraction в zkSync и чем такой подход отличается от уже популярного стандарта ERC-4337. Чтобы понять, что за блокчейн zkSync, реко...

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

Веб-скрапинг с Scrapy на Python Сегодня мы поговорим о хорошем инструменте для веб-скрапинга, который зарекомендовал себя, библиотеке Scrapy для Python. Читать далее

[Перевод] Как я пишу HTTP-сервисы спустя 13 лет работы с Go Примерно шесть лет назад я написал пост о том, как пишу HTTP-сервисы на Go, и сегодня я снова хочу рассказать, как пишу HTTP-сервисы.Тот пост оказался довольно популярным и вызвал обсуждения, повлиявшие на то, как я делаю это сегодня. И спустя годы ведения подкаста Go Time, ...

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

Темпоральные типы в PostgreSQL и их использование Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня э...

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

Фронтенд-апгрейд для Jira. Как и зачем мы модернизировали сервисный портал КРОК Привет, Хабр! Сегодня хочу поделиться с вами опытом, как мы повышаем качество сервиса вычислительного оборудования наших клиентов и оптимизируем работу команд Центра компетенций по сервису в КРОК. Ранее я уже писала про автоматизацию работы со складом ЗИП. А сегодня будет не...

Сделали библиотеку компонентов, но пришлось переделывать. Почему так вышло и чем дело кончилось Привет, Хабр. Меня зовут Артем Арефьев, я руковожу Frontend-разработкой в направлении продукта для учеников в Учи.ру. Фронтендом занимаюсь уже 11 лет, шесть из которых работаю у нынешнего работодателя. Еще принимаю участие в проектах Open Source (например, внес вклад в проек...

Выбираем подходящий PHP-фреймворк для проекта Привет, Хабр. Меня зовут Денис, я backend-разработчик в Пиробайте. Поговорим о самых распространенных PHP-фреймворках и о том, для каких проектов целесообразнее выбрать тот или иной вариант. Статистику распространения бэкенд-фреймворков на PHP я брал с портала JetBrains...

Магия вне Хогвартса: как повышать ИБ-грамотность сотрудников Сумрачная картинка: большое помещение, мало света. Стол и рядом стул, на котором сидит человек. Он работает за ноутбуком. Чувствую его усталость: он сегодня уже долго работает. Его что-то отвлекает: письмо. Электронное письмо. Он нажимает на ссылку, но ничего не появляется н...

AOP в Golang: как рефлексировать, и почему вам не стоит этого делать Я java-программист по профессии и алкоголик go-developer по зову души. И вот в один прекрасный день я подумал о том, что раз уж в Go есть пакет reflect, то должны быть и способы АОП, прямо как в java. Если вкратце, я захотел генерировать обертки для функций в рантайме, позво...

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

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

Про́клятый огонь, или магия препроцессора C Задавались ли вы когда-нибудь вопросом, можно ли полноценно программировать при помощи директивы #define в языке C? Полнота по Тьюрингу шаблонов C++ известна весьма широко, например, люди пишут трассировщики лучей, делающие все вычисления во время компиляции (вместо времени ...

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

Команда нагрузочного тестирования? Дайте две! Почему иногда подрядчик бонусом к внутренней команде — это хорошая идея Привет! Меня зовут Юля Шамина, я руководитель IT-проектов в СберМаркете. Хочу поделиться нестандартным по всем меркам кейсом, как мы подготовили наши сервисы к высоким предновогодним нагрузкам за 3 месяца благодаря челленджу внутренней команды нагрузочного тестирования. ...

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

Domain Driven Design в Go – это почти не больно Как выглядят паттерны DDD (Domain Driven Design) в большом проекте? А самое главное, стоит ли их вообще использовать? Рассмотрим, какими инструментами можно реализовать DDD на Go и оценим, насколько это больно.Меня зовут Илья Сергунин, я backend-сочинитель в Авито: занимаюсь...

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

[Перевод] Как языковая модель предсказывает следующий токен (часть 1) Я обучил небольшой (порядка 10 миллионов параметров) трансформер по превосходному туториалу Let’s build GPT: from scratch, in code, spelled out Андрея Карпати. После того, как он заработал, я захотел максимально глубоко понять, как он устроен внутри и как создаёт свои резуль...

C++ Дайджест №6 (16 октября – 29 октября 2023) Привет, Хабр! Сегодня я хочу вам представить подборку интересных новостей и материалов из мира C++ за последние две недели.Приятного чтения! Читать далее

C++ Дайджест №5 (2 октября – 15 октября 2023) Привет, Хабр! Сегодня я хочу вам представить подборку интересных новостей и материалов из мира C++ за последние две недели.Приятного чтения! Читать далее

Лучшие альтернативы ChatGPT для QA Привет, Хабр! Меня зовут Иван, я Full Stack QA. Сегодня поговорим про альтернативы ChatGPT, которые работают на территории РФ без костылей и совершенно бесплатно.Каждую из LLM моделей я использую как в повседневной жизни, так при написании автотестов, изучения нового материа...

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

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

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

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

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

Code review: почему мы до сих пор его используем и какие альтернативы? Прообраз code review появился в 60-х годах прошлого столетия, когда программы писали на перфокартах. Главной проблемой тогда было преобразование программного кода в машинный — компиляция. Это сложный процесс, чувствительный к ошибкам и структуре написанного кода. Если в проц...

Выдержит ли проверку временем Twisted Metal 2? Если спросить у увлечённых геймеров, какие они знают самые культовые гонки на выживание прошлого, то большинство назовёт Carmageddon, Vigilante 8 (самые олдфажные – Quarantine) и, конечно же, Twisted Metal. И если про первую я уже писал обзор, то про оставшиеся три – лишь пр...

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

iPhone на iOS 17 зависает и не реагирует на касания. Не повторяйте это на своем смартфоне! С момента выхода iOS 17 для всех прошло уже больше двух месяцев, и можно смело признавать, что у Apple получилась не самая стабильная операционная система. У одних сильно уменьшилось время работы от аккумулятора, у других перестает работать беспроводная зарядка, а у кого-то...

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

Подмена функций стандартной библиотеки PHP с помощью xepozz/internal-mocker Как в PHP заставить функции из стандартной библиотеки, например \time() или \date() выдать нужный результат? С помощью инструмента xepozz/internal-mocker такое возможно сделать. Для этого необходимо выполнить несколько подготовительных шагов и можно запускать тесты в любом о...

One-on-one. Девлог. Карта со сложным кастомным эффектом На этой неделе продолжил (и пока что закончил) рефакторинг. За счет этого быстро добавил карту, на реализацию которой раньше ушла бы куча времени. Читать далее

C++ Дайджест №4 (18 сентября – 1 октября 2023) Привет, Хабр! Сегодня я хочу вам представить подборку интересных новостей и материалов из мира C++ за последние две недели.Приятного чтения! Читать далее

C++ Дайджест №7 (30 октября – 12 ноября 2023) Привет, Хабр! Сегодня я хочу вам представить подборку интересных новостей и материалов из мира C++ за последние две недели.Приятного чтения! Читать далее

Разработка производительного распознавателя автономеров для edge-устройств «Мы всего лишь хотели пофиксить баги в своем продукте, а психанули и создали аналог одной из библиотек» — CV-инженеры CodeInside.Итак, в созданной нами системе мониторинга транспортного потока Smart Traffic System доступен функционал по распознаванию номерных знаков автомоби...

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

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

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

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

Fastlane для Android разработчиков Рост команды требует большего вовлечения в процессы и договорённости, которые, в свою очередь, требуют автоматизации и инспекции. Можно взять bash‑скрипты и закрыть ими эту потребность, но насколько это будет удобно? Тут нужен инструмент, который упростит разр...

Байт-код — это просто! Как сделать DI по-настоящему быстрым Привет! Меня зовут Григорий Юрков, и я уже несколько лет работаю в инфраструктурной команде Яндекс Маркета. Два года назад мы начали разрабатывать свой легковесный DI-фреймворк Scout, который предоставляет выразительный Kotlin DSL. Он не генерирует код, а делает вс...

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

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

Это мы юзаем: библиотека Optuna в Python для оптимизации гиперпараметров Привет, Хабр!Гиперпараметры — это параметры, которые не учатся в процессе обучения модели. Они задаются заранее. От выбора гиперпараметров напрямую зависит качество и эффективность модели, а их оптимизация может улучшить результаты предсказаний.Традиционный подход к оптимиза...

Веб-приложения вытеснят нативные? Краткое содержание. В обозримом будущем сайты/веб-приложения могут вытеснить или серьезно потеснить нативные приложения. Приложения можно будет делать независимо от App Store, Android Маркет и других на HTML/CSS/JS. Это станет возможно благодаря многим независимым факторам:...

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

5 лучших переводчиков через камеру телефона на Android За время своего существования переводчики на Андроид претерпели серьезные изменения. Они стали не только точнее, но и функциональнее. Если раньше нам приходилось вводить текст самостоятельно, выверяя каждую букву, то теперь приложения делают все за нас. И все это благодаря ...

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

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

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

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

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

RSLike@3. Well-known Symbol, улучшенное использование Typescript, и весим больше Еще совсем недавно я выпустил библиотеку которая должна была искоренить ошибки связанные с null и undefined . Честно признаюсь, что решил подсмотреть у Rust Option и Result апи, поскольку увидел в этом потенциал и удобство использования!Если кратко пройтись по истории создан...

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

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

О! Фридайвинг: как я стал фридайвером и почему это больше чем хобби Аригато в хату! Меня зовут Денис Божок, я руководитель департамента платформенной разработки в Островке, но сегодня, внезапно, я здесь не как технарь, а как фридайвер. Так что все, кто давно задавался вопросом, чем занимаются айтишники в свободное время, в чём разница между ...

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

Алгоритм Diffie-Hellman: Пишем приватный мессенджер на Go Это продолжение прошлой статьи про данный алгоритм. Где я рассказывал про возможность общения между двумя пользователями без прямого обмена ключом шифрования. Я уже описывал идею создания прозрачного Open-Source мессенджера на основе этого алгоритма и хочу представить вам ег...

Начался закрытый бета-тест Ashfall — скачайте и войдите раньше других для участия Разработчики Ashfall из NetEase Games сдержали своё слово и открыли тестовые сервера для игроков на iOS, Android и PC. Вероятно, iOS-геймеры должны использовать TestFlight. Общая страница тестирования в маркете 3839 для мобильных геймеров расположена по ссылке. ПК-геймеры мо...

Опасность устарела: несколько важных нюансов в новых стандартах C++ Undefined behavior (UB) — боль, знакомая каждому разработчику со стажем; эдакий «код Шредингера», когда не знаешь, правильно тот работает или нет. К счастью, стандарты языка С++20/23/26 привнесли относительно неопределенного поведения кое-что новое. И довольно важное, если в...

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

Как ускорить LLM-генерацию текста в 20 раз на больших наборах данных Всем привет, я Алан, разработчик-исследователь в MTS AI. В команде фундаментальных исследований мы занимаемся исследованием LLM, реализацией DPO и валидацией наших собственных языковых моделей. В рамках этих задач у нас возникла потребность в генерации большого количества да...

Kotlin под капотом: inline функции Многие разработчики не понимают в чем профит от использования inline функций и в каких случаях их нужно использовать. Для чего нужен crossinline и как работает reified. Разбираемся как это работает на уровне байткода, в котором хорошо видно всю суть inline функций kotlin. Чи...

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

[Перевод] Вам не нужен для этого JavaScript Прошу вас не возмущаться названием статьи. Я не ненавижу JavaScript, я люблю его. Ежедневно я пишу на нём кучу кода. Но ещё я люблю CSS и даже люблю JSX HTML. Я люблю все эти три технологии по причине, которая называется… ▍ Правило наименьших полномочий Это один из базовых...

Так в чём же конечная цель программирования? Написать этот пост меня побудила статья "В чем конечная цель программирования?" и её обсуждение в комментах. Я поставил свой плюс за статью сразу же, как прочитал первое предложение: > В том, чтобы иметь код, который легко изменять.Ведь это же очевидно любому, кто попрогр...

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

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

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

[Перевод] Кто реально угрожает C++ (нет, Rust, не ты) Привет! Меня зовут Александр Каленюк, и я крепко подсел на C++. Пишу на C++ 18 лет кряду, и все эти годы отчаянно пытаюсь избавиться от этой разрушительной зависимости. Всё началось в конце 2005 года, когда мне довелось писать движок для симуляции 3D-пространства. В это...

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

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

Файловый ввод, сделанный по-человечески Поводом к написанию данной статьи и к разработке соответствующей мини-библиотеки ffh стало одно из практических заданий по дисциплине ‘Языки программирования’, которую я веду. В этом задании необходимо прочитать все строки из текстового файла для последующей обработки. Так ...

Личный опыт: переход с Redux на Effector. И при чем тут DX Frontend-разработка очень богата различными инструментами. Новые фреймворки и библиотеки выходят чуть ли не каждый день и, к сожалению, не все из них одинаково полезны или могут сделать ваш продукт лучше. Кроме того, они различаются по степени удобства именно для разработчик...

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

Обзор NativePHP. Инструмент для создания собственных нативных desktop приложений на Laravel Привет, коллеги! В этой статье я сделаю небольшой обзор NativePHP, который появился на последнем Laracon. Что из себя представляет NativePHP? Перед нами фреймворк, который позволяет нам писать нативные десктоп приложения, используя PHP. Приложения кроссплатформенные - можно ...

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

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

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

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

FineBI под микроскопом: Обзор новых функций и улучшений в Q1 2024 Хабр, привет! Меня зовут Александр Ларин, я являюсь руководителем центра технической поддержки и обучения в GlowByte, а также лидером самого большого в России сообщества FineBI.Сегодня в нашем фокусе – обновления, которые не оставят равнодушными ни одного бизнес-аналити...

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

Нетипичные сценарии использования BI-системы (Apache Superset) Всем привет!Сегодня поговорим о немного нетипичной для меня теме, а именно - Apache Superset. Обычно я пишу длинные "философские" статьи "на свободную тему", но в этот раз - это будет туториал. Так что кому-то может показаться банальностью, но, опять таки, вдруг кому поможет...

[Перевод] Dataloader 3.0: Новый алгоритм для решения проблемы N+1 При реализации Cosmo Router, open-source замена Apollo Router, мы столкнулись с проблемой поддержания нашего кода для решения проблемы N+1. Реализация маршрутизатора для федеративных служб GraphQL в значительной степени зависит от возможности группировать вложенные запросы G...

Загрязненный — значит опасный: про уязвимость Prototype Pollution Prototype Pollution (CVE-2023-45811, CVE-2023-38894, CVE-2019-10744) — не новая брешь, вы уже наверняка читали про нее и на Хабре, и на PortSwigger, и даже в научных журналах, но есть нюанс. Несмотря на большое количество публикаций, некоторые популярные решения до сих пор о...

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

[Перевод] Учим ИИ играть в настолку Magic the Gathering За последние полгода я несколько раз писал о тонкой настройке (fine tuning). Fine tuning — очень соблазнительная технология, обещающая закрыть проблемы в функциях GPT-4, будучи при этом быстрее и дешевле. Однако как бы часто не обсуждали fine tuning, я нашёл на удивление мал...

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

[Перевод] Исправляем следующие 10 000 багов, связанные с наложением ссылок Почему появляются баги? Существует много причин, но если мы взглянем на конкретные примеры, то сможем увидеть закономерности — и спроектировать наши системы так, чтобы избежать целых классов ошибок. Под катом автор блога Considerations on Codecrafting рассматривает ошиб...

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

far2l в Ubuntu 23.10 Ура! В новой версии Ubuntu, наконец-то, можно установить Far Manager (far2l) самым обычным sudo apt install far2l — прямо из коробки, без всяких ppa и кастомных сборок! Под катом — немного подробностей, а также обычный дайджест новостей проекта за прошедшее время. Читат...

Как мы наладили процесс разработки внутренних приложений с помощью Appsmith Привет! Меня зовут Алексей, я аналитик данных в команде BI финансового маркетплейса Банки.ру. Сегодня хочу поделиться опытом работы с Appsmith. Это low-код инструмент для автоматизации бизнес-процессов. В статье расскажу, зачем вообще нам понадобился подобный инструмент...

5 стадий принятия необходимости изучения «плана запроса» или почему может долго выполняться запрос Всем привет! Меня зовут Виктор, я работаю в Компании БФТ-Холдинг руководителем группы разработки. В этой статье разберем подходы и рекомендации по выявлению и устранению проблем с производительностью в системе базы данных Greenplum. Материал будет особенно полезен начинающим...

Про право на ошибки на новой работе Привет. Я пиарщик в ИТ-компании. И сегодня был мой восьмой день в офисе на новой работе. До этого 5 лет работала на удаленке в смежной сфере.Эту заметку пишу в ночи в своём смартфоне. И вот почему.Я проснулась среди ночи из-за кошмара — во сне начала задыхаться под обрушивши...

CPM vs. BI:  о чем не расскажут продавцы Более восьми лет я специализируюсь на внедрении CPM и BI-систем различных вендоров. Несмотря на то, что во многом их функционал пересекается, мне хорошо понятно, какие задачи решаются лучше, а какие решаются только одним из этих двух классов систем.Написать данную статью мен...

Рефакторинг кода, и как его не бояться Привет, Хабр!Уже около четырех лет моя профессиональная деятельность тесно связана с энтерпрайз разработкой мобильных приложений на Flutter в компании TAGES. Сегодня мне бы хотелось поделиться некоторыми мыслями и практическими советами на тему, которая является актуальной и...

Пишем свой QTableView с нуля Итак жил был фреймворк Qt и последние 10 лет ничего в нем не менялось. И захотел один чел написать свой QTableView с нужным ему функционалом, а именно захотелось ему выводить ячейки в несколько рядов (по горизонтали) в одной строке. Ещё ему хотелось растягивать одну из ячеек...

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

Запускаем Steam игры в Proton c поддержкой Native Wayland Иллюстрации к статье подготовлены нейросетью freepik.com. В первой части нашей статьи, мы научились собирать Wine с поддержкой Wayland и запустили игру Overwatch 2. Но для большинства геймеров конечно же больший интерес представляет запуск игр Steam, и этот вопрос мы не про...

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

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

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

Релиз-менеджер — почему он вам нужен Привет! Меня зовут Ксения, я уже больше 7 лет занимаюсь релизами и сейчас работаю релиз-менеджером в RuStore. Сегодня хочу рассказать больше об этой роли, в каких случаях он вам нужен (спойлер, не всегда) и когда её можно переложить на другого сотрудника.  Читать далее

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

Гикеаны, потомки нептунов Наблюдения современных космических телескопов – прежде всего, «TESS» и «JWST» (Джеймс Уэбб) демонстрируют крайнее разнообразие внесолнечных планет, и каждое новое подтверждённое открытие просится в хабропост. Несомненно, при изучении экзопланет нас интересует, прежде всего, ...

SSD killer SSD killer — destroyer for your ssdПривет, меня зовут Ваня, и вот коротенькая история о том, как я придумал и собрал одну штуку, и почему вам нужно срочно отдать мне все свои деньги.А если серьезно, это устройство для оперативного аппаратного уничт...

[Перевод] Как понять, есть ли в тебе искра программиста Я думаю начать учиться писать код. Какой ноутбук мне купить? Нужно ли участвовать в буткемпе? Нужны ли моему ребёнку особые курсы или подготовка, чтобы поступить на computer science? Многие люди спрашивают меня, стоит ли им учиться писать код, хорошим ли карьерным путём буд...

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

Подключаем модуль TM1638 к Arduino без библиотеки SPI Изначально поставка задачи была такой. У меня была в наличии плата TM1638. Нужно было научиться с ней работать (ну и проверить работоспособность самой платы) для того, чтобы использовать её в одном интересном проекте (о нём в другой раз). Под рукой оказалась платка Arduino N...

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

Процедурные складки на одежде для мультфильма на основе Geometry Nodes Привет, Хабр! Я Михаил Солуянов, ведущий разработчик в МТС Авто — занимаюсь генерацией синтетических изображений для обучения нейросетей. В рабочее время я Unity-разработчик, а в свободное — инди-аниматор мультфильмов. Сегодня расскажу о том, как сделать складки на одежде бе...

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

5 полезных JS-библиотек для анимации, которые могут пригодиться в работе Привет, Хабр! Сегодня поговорим о фронтенде, а точнее, о способах улучшения веб-приложения. В этом могут помочь JS-библиотеки для анимации. В подборке их пять, но если вы знаете и другие, причём те, что применяете в работе сами, расскажите о них в комментариях. Читать далее

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

Ещё раз об экзоконтинентах, тектонике плит и зарождении жизни Не так давно уважаемый @SLY_G опубликовал на Хабре перевод интересной статьи «Когда во Вселенной впервые появились континенты». Ссылаясь на исследования и модели Джейн Гривз из Школы физики и астрономии Кардиффского университета в Уэльсе, автор статьи (Эван Гоф) рассуждает о...

Используем Gemini для просмотра лекции В феврале Google мы познакомились с Gemini 1.5 Pro с контекстным окном в 1 миллион токенов. Больший размер контекста означает, что Gemini 1.5 Pro может обрабатывать огромные объемы информации за один раз — 1 час видео, 11 часов аудио, 30 000 строк кода или более 700 000 слов...

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

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

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

Kaspresso для самых маленьких Привет! Меня зовут Элчин, я занимаюсь автоматизацией мобильных приложений в hh.ru и расскажу вам о том, как написать первый тест на Android. В разработке автотестов мы используем Kotlin и нативный фреймворк Kaspresso, о котором я напишу подробней в этой статье. Читать далее

Как написать свою маленькую ОС Большое начинается с малого. Например, ядро Linux 0.0.1 состояло всего из 10 239 строк кода, из них 20% комментарии. Такой проект вполне может осилить студент в качестве курсовой или дипломной работы, программируя по вечерам на домашнем ПК (собственно, Линус и написал его ...

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

Как PaaS решил проблемы стандартизации разработки сервиса одной утилитой Привет

Управляем навигацией во Flutter с помощью библиотеки auto_route: часть 2. Guards, Wrappers и миграция Привет, Хабр! Меня зовут Юрий Петров, я Flutter Team Lead в Friflex. Это продолжение моей статьи про библиотеку auto_route. В этой статье, я попробую пояснить, что такое охранники(guards), обертки (wrappers) и с чем вам придется столкнуться в легаси проектах при миграции на ...

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

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

Подключаем библиотеку к проекту с помощью npm/yarn link Привет! Меня зовут Света, я фронтенд-разработчик отдела спецпроектов в KTS.Наш отдел разрабатывает и запускает около 100 проектов в год. При такой загрузке мы постоянно ищем новые способы ускорить и автоматизировать работу.У нас много библиотек: с общими утилитами и хуками, ...

Люди матрицы Все конечно же смотрели фильм ‘Матрица’. И, конечно же, уверены, что это художественный вымысел, и мы не живем в матрице. Но вы ошибаетесь. Реальная матрица выглядит не так фантастически, как в фильме, но она существует. У вас прихватило сердце, и вы обратились к врачу....

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

Семантический поиск и генерация текста на R. Часть 1 Для этой задачи использую LLM (Large Language Models - например, chatGPT или opensouce модели) для внутренних задач (а-ля поиск или вопрос-ответную систему по необходимым данным).Я пишу на языке R и также увлекаюсь NLP (надеюсь, я не один такой). Но есть сложности из-за того...

Как автоматизировать построение архитектурных схем в большой микросервисной системе Если у вас есть большая система, состоящая из множества микросервисов, то вы наверняка задавались вопросом: «Что сделать, чтобы архитектурная схема всей системы была всегда на 100% актуальной?». Обычно, в компаниях есть свои практики формирования архитектурных схем и ведения...

Новости из мира OpenStreetMap за сентябрь Еженедельник OSM снова на Хабре! Теперь раз в месяц, но с самыми интересными новостями. Приятного чтения.На обложке: визуализация обращений к тайлам OpenStreetMap Читать далее

Победить хаос в документации: почему мы создали свой продукт для Docs-as-a-Code Привет, Хабр! В 2020 году компания решила вывести на рынок линейку продуктов Platform V. Для них нужна была документация, которая на тот момент велась в Confluence. Нам предстояло проделать сложную и дорогую работу: собрать документы на нужные версии, привести тексты к едино...

asynpg-lite: Простой асинхронный менеджер для PostgreSQL на Python Друзья, в прошлых своих публикациях я рассказывал о том, что почти в каждом своем проекте использую свой класс для работы с базой данных PostgreSQL. На днях этот класс перерос в полноценную библиотеку asynpg-lite на базе asyncpg, которую каждый из вас может прямо сейчас уста...

Был программистом, а стал системным аналитиком: что хорошего в смене специализации и каких ошибок лучше не совершать Если вы задаётесь такими вопросами, как «точно ли я занимаюсь тем, что нравится?» или «как сменить сферу деятельности?», тогда эта статья однозначно для вас. В ней я поделюсь:• тем, как я выбрал свою первую профессию программиста;• почему решил сменить её и ушёл в системный ...

Нодовая архитектура на Unity Меня зовут Игорь, и я Unity Developer. В этой статье я хотел бы поделиться кастомной архитектурой, которую сделал в процессе разработки своей RTS игры.Скажу сразу: что основные концепции и принципы уже используются в различных DI фреймворках, таких как Zenject & VContain...

Инструкция: создание архивов в форматах 7z и TAR в Windows 11 Build 22635.3566 (Beta) Помимо функции дублирования вкладок в «Проводнике», в инсайдерской сборке Windows 11 под номером 22635.3566 для канала Beta появилась возможность нативного создания архивов в форматах 7z и TAR. Эта функция также отключена по умолчанию, но вы можете вручную активировать её с...

О кастомных HTML-тегах по-человечески и как их использовать Расскажу вам о том, как использовать чудо-юдо под названием «Кастомные HTML‑теги» понятно, но подробно. Читать далее

Почему мое производство пельменей умирает В 2018 г. я открыл производство пельменей и полуфабрикатов. Шучу, что у меня 3 класса образования церковной школы, так как мое высшее по специальности “социальная коммуникация” не кажется мне фундаментальным.6 лет мы продаем 50 позиций пельменей, голубцов и чебуреков в 200 м...

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

Идемпотентность: больше, чем кажется Друзья, всем привет! Идемпотентность в проектировании API — не просто формальность. Это свойство, часто рассматриваемое как способ получения одинакового ответа на повторяющийся запрос, на самом деле означает гораздо больше... Читать дальше →

Почему компьютер Mac сам исправляет русские слова на украинские и что с этим делать В ноябре прошлого года я стал обладателем MacBook Air с экраном на 15 дюймов. Ноутбук приехал в Россию по параллельному импорту из США и не имел русскоязычной раскладки клавиатуры. Делать гравировку мне не хотелось по нескольким причинам. Во-первых, было банально жалко отда...

Подборка видео с последнего SREcon Всем привет меня зовут Максим, я SRE инженер в группе компаний Тинькофф.Но сегодня я здесь по другой причине.Я уже давно собираю и публикую подборки видео, от которых есть толк, с разных каналов SRE направленности в телеграмм канале https://t.me/sre_pub и спасибо им большое ...

За уровни сложности Like a Dragon: Infinite Wealth нужно будет доплатить На протяжении 20 лет отношение публики к DLC потихоньку менялось к лучшему — много лет назад народ воспринял платную броню для лошадей в штыки, однако сегодня публика особо не сопротивляется подобным трюкам издателей

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

Как мы в Яндекс Путешествиях на Compose стёкла морозили Всем привет! Меня зовут Антон Урывский, я Android-разработчик в Яндекс Вертикалях. Мы создаём знакомые всем сервисы: Яндекс Путешествия, Недвижимость и Аренда, Авто.ру. Сегодня я поделюсь опытом создания фичи, которая блюрит не содержимое View, а всё, что находится под ...

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

Покрытие архитектуры as Code тестами

Реальная эффективность. Как подняться на новый уровень Привет! Этот пост - как и весь блог - для смелых и амбициозных IT-экспертов. Для тех, кто знает, что такое увлекательные проекты, с кем случается работать по 17 часов в сутки (потому что интересно), кто любит свою работу, и ищет в ней своей самореализации. А кроме этого, зна...

Почему одни смартфоны на хорошем процессоре работают быстрее, а другие — медленнее Если открыть свежий рейтинг производительности смартфонов AnTuTu по состоянию на середину 2024 году, то в лидерах списка окажутся модели на процессоре Snapdragon 8 Gen 3, что вполне предсказуемо. Однако лидер ASUS ROG Phone 8 Pro набирает 2.1 млн. баллов, в то время как HON...

Революция в клеточной биологии: Применение GPT-4 для РНК-секвенирования Одноклеточное РНК-секвенирование (scRNA-seq) – метод изучения экспрессионных профилей на уровне отдельных клеток, то есть определения, какие РНК присутствуют в каждой клетке и в каком количестве. Это позволяет ученым понимать, как функционирует каждая клетка и какие функции ...

Недокументированная возможность в Phpstorm: нативная консоль php -a с автодополнением из IDE В прошлой статье я уже рассказывал о том, что использовать консоль Xdebug как аналог Python Console в Phpstorm. В комментариях меня спросили, чем не подходит для этого нативная консоль php, которую можно вызвать командой php -a (Php Interactive Shell). Я тогда ответил, что о...

Гайд по настройке звука в Rocksmith 2014 В этом году Rocksmith 2014 исполнилось 10 лет. На её место пришла Rocksmith+ — более новая, поддерживающая современные ОС и аудиосистемы «из коробки», но недоступная в РФ, по подписке и не имеющая такой же обширной библиотеки песен, как RS2014. Также треки крупных групп могу...

Как я проходила стажировку в отделе аналитических решений почти без опыта работы с данными Привет, меня зовут Луиза, я инженер данных в ЮMoney — работаю здесь уже год. Мы собираем данные, структурируем их, храним и создаём аналитические решения, например OLAP-кубы и дашборды. Департамент разделён на несколько команд, у каждой своя предметная область. За год я прев...

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

Зачем и как практиковаться начинающему аналитику — Что работодатели хотят от джуниор аналитика данных?— Работодатели хотят, чтобы он был мидлом.Если ты не смеёшься над этим анекдотом, то наверняка недавно закончил (либо заканчиваешь) обучение по обретению специальности «Аналитик данных». А ещё ты пока не нашел, но уже нача...

Прогнозирование временных рядов с помощью библиотеки Skforecast В открытом доступе существует огромное число библиотек для построения моделей машинного обучения в Python. Самые популярные — scikit-learn, XGBoost, LightGBM, Catboost, PyTorch. Каждая из них позволяет построить регрессионную модель для прогнозирования на временных рядах, ...

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

Делаем макросы в Rust Привет, Хабр!Rust имеет два основных типа макросов: декларативные и процедурные. Каждый из этих типов служит различным целям и предоставляет различные возможности манипуляции с кодом.Декларативные макросы работают, сопоставляя заданные шаблоны с фактическим кодом и заменяя е...

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

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

Уравнение с тремя неизвестными: как отлавливать баги в системах хранения данных Привет! Меня зовут Никита Гуцалов, я инженер в компании YADRO и занимаюсь разработкой ПО для системы хранения данных TATLIN.UNIFIED. Вообще с системами хранения данных (СХД) я работаю уже много лет и люблю эту тему, поскольку она постоянно бросает новые вызовы, заставляя реш...

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

Как написать новостной Телеграм-канал если ты не программист. Часть первая Всем привет! Попробую написать трилогию покорения основ Python, отражающую мой путь любителя с “паяльником”. Тут не будет основ, чистого кода, отсылок к требованиям PEP-8, практически не будет ООП.Всех суровых Senior’ов, читающих данный материал, прошу понять и простить. Я н...

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

ИТ-книга от идеи до выпуска. Часть 2: поиск издательства В 2021 году я выпустила свою первую книгу по тестированию — «Курс молодого бойца». Заняло у меня это 4.5 года! И я решила поделиться своим опытом в цикле статей:Часть 0. Как начать и не броситьЧасть 1. Работа с фриланс-художникамиЧасть 2. Поиск издательстваЧасть 3. Процесс п...

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

Свежая подборка статей на тему 3D-печати Как насчет свежей подборкиКогда я был студентом, то постоянно сталкивался с проблемой поиска литературы для своей дипломной работы. Сегодня, будучи аспирантом, мне приходится находить и просматривать минимум по 10-20 обзорных и научных статей в неделю, чтобы отыскать нужную ...

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

Ода хейта C++ Я люблю С++. Это мой основной язык разработки на работе и в домашнем проекте. Я люблю его за скорость, за гибкость и близость к железу. Используя его, я понимаю "что происходит внутри". Я учился на нем программировать, и когда я пишу программы я "думаю на С++". Я работаю в г...

Резервный мониторинг послушного дома Хотя концепция "умного дома" в полном объёме мало кем используется в жизни (и ещё меньше кем самостоятельно реализована), отдельные его компоненты - разного рода датчики, умные розетки, камеры и прочее, с доступом через "облако" - давно не редкость. До покупки дачи меня всё ...

Допиздержки: думаю, что хостинги РФ подорожают в 2024-м Молоко по 790 мл? Вот вам пример интереснее. У этого хостера цены те же, только комиссия чуть выросла. Сейчас идёт серьёзный передел рынка хостингов из-за тенденции ходить в Интернет по паспорту. Это моё личное мнение, но очень похоже на то, что в следующем году всё стане...

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

Зачем компании делают коллаборации, и считать ли встречу выпускников коллабой Привет! Я Елена Бычкова, CJO в Альфа-Банке. Сегодня хочу поговорить с вами про коллаборации. Это слово мы видим в статьях и включаем в презентации, уже не задумываясь о смысле. А что же такое коллаборация? Запуск карты X5 от Альфы — коллаборация? Однозначно да. Встреча ...

Блеск и нищета std::format Сравнительно недавно в stdlib плюсов появилось форматирование строк «как в питоне», а точнее, как в библиотеке fmt. И я, как смелый и отчаянный, решил этим воспользоваться. Возможно, аксакалы и настоящие разработчики скажут, что я всё делаю не так, и вообще не то, но я буду ...

Анализ 10 000 вопросов с технических интервью: частотность и вероятность встречи Привет, Хабр! Я проанализировал 600 публичных мок-интервью с YouTube и собрал из них 10 000 уникальных вопросов. Затем посчитал, как часто они встречаются, и определил вероятность появления каждого вопроса. У меня есть данные по 20 профессиям, включая frontend, python, java-...

Рассматриваем мифический фреймворк C2 Mythic. Часть 1 Привет Хабр, на связи лаборатория кибербезопасности AP Security. В этой статье мы продолжим разбирать C2-фреймворки. На этот раз, мы будем изучать относительно новый фреймворк под названием Mythic. Приятного прочтения! Читать далее

iOS 18 добавит новый режим в AirPods Pro Марк Гурман из Bloomberg пишет, что AirPods Pro не претерпит каких-либо аппаратных изменений в 2024 году. Однако он заявил следующее: «Большой новостью станет новый режим слухового аппарата, который появится вместе с iOS 18». AirPods уже предлагают функ...

Как подружить Ростелеком Ключ и Home Assistant Недавно ко мне в руки попал ключ для домофона «Ростелеком» непривычной прямоугольной формы. А вскоре после этого на моем телефоне появилось приложение «Ростелеком Ключ», которое позволило полностью перестать пользоваться физическим ключом. В нем можно просматривать видео с р...

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

Глава Electronic Arts: «На мобильных играх сложно зарабатывать» Electronic Arts отчитались перед инвесторами о планах компании на мобильные игры. Так, в марте издание mobilegamer.biz рассказало, что два внутренних подразделения EA — HD и смартфоны — объединили для совместной работы над EA Sports FC, Madden NFL и The Sims. Подобные измене...

Моё лучшее вложение 13 тыс. рублей (какой ботаник без микроскопа?) Сидел я тут недавно перед монитором и размышлял чем бы себя ещё порадовать, а надо сказать, что порадовать меня не так просто (смайл). Долго я размышлял и решил остановить свой выбор на… микроскопе. Почему бы и нет? У меня уже давно стояло в планах оснастить лабораторию по...

Как я решал Advent of Typescript, и что я понял Возможно вы слышали про Advent of Code — ежегодное соревнование по решению задач на рождественскую тему. Начиная с 1 декабря, вплоть католического рождества, каждый день выкладывается новая задача. С каждым днем сложность задач возрастает.В дека...

[Перевод] Оценка заявки в YC на примере CommandBar Мы успешно попали в батч S20 акселератора Y Combinator с проектом CommandBar, хотя сами в то время продолжали работать над другим стартапом под названием CodePost. Нам одинаково нравились оба проекта и мы решили пусть YC определит какой проект лучше. "Если проект попал в YC,...

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

[Перевод] Время изменений: депрекация datetime.utcnow() в Python Как-то я изучал release notes новой версии Python 3.12, и в разделе о депрекациях моё внимание привлекла следующая фраза:utcnow() и utcfromtimestamp() из datetime.datetime устарели и будут удалены в будущей версии.Если вы следили за моими туториалами по в...

Почему с каждой новой версией Windows от нее усиливается усталость Привет! Меня зовут Васьен и я пользуюсь Windows уже 24 года. Большие боссы из Майкрософт молодцы и соображают, что делают. Тут и удачные инвестиции, развитие самых различных направлений и стремление захватить как можно больше рынка (хотя куда уж больше?). Но мне, простому см...

ChatGPT + YandexGPT API = ЛЮБОФ. Часть 1 Сказ о том, как мы, дата-сайентист и аналитик данных, на троих с ChatGPT, без программиста и девопса, создали сервис пересказа новостей TechMix с текстом и озвучкой. ChatGPT писал код, а мы ему только поддакивали.Авторы: Эдуард Ланчев, Илья Кузнецов, ChatGPTТретьим будешь? (...

Как настроить сбор статистики и автоматическое отключение пользователей WireGuard в ispmanager с помощью Python и API Привет! Меня зовут Вячеслав, и я руководитель отдела маркетинга. Я поднял VPN-туннель по подписке на базе ispmanager. Однако мне этого было мало: нужно было, чтобы по окончании подписки туннель автоматически отключался и статистика по каждому пользователю собиралась ежедневн...

Совет руководителям Привет!Меня зовут Андрей и я руковожу IT-подразделением. Около 5 последних лет я работаю в Яндексе с командами от единиц до сотен инженеров. Так сложилось, что команд я потрогал много и разных: некоторых руководителей от времени перемещают по частям компании и зонам ответств...

Книга: «Рецепты Python. Коллекция лучших техник программирования» Привет, Хаброжители! В «Рецептах Python» используется простой, но эффективный метод освоения 63-х базовых навыков программирования на Python. Сначала формулируется вопрос, например «Как найти элементы в последовательности?» Затем приводится базовое решение на чистом понятн...

Duke Nukem 3D: один из пионеров дизайна уровней С 1993 года, когда вышел Doom, разработчики сделали множество шутеров. Подобные игры того времени вносили много базовых знаний по дизайну уровней игр, многие из которых все ещё используют. Одной из запоминающихся таких игр была Duke Nukem 3D 1996 года. Побудило меня пере...

Вам не нужен Lodash. Хватит! Пожалуйста На State Of JS 2023 Lodash занял первое место в топе библиотек - что меня сильно огорчило. Я топлю за его отказ последние годы - и хотел бы рассказать, почему я считаю его вредным и не особо вам нужным. Ну давай!

[Перевод] Почему ручное тестирование не умрет Автоматизированное тестирование стало настолько неотъемлемой частью обеспечения качества, что некоторые тестировщики задаются вопросом, не заменит ли оно полностью ручное. Читать далее

Краткий обзор развития лямбда-выражений в C++11, C++14, C++17 и C++20 Привет, Хабр!Сегодня рассмотрим лямбда-выражения в C++ и их эволюцию с момента появления в стандарте C++11 и до последних обновлений в C++20.Лямбда-выражения в C++ — это анонимные функции, которые позволяют писать инлайн-выражения прямо там, где они используются. С их помощь...

Неизвестно полезный CSS. Часть 2 Привет, Хабр. Я продолжаю рассказывать про неизвестные широкому кругу разработчиков CSS-фишки. Я отбираю их так, чтобы они были полезны в разного рода проектах. Неважно, верстаете ли вы сайт для малого бизнеса или создаёте супермодное React-приложение. Они поддерживаются б...

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

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

Apple добавит поддержку стандарта RCS в 2024 году Google и Samsung совместно с регуляторами уже давно подталкивают Apple к переходу на новый стандарт обмена сообщениями. Внедрение в iPhone поддержки RCS (Rich Communication Services) позволит владельцам смартфонов на iOS и Android без проблем обмениваться сообщениями. Компан...

Гайд по ICLR 2024: тренды и лучшие доклады Привет! Меня зовут Света Маргасова, и я руковожу бригадой моделей с внешней информацией в Яндексе. В этом году в большой компании коллег впервые побывала на конференции ICLR (Learning Representations (ICLR) — обучение представлений), которая проходила в Вене. Масштаб и форма...

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

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

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

[Перевод] Функции ранжирования: RANK, DENSE_RANK, and NTILE В предыдущей статье обсуждалась функция ROW_NUMBER. Сейчас же мы рассмотрим другие функции ранжирования: RANK, DENSE_RANK и NTILE. Начнем с RANK и DENSE_RANK. Эти функции по функциональности и реализации аналогичны ROW_NUMBER. Разница в том, что ROW_NUMBER присваивает уникал...

Как рендерить R Markdown в PDF на кириллице Так получилось, что за всё время, что я использую в работе R, мне не доводилось рендерить markdown-файлы в формат PDF. Иногда я хранил наработки просто в фалах .R, а исследования оформлял в Google Docs, накидывая туда скринов из viewer-а. Иногда это был рендер в .html, с инт...

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

[Перевод] Что это за устройство у меня в комнате? Примерно год назад я переехал в новую квартиру. Одной из причин её выбора стал возраст здания. Строить его закончили в 2015 году, что гарантировало неплохую теплоизоляцию на зиму, а также кучу приятных мелочей наподобие Ethernet-разъёмов в каждой комнате. Однако в квартире о...

5 ноутбуков на Windows, которые не стыдно купить вместо MacBook Air и не пожалеть о выборе Когда кто-то из знакомых просит у меня посоветовать ноутбук за 100 тысяч рублей, то первое, что приходит мне в голову — это MacBook Air. Стильный внешний вид, длительное время автономной работы и хорошая производительность. Однако macOS подходит далеко не всем. Некото...

Как сделать Spark в Kubernetes простым в использовании: опыт команды VK Cloud Сегодня Spark — отраслевой стандарт среди инструментов обработки данных. Его часто используют в связке с Hadoop, однако Hadoop не очень подходит для работы в облаке. Альтернативой может быть Kubernetes, однако самостоятельно его настраивать и конфигурировать очень сложно. ...

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

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

Лучшие игры для взрослых на смартфоны и ПК, в которые я играл В App Store и Google Play не пропускают мобильные игры с откровенными сценами, наготой и контентом 18+. Поэтому зачастую геймерам приходится искать альтернативы, включая сайт itch. На нём много подобного контента, который можно скачать на ПК, на смартфоны или вообще играть в...

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

Infinite scroll (бесконечный скролл) +Virtualization (виртуализация) на примере ReactJS+ RTK Query На сегодняшний день любое уважающее себя предприятие, будь то магазин строительных товаров или компания по предоставлению услуг в сфере бизнеса, все они стремятся «выложить» свои товары и услуги в интернет. Это и понятно – мы живем в век бурно развивающихся технологий и дост...

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

AutoLove: апдейты девушке с YandexGPT Салют! Меня зовут Григорий. Как и у многих из нас, у меня есть вторая половинка, и ей свойственно требовать внимания. Сам по себе я человек занятой и мне бывает трудно отвлечься от дел и написать апдейт девушке, из-за чего приходиться терпеть капризы по причине «недостатка в...

Байки с завода: как IT-специалисту на производстве живётся У нас в индустрии есть распространённый мем: мол, есть стандартный офисный IT, а есть тяжёлый диджитал. И «тяжёлый» —  это не про нагрузку, а про общий сеттинг.Сибирь, дыхание зимы, посреди густой тайги завод, а внутри – металл теплообменников, экструдеров и печей пирол...

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

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

Автоматизируем рутину в Android разработке: плагин для создания шаблонного кода на примере создания -api -impl модулей Привет, хабр! Меня зовут Алексей, я ведущий разработчик платформенной команды и по совместительству лид архитектурной компетенции в проекте Альфа-Бизнес. Сегодня я расскажу, как можно автоматизировать повторяющуюся работу в андроид-разработке при помощи плагина для Android S...

5 хороших недорогих процессоров, которые подойдут даже для игрового ПК Процессоры, хоть они и являются сердцем любого компьютера, не всегда должны быть самым дорогим и производительным компонентом. Многие игры не требуют большой вычислительной мощности от ЦПУ. Поэтому нет большой пользы от использования в сборке самого мощного “камня”. Зачастую...

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

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

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

Пакуем весь трафик в Ping message, чтобы не платить за интернет | ICMP NAT traversal Бывало ли у вас такое, что вы подключились к общественной сети или мобильному интернету, но он себя странно ведёт. Надпись «Подключено, без доступа к интернету» отсутствует, устройство думает, что всё нормально. Вы открываете браузер и видите «Пройдите проверку личности в с...

Встроенные системы: с какими сложностями сталкиваются разработчики Проектирование встроенных систем подразумевает создание аппаратного обеспечения (печатной платы) и встроенного ПО. На каждом из этих направлений разработчики сталкиваются с неочевидными трудностями – неочевидными прежде всего для заказчиков. Здесь я хотел бы перечислить самы...

9 полезных крейтов в Rust Привет, Хабр!Rust, как любимый многими разработчиками знаменит своей скоростью и безопасностью. Но его истинная сила заключается в экосистеме крейтов — библиотек и инструментов, которые могут превратить сложные и трудоёмкие задачи в удивительно простые и приятные процессы.Кр...

Борьба за рентабельность, или Как поддерживать стабильную прибыль на уровне 20% от оборота Всем привет! Я Дмитрий Ластовкин, заместитель CEO в AGIMA. Сегодня я расскажу, как мы «укрощаем» рентабельность и какие для этого используем инструменты. Эту статью мы писали вместе с Сергеем Кожемякиным, нашим CEO. Она будет полезна руководителям агентств и всем, кто участв...

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

Разбираем геймплей бета-версии Tarisland — с виду WoW, а на деле азиатская MMO Сегодня заканчивается короткий бета-тест глобальной версии MMORPG Tarisland. Так как после него не будет пробных запусков, то я решил взглянуть, чего ожидать от этой игры на релизе. Первое место, куда попадает игрок — меню выбора класса персонажа: воин, маг, берсерк, палад...

Дайджест новостей из мира будущего, машинного обучения, роботов и искусственного интеллекта за начало зимы Отфильтровав для Вас большое количество источников и подписок, сегодня собрал все наиболее значимые новости из мира будущего, машинного обучения, роботов и искусственного интеллекта.Меня зовут Рушан, и я автор Telegram‑канала Нейрон. Не забудьте поделитьс...

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

5 бесплатных игр для iPhone, которые скрасят любое ожидание С каждым разом, чем глубже погружаюсь в App Store в поисках новых интересных, а главное, бесплатных игр для iPhone, тем сильнее убеждаюсь, что на презентациях Apple зачастую лукавит. Игр в магазине приложений действительно много, а вот стоящие надо как следует поискать. Что...

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

[Перевод] Микросервисы победили. Или не совсем «Мы хотим сделать систему по учету персонала. Только у наших архитекторов есть требование, что все у нас должно быть на микросервисах». Это, пожалуй, самый бесячий заход, который нам приходится слышать, как разработчику Jmix – платформы быстрой разработки корпоративных веб-п...

Вероятность столкновения астероида Бенну с Землёй после 2170 года В предыдущем видео вы узнали об астероиде Бенну и его орбите. Также вы увидели, как будут происходить следующие его сближения с Землёй: в 2054 и 2060 годах. Бенну будет сближаться с Землёй и после 2060 года. Но информация о каждом последующем сближении будет всё ме...

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

[Перевод] Оптимизируя неоптимизируемое: ускорение компиляции C++ В этой статье речь пойдёт о повышении скорости компиляции библиотеки {fmt} до уровня библиотеки ввода-вывода Cи stdio. Дня начала немного теории. {fmt} – это популярная открытая библиотека С++, представляющая более эффективную альтернативу С++ библиотеке iostreams и библио...

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

Простой, но масштабируемый State Management для Flutter Библиотека для управления состоянием - то, чем мы пользуемся каждый день. Чувствуете ли вы легкое покалывание при виде OnRefreshPostsButtonClickedHomeScreenEvent? Возможно, вы используете bloc.Нет? А сейчас -firstNameUserProfileStateProvider ? Ага, riverpod.Все еще нет? Тогд...

[recovery mode] Каждому клиенту 1С — по его бюджету Уже 3 года я фрилансер 1С. И вот заметил, что некоторые коллеги упрекают меня в том, что я многое в коде делаю «неправильно», «неэффективно», в общем, не по канонам.Я веду свой блог где описываю свою практику работы с 1С. Поэтому недос...

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

Архив в Telegram — что это такое, где находится и как открыть? Функция «Архив» в мессенджере Telegram позволяет поместить редко посещаемые каналы и ненужные переписки в отдельный список, при этом не потеряв их. Расскажем, как работает архив, где его найти и как открыть. Почти у каждого пользователя Telegram есть старые переписки, канал...

Интересные трюки HTML. Экстремальный минимализм Мы уже много говорили про оптимизацию сайтов до минимального размера, преимущества статичного HTML, а также упаковку сайта (и веб-сервера) в портативный формат одного исполняемого файла, который нативно исполняется под любой ОС. Но стремление к минимизации может пойти даль...

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

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

MMO Chimeraland закроют 31 марта — повторяется судьба Battlefield Mobile Chimeraland это MMO-песочница от Level Infinite и Pixel Soft, которая поначалу казалась амбициозной — огромные летающие киты, приятная графика и поддержка Tencent. Оказалось, что фанатов игры ждало разочарование — редкие обновления и отсутствие коммуникации с фанбазой привел...

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

Как использовать iPad в качестве второго экрана для компьютеров Apple Многие владельцы iPad и компьютеров Apple даже не догадываются, что планшет можно легко превратить в дополнительный дисплей для Mac. Причем для этого не придется пользоваться сторонним софтом, а достаточно стандартных возможностей операционных систем. Функция Sidecar появил...

Persistent-request библиотека для надежных запросов Всем привет!В этой статье расскажу, как решил написать библиотеку https://packagist.org/packages/xman12/persistent-request и что там внутри.Как и любая библиотека, эта решает свои задачи, а именно гарантированное выполнение запроса и последующую обработку. Я находил, как мин...

[recovery mode] Как работают TON-20 и BRC-20 и почему они создают такие проблемы для блокчейнов На прошлой неделе в TON произошел инцидент - огромная нагрузка на один из адресов создала очередь транзакций, сам блокчейн нагрузку выдержал - сработала система шардирования, но тем не менее из-за очереди, а также как следствие нагрузки на индексаторы, блокчейн был парализов...

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

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

Правда ли, что в России могут отключить платежи смартфонами по NFC и что тогда будет В тот же день, как Samsung запретила использование карт Мир в Samsung Pay, а Google удалила из Плей Маркета Mir Pay, пошли разговоры о принципиальном запрете бесконтактных платежей в России. Якобы отключение оплаты смартфоном должно стать следствием ужесточения санкционной ...

Anytone AT-D878UVII Plus: DMR-трансивер из Поднебесной. На что он способен? В следующем году первой версии стандарта DMR (Digital Mobile Radio) исполнится 20 лет. Если коротко о нем (подробности будут ниже), то DMR на аналоговом уровне — обычная узкополосная радиосвязь с частотной модуляцией. Ширина — 12,5 кГц, в него «вмещаются» два речевых канала....

[Перевод] Как я сделал переполнение кучи в curl В связи с выпуском curl 8.4.0 мы публикуем рекомендации по безопасности и все подробности о CVE-2023-38545. Эта проблема является самой серьезной проблемой безопасности, обнаруженной в curl за долгое время. Для неё установили ВЫСОКИЙ приоритет.Хотя рекомендации содержат все ...

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

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

Google Circle to Search теперь поддерживает мгновенный перевод На прошлой неделе компания Google официально запустила функцию Circle to Search для смартфонов Pixel 6 и Pixel 7a, что очень понравилось владельцам данных смартфонов, так как технология действительно очень полезная и удобная. Кроме того, компания тогда официально заявила, чт...

Эволюция оценки программиста на интервью Я более десяти лет жизни писал код в одной российской компании и активно собеседовал-нанимал людей. За это время успел пообщался с четырьмя сотнями кандидатов. На моих интервью было все – от алгоритмических задач до разговоров о «жизни». Но форма вторична – я рассматриваю ин...

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

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

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

CLI'нический парсинг Каждый программист однажды получает по голове необходимостью парсить аргументы командной строки и вот это наконец случилось со мной - так почему бы не использовать это как возможность (написать какую-то дичь) (CLI парсер)? Скажу сразу - мы тут чтобы развлекаться, потому треб...

Магия перестала быть магией и превратилась в технологию Всё, что сложно или невозможно объяснить, называют магией. Ещё в 1997 году суперкомпьютер Deep Blue обыграл чемпиона мира по шахматам. Шок, недоверие и теории заговора. В 2016 году другой суперкомпьютер AlphaGo обыграл топового игрока в самую сложную в мире игру Го. Восстани...

Эффективное обновление состояний в БД из сервисов потоковой обработки событий Как хранить сложные сущности в БД? Что нужно сделать, чтобы не перезаписывать весь рекламный баннер для обновления одного лишь заголовка? Рассмотрим как минимум 5 независимых и взаимно совместимых идей для многократного снижения нагрузки на чтение и запись подобных объектов....

[Перевод] Все оценки сроков разработки ПО — ложь ▍ Разработка ПО — это исследование Требуют ли фармацевтические компании от исследователей сообщить им сроки создания лекарства от рака? Исследователи могут сообщить сроки выполнения конкретного исследования (и достаточно точные сроки, потому что планы исследований обычно им...

An incursion under C#. Протаскиваем F# в Godot Godot — игровой движок, который имеет нативную поддержку dotnet. К сожалению, эта поддержка до такой степени заточена под C#, что F# она выходит боком. Почти все проблемы разрешимы, но при недостатке опыта они скатываются в большой пластилиново-волосатый валик у самого входа...

10+ причин посещать некоторые конференции Привет! В начале октября мы писали пост о том, почему не стоит ходить на некоторые IT-конференции. Хотя мы пару раз в тексте отметили, что это не наезд и не претензии, никакого хейта, а, скорее, подборка фактов «на подумать», ряд человек всё равно успели пообижаться.Но зато ...

Intel тизерит «обновление Windows» в 2024 году В прошлом месяце на аналитической конференции Citi финансовый директор Intel Дэвид Зинснер (David Zinsner) рассказал об обновлении Windows, которое выйдет в следующем году, и предположил, что оно может подтолкнуть пользователей к обновлению своих ПК. «Мы считаем, что 2024 г...

Intel выпустит процессоры Meteor Lake для ПК лишь в 2024 году Стоит напомнить, что в 2023 году компания Intel планирует выпустить 14-е поколение процессоров серии Intel Core, но, по совершенно необъяснимым причинам, только для ноутбуков. Аналитики рынка и журналисты пока что не смогли выяснить, почему компания хочет выпускать процессор...

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

Плохой-хороший ИИ: как алгоритмы помогают хакерам и специалистам по ИБ Компании активно используют ИИ-системы и чат-ботов в рабочих процессах, например, для создания регулярных выражений, паттернов проектирования и уточнения запросов. Роль таких решений продолжает расти и в сфере кибербезопасности — а также кибератак. Мы в beeline cloud достато...

Выбираем дешёвый VPS-сервер. Что почём в 2024 году? Всем привет! В начале года я писал публикацию «Можно ли заработать на партнерских программах хостеров в 2024 году? Пробуем посчитать» — просмотров и комментариев было немного, но в личке было немало вопросов, а я с тех п...

Смартфон для джаваскриптера-олдфага: стоит ли гику брать дешманские девайсы на KaiOS? Смотрим на Nobby 240 LTE Друзья! Много ли платформ вы знаете, где для написания пользовательских приложений используется стек… веб-технологий, причём это единственный нативный способ писать программы? Услышав о HTML5 + CSS + JS, на ум приходит разве что webOS — которая используется в современных т...

Нашел на Авито iPod Classic с SSD на 120 Гб и батареей 2000 мА*ч. Вернул свой 2007 по цене дешевого Андроида Рано или поздно каждый пользователь техники Apple приходит к тому, что у него есть все нужные яблочные гаджеты и покупать попросту нечего. Можно, конечно, порадовать себя новым Айпадом, но покупка не факт что окажется полезной да еще и отнимет немало средств, ударив по коше...

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

Как мы управляем инфраструктурой на более 1000 серверов при помощи Ansible Привет, Хабр! Мы системные инженеры X5 Tech — Алексей Кузнецов и Борис Мурашин. У нас за плечами больше 15 лет опыта, в том числе поддержка сервисов Rapida, CyberPlat, TeleTrade, сопровождение стека BigData и внедрение кластеров Hadoop. В этой статье мы расскажем, как выбира...

Один компонент, 20+ фич, A/B-тесты: Поможет ли машина состояний? Сталкивались ли вы с проблемой возникновения багов из-за пересечения включенных фичей в приложении? Или, возможно, была необходимость одновременно проводить большое число A/B-экспериментов в одном компоненте? Некоторое время назад команда Почты Mail.ru решала задачу упр...

[Перевод] Становится ли ПО хуже? Недавно я наткнулся на пост Никиты Прокопова Software disenchantment. Он заставил меня вспомнить пост Мацея Цегловски The Website Obesity Crisis и множество других статей подобного типа. Среди людей, пишущих о разработке ПО, возникает всё более широкий консенсус о том, что ...

ViewModel + Kotlin Multiplatform. Пробуем нативное решение Всем привет! На связи Анна Жаркова, руководитель группы мобильной разработки в компании Usetech. Компания Google объявили о своем интересе к Koltin Multiplatform на прошлом Google I/O 2023. Следом был обозначен вектор развития имеющихся решений архитектурных библиотек Jetp...

[Перевод] Я уже 14 лет в отрасли, но программировать по-прежнему сложно Много лет назад, учась computer science на старших курсах, я долго изучал различные вакансии онлайн, надеясь найти подходящую должность стажёра-программиста.Кроме вакансий для стажёров я иногда случайно нажимал на объявления о вакансиях «сеньор-разработчика». Помню, больше в...

Некорректная валидация UI при работе с файловой системой: что может пойти не так и как это починить Привет, Хабр. Меня зовут Александр Пиманов, я ведущий iOS-разработчик в МТС Диджитал. Сегодня расскажу о простой (как мне сначала показалось) задаче — нужно было свалидировать UI в зависимости от того, есть в файловой системе файл с логами или нет. Я быстро с ней справился, ...

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

Что будет если команда, не видавшая Compose, решила делать новую сложную фичу на нём? Мы в Дринкит, в digital кофейне от бренда Додо, любим делать эмоциональный дизайн. Для нас это означает не только сделать приложение удобным и функциональным, но и подарить нашим клиентам множество положительных эмоций при каждом взаимодействии с ним.Звезды сошлись таким обр...

[Перевод] Сравнение HTTP-библиотек В .NET приложениях часто приходится обращаться к внешним HTTP-сервисам. Для этого можно воспользоваться стандартным HttpClient, или какой-нибудь сторонней библиотекой. Мне приходилось сталкиваться с Refit и RestSharp. Но никогда мне не приходилось принимать решение о том, чт...

[Перевод] Аннотирование args и kwargs в Python Когда я пытаюсь обойтись без *args и **kwargs в сигнатурах функций, это не всегда можно сделать, не вредя удобству использования API. Особенно — когда надо писать функции, которые обращаются к вспомогательным функциям с одинаковыми сигнатурами.Т...

Отзыв на сервис «Звук» от Дарьи Меня зовут Дарья, мне 22 года, я живу в Волгограде, и я хочу рассказать о стриминговом сервисе Звук. Я жить не могу без аудиокниг. Выдается свободная минутка — обязательно воткну наушники и буду слушать. Привыкла каждый день по несколько раз включать книги — в дороге, дома, ...

Скачай эти бесплатные игры на iPhone и точно сможешь классно провести время Подписка на Apple Arcade есть далеко не у всех, и платить за нее мало кто хочет. Именно поэтому продолжаем искать классные игры в App Store, в которые можно играть совершенно бесплатно. Как раз в магазине приложений Apple появилось несколько прикольных тайтлов, которые прив...

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

Как решить типичные проблемы Django нестандартным подходом: Fake Injection Давайте признаем, что развитие проектов в мире Django не всегда проходит гладко. Мы часто сталкиваемся с толстыми моделями и сериалайзерами, размытой бизнес-логикой и тестированием, которое больше напоминает головную боль, чем удовольствие. Меня зовут Павел Губарев, я back...

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

Разминаем олдскулы: запускаем сервер «линейки» и становимся героем Привет, Хабр! Меня зовут Вова Туров, я разработчик в Selectel. Я познакомился с Lineage 2, когда был в начальной школе. Играл несколько лет, но замедление прогресса с ростом уровня было невыносимым, а запустить свой сервер было сложно. Так я забросил «линейку» на многие год...

Compile Time Dependency Injection в С++: как обуздать зависимости не прибегая к позднему связыванию Начав свою карьеру в качестве C# разработчика, я постоянно сталкивался с использованием техники внедрения зависимостей (Dependency Injection). За то время, что я работаю с C++, я не заметил здесь такого же широкого распространения этой идеи.В то же время мне показалась весьм...

Это просто космос! Как Apple обновляет запечатанные Айфоны прямо в коробке Помните первое, что вы делаете после покупки новенького Айфона? Нет, не восстанавливаете на нем резервную копию. С вероятностью 99% вам приходится его обновлять. Зачастую этот процесс не быстрый и занимает изрядное количество времени. В итоге насладиться новым смартфоном по...

Web APIs, которые функционально приближают веб-приложения к нативным Исходные данные: мы с командой делаем банковское приложение. Веб-приложение. Не все поверят, но сегодня реально реализовать на вебе такой пользовательский опыт, от которого люди не будут скрипеть зубами и умолять вернуть им натив. Расскажу, какие Web API мы используем, раскр...

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

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

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

Решение на миллион: разбираем алгоритмические задачи с победителями True Tech Champ Привет, Хабр! Меня зовут Алина Ёжикова, я работаю в МТС Диджитал и делаю мероприятия для разработчиков. Сегодня расскажу, как мы организовали самый большой и сложный ивент в моей карьере — олимпиаду по программированию на восемь тысяч разработчиков.Я говорю про True Tech Cha...

Разобраться раз и навсегда: Task.WhenAll или Parallel.ForEachAsync в C# Все хотят писать код, который работает быстро. Часто мы сидим, просматривая написанные алгоритмы и пытаясь понять, что можно сделать, чтобы настроить их производительность. В таком случае часто прибегают к параллельному выполнению задач. Конечно, если можно выполнять зада...

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

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

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

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

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

Personal (jesus) стенд — решаем проблему тестовых контуров в компании Всем привет, меня зовут Захаров Антон, и я DevOps-инженер в компании Bimeister! Весь свой опыт  я получил в этой компании, за 5 лет прошел путь от эникея до того, кем я работаю сейчас (большое спасибо коллегам!). Я расскажу, как на базе своих серверов и внутренних ресур...

[Перевод] Релиз Bun Shell (новый shell для JavaScript) JavaScript — самый популярный скриптовый язык в мире. Так почему же так сложно запускать shell-скрипты на JavaScript?Этим вопросом задались создатели Bun (альтернатива Node.js - очень быстрый runtime для запуска JS-кода, а также менеджер зависимостей, тест раннер, бандлер дл...

Проходит предрегистрация на игру Crystals of Fate: Heroes Enlighten Разработчики Masters of Zion работают над новой мобильной игрой — Crystals of Fate: Heroes Enlighten. Её можно предзаказать через Google Play, даты релиза пока нет. Игроки будут управлять аниме-героями, которые разделены на уровни редкости и элементы: лёд, огонь, ветер, тьма...

Почему не выйдет MIUI 15, и что Xiaomi предложит вашему смартфону взамен Ежегодно компания Xiaomi выпускает большое обновление MIUI, радуя владельцев смартфонов и планшетов свежей версией оболочки с кучей крутых функций. В конце 2022-го была представлена MIUI 14, и пора бы показать пятнадцатое поколение своей прошивки. Возникает резонный вопрос:...

Важные советы backend-разработчику: защити себя от нежелательных проблем Чем больше у backend-разработчика знаний в своей области, тем лучшим специалистом он является. Но опыт показывает: самые классные программисты подобны Сократу, который не стеснялся заявлять во всеуслышание «scio me nihil scire», что в переводе на общенародный - «я знаю, что ...

Volkswagen рассматривает перенос заводов за пределы Европы Глава автоконцерна Томас Шефер: "На кону стоит будущее самой марки Volkswagen. Следующие несколько недель или месяцев будут очень тяжелые. Компании нужно серьезно пересмотреть свою политику — найти возможность снизить цены и повысить эффективность производства".

Зачем дьявол придумал javadoc Есть мнение, что хорошая программа должна быть хорошо задокументирована. Компания SUN даже придумала специальный формат javadoc — «стандарт для документирования классов Java». В моей практике было совершенно обычным явлением, когда какой-то код не проходил Code Review, пот...

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

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

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

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

Make It Right! Максимум пользы, минимум проблем: рекомендации по написанию API автотестов на Python Привет, Хабр! Меня зовут Катерина, я инженер по автотестированию в команде онлайн-кинотеатра PREMIER и сегодня я хотела бы поделиться с вами своим опытом в написании API автотестов на Python. Я работаю в сфере автотестирования уже довольно давно и на практике встречаю проект...

[Перевод] Популярные конфигурационные опции для работы с git Привет! Я всегда мечтала, чтобы в инструментах для работы с командной строкой заранее сообщалось, насколько популярны те или иные конфигурационные опции, предусмотренные в них, например:o    «В принципе, никто этим не пользуется»o    «Этой опцие...

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

[Перевод] Выделение регионов памяти в C++: советы и приёмы Эта статья обсуждалась на Hacker News.В течение минувшего года я шлифовал мой подход к выделению регионов. Практика показывает, что это эффективный, просто и быстрый подход; обычно его использовать в качестве средства для сборки мусора без издержек. В зависимости о...

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

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

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

Ryzen 9000 ближе, чем все думали? В Сеть попала рекламная брошюра, где упоминаются такие процессоры Процессоры Ryzen 8000G, как мы уже сообщали, могут появиться вместо Ryzen 7000G уже в конце текущего или в начале следующего года. Возможно, Ryzen 9000 тоже уже на подходе.  В Сеть попало фото рекламной брошюры Dell, где изображён игровой ПК Alienware, якобы оснащ...

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

Мой 2-х месячный опыт настройки Selenoid под Android за 10 минут Если вы читаете эту статью, то наверняка слышали о Selenoid. Это мощное решение написанное на Go от компании aerokube для управления Docker-контейнерами, в которых «завёрнуты» все необходимые программы и драйверы для тестирования в браузерах или на Android-эмуляторах.Как утв...

Проблема омографов в ударениях и как я ее решал Меня зовут Денис (tg: @chckdskeasfsd), и это история о том почему в опенсурсе нет TTS с нормальными ударениями и как я пытался это исправить. Читать далее

Было Software, а стало Abandonware: умирание и спасение ценного Давным давно я поиграл в прекрасную Armies of Exigo, сделал тогда даже видеообзор. Ну игра и игра. Иногда вспоминал ее, даже спустя 20 лет. По мне так местами лучше WarCraft III. И вот нонче решил снова прикоснуться к прекрасному - нашел, установил, прошел всю кампанию. Хоро...

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

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

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

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

Это база: нюансы работы с Redis. Часть 1 Привет! Меня зовут Петр и мы в компании Nixys очень любим Redis. Эта база используется, если не на каждом нашем проекте, то на подавляющем большинстве. Мы работали как с разными инсталляциями Redis, так и с разными версиями, вплоть до самых дремучих, вроде 2.2. Несмотря на т...

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

Количество нативных приложений для HarmonyOS достигло 4000 Huawei сделала заявление относительно своей мобильной операционной системы HarmonyOS. Компания сообщила, что количество собственных приложений HarmonyOS в настоящее время достигло отметки в 4000. В данный момент Huawei готовится выпустить HarmonyOS NEXT, оптимизированну...

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

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

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

Почему не работает Ватсап и Телеграм на Айфоне В ночь с 23 на 24 января пользователи Ватсапа и Телеграма в нашей стране обратили внимание на проблемы с доступом к двум самым популярным мессенджерам. У кого-то они запускались, но висели в статусе “Подключение”, у других не загружались новые сообщения или глючили push-уве...

Как Одноклассники борются с сетевыми эффектами в A/B-экспериментах Всем привет! На связи снова отдел продуктовой аналитики Одноклассников. Меня зовут Виктория Гордеева, я руковожу этим отделом, и сегодня я бы хотела поделиться нашими болями при проведении А/B-тестов. A/B-тесты во многих кейсах сопровождаются разными проблемами — высоко...

Nacon анонсировала симулятор гонок на выносливость — Endurance Motorsport Series Разработчики из студии KT Racing при поддержке издателя Nacon анонсировали Endurance Motorsport Series — новый уникальный симулятор гонок с максимально реалистичным вождением. Новинка появится на ПК через Steam, а также консолях PlayStation 5 и Xbox Series X|S в следующем го...

Фоновые асинхронные задачи в FastAPI и их мониторинг Привет! Меня зовут Иван, я бэкенд-разработчик в KTS.Сегодня расскажу, как в FastAPI эффективно работать с фоновыми задачами и настроить их мониторинг в Prometheus.В туториалах для фоновых задач в FastAPI обычно предлагают celery и при этом используют синхронный код. Но сегод...

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

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

Гайд по фамильярам в Diablo Immortal: умения, черты, кого и как выбивать, преобразование и советы Фамильяры в Diablo Immortal это своего рода помощники, которые есть во всех крупных MMO на смартфонах. Они помогают в бои и дают разные баффы игроку. На момент написания гайда в Diablo Immortal есть 8 фамильяров. С новыми обновлениями их число может возрасти. Получить фа...

Бюджетный и шустрый ультрабук для работы и сёрфинга: Обзор Ninkear N14 Pro Пожалуй, рубрика, связанная с обзором и ремонтом различных ноутбуков уже успела стать одной из самых любимых среди моих читателей. Мы с вами успели рассмотреть множество весьма необычных и диковинных устройств прошлых лет: ноутбуки на базе процессоров Transmeta Crusoe, мин...

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

HighLoad++ 2023. Заметки путешественника. День 1 У многих сегодняшний день был не простой. Коммунальщики справлялись с мощнейшим снегопадом. Участники конференции с лавиной информации. А меня бомбило от самой организации. В хорошем смысле слова. Читать далее

[Перевод] Что не так с управлением поставками? Меня не покидают размышления — что на самом деле значит быть Delivery Manager-ом? И почему мой опыт в этой роли часто расходится с опытом и ожиданиями других? Читать далее

Автоматическая генерация CI/CD пайплайна для развёртывания инфраструктуры При нашей работе мы используем подход «Инфраструктура как код». Однако в процессе его использования мы столкнулись с проблемой написания пайплайнов для инфраструктуры. Во всём «виноват» terragrunt: каждому модулю terragrunt нужна отдельная джоба в пайплайне на plan и apply, ...

Пора всем переходить на Arm? Первые тесты Snapdragon X Elite показывают, что она нередко быстрее Apple M3 и Core Ultra, а автономность ноутбука самая высокая Компания Microsoft представила новую категорию компьютеров под названием Copilot+, и пока что под неё попадают только ноутбуки на SoC Snapdragon X, которые уже представлены, но в продаже появятся лишь через месяц. Сегодня в Сети появился первый условно сторонний обзор S...

Апгрейд отеля «Южный» в Волгограде: добавляем умные функции, но только нужные Интерес к умным квартирам сегодня огромный, но как быть в поездке? Есть ли умные отели, где будешь чувствовать себя, как дома?Больше года назад мы побывали в отеле «Вертикаль», где познакомились с функциями автоматизации. Нас они не впечатлили, можно лучше. Настало время пос...

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

Большинство игр будет работать на SoC Snapdragon X Elite. Вопрос производительности пока открыт Уже летом на рынке должны появиться ноутбуки на основе SoC Qualcomm линейки Snapdragon X Elite. Первые тесты показывают, что по процессорной производительности, как минимум в этих самых тестах, топовая платформа линейки очень неплоха. Теперь Qualcomm говорит, что и игры...

Почему летом в России отключают горячую воду, а в других странах нет Горячая вода в России заключается каждый год, и этому есть весомые причины. Источник: zebra-tv.ru Каждое лето жителям России приходится выживать без горячей воды. Утренние часы превращаются в испытание, в котором нужно нагреть воду в чайнике, налить его в тазик, разбавить хо...

Библиотеки для реализации алгоритмов сжатия данных в Rust Привет, Хабр!Сегодня мы рассмотрим хорошие библиотеки для реализации алгоритмов сжатия данных на ЯП Rust. Сжатие данных позволяет уменьшать объемы данных без потери качества или с минимальными потерями. Различают две основные категории методов сжатия: с потерями и без потерь...

Data-рынок: как российские ЦОДы справляются с нарастающим спросом Традиционно рынок серверов, систем хранения данных и сетевого оборудования в России был представлен зарубежными компаниями — Dell, HP, Cisco и другими. В 2022-2023 гг data-центры взяли активный курс на импортозамещение при поддержке государства и отечественных поставщиков, п...

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

Gmail и Yahoo ужесточают правила для входящих писем: теперь DKM и DMARC обязательны Как работает SPF Владельцам собственных почтовых серверов (на своём хостинге) постоянно приходится следить за тем, чтобы их домен или IP-адрес не занесли в чёрный список. А с февраля 2024 года придётся ещё труднее, поскольку Gmail и Yahoo ужесточили правила для входящих пи...

ЦЕРН увеличил объем своего хранилища до первого в истории эксабайта. Как хранятся данные Большого адронного коллайдера Когда Большой адронный коллайдер запущен — как например, во время своего второго цикла, с начала 2015 года по 2018 год, — он обрабатывает события на частоте 40 МГц. Другими словами, он учитывает 40 миллионов событий в секунду. Это необходимо, чтобы отслеживать столкновения м...

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

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

Метод Reverse-engineering на практике: как расшифровать исходный код Всем привет! Сегодня в нашем эфире новый автор - Никита Синкевич, руководитель группы анализа и реагирования Инженерного центра Angara Security. Итак, начинаем!Иногда в ходе расследования инцидента информационной безопасности необходимо понять, имеет ли та или иная программа...

Элементарный английский для Elementary — грамматика и не только Как определить, добились ли вы уровня Elementary? «Элементарный» уровень на самом деле подразумевает, что у вас хватило усердия, чтобы пройти в неспешном темпе как минимум 2 учебника в 200-300 страниц и потратить минимум год, непрерывно изучая английский язык, тратя три-четы...

Лазерный проектор или как проприетарность мешает устройству стать успешным С детства люблю технические новинки, поэтому по мере сил стараюсь их приобретать. Иногда слишком рано. Лет десять назад появился у меня портативный лазерный проектор фирмы Microvision — Pico. Вот такой. Но рассказ мой не столько о нём, сколько о проприетарности, будь она не...

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

Красавица и HTML Injection. Почему HTMLi не только про дефейс Привет, Хабр. Сегодня мы посмотрим на достаточно тривиальную тему с совсем нетривиальной стороны. Пожалуй, для каждого вебера HTML-инъекции являются темой, которой зачастую уделяют не очень много внимания. Взять даже собеседования: когда в последний раз вас спрашивали не об ...

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

Как передавать файлы с Android на Mac и обратно, как будто у вас iPhone Далеко не все владельцы компьютеров Apple пользуются еще и смартфонами компании. Все-таки большое количество ограничений на iPhone заставляет многих выбирать именно аппараты на «Андроиде», но при этом отказаться от Mac в пользу Windows готов далеко не каждый. Я как раз один...

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

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

Костыли, которые горят, пока всё лопается: как выглядит разработка под децентрализованные финансы Из рекламы МММ: он не халявщик, а партнёр! Тут на днях один молодой бомж с филфака СПбГУ дал интервью Карлсону (тому, что живёт в Х). После чего куча моих знакомых стала задавать вопросы про блокчейн-разработку (крипту). Ну и ещё в Телеге запустили переводы в один клик, и ...

Цифровой рубль — начало цифрового концлагеря Коллеги, привет! Меня зовут Хайрбек Ажимов, я занимаюсь автоматизацией HR процессов в ПАО «РусГидро». Сегодня я хотел бы разобрать тему цифрового рубля с моего понимания информационных технологий и финансов. Дисклеймер: я не специалист по блокчейну. Вещать буду из роли заинт...

Почему все играют в Arena Breakout? Это динамичный шутер от первого лица, который потянет даже старый Айфон Для многих игры являются отличным способом выпустить пар после тяжелого рабочего дня или целой недели. Кто-то играет на консолях, кто-то предпочитает ПК, а можно просто обойтись смартфоном. Игр на iPhone в App Store великое множество, и каждый сможет подобрать вариант именн...

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

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

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

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

Виджетная система: как масштабировать образовательную платформу без боли и слёз? Почему если веб-проект собирается расти, но пока не понимает, куда и как, — виджетная система может стать спасением. Меня зовут Антон Фокин, я CEO студии QTIM и сегодня я расскажу о нашем опыте. Читать далее

Пять крутых бесплатных игр для iPhone, которые стоит попробовать Никогда не был фанатом игр на смартфонах. Правда, в один прекрасный момент всё сильно изменилось. Стоило лишь как следует покопаться в App Store в поисках действительно интересных игр для iPhone, и мое мнение изменилось. Если вы всё еще, как и я раньше, считаете, что тратит...

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

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

Нам бы в небо! Дроны: что да как и почему Беспилотные летательные аппараты могут доставлять грузы – от пиццы до человека, сломавшего ногу в горах, делать аэрофотосъёмку для гиодезистов и картографов, помогать отслеживать урожайность на полях и, конечно, снимать красивые видеоролики и фильмы.  Раньше для по...

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

«Найти и утилизировать»: как мы автоматизировали очистку ресурсов после тестирования с помощью Tempest Cleanup Всем привет! Меня зовут Валентина, я разработчик в тестировании Selectel. В своей прошлой статье я рассказала, как мы автоматизировали запуск тестов Tempest в GitLab. Статья вам понравилась, поэтому я написала продолжение. В нашей автоматизации была проблема: после тестов ...

Почему любой китайский смартфон лучше, чем Google Pixel на чистом Android Мы до сих пор продолжаем скептически относиться к китайским товарам (иногда справедливо, иногда — нет), и такой подход не в последнюю очередь затрагивает смартфоны. Потому многие из нас целенаправленно покупают iPhone, отказываясь от Android, ведь Apple продолжает оставатьс...

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

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

Сообщество Эфириума приняло ERC-3643 в качестве стандарта для токенизации активов Стандарт токена безопасности институционального уровня ERC-3643 предоставит библиотеку интерфейсов для управления и передачи токенов безопасности в соответствии с требованиями регулируемых бирж

Типичные задачи аналитика данных. Часть 1. Упала метрика В прошлой статье мы рассматривали неочевидные проблемы АБ тестирования и как можно с ними справляться [ссылка]. Но часто бывает так, что при внедрении новой функциональности АБ тестирование провести нельзя. Например, это типично для маркетинговых кампаний нацеленных на массо...

Почему я веду ИТ-бизнес в России Вы, возможно, знаете правила ведения ИТ-бизнеса в России. Особенно первое. Я тоже знаю, но веду дела именно в России и из России. В последнюю пару лет меня почему-то начали чаще спрашивать о том, почему так. Отвечаю. Во-первых, у нас низкие налоги. Во-вторых, всё ещё ...

Используй Силу, Люк: Single Pane of Glass в Мире SRE Привет, Хабр! Меня зовут Кирилл, я работаю в IT более 13 лет. Сначала инженером по внедрению, потом DevOps, потом SRE, также работал руководителем группы сопровождения. Сейчас SRE в VK Рекламе, поэтому знаю, как важно делать правильные инструменты для анализа проблем. В...

Что нас ждет в сфере технологий в 2024 году Что нас ждёт в сфере технологий в 2024 году? Этим вопросом задаётся каждый представитель ИТ-сферы. В прошлом году мы готовили статью о 5+ трендах, которые будут актуальны в 2023 году, и в этот раз решили не нарушать традицию. Разработчики, аналитики, тестировщики, дизайнеры,...

Практика замены MS Office: 4 ситуации, когда это невозможно…но вполне получается Привет! На связи Саша Безноздрев, ведущий инженер-разработчик К2Тех. Тематика замены продуктов Microsoft для корпоративных пользователей лежит сегодня на поверхности. Действительно, как быть, если вендор планирует аннулировать все подписки и отключить все, до чего сможет дот...

Как дообучать огромные модели с максимальным качеством и минимальными затратами? LoRA paper linkhf implementationДля ответа на вопрос в заголовке - погрузимся в статью.Саммари статьи:Обычно LLM-ку предобучают на огромном корпусе, потом адаптируют на down-stream tasks. Если LLM-ка была большая, то мы не всегда можем в full fine-tuning. Авторы статьи предлагают...

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

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