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

Разработка

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

Идеальный REST клиент iOS

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

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

Читать далее
Рейтинг 0
Комментарии 0

Новости

Обзор параллельных режимов работы хэш-функций

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

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

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

Как работает аутентификация в Kubernetes: ServiceAccount и RBAC

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

Эта статья является кратким агрегатором сведений, характеризующих аутентификацию и авторизацию в Kubernetes и позволяет познакомиться с базовыми понятиями, такими как ServiceAccount, RBAC, Role, RoleBinding, ClusterRole и ClusterRoleBinding.

Читать далее
Рейтинг 0
Комментарии 0

Польза создания однородных задач для параллельного вычисления

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

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

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

Весь код из статьи находится здесь.

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

Истории

Duke Nukem 3D: один из пионеров дизайна уровней

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

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

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

2D Тени на Unity. Длина тени объекта

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

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

В Unity 2D не предусмотрено ограничения размера тени. Так если мы добавим Light2D => Spot на сцену и будем использовать его как солнце, тени будут бесконечно большие.

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

Безопасность web приложений с использованием Identity Provider

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

В современном цифровом мире, где взаимодействие с онлайн-ресурсами и web приложениями стало неотъемлемой частью нашей повседневной жизни, безопасность и управление личной идентификацией стали ключевыми аспектами. Именно в этом контексте становится крайне важным понятие “Identity Provider” или, сокращённо, IdP.

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

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

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

Читать далее
Рейтинг 0
Комментарии 0

1000 и 1 способ инициализации типов в C# 12.0

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

Среди нововведений C# 12 было достаточно больше количество по-настоящему качественных и крутых фич (например дефолтные параметры лямбд).

Но речь сегодня пойдет о ложке дёгтя в бочке мёда - Primary Constructors.

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

Как говорится, воруй как художник? Думаю, что это не про Primary Constructors, потому что насколько плохо своровать фичу это надо было постараться.

Почему же в Kotlin эта фича имеет смысл, а в C# нет? Давайте разбираться.

Продолжение нытья без регистрации и смс
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 9

Дороги из дома ведут в магазин: вычисляем суммы квартир для районов Москвы

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

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

Сегодня попрактикуемся в решении задачи - сколько человек скорее всего сможет дойти до конкретного магазина. Не претендую на академичность и точность моего субъективного исследования, лишь покажу вам как cамостоятельно рассчитать достижимость магазинов клиентами на основе свободных данных из OpenStreetMap. К счастью, для Москвы полнота и качество данных для многоэтажных жилых домов одно из самых лучших по РФ.

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

Практическая магия Istio при построении архитектуры крупных микросервисных систем. Часть 1 — функциональная

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

Под Новый Год мы с женой пересматриваем одну популярную магическую сагу — хочется знаете ли в жизни волшебства. В IT волшебства тоже хватает — от танцев с бубнами до самых современных технологий, принцип работы которых проще объяснить тёмной магией. Так, например, бытует мнение, что настройка service mesh — это магия, подвластная лишь волшебникам DevOps. Но у нас в Альфа-Банке разработчики исторически не маглы, а, как минимум, полукровки, поэтому имеют право приобщиться к волшебному миру.

В этой серии статей я хочу поделиться опытом изучения технологии service mesh, а именно Istio, на примере практической задачи, возникшей какое то время назад в одной из систем Альфа Банка, системным архитектором которой я являюсь.

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

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

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

Как в РСХБ разработали средство генерации SQL-запроса для упрощения задач по тестированию

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

Привет, Хабр! Меня зовут Андрей Околелов, я работаю ведущим инженером в Блоке обеспечения и контроля качества выпуска изменений ПО в РСХБ. В банковской сфере я работаю с 1992 года, с 2018 основная деятельность — тестирование банковских приложений.

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

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

Как контракты помогают QA-специалисту не «сгореть» от багов в приложении

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

Привет, Хабр! Меня зовут Ирина Иванова, я работаю QA-инженером в команде разработки внутренних проектов в Учи.ру. Мы занимаемся такими сервисами, как виджет поддержки, личный кабинет сотрудников пользовательской поддержки, карьерный сайт и так далее. 

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

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

Чего не знают айтишники? Как мы провели IT-кроссворд и нашли ответы на все вопросы

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

Прошел почти месяц, как завершился IT-кроссворд Selectel — онлайн-соревнование для любителей разработки и тестирования, ML и Data Science, сетевых и серверных технологий. В нем приняли участие около 200 человек, из которых более половины — пользователи Хабра.

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

Хотим рассказать, как мы запустили первый и самый масштабный IT-кроссворд на Хабре, и поделиться статистикой о том, какие вопросы оказались самыми сложными. Интересно? Тогда добро пожаловать под кат!
Читать дальше →
Всего голосов 12: ↑10 и ↓2 +8
Комментарии 0

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

Инструкция: как быстро настроить GitLab CI/CD на Flutter-проекте

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

Привет! Я Александр Омельяненко, Flutter-разработчик в AGIMA. Недавно мне понадобилось быстро настроить CI/CD на Flutter-проекте. Те несколько руководств, что я нашел в интернете по этой теме, были либо с нерабочими примерами, либо запутанные и просто плохого качества. Но всё же какое-то представление я получил. Плюс задал вопросы коллегам. Набивая шишки по пути, я-таки настроил CI/CD на своем проекте. Но мне тогда очень пригодилась бы четкая инструкция. Поэтому я решил написать ее сам по горячим следам. Сегодня делюсь ею с вами и надеюсь, эта инструкция облегчит жизнь тем, кто настраивает CI/CD на Flutter-проекте прямо сейчас.

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

Распознавание пользовательского интерфейса в медицине

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

В процессе тестирования пользовательского интерфейса мы распознаем его на скриншотах тестируемого устройства.

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

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

Визуализация результатов escape-анализа в VS Code

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

В Go есть возможность получить отчёт о выполняемом escape-анализе: go build -gcflags '-m=3 -l'. В этой статье я расскажу, как можно визуализировать этот отчёт в VS Code. Дополнительно приведу способ, как в несколько кликов проверить теорию (escape-анализ) практикой (профилирование).


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

Общая информация о фоновых заданиях в SAP ERP

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

Всем привет!

Меня зовут Юрий, я консультант SAP ERP. Как любой IT‑специалист, я постоянно ищу пути автоматизировать рабочие дела.

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

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

 

Читать далее
Рейтинг 0
Комментарии 0

Визуализация: лучшие практики

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

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

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

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

Мессенжеру Signal угрожает коллапс после прекращения финансирования со стороны ЦРУ

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

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

Читать далее
Всего голосов 17: ↑11 и ↓6 +5
Комментарии 27

Как войти в айти за час с нуля, на языке с++ Win32 (графические приложения) «для самых маленьких»

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

Хе хе ну вы поняли «ВОйти ВАйти».

Принято считать, что программирование это сложно, но это миф (все проще чем кажется), и все что нужно чтобы стать программистом это немного упорства и изобретательности.

В этой статье мы получим все базовые навыки, которые нужны программисту, по окончании статьи у тебя будут все необходимые навыки для C++ Junior Desktop Developer, а также ты сможешь создавать 90% программ с софт портала, меньше слов ближе к делу.

Изучить программирование с 0 за час
Всего голосов 38: ↑6 и ↓32 -26
Комментарии 22