Как стать автором
Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

AMD решила пойти по пути Nvidia и выпустила урезанный ИИ-чип. Но что-то пошло не так

Время на прочтение 4 мин
Количество просмотров 794

Не так давно мы писали о том, что Китай не может покупать ускорители A100 и H100 от Nvidia, просто потому, что они попали под экспортные ограничения. Но американская корпорация вовремя подсуетилась и выпустила урезанные версии этих чипов, Nvidia ранее выпустила искусственно урезанные версии этих систем, А800 и Н800. Сделали это для обхода экспортных ограничений.

В 2024 году аналогичным образом решила поступить и AMD, тоже, видимо, с целью заполучить определенную часть рынка сбыта в Китае. Чип разработали и произвели, но сейчас возникли определенного рода затруднения — GPU оказался слишком быстрым для экспорта в Китай. Подробности — под катом.
Читать дальше →
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 2

Новости

Непреодолимое желание копнуть поглубже (Cisco WLC)

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 845

Работая работу на работе хочется иногда оживить обстановку и заодно узнать что‑то новое. Возьмем например миграцию беспроводной сети на контроллере Cisco WLC работающего на AireOS на новый Catalyst 9800 на IOS‑XE.

Читать далее
Всего голосов 4: ↑3.5 и ↓0.5 +3
Комментарии 0

Работа со временем и датой в C# с применением библиотеки Humanizer

Время на прочтение 7 мин
Количество просмотров 1.1K

Цель этой статьи — показать вам, как использовать Humanizer, чтобы вывести работу со временем и датой в ваших C#-проектах на новый уровень. Я расскажу о том, как преобразовать объекты DateTime и TimeSpan в удобный для восприятия человеком вид, как настраивать параметры гуманизации и как объединять гуманизацию строк со временеме/датой. Мы также рассмотрим некоторые реальные сценарии использования и примеры того, как Humanizer может улучшить пользовательский опыт в отношении времени и даты.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 3

Как за один pet-проект получить два диплома

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 4.2K

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

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

Читать далее
Всего голосов 30: ↑30 и ↓0 +30
Комментарии 1

Истории

Как научить поиск мобильного приложения распознавать точные и ошибочные запросы

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 264

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

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

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 1

Тестирование без моков: язык шаблонов. Часть 1

Время на прочтение 26 мин
Количество просмотров 1K

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

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

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

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

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 10

Why so heavy, Windows? Новая версия ОС Tine Core Linux «весит» всего 24 Мб. Что это за дистрибутив

Время на прочтение 3 мин
Количество просмотров 6.6K

Tiny Core Linux около 15 лет, и он до сих пор актуален, обновляется и модифицируется своими авторами. Правда, с момента выхода версии 1.2 он немного «поправился» — сейчас его объём составляет 24 Мб вместо 10 Мб. Но всё равно это исчезающе малый «вес» по сравнению с другими дистрибутивами и операционными системами, хоть современными, хоть не очень. Подробности о новой версии — под катом.

Читать далее
Всего голосов 31: ↑26 и ↓5 +21
Комментарии 15

Погубит ли Java 22 сборочные инструменты?

Время на прочтение 6 мин
Количество просмотров 2.7K

Вступление


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

Версия Java 22 обогатилась возможностью выполнения исходного кода сразу из нескольких файлов. В таком случае простой команды java достаточно, чтобы выполнять программы, состоящие из нескольких исходных файлов и даже содержащие зависимости. Для опытных разработчиков это упростит поиск и эксперименты, но для тех, кто только осваивает Java или просто программирует, это настоящая революция: теперь можно писать код Java как из одного, так и из нескольких исходных файлов и даже добавлять зависимости, безотносительно IDE или сборочных инструментов.
Читать дальше →
Всего голосов 15: ↑13 и ↓2 +11
Комментарии 3

Методика нахождения потерь в обмотке дросселя вследствиe скин-эффекта и эффекта близости

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 596

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

Данные итерации к искомым показателям могут тянуться продолжительное время. Это может задержать дату завершения проекта и увеличить стоимость единицы изделия.

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

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 0

CSS для печати на бумаге

Время на прочтение 10 мин
Количество просмотров 2.4K

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

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

Читать далее
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 10

Как джуну отрастить софты: советы и реальные истории. Часть 2. Отвечать за результат

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 818

Привет! На связи Митя Кожевников и Юра Соколов из Mindbox, и это вторая часть гайда по софтам для джунов. В первой части мы говорили о том, что значит «приносить пользу» в разработке, а в этой поговорим об ориентации на результат.

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

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

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

Читать далее
Всего голосов 10: ↑7 и ↓3 +4
Комментарии 0

Microsoft Outlook Remote Code Execution CVE-2024-21413

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 673

13 февраля 2024 года компания Microsoft выпустила предупреждение для своих пользователей о критической уязвимости в пакете Office, которая позволяет злоумышленникам удаленно выполнять вредоносный код.

Уязвимость затрагивает несколько продуктов Microsoft Office, включая приложения 365 Enterprise, Office 2016 и 2019, а также Office LTSC 2021.

Уязвимость была обнаружена исследователями компании Check Point и получила идентификатор CVE-2024-21413.

Check Point в своем отчете объясняют, что уязвимость, которую они назвали "Moniker Link", позволяет обойти встроенные средства защиты Outlook от вредоносных ссылок в электронных письмах. Для этого используется протокол file:// и специальный символ ! в ссылке для доступа к удаленному серверу злоумышленников.

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

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 1

Java Digest # 10

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 1.3K

Всем привет! 👋 👋 👋

Мы — Java-разработчики Тинькофф: Андрей Орлов, Арсений ЗайцевКонстантин Максимов, и Константин Польщиков. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и решили делиться этим не только с коллегами, но и со всем сообществом.

🌼В этот весенний период, наполненный свежестью и обновлениями, ждите обзоров состояния jextract и новых функций терминала в JetBrains IDEs, включая его бета-версию. Готовьтесь к версии 0.8.0 Spring AI, где есть новые функции и улучшения. Вдохните аромат цветущей весны, пока мы погружаемся в обзор различных Java Enhancement Proposals (JEP), включая поддержку Markdown в JavaDoc, новые возможности для компиляции и выполнения Java-кода, а также превью функций Java 22. Вдохновляйтесь, ведь весна в мире Java приносит с собой обновления и новые возможности для всех нас. Stay tuned! 🌼

Читать десятый выпуск
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 0

Ближайшие события

Moscow QA #3 — митап по тестированию ПО
Дата 14 марта
Время 18:30 – 21:30
Место
Москва Онлайн
Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

Странные осцилляции в казалось бы простой числовой последовательности

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 2.2K

Есть простая последовательность чисел...

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

Читать далее
Всего голосов 18: ↑17 и ↓1 +16
Комментарии 6

Из ревизора в IT и снова в ревизоры

Время на прочтение 2 мин
Количество просмотров 791

Всем привет!

Меня зовут Александр Николаев. В рознице я уже 18 лет, в основном специализировался в FMCG. Теперь работаю с такими товарами, как одежда, обувь, инвентарь и спортивное питание. Ещё есть 2 года опыта в IT тестировщиком, системным администратором и руководителем по обеспечению ПО. Участвовал в хакатонах на позициях PR, QA и UI дизайнером. После ухода многих компаний из РФ вернулся в ревизоры.

Что делает ревизор

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

В свободное время я работаю над несколькими проектами, которые, надеюсь, помогут мне и моим коллегам. Так как очень люблю программировать на Delphi и C# хочу рассказать о паре проектов, которые я пока разработал в демоверсиях. О них и будет пост.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 1

Выбор данных, малые языковые модели и причём здесь Шмидхубер

Время на прочтение 4 мин
Количество просмотров 700

Большие языковые модели — это хорошо, но интересно, можно ли получить сравнимое качество на малых моделях. Вести диалог с GPT-2 не получится, а тем более написать диплом или научную статью. Она и другие small language models (SLM) по большей части выдают слабый текст, даже если обучить их на всей Википедии.  

Возможно, тут стоит вспомнить теорию Шмидхубера, который, как известно,  всё придумал

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Что можно и стоит писать в поле Pre-conditions в тест-кейсах

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 478

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

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

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 0

GET запросы на практике: правила, принципы и примеры

Время на прочтение 14 мин
Количество просмотров 2.7K

Я думаю, что вы не раз уже гуглили, заглядывали в статьи, манифесты IT-гигантов о лучших практиках проектирования API. Я тоже.

Но в большинстве из них всё ограничивается описанием URL ресурса, мотивацией использовать пагинацию, сложными словами про кэширование и SSL. Это, безусловно, необходимо для общего понимания технологий, но практически не помогает, когда ты сидишь перед пустой страницей и надо начать “проектировать контракт”.

Я работаю тимлидом направления системного анализа в X5Tech и за все время развития карьеры сталкивалась с большим количеством кейсов проектирования Web систем. IT продукты в большинстве очень динамичны: постоянно изменяются требования, появляются новые, итеративно улучшается пользовательский опыт (по принципу 20% усилий на 80% результата, а остальное доделаем потом).

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

В этой статье предлагаю спроектировать контракт по шагам, и на каждом из них я расскажу про общие рекомендации из копилочки “Полезное”, а также про личные правила и практики, полученные долгим опытом работы над постоянно меняющимися ИТ-продуктами, которые помогут для “дальновидного” проектирования GET REST API.

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 4

Чек-лист для бизнеса: что нужно сделать перед началом разработки сайта

Время на прочтение 13 мин
Количество просмотров 787

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

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

Эти советы универсальны, они никак не касаются типа разработки. Чек‑лист скорее направлен на сбор информации и материалов, которые позволят создать конверсионный ресурс и отразить в нем необходимые ценности и миссии бренда. Теперь обо всем по порядку.

Читать далее
Всего голосов 11: ↑5 и ↓6 -1
Комментарии 3

Смотрим как работает RVO C++ в gcc

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 1.7K

В данной небольшой статье я предлагаю рассмотреть как работает принцип RVO (return value optimization) в компиляторе gcc. Автор статьи не претендует на уникальность и какую-то новизну. Ориентировано на начинающих и представляет собой больше некую заметку.

Итак, рассмотрим класс и код, его использующий:

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 3