Приглашаем на Moscow Python Meetup 19 января

Автор: admin от 16-01-2017, 19:15, посмотрело: 19

Приглашаем на Moscow Python Meetup 19 января

Приглашаем разработчиков, тимлидов и всех, кто так или иначе связан с разработкой на Python, принять участие в Moscow Python Meetup, который состоится 19 января, в четверг, в московском офисе Mail.Ru Group. В программе встречи три доклада, подробности о них читайте под катом.

Категория: Программирование

 

Повышаем производительность кода: сначала думаем о данных

Автор: admin от 11-01-2017, 15:50, посмотрело: 16

Повышаем производительность кода: сначала думаем о данных

Занимаясь программированием рендеринга графики, мы живём в мире, в котором обязательны низкоуровневые оптимизации, чтобы добиться GPU-фреймов длиной 30 мс. Для этого мы используем различные методики и разработанные с нуля новые проходы рендеринга с повышенной производительностью (атрибуты геометрии, текстурный кеш, экспорт и так далее), GPR-сжатие, скрывание задержки (latency hiding), ROP…

В сфере повышения производительности CPU в своё время применялись разные трюки, и примечательно то, что сегодня они используются для современных видеокарт ради ускорения вычислений ALU (Низкоуровневая оптимизация для AMD GCN, Быстрый обратный квадратный корень в Quake).

Повышаем производительность кода: сначала думаем о данных
Быстрый обратный квадратный корень в Quake

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

Эта статья — не исчерпывающее хардкорное руководство по железу. Это всего лишь введение, напоминание, свод базовых принципов написания эффективного кода для CPU. Я хочу «показать, что низкоуровневое мышление сегодня всё ещё полезно», даже если речь пойдёт о процессорах, которые я мог бы добавить.

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

Категория: Программирование » Веб-разработка

 

Современный подход к сборке мусора

Автор: admin от 3-01-2017, 20:05, посмотрело: 39

Современный подход к сборке мусора

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

Вот первичный анонс о внедрении нового сборщика, датированный августом 2015-го:

В Go создаётся сборщик мусора (GC) не только для 2015 года, но и для 2025-го, и ещё дальше… Сборщик в Go 1.5 возвещает о наступлении будущего, в котором паузы на сборку больше не являются барьером для перехода на безопасный язык. Это будущее, в котором приложения без труда масштабируются вместе с оборудованием, и по мере роста мощности оборудования сборщик мусора больше не является сдерживающим фактором при создании более качественного, масштабируемого ПО. Go — хороший язык для использования как минимум в ближайший десяток лет.

Создатели утверждают, что они не просто решили проблему пауз на сборку мусора, а пошли куда дальше:

Одним из высокоуровневых способов решения проблем с производительностью является добавление GC-настроек (knobs), по одной на каждую проблему. Программист может менять их, подбирая наилучшую комбинацию для своего приложения. Недостатком этого подхода является то, что при внедрении каждый год одной-двух новых настроек через десять лет придётся законодательно регулировать труд людей, которые будут менять эти настройки. Go не пошёл по этому пути. Вместо кучи настроек мы оставили одну и назвали её GOGC.

Более того, освободившись от бремени поддержки десятков настроек, разработчики могут сосредоточиться на улучшении runtime’а приложения.

Не сомневаюсь, что многие пользователи Go были просто счастливы получить новый подход к runtime’у в Go. Но у меня есть претензии к этим заявлениям: они выглядят как недостоверный маркетинговый булшит. А поскольку они раз за разом воспроизводятся в Сети, пришло время подробно с ними разобраться.

Категория: Программирование

 

ТехноLive: VR и платформы будущего (Максим Пестун, Дмитрий Трубицын)

Автор: admin от 29-12-2016, 17:55, посмотрело: 22

ТехноLive: VR и платформы будущего (Максим Пестун, Дмитрий Трубицын)

Поднимающийся тренд этого года — игры VR. Поднимающийся еще дольше, но никак не способный поднять голову тренд — шлемы и очки VR. Раз в несколько месяцев очередная крупная технологическая компания анонсирует свое устройство виртуальной реальности. Однако никто пока не предложил достойного сочетания цены и качества. Что же ждет это направление игровой разработки? Завоюют ли технологии виртуальной реальности массовый рынок? Последует ли за ними бум игр под VR-устройства? А если будущее не за ними, то за чем?

На эти и другие вопросы в заключительной трансляции ТехноLive в этом году ответит ведущий программист виртуальной реальности Максим Пестун и ведущий дизайнер виртуальной реальности Дмитрий Трубицын. Расшифровку читайте под катом.

Прошлые выпуски:


  • Игрок и игра, интерфейс как связующее звено, Ольга Шуберт

  • Как продвигать свою игру среди тысяч конкурентов, Максим Самойленко

  • Как создать успешную мобильную игру, Иван Федянин

  • История игровой индустрии, Александр Кузьменко

Категория: Программирование » Веб-разработка

 

Декабрьский дайджест продуктового дизайна: Книга Atomic Design, Adobe XD для Windows и UX-тренды 2017 года

Автор: admin от 29-12-2016, 10:30, посмотрело: 18

Уже шесть лет я публикую регулярные обзоры свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель 2010-ноябрь 2016.

Декабрьский дайджест продуктового дизайна: Книга Atomic Design, Adobe XD для Windows и UX-тренды 2017 года

Категория: Программирование » Веб-разработка

 

Вспоминаем 2016-й: наши лучшие посты года

Автор: admin от 28-12-2016, 16:35, посмотрело: 26

Вспоминаем 2016-й: наши лучшие посты года

Новый год всё ближе, остались считанные дни. Пора подвести итоги. Всего за этот год мы опубликовали почти 200 постов (этот — 198-й) с суммарным рейтингом 6912, получили 6245 комментариев, 21835 добавлений в избранное и почти 3 миллиона просмотров! Мы сели и с умилением и ностальгией вспомнили лучшие посты в нашем блоге за 2016 год. Присоединяйтесь!

Категория: Программирование

 

Сколько нужно времени на изучение новой технологии?

Автор: admin от 26-12-2016, 19:45, посмотрело: 19

Сколько нужно времени на изучение новой технологии?

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

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

Категория: Программирование, Веб-разработка

 

Правда о традиционных JavaScript-бенчмарках

Автор: admin от 26-12-2016, 15:25, посмотрело: 26

Правда о традиционных JavaScript-бенчмарках

Пожалуй, будет достаточно справедливо сказать, что javascript — самая важная современная технология в разработке программного обеспечения. Для многих из тех, кто изучал языки программирования, компиляторы и виртуальные машины, всё ещё удивителен тот факт, что при всей своей элегантности с точки зрения структуры языка javascript не слишком хорошо оптимизируем с точки зрения компилирования и не может похвастаться замечательной стандартной библиотекой. В зависимости от того, кто ваш собеседник, вы можете неделями перечислять недоработки в javascript и всё равно обнаружите какую-то странность, о которой ещё не слышали. Но несмотря на очевидные недостатки, сегодня javascript является ключевой технологией в вебе, доминирует в серверной/облачной сфере (благодаря Node.js), а также проникает в интернет вещей.

Категория: Программирование » Веб-разработка

 

Еще три онлайн-курса Mail.Ru Group в открытом режиме

Автор: admin от 21-12-2016, 12:55, посмотрело: 18

Еще три онлайн-курса Mail.Ru Group в открытом режиме

C 5 по 15 декабря наш отдел образования Mail.Ru Group открыл в режиме без сроков и дедлайнов еще несколько курсов, записанных на платформе Stepik по мотивам занятий в Технопарке. Их можно проходить в удобном для вас режиме без риска потерять баллы. Даже занимаясь не спеша, у вас будет шанс получить сертификат с высокой оценкой.

Категория: Программирование, Веб-разработка

 

Итоги GeekWeek 2016 и возвращение ужасного БАГа: зима вместе с GeekBrains

Автор: admin от 21-12-2016, 00:30, посмотрело: 19

Итоги GeekWeek 2016 и возвращение ужасного БАГа: зима вместе с GeekBrains

14-19 ноября образовательный портал GeekBrains совместно с Mail.Ru Group провёл онлайн-конференцию GeekWeek 2016 для начинающих и опытных IT-специалистов. Для тех, кто не в курсе, IT-сфера является одним из наиболее динамично развивающихся направлений в экономиках большинства стран мира. Для постоянного развития требуется много ресурсов. А главный ресурс — человек.

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

Категория: Программирование

 
Назад Вперед