Как стать автором
Обновить
-8
0
Алексей @alexzen

Продакт

Отправить сообщение

Юнит-тесты на внедрение зависимостей Microsoft.Extensions.DependencyInjection

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

C постепенным переходом проектов на .NET Core фреймворки все большую популярность набирает стандартная реализация внедрения зависимостей от Microsoft. При использовании любого фреймворка для внедрения зависимостей рано или поздно разработчики сталкиваются с проблемой забытой или неправильной регистрации зависимостей, что влечет за собой ошибку в рантайме приложения. В этой статье разбираемся как покрыть unit-тестами внедрение зависимостей стандартной библиотеки Microsoft.Extensions.DependencyInjection.

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

Как я «дебажил» простенькую игру, но обнаружил кое-что еще

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

Речь идет о обычной "Змейке", написанной на C# и запускаемая в консоли. Во время игры рядом с "едой" после того как нажмешь кнопку управления змейкой, появлялся символ "а", которого в исходном коде просто не могло быть, поэтому мне и захотелось разобраться почему так происходит и как это можно починить:

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

Технологичность бизнес-хаба, романтика «старого города» и естественный work&life balance. Добро пожаловать в Литву

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

В литовской команде EPAM уже более 250 специалистов из 10+ стран мира. Мы попытались посмотреть на жизнь в Литве их глазами, прогуляться по старым улочкам, испытать на прочность европейский сервис и узнать o возможностях, которые дает быстро развивающийся офис. 

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

Как я портировал игру с Visual Basic 6 на С++, сделав её кросс-платформенной

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

Всем доброго времени суток! Это моя история о том, как я портировал исходный код одной фанатской Windows-игры о Марио с Visual Basic 6 на C++, и с какими трудностями я столкнулся в процессе создания порта.

Эта статья рассказывает о портировании Super Mario Bros. X, фанатской игры Эндрю Спинкса, созданную им в 2009 году, которую он затем бросил 2011 году в пользу более серьёзного и масштабного проекта в лице Terraria.

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

Новое в управлении iOS и macOS, WWDC 2021

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

В преддверии продаж новых iPhone 13 и iPad с iOS 15 хотим поделиться своими впечатлениями о новшествах в управлении яблочными девайсами.

На прошедшей WWDC-2021 Apple сделали несколько докладов об использовании iOS и macOS для работы. Обзорный доклад доступен по ссылке. Далее под катом расскажем о нём и остальных докладах подробнее.

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

Добро пожаловать в мир интровертов

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

Даже если ты «лучше» справляешься с работой, то это не гарантия того, что тебя повысят. Должность/девушка/дом/лучший кусок пирога доставались самому громкому и обаятельному.


Миром больше не управляют самые громкие


Но сейчас мы стали свидетелями тектонического сдвига.

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

Благодаря технологиям мир повернулся лицом к интровертам. Стоит ожидать, что аналогичный сдвиг произойдёт и в сфере богатства и власти.
Читать дальше →
Всего голосов 38: ↑32 и ↓6+26
Комментарии50

Хабр, который стал родным

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

Я люблю читать. Даже YouTube не смог победить во мне любовь к текстам. Даже подкасты не смогли переманить на свою сторону, хоть у них и бывают печеньки. Ни один медиаконтент мира не сможет заменить чтение. Когда в моей жизни появился интернет, я читал всё, до чего дотягивался: от башорга до Ленты, от Коммерсанта и РБК до ЖЖ. Чуть позже появились большие и качественные ресурсы, среди которых оказался Хабр. Когда я впервые его увидел, ему было около трёх лет и он уже был похож на тот, который мы видим сегодня. Я тогда ещё только подходил к IT и Хабр не был тем интернет-изданием, с которого я начинал своё утро. Проекты умирали, глохли, привычные сайты замирали, загибался ЖЖ… а Хабр жил. Менялся и рос так, как будто команда полна идей и видит рынок на сто лет вперёд. Постепенно Хабр стал тем сайтом, который я открываю первым, как только открою глаза и дотянусь до телефона. Погода, новости, сводки ковида — всё только после него. Хабр стал родным — и для меня он всегда тот.

Так, а к чему это я всё? Ах да. Хабр, тебе ж сегодня исполняется 15 лет.

Так Хабр тот или нет тот?
Всего голосов 65: ↑63 и ↓2+61
Комментарии38

Как создавался новогодний Хабрачат в этом году

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

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

В центре внимания, конечно, SSH-чат, который работает только несколько дней до нового года и несколько после. В этом году разные люди так же подняли чаты в XMPP (Jabber), Телеграмме и IRC. Так же традиционно есть чат-бот tars, который может вывести ёлку и поздравить с новым годом. В прошлые года таких ботов делали несколько человек (кто-то даже на баше).

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

CrowdSec — современная альтернатива Fail2Ban и коллективный иммунитет для Интернета

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

CrowdSec

Инструмент Fail2Ban хорошо известен админам. Программа анализирует логи на сервере и подсчитывает количество попыток доступа с конкретных IP-адресов по указанным протоколам. В случае нарушения правила данный IP-адрес блокируется на заданный отрезок времени. Например, джейл для авторизации по SSH включён с дефолтными настройками 5 попыток авторизации за 10 минут, после чего происходит бан IP-адреса на 10 минут. Отличный способ отфильтровать мусорный трафик от разных сканеров и защита от DDoS.

Fail2Ban и SSHGuard — лучшие инструменты в своей области. Однако новый опенсорсный проект CrowdSec представляется интересной альтернативой. Это локальная замена Fail2Ban, а потенциально нечто большее — глобальная база репутации IP-адресов типа иммунной системы интернета.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии64

Повесть о стрелке и запятой

Время на прочтение6 мин
Количество просмотров8.3K
В этой статье мы:

  • Познакомимся с сопряженными функторами
  • Узнаем, как отвечать на вопрос «что такое каррирование»
  • Притворимся, что у нас есть состояние (если есть только функции)
  • И вдогонку поиграемся с примитивной оптикой (линзами)

И все это с помощью нескольких определений теории категорий и двух простейших конструкций: стрелки и запятой.


Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии17

Индюшатина, как ее готовят

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

GoooGooo
Привет! Сегодня мы поговорим с ребятами из Literal Team, которые делают игру Sovereign's Will, об их страданиях, мучениях и победах при разработке индюшатины.

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

Промышленный Machine Learning: 10 принципов разработки

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

Промышленный Machine Learning: 10 принципов разработки


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

И, порой, каждый начинающий программист, будь он страстным стартапером или же рядовым Full Stack или Data Scientist, рано или поздно приходит к осознанию того, что есть определенные правила программирования и создания софта, которые сильно упрощают жизнь.

В этой статье я кратко опишу 10 принципов того, как стоит программировать промышленный machine learning, чтобы его можно было легко встроить в приложение/сервис, основываясь на методике 12-factor App, предложенной командой Heroku. Моя инициатива — это повысить узнаваемость этой методики, что может помочь многим разработчикам и людям из Data Science.
Читать дальше →
Всего голосов 9: ↑3 и ↓6-3
Комментарии0

Заворачиваем в Promise модальное окно подтверждения действия

Время на прочтение3 мин
Количество просмотров4.5K
Когда пользователь совершает какие-то критические и/или необратимые действия, перед тем, как отправить запрос на сервер, нужно запросить у пользователя подтверждение.

Как правило, выводится модал «Вы уверены, что хотите сделать то то и то то» и внизу две кнопки: Да и Нет. Если пользователь нажал «да», то отправляем запрос на сервер и закрываем модал. Если «нет», просто закрываем модал.

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

Перейдем от лирики к делу. Для отображения модала будем использовать Bootstrap.

Собственно мой вариант такого компонента:
Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Комментарии5

Примеры использования AR в индустрии игрушек

Время на прочтение3 мин
Количество просмотров2.5K
Компьютерные и мобильные игры часто считаются альтернативой классическим игрушкам и настольным играм. В статье ниже дан обзор несколько примеров, когда AR в том или ином виде наоборот пригодился индустрии традиционных игрушек, книг или детских конструкторов.
Всего голосов 2: ↑1 и ↓10
Комментарии0

Музей DataArt. Видеотерминал ADM-3A. Машина тяжелая, надежная, убойная

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


Один из наших любимых экспонатов — классический образец американской школы конструирования, надежное и недорогое устройство, мгновенно покорившее Америку в середине 1970-х. Вместе с вдохновителем музея DataArt Глебом Ницманом вспомнили эволюцию устройств ввода-вывода и внимательно рассмотрели терминал ADM-3A для взаимодействия с ЭВМ PDP-серии.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии19

Как сделать из сайта приложение и выложить его в Google Play за несколько часов. Часть 1/2: Progressive Web App

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


Наверное, все близкие к веб-разработке люди уже наслышаны о Progressive Web App. Ещё бы! Эта технология практически уравняла веб и мобильную разработку с точки зрения распространения продуктов и вовлечённости пользователей.

Да, современный фронтенд, написанный, например, на React, работает как приложение. Но вот только скачивается это приложение в браузер и запускается из него. В этом и заключается огромный гандикап, который всегда имела мобильная разработка. Давайте подумаем, чем с точки зрения обычного пользователя, «приложение» отличается от «сайта». Сразу в голову приходит, что приложение в телефоне, а сайт на компьютере. Но ведь есть мобильный браузер, так что сайт и в телефоне тоже. Тогда остаётся 3 существенных отличия:
Читать дальше →
Всего голосов 52: ↑52 и ↓0+52
Комментарии31

Как корпорации используют 7 смертных грехов в продажах продуктов

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

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

Гордость, зависть, обжорство, гнев, похоть, жадность, леность. — 7 смертных грехов по версии католической церкви.

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

Или девушка Аня увидела в магазине новые туфли и захотела купить. Появилась эмоция склоняющая к греху «гордость» — она хочет похвастаться перед подругами. А может быть и «зависть», если подруга купила новые красивые туфли, а у Ани сейчас не хватает денег. Становится видна взаимосвязь: грех — это потребность. И в этой статье мы научимся их использовать во благо для быстрой квалификации потребностей.
Читать дальше →
Всего голосов 35: ↑21 и ↓14+7
Комментарии31

Информация

В рейтинге
Не участвует
Откуда
Новосибирск, Новосибирская обл., Россия
Зарегистрирован
Активность