Pull to refresh
47
1
Девелоника (ГК Softline) @htc-cs

ИТ-компания

Send message

Алгоритмы ИИ и машинное обучение: «Смотри, тут рыбка. Большая и маленькая»

Level of difficulty Easy
Reading time 3 min
Views 1.1K

Этот кейс по разработке оценят производители оборудования, крупные промышленники, а еще ваши коты, если они будут рядом при чтении статьи

Читать далее
Total votes 5: ↑3 and ↓2 +1
Comments 0

Record vs struct — когда кто кого

Reading time 13 min
Views 23K

В .Net, помимо типов class и struct, с недавних пор есть еще и типы record и record struct. Появление двух новых типов могло внести запутанность по поводу того, в чем их сходства и различия, и в каких случаях стоит их применять. В этой статье мы разберем, в каких ситуациях использовать class, record, struct, и какие преимущества даёт тот или иной тип в различных ситуациях. В конце мы приведем шпаргалку, которая поможет быстро определиться, какой из видов типов лучше подходит в том или ином случае.

Читать далее
Total votes 22: ↑21 and ↓1 +20
Comments 8

Осторожно, банк: как строить работу, чтобы не пришлось ничего переделывать

Reading time 5 min
Views 2K

Привет, меня зовут Дмитрий Галатов. Я работаю старшим программистом в компании ЦВТ. Веб-разработкой занимаюсь 4 года.

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

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

Читать далее
Total votes 6: ↑2 and ↓4 -2
Comments 3

Дизайн без дизайнера

Reading time 12 min
Views 8.1K

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

Чтобы всё не запороть с самого начала, можно попробовать воспользоваться рекомендациями, которые изложены в этой статье. Они относятся к трём основным аспектам хорошего дизайна: работа с формами, типографика, композиция. Воспользовавшись этими рекомендациями вы не станете отличным дизайнером, но сможете избежать неприятных ошибок, способных свести продукт в могилу. А заодно узнаете немного нового про дизайн и просто начнёте немного лучше разбираться в UI/UX.

Немедленно прочесть
Total votes 7: ↑7 and ↓0 +7
Comments 14

Что нового в .NET 6?

Reading time 23 min
Views 82K

На момент написания этих строк вышло уже семь превью-версий .NET 6. Дальше — только релиз-кандидаты. Все основные фичи уже добавлены во фреймворк, идёт отладка, тестирование и оптимизация. Ожидать чего-то кардинально нового в RC-версиях, пожалуй, уже не стоит. Пришла пора рассмотреть .NET 6 поближе.


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


Поговорим об этом.

Читать дальше →
Total votes 59: ↑59 and ↓0 +59
Comments 105

Про новинки в .NET 5 и C# 9.0

Reading time 21 min
Views 85K
Добрый день.

В нашей компании .NET используется с самого его рождения. У нас в продуктиве работают решения, написанные на всех версиях фреймворка: от самой первой и до последней на сегодняшний день .NET Core 3.1.

История .NET, за которой мы пристально следим всё это время, творится на глазах: версия .NET 5, которую планируют релизить в ноябре, только что вышла в виде Release Candidate 2. Нас давно предупреждали, что пятая версия будет эпохальной: с нею закончится .NET-шизофрения, когда существовали две ветки фреймворка: классический и Core. Теперь они сольются в экстазе, и будет один сплошной .NET.

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

А мы представляем вам обзор новшеств в .NET 5 и C# 9. Вся информация с примерами кода взята из официального блога разработчиков платформы .NET (а также ещё из массы источников) и проверена лично.
Читать дальше →
Total votes 131: ↑131 and ↓0 +131
Comments 152

Что в Smart TV тебе моем? Или что можно запихнуть в телевизор?

Reading time 7 min
Views 54K

Вместо предисловия


Добрый день, коллеги! Меня зовут Алексей и я занимаюсь телевизорами, а именно, разработкой Smart TV приложений («давайте похлопаем Алексею»).

Но что такое Smart TV? Какое оно, сферическое Smart TV приложение в вакууме?

Не буду томить вас ожиданием: в основном такого рода приложения предназначены для показа видео-контента. В любых вариациях. Записанное, живое вещание, телепередачи, фильмы, мультфильмы, рекламные ролики, и прочая, и прочая… Тысячи их!

Но разве Smart TV только для этого?


Читать дальше →
Total votes 18: ↑16 and ↓2 +14
Comments 40

Как мы строили мониторинг на Prometheus, Clickhouse и ELK

Reading time 6 min
Views 10K

Меня зовут Антон Бадерин. Я работаю в Центре Высоких Технологий и занимаюсь системным администрированием. Месяц назад завершилась наша корпоративная конференция, где мы делились накопленным опытом с IT-сообществом нашего города. Я рассказывал про мониторинг веб-приложений. Материал предназначался для уровня junior или middle, которые не выстраивали этот процесс с нуля.


image


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

Читать дальше →
Total votes 8: ↑7 and ↓1 +6
Comments 10

Dagger 2. Subcomponents. Best practice. Part 2

Reading time 6 min
Views 11K
Всем привет! В прошлый раз мы разобрались с реализацией Subcomponent и случаями использования его на примере отдельно взятого экрана. Здесь будет несколько отсылок к той статье, поэтому лучше сначала ознакомиться с ней.

Сегодня же мы обсудим создание реальной авторизованной зоны приложения и работу с соцсетями. Конечно же не без помощи Dagger’а!

Интересно? Добро пожаловать под кат!
image

Читать дальше →
Total votes 8: ↑7 and ↓1 +6
Comments 0

Dagger 2. Subcomponents. Best practice

Reading time 9 min
Views 38K
На хабре уже было несколько хороших статей по установке и работе с Dagger 2:


Я же хочу поделиться своим опытом использования Dagger 2 на реальных проектах с реальными кейсами. Раскрыть читателю мощь и удобство как самого Dagger’а, так и такого его аспекта, как Subcomponent.

Перед тем, как пройти под кат, следует ознакомиться с вышеуказанными статьями.
Кого заинтересовал, you are welcome!
image
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Comments 11

Методология VR-разработки

Reading time 5 min
Views 6.4K
Данная статья является последней в цикле про качественную разработку VR-проектов. Ранее мы уже изучили принципы подбора контента для наших проектов в статье «VR Design: содержимое сцен». Ссылки на другие материалы можно найти в обзорной статье.

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

Как соответствовать таким требованиям, чтобы разрабатывать хорошие VR-проекты, мы узнаем в этой статье.

После того, как мы пробежались по основным особенностям VR-разработки в этой серии статей, рассмотрим последнее, самое важное для тебя, как для разработчика, средство: итеративный процесс разработки.

Также мы разберем, почему ты не всегда можешь доверять себе и что означает понятие «VR legs».

You have to be super experimental and be willing to accept that a lot of the old ways of doing things just do not work at all anymore.

Joel Green из Cloudhead Games, Группа разработки The Gallery


Итеративный процесс разработки



image
Total votes 8: ↑7 and ↓1 +6
Comments 4

VR Design: содержимое сцен

Reading time 4 min
Views 9K
Данная статья является пятой в цикле про качественную разработку VR-проектов. Ранее мы уже изучили принципы VR-дизайна в статье «VR-Design: User Interface». Ссылки на другие материалы можно найти в обзорной статье.

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

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

Что стоит показывать, а что нет, какой посыл несет наша работа и как мы хотим общаться с пользователем. При разработке VR-проектов необходимо придерживаться определенных рамок.

Глубокое погружение дает нам большое влияние на эмоции пользователей. С этой большой ответственностью нужно обходиться очень осторожно.
image
Total votes 10: ↑9 and ↓1 +8
Comments 4

VR-Design: User Interface

Reading time 5 min
Views 14K
Данная статья является четвертой в цикле про качественную разработку VR-проектов. Ранее мы уже изучили основы работы со звуком в статье «Звуковые эффекты в виртуальных мирах». Ссылки на другие материалы можно найти в обзорной статье.

User Interface — это прямое взаимодействие между человеком и машиной. Это средство, с помощью которого компьютер оповещает нас о возможностях, а мы передаем ему свои намерения.

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

User Interface (UI) очень важен, и при разработке наших VR-проектов мы должны уделять внимание этому аспекту.

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

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

Идеальный UI должен быть понятным, неброским и интуитивным, чтобы действия сами напрашивались. Как достичь этой высокой цели в VR-разработке, мы рассмотрим далее более подробно.

Осязаемый User Interface


image
Total votes 16: ↑16 and ↓0 +16
Comments 0

Звуковые эффекты в виртуальных мирах

Reading time 4 min
Views 5.5K
Данная статья является третьей в цикле про качественную разработку VR-проектов. Ранее мы уже изучили принципы оптимизации в статье «Рендеринг и оптимизация в VR-разработке». Ссылки на другие материалы можно найти в обзорной статье.

До сих пор звуковые эффекты играли при разработке ПО второстепенную роль и едва ли были заметны. Но при VR-разработке они становятся неотъемлемой составляющей проекта.

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

Хороший VR-проект переносит нас в виртуальные миры и позволяет ощутить эту смоделированную реальность на эмоциональном уровне. Однако существуют определенные ожидания и, если наши проекты не смогут им соответствовать, погружение и правдоподобность пропадут.

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

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

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

Сначала пробежимся по аппаратному и программному обеспечению и узнаем, почему даже сегодня при симуляции звука прибегают к обману.
Total votes 14: ↑14 and ↓0 +14
Comments 1

Рендеринг и оптимизация в VR-разработке

Reading time 4 min
Views 6.8K
Данная статья является второй в цикле про качественную разработку VR-проектов. Ранее мы уже изучили принципы работы с камерой в статье «VR-Design: взгляд в виртуальный мир». Ссылки на другие материалы можно найти в обзорной статье.

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

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

В частности мы хотим расширить твои знания о рендеринге и оптимизации VR-приложений, чтобы тебе легче было разрабатывать качественные VR-проекты. Нужно знать, например, как камера оказывает влияние на разработку.
Total votes 6: ↑4 and ↓2 +2
Comments 0

VR-Design: взгляд в виртуальный мир

Reading time 4 min
Views 7.3K
Данная статья является первой в цикле про качественную разработку VR-проектов. Ссылки на другие материалы можно будет найти в обзорной статье.

Надевая 3D очки, пользователи могут погрузиться в виртуальный мир. При этом движения головы в точности переносятся в VR, в результате чего создается ощущение присутствия.

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

Это и является одним из самым значимых отличий VR от классических СМИ. Использование виртуальной камеры ставит перед нами новые сложные задачи, и тут стоит быть осторожным.

Так как, если на этом этапе мы примем неверные решения, то это приведет к возникновению у пользователя тошноты и головной боли, к так называемой «Motion Sickness» или VR болезни.
image
Принципиально важно, чтобы 3D мир и все виртуальные элементы всегда реагировали на повороты головы пользователей. И это относится не только непосредственно к игровому миру.
Total votes 11: ↑11 and ↓0 +11
Comments 3

Сквозь стены: преодоление преград

Reading time 2 min
Views 5.8K
Виртуальная реальность привносит новые требования к игровому дизайну, накладывает собственные ограничения, одно из них — это тот факт, что пользователя (пока) нельзя остановить перед виртуальной стеной.

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

В традиционных «плоских» 3D играх такую проблему решают очень просто: цифровой персонаж останавливается, и ему не разрешают пройти через стальную дверь. И это не вызывает никаких возражений, так как раньше у нас не было никакой связи реального и цифрового миров, но в VR все не так.

image
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Comments 3

Разработка качественных VR-проектов

Reading time 4 min
Views 17K
Совсем недавно мы стали одним из соучредителей компании, которая занимается разработкой виртуальной и дополненной реальности. В связи с этим в ближайшее время представим вам цикл переводных статей нашего front-end разработчика, Любови Ложкиной, о качественной разработке VR-проектов.

Поехали...


Данная статья является вводной к циклу материалов про качественную разработку VR-проектов. Со временем она будет дополнена ссылками на дальнейшие материалы.

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

Полная свобода — все начинают с нуля.

VR-движение существовало еще в 80-тых (тогда аппаратные ограничения сильно тормозили прогресс). Однако первые действительно важные знания по разработке VR-приложений начали появляться в течении последних двух лет благодаря современным технологиям и успеху в VR-отрасли.

С течением времени эти знания будут накапливаться, появятся новые, и возникнут методики, проверенные опытом.

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

1 — Взгляд в виртуальный мир


image
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Comments 2

Атрибуты свойств в Objective-C. Инструкция для начинающих

Reading time 9 min
Views 82K
image

Есть множество разных мест, где описано значение атрибутов, используемых при объявлении свойств, но, как правило, все такие источники либо описывают применение только одного из атрибутов, либо содержат еще кучу ссылок на другие документы, переходя по которым со временем начинаешь терять нить рассуждений. Безусловно, нужно стремиться познать все тонкости, для чего нужно прочитать горы литературы. Но для начала вполне достаточно разобраться в основах. Ниже я постарался максимально просто изложить основные используемые при объявлении свойств атрибуты, их значение и основные случаи, когда стоит использовать то или иное значение атрибута.
Читать дальше →
Total votes 24: ↑20 and ↓4 +16
Comments 20

.NET-разработка: переключения между DEV и PROD-окружениями. Часть первая

Reading time 7 min
Views 15K

Введение


Разрабатывая и отлаживая проект в Visual Studio, вы, как правило, делаете это, компилируя код в Debug-конфигурации. На боевой же сервер проект выкладывается, откомпилированный в Release-конфигурации. И каждый проект рано или поздно разрастается настолько, что в нём появляется некий «отладочный» или «релизный» код — то есть, тот код, который должен работать только в одной из конфигураций. И если бы дело ограничивалось только кодом, то директива условной компиляции #if решала бы все проблемы. Но обычно за кодом ещё тянутся настройки, специфичные для каждой из конфигураций, а зачастую и разметка веб-страниц. В самом начале, когда такие проблемы только начинают появляться, и ещё не являются сильной головной болью, обычно используется банальное комментирование ненужных в конкретный момент строк с кодом/разметкой/настройками. Но это — Road To Hell в самом чистом виде. А вот о Stairway To Heaven я и хотел бы рассказать.



Когда я впервые столкнулся с такой проблемой и уже погряз в костылях из комментариев и наборов различных конфигурационных файлов, то в какой-то момент решил поинтересоваться чужим опытом, а также получше изучить возможности среды разработки и используемых инструментов. И внезапно выяснил, что все мои искусственные костыли являются абсолютно избыточными — проблема может быть решена стандартными средствами и без ухудшения читаемости кода. Итоги моего исследования я опишу в небольшом цикле статей, где рассмотрю и примеры проблем с окружением, и механизмы, с помощью которых весь код, настройки и html-разметку автоматически можно привести в нужный вид при публикации проекта. Речь при этом пойдёт о разработке ASP.NET MVC-приложений, как области, в которой я, в основном, и работаю. Однако, всё написанное будет применимо к любой .NET-разработке в Visual Studio.
Читать дальше →
Total votes 9: ↑6 and ↓3 +3
Comments 18
1

Information

Rating
1,246-th
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity