Как стать автором
Обновить
4
0
Павел @AxeFizik

.NET developer

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

Мейнстрим. Почетные работники труда. Биографический роман

Время на прочтение6 мин
Количество просмотров3.1K
Издательство «Библиотечка пролетария».

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

О почетных работниках и развитии личных взаимоотношений в условиях нехватки памяти.

Рекомендую. /*Критик*/

Все совпадения не случайны.

У C++ сложный характер из-за тяжелого детства. Он рос в голодные 80е, и помнит как часто места не хватало даже на символы. Это закалило его и придало суровости синтаксису. Часто, напившись, он любил кидать сегфолты, бить стекла, стрелять прохожим в ноги. Урезонить его было некому, ибо его дедушка, уважаемый K&R C, был контужен во Вьетнаме и сам нередко участвовал в забавах внука.
Читать дальше →
Всего голосов 14: ↑13 и ↓1+19
Комментарии6

30 советов по UX в дополненной реальности

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


После “50 советов по UX в виртуальной реальности” я, наконец, собрал набор советов по UX в реальности дополненной и постарался сконцентрироваться на отдельных решениях, которые могут сделать проще и удобнее процесс взаимодействия пользователя с цифровым слоем. Речь в первую очередь идет о рекомендациях по выстраиванию комфортного опыта в мобильном AR, как самом распространенном на текущий момент времени.
Всего голосов 7: ↑7 и ↓0+7
Комментарии0

Машинное обучение в Unity: учим МО-агентов перепрыгивать через стены

Время на прочтение5 мин
Количество просмотров17K
За последние несколько лет в обучении с подкреплением (reinforcement learning, RL) произошли серьезные прорывы: от первого успешного его использования в обучении по сырым пикселям до обучения Open AI роборуки, ― и для дальнейшего прогресса становятся необходимы все более сложные среды, в чем на помощь приходит Unity.

Инструмент Unity ML-Agents ― это новый плагин в игровом движке Unity, позволяющий использовать Unity как конструктор среды для обучения МО-агентов.

От игры в футбол до ходьбы, прыжков со стен и обучения ИИ собаки игре с палкой, Unity ML-Agents Toolkit предоставляет широкий спектр условий для тренировки агентов.

В этой статье мы рассмотрим, как работают МО-агенты Unity, а затем научим одного из таких агентов перепрыгивать через стены.

image

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

Идеальные карты нормалей для Unity (и других программ)

Время на прочтение17 мин
Количество просмотров23K
… и как разобраться, что не так с вашим конвейером создания контента.


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


Узрите величие этой традиционной модели для тестирования карт нормалей!

Затем художник помещает её в игру, и она выглядит… немного не так.


Разве эти грани не должны быть плоскими?

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

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

*Если считать, что в некоторых случаях вы можете вносить изменения в конвейер контента.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии4

15 лучших и крупнейших библиотек иконок

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


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

Сразу уточняем: это не 15 самых лучших библиотек, а 15 из лучших. Разумеется, есть и другие, не менее замечательные, о которых я не упомянул или не знаю.
И, нет, это не рейтинг — список маркированный, а не нумерованный.
Читать дальше →
Всего голосов 20: ↑18 и ↓2+22
Комментарии12

Подробный разбор симплекс-метода

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

Пролог


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

Замечание. Пост будет написан достаточно формальным языком, но будет снабжен комментариями, которые должны внести некоторую ясность. Такой формат позволит сохранить научный подход и при этом, возможно, поможет некоторым в изучении данного вопроса.
Читать дальше →
Всего голосов 33: ↑33 и ↓0+33
Комментарии27

Краткий путеводитель по математике для иностранцев

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


О чем это


А как можно на четвёртом десятке и с аверсией к алгебре наверстать требуемый материал первых курсов университета?

Безумству храбрых поем мы песню!

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


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


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

Читать дальше →
Всего голосов 83: ↑78 и ↓5+73
Комментарии35

Шпаргалка по аббревиатурам C++ и не только. Часть 1: C++

Время на прочтение20 мин
Количество просмотров56K
Когда-то я собеседовался на должность C++ разработчика в одну приличную и даже известную контору. Опыт у меня тогда уже кое-какой был, я даже назывался ведущим разработчиком у тогдашнего своего работодателя. Но на вопросы о том, знаком ли я такими вещами, как DRY, KISS, YAGNI, NIH, раз за разом мне приходилось отвечать «Нет».

Собеседование я с треском провалил, конечно. Но упомянутые аббревиатуры потом загуглил и запомнил. По мере чтения тематических статей и книг, подготовок к собеседованиям и просто общения с коллегами я узнавал больше новых вещей, забывал их, снова гуглил и разбирался. Пару месяцев назад кто-то из коллег небрежно упомянул в рабочем чате IIFE в контексте C++. Я, как тот дед в анекдоте, чуть с печки не свалился и опять полез в гугл.


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

Звуки для UI: подборка тематических ресурсов

Время на прочтение3 мин
Количество просмотров22K
Рассказываем о площадках, где можно найти и скачать аудиосемплы для озвучки пользовательского интерфейса. Подборка пригодится тем, кто разрабатывает приложения или игры.

Другие наши подборки:


Всего голосов 26: ↑25 и ↓1+24
Комментарии2

Переводим на DoH домашнюю сеть, или еще один щелчок по носу фильтрации

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

После сравнительно недавнего анонса компанией Mozilla запуска поддержки DNS-over-HTTPS (DoH) в продакшн в сети не утихают споры, зло это или благо. По моим ощущениям, позиция "зло" базируется в основном на том, что при этом манипуляция вашими DNS-запросами даже в полезных для вас целях будет затруднена, поэтому я пока что остаюсь на позиции "благо".
image


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


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


Но переходить на специальный браузер, чтобы обойти перехват DNS — не наш путь. Наш путь — перевести все устройства домашней сети на DoH, быстро, эффективно и без лишних трудозатрат.

Читать дальше →
Всего голосов 35: ↑33 и ↓2+31
Комментарии67

50 оттенков matplotlib — The Master Plots (с полным кодом на Python)

Время на прочтение39 мин
Количество просмотров388K
Те, кто работает с данными, отлично знают, что не в нейросетке счастье — а в том, как правильно обработать данные. Но чтобы их обработать, необходимо сначала проанализировать корреляции, выбрать нужные данные, выкинуть ненужные и так далее. Для подобных целей часто используется визуализация с помощью библиотеки matplotlib.



Встретимся «внутри»!
Читать дальше →
Всего голосов 67: ↑67 и ↓0+67
Комментарии15

15 книг по машинному обучению для начинающих

Время на прочтение5 мин
Количество просмотров165K
Сделал подборку книг по Machine Learning для тех, кто хочет разобраться, что да как.
Добавляйте в закладки и делитесь с коллегами!

Книги по машинному обучению на русском


1. «Математические основы машинного обучения и прогнозирования» Владимир Вьюгин.

О чем

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

2. «Верховный алгоритм» Педро Домингос.

О чем

Книга, благодаря которой даже ничего не смыслящие в математике и статистике люди поймут, что такое алгоритмы машинного обучения и каково их применение в жизни. Профессор Педро Домингос рассказывает о пяти основных школах Machine Learning и о том, как они используют идеи из различных областей научного знания — нейробиологии, физики, статистики, биологии, — чтобы помогать людям решать сложные задачи и упрощать рутину с помощью алгоритмов.
Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии23

Удаленная работа в режиме full-time: с чего начать, если ты не senior

Время на прочтение5 мин
Количество просмотров36K
На сегодняшний день множество IT-компаний сталкиваются с проблемой поиска сотрудников в своем регионе. Все больше предложений на рынке труда связаны с возможностью работы вне офиса – удаленно.

Работа в режиме full-time remote предполагает, что работодатель и работник связаны четкими трудовыми обязательствами: контрактом или трудовым договором; чаще всего, определенным нормированным графиком работы, стабильной зарплатой, отпусками и прочими особенностями, которые зачастую присущи тем, кто проводит свой рабочий день в офисе.
Преимущества постоянной удаленной работы для каждого, кто решил оставить офис, свои. Возможность работать на крупные зарубежные компании без переезда в другой географический регион, стабильность, в сравнении с freelance – это, наверное, основное, что может привлечь нашего соотечественника. Высокий уровень конкуренции – вот основная сложность, с которой сталкивается соискатель, выходя на поиски работы на международном рынке труда.
Читать дальше →
Всего голосов 35: ↑32 и ↓3+29
Комментарии11

Где учат преподавать (не только в пед. институте)

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

Кому будет полезна статья:

  • студентам, которые решили подзоработать репетиторством
  • аспирантам или специалистам, которым выдали семинарскую группу
  • старшим братьям\сестрам, когда младшие просят научить программировать (вышивать крестиком, говорить на китайском, анализировать рынки, искать работу)

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

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


то, как на вас смотрят ученики
Читать дальше...
Всего голосов 20: ↑17 и ↓3+14
Комментарии14

Доступное объяснение алгоритма коллапса волновой функции

Время на прочтение9 мин
Количество просмотров36K
Алгоритм коллапса волновой функции (Wavefunction Collapse Algorithm) учит компьютер импровизировать. На входе он получает архетипичные данные и создаёт процедурно генерируемые данные, похожие на исходные.


(Источник)

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


(Источник)

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

Большинство реализаций и объяснений коллапса волновой функции — это полная, оптимизированная по скорости версия алгоритма. Разумеется, все они важны и необходимы, но в них сложно разобраться с нуля. В этом посте я буду объяснять всё понятным я простым языком, сосредоточившись на версии Wavefunction с ограничениями, которую я назвал Even Simpler Tiled Model. Кроме того, я выложил пример реализации ESTM на Github. Код в нём неэффективный и медленный, но очень хорошо читаемый и подробно прокомментирован. Как только вы разберётесь в технологии, лежащей в основе ESTM, то станете ближе к пониманию более сложных версий алгоритма. Если хотите понять алгоритм коллапса волновой функции, то эта статья будет хорошим началом.
Читать дальше →
Всего голосов 56: ↑55 и ↓1+54
Комментарии19

Асинхронное программирование – производительность async: понять расходы на async и await

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

Это статья достаточно древняя, но не потерявшая актуальности. Когда разговор заходит об async/await, как правило, появляется ссылка на неё. Перевода на русский найти не смог, решил помочь кто не fluent.




Асинхронное программирование долгое время было царством самых опытных разработчиков с тягой к мазохизму – тех, кто имел достаточно свободного времени, склонность и психические способности размышлять об обратных вызовах (callback) из обратных вызовов в нелинейном потоке выполнения. С появлением Microsoft .NET Framework 4.5, C# и Visual Basic принесли асинхронность всем нам, так что простые смертные теперь могут писать асинхронные методы почти так же легко, как синхронные. Обратные вызовы больше не нужны. Больше не нужна явная передача (marshaling) кода из одного контекста синхронизации в другой. Больше не нужно беспокоиться как двигаются результаты выполнения или исключения. Нет необходимости в трюках, которые искажают средства языков программирования для удобства разработки асинхронного кода. Короче говоря, больше нет мороки и головной боли.

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

Прототипирование в VR: 5 способов проверить гипотезу

Время на прочтение6 мин
Количество просмотров3.5K
В преддверии запуска нового курса «Проектирование VR-интерфейсов» мы расспросили авторов курса — специалистов компании Modum Lab Дениса Тамбовцева и Игоря Зюзина о важности прототипирования при создании VR-проектов. Эксперты рассказали, какие VR-технологии применяют в b2c и b2b, зачем нужно проверять гипотезы и какие способы проверки существуют.
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

Как прийти в небо и стать пилотом

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


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

Читать дальше →
Всего голосов 134: ↑127 и ↓7+120
Комментарии171

.NET: Инструменты для работы с многопоточностью и асинхронностью. Часть 1

Время на прочтение18 мин
Количество просмотров71K
Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight.
Вторая часть доступна здесь

Необходимость делать что-то асинхронно, не дожидаясь результат здесь и сейчас, или разделять большую работу между несколькими выполняющими ее единицами была и до появления компьютеров. С их появлением такая необходимость стала очень ощутимой. Сейчас, в 2019, набирая эту статью на ноутбуке с 8 ядерным процессором Intel Core, на котором параллельно этому работает не одна сотня процессов, а потоков и того больше. Рядом, лежит уже немного потрепанный, купленный пару лет назад телефон, у него на борту 8 ядерный процессор. На тематических ресурсах полно статей и видео, где их авторы восхищаются флагманскими смартфонами этого года куда ставят 16ти-ядерные процессоры. MS Azure предоставляет менее чем за 20$/час виртуальную машину со 128 ядерным процессором и 2 TB RAM. К сожалению невозможно извлечь максимум и обуздать эту мощь не умея управлять взаимодействием потоков.
Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии5

Оптимизация программ под Garbage Collector

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

Не так давно на Хабре появилась прекрасная статья Оптимизация сборки мусора в высоконагруженном .NET сервисе. Эта статья очень интересна тем, что авторы, вооружившись теорией сделали ранее невозможное: оптимизировали свое приложение, используя знания о работе GC. И если ранее мы не имели ни малейшего понятия, как этот самый GC работает, то теперь он нам представлен на блюдечке стараниями Конрада Кокоса в его книге Pro .NET Memory Management. Какие выводы почерпнул для себя я? Давайте составим список проблемных областей и подумаем, как их можно решить.


На недавно прошедшем семинаре CLRium #5: Garbage Collector мы проговорили про GC весь день. Однако, один доклад я решил опубликовать с текстовой расшифровкой. Это доклад про выводы относительно оптимизации приложений.


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

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность