C постепенным переходом проектов на .NET Core фреймворки все большую популярность набирает стандартная реализация внедрения зависимостей от Microsoft. При использовании любого фреймворка для внедрения зависимостей рано или поздно разработчики сталкиваются с проблемой забытой или неправильной регистрации зависимостей, что влечет за собой ошибку в рантайме приложения. В этой статье разбираемся как покрыть unit-тестами внедрение зависимостей стандартной библиотеки Microsoft.Extensions.DependencyInjection.
Продакт
Как я «дебажил» простенькую игру, но обнаружил кое-что еще
Речь идет о обычной "Змейке", написанной на C# и запускаемая в консоли. Во время игры рядом с "едой" после того как нажмешь кнопку управления змейкой, появлялся символ "а", которого в исходном коде просто не могло быть, поэтому мне и захотелось разобраться почему так происходит и как это можно починить:
Технологичность бизнес-хаба, романтика «старого города» и естественный work&life balance. Добро пожаловать в Литву
В литовской команде EPAM уже более 250 специалистов из 10+ стран мира. Мы попытались посмотреть на жизнь в Литве их глазами, прогуляться по старым улочкам, испытать на прочность европейский сервис и узнать o возможностях, которые дает быстро развивающийся офис.
Как я портировал игру с Visual Basic 6 на С++, сделав её кросс-платформенной
Всем доброго времени суток! Это моя история о том, как я портировал исходный код одной фанатской Windows-игры о Марио с Visual Basic 6 на C++, и с какими трудностями я столкнулся в процессе создания порта.
Эта статья рассказывает о портировании Super Mario Bros. X, фанатской игры Эндрю Спинкса, созданную им в 2009 году, которую он затем бросил 2011 году в пользу более серьёзного и масштабного проекта в лице Terraria.
Новое в управлении iOS и macOS, WWDC 2021
В преддверии продаж новых iPhone 13 и iPad с iOS 15 хотим поделиться своими впечатлениями о новшествах в управлении яблочными девайсами.
На прошедшей WWDC-2021 Apple сделали несколько докладов об использовании iOS и macOS для работы. Обзорный доклад доступен по ссылке. Далее под катом расскажем о нём и остальных докладах подробнее.
Добро пожаловать в мир интровертов
Даже если ты «лучше» справляешься с работой, то это не гарантия того, что тебя повысят. Должность/девушка/дом/лучший кусок пирога доставались самому громкому и обаятельному.
Миром больше не управляют самые громкие
Но сейчас мы стали свидетелями тектонического сдвига.
- Высокооплачиваемые должности с большей вероятностью получают люди, склонные к интеллектуальной работе в одиночку.
- Болтовня с глазу на глаз стала менее важной из-за онлайн-работы, в которой самое главное — навык самомотивации.
- Успех свидания зависит от остроумной фразы в приложении для дейтинга, а не от способности «подцепить» кого-то в баре.
Благодаря технологиям мир повернулся лицом к интровертам. Стоит ожидать, что аналогичный сдвиг произойдёт и в сфере богатства и власти.
Хабр, который стал родным
Я люблю читать. Даже YouTube не смог победить во мне любовь к текстам. Даже подкасты не смогли переманить на свою сторону, хоть у них и бывают печеньки. Ни один медиаконтент мира не сможет заменить чтение. Когда в моей жизни появился интернет, я читал всё, до чего дотягивался: от башорга до Ленты, от Коммерсанта и РБК до ЖЖ. Чуть позже появились большие и качественные ресурсы, среди которых оказался Хабр. Когда я впервые его увидел, ему было около трёх лет и он уже был похож на тот, который мы видим сегодня. Я тогда ещё только подходил к IT и Хабр не был тем интернет-изданием, с которого я начинал своё утро. Проекты умирали, глохли, привычные сайты замирали, загибался ЖЖ… а Хабр жил. Менялся и рос так, как будто команда полна идей и видит рынок на сто лет вперёд. Постепенно Хабр стал тем сайтом, который я открываю первым, как только открою глаза и дотянусь до телефона. Погода, новости, сводки ковида — всё только после него. Хабр стал родным — и для меня он всегда тот.
Так, а к чему это я всё? Ах да. Хабр, тебе ж сегодня исполняется 15 лет.
Как создавался новогодний Хабрачат в этом году
Для начала, для тех кто еще не знаком с новогодним хабрачатом, расскажу немного про него. Это несколько чатов на разных платформах, объединенных мостом. Боты в каждой из платформ пересылают сообщения из остальных и получается, что все как-бы находятся в одном чате, при этом не покидая любимой платформы. В этом чате мы традиционно встречаем Новый год уже четвертый раз (в прошлом году только в одном SSH-чате было больше сотни человек).
В центре внимания, конечно, SSH-чат, который работает только несколько дней до нового года и несколько после. В этом году разные люди так же подняли чаты в XMPP (Jabber), Телеграмме и IRC. Так же традиционно есть чат-бот tars, который может вывести ёлку и поздравить с новым годом. В прошлые года таких ботов делали несколько человек (кто-то даже на баше).
CrowdSec — современная альтернатива Fail2Ban и коллективный иммунитет для Интернета
CrowdSec
Инструмент Fail2Ban хорошо известен админам. Программа анализирует логи на сервере и подсчитывает количество попыток доступа с конкретных IP-адресов по указанным протоколам. В случае нарушения правила данный IP-адрес блокируется на заданный отрезок времени. Например, джейл для авторизации по SSH включён с дефолтными настройками 5 попыток авторизации за 10 минут, после чего происходит бан IP-адреса на 10 минут. Отличный способ отфильтровать мусорный трафик от разных сканеров и защита от DDoS.
Fail2Ban и SSHGuard — лучшие инструменты в своей области. Однако новый опенсорсный проект CrowdSec представляется интересной альтернативой. Это локальная замена Fail2Ban, а потенциально нечто большее — глобальная база репутации IP-адресов типа иммунной системы интернета.
Повесть о стрелке и запятой
- Познакомимся с сопряженными функторами
- Узнаем, как отвечать на вопрос «что такое каррирование»
- Притворимся, что у нас есть состояние (если есть только функции)
- И вдогонку поиграемся с примитивной оптикой (линзами)
И все это с помощью нескольких определений теории категорий и двух простейших конструкций: стрелки и запятой.
Индюшатина, как ее готовят
GoooGooo
Привет! Сегодня мы поговорим с ребятами из Literal Team, которые делают игру Sovereign's Will, об их страданиях, мучениях и победах при разработке индюшатины.
Промышленный Machine Learning: 10 принципов разработки
Промышленный Machine Learning: 10 принципов разработки
В наше время каждый день создаются новые сервисы, приложения и другие важные программы, позволяющие создавать невероятные вещи: от софта для управления ракетой SpaceX до взаимодействия с чайником в соседней комнате через смартфон.
И, порой, каждый начинающий программист, будь он страстным стартапером или же рядовым Full Stack или Data Scientist, рано или поздно приходит к осознанию того, что есть определенные правила программирования и создания софта, которые сильно упрощают жизнь.
В этой статье я кратко опишу 10 принципов того, как стоит программировать промышленный machine learning, чтобы его можно было легко встроить в приложение/сервис, основываясь на методике 12-factor App, предложенной командой Heroku. Моя инициатива — это повысить узнаваемость этой методики, что может помочь многим разработчикам и людям из Data Science.
Заворачиваем в Promise модальное окно подтверждения действия
Как правило, выводится модал «Вы уверены, что хотите сделать то то и то то» и внизу две кнопки: Да и Нет. Если пользователь нажал «да», то отправляем запрос на сервер и закрываем модал. Если «нет», просто закрываем модал.
Это стандартный функционал, который обычно используется в нескольких местах в проекте. Также при наращивании функционала проекта, скорее всего добавиться еще несколько мест, где нужны модалы с подтверждением. Поэтому, во избежание дублирования кода, однозначно такой модал нужно выносить в отдельный компонент. Во избежание соблазна забивать костыли, этот компонент должен быть максимально универсальным и простым в использовании.
Перейдем от лирики к делу. Для отображения модала будем использовать Bootstrap.
Собственно мой вариант такого компонента:
Примеры использования AR в индустрии игрушек
Музей DataArt. Видеотерминал ADM-3A. Машина тяжелая, надежная, убойная
Один из наших любимых экспонатов — классический образец американской школы конструирования, надежное и недорогое устройство, мгновенно покорившее Америку в середине 1970-х. Вместе с вдохновителем музея DataArt Глебом Ницманом вспомнили эволюцию устройств ввода-вывода и внимательно рассмотрели терминал ADM-3A для взаимодействия с ЭВМ PDP-серии.
Как сделать из сайта приложение и выложить его в Google Play за несколько часов. Часть 1/2: Progressive Web App
Наверное, все близкие к веб-разработке люди уже наслышаны о Progressive Web App. Ещё бы! Эта технология практически уравняла веб и мобильную разработку с точки зрения распространения продуктов и вовлечённости пользователей.
Да, современный фронтенд, написанный, например, на React, работает как приложение. Но вот только скачивается это приложение в браузер и запускается из него. В этом и заключается огромный гандикап, который всегда имела мобильная разработка. Давайте подумаем, чем с точки зрения обычного пользователя, «приложение» отличается от «сайта». Сразу в голову приходит, что приложение в телефоне, а сайт на компьютере. Но ведь есть мобильный браузер, так что сайт и в телефоне тоже. Тогда остаётся 3 существенных отличия:
Как корпорации используют 7 смертных грехов в продажах продуктов
Когда мы думаем о семи смертных грехах, обычно мы хотим их избежать. Грешить плохо, и не важно, придерживаешься ли ты какой-то религии или нет. Даже если грех не совершен, всегда есть эмоции, которые подбивают совершить грех.
Гордость, зависть, обжорство, гнев, похоть, жадность, леность. — 7 смертных грехов по версии католической церкви.
Вот по улице идет Ваня, ему дали листовку с изображением вкусных роллов. Он заходит в ресторан и заказывает их. Потому что появилась эмоция склоняющая к греху «обжорство».
Или девушка Аня увидела в магазине новые туфли и захотела купить. Появилась эмоция склоняющая к греху «гордость» — она хочет похвастаться перед подругами. А может быть и «зависть», если подруга купила новые красивые туфли, а у Ани сейчас не хватает денег. Становится видна взаимосвязь: грех — это потребность. И в этой статье мы научимся их использовать во благо для быстрой квалификации потребностей.
Информация
- В рейтинге
- Не участвует
- Откуда
- Новосибирск, Новосибирская обл., Россия
- Зарегистрирован
- Активность