
Вот и настал тот переломный момент, когда мы решили перевести два проекта с VB на С#. Кому интересно — прошу под кат.
Читать полностью »

Вот и настал тот переломный момент, когда мы решили перевести два проекта с VB на С#. Кому интересно — прошу под кат.
Читать полностью »
Если я напишу 2, потом 4, потом 6, тогда мы почувствуем себя хорошо, потому что мы знаем, что дальше идет 8. Мы можем это предвидеть, мы не в руках судьбы. Однако, к сожалению, это не имеет ничего общего с истиной...
х/ф «Оксфордские убийства»

Задача: обнаружить центральную фигуру среди сереньких фигур вокруг.
Данный проект — PsyMatchArea — задумывался в качестве альтернативы знаменитым таблицам Шульте. С теми же целями (тренировка зрительного периферического внимания), но с другими, более «отмороженными» исходными предпосылками. Во-первых, нужно было уйти от цифр и букв — символов, знакомых каждому практически с яслей и потому распознаваемых на автомате без активного вовлечения сознания в процесс. Во-вторых, чтобы внимание как можно меньше подменялось памятью (и вообще не расслаблялось), надо было обеспечить соответствующие «помехи» — смена позиций, мерцания, наложения и т.п. Читать полностью »

Привет! В феврале исполняется два года проекту Техносфера. За прошедший год произошло три больших изменения, повлиявших на процесс обучения. Первое из них касалось отбора студентов — технических собеседований. Раньше студент шел на техническое собеседование, не зная, какие задачи ему предложат решить. Теперь же мы отправляем студентам кейс, некую техническую задачу, решить которую нужно заранее и на месте объяснить преподавателям ее решение. После добавления кейса успеваемость резко улучшилась. Перевод на второй семестр в Техносфере составил 27 студентов из 40, то есть 67% вместо обычных 40–50%.
Во-вторых, при Техносфере создана лаборатория, в которой студенты занимаются решением практических задач Mail.Ru Group, а также внешних заказчиков. Например, они исследуют алгоритмы таргетинга для рекламных кампаний, а также пытаются создать эвристики, которые позволяют улучшить качество рекламной выдачи. По сути, лаборатория — это альтернатива стажировке в компании. В ней можно работать над решением различных практических задач с рынка, но при этом не тратить время на дорогу в офис, делая все прямо на своем факультете.
Третьим важным шагом стало решение перейти на двухгодичное обучение. В этом году мы выпустили последнюю группу ребят, которые учились по годовой программе. Предметы, которые они осваивали в течение года, были: алгоритмы интеллектуальной обработки больших объемов данных, многопоточное программирование на С/С++, СУБД, Hadoop, методы обработки больших объемов данных и информационный поиск.
Сейчас мы хотели бы поставить точку в годовой программе обучения, показав вам один из выпускных проектов по предмету «Информационный поиск». В течение семестра ребятам давались домашние задания, которые в итоге вылились в большой итоговый проект. Правила были таковы:

Хочу представить вашему вниманию комические купле каверзные вопросы по C#.
Не удержался и решил запостить немного классики.
Некоторые вопросы в подборке кому-то могут показаться слишком простыми, но небольшой подвох в них, как правило, есть. Иногда можно и простым вопросом подловить. Будут полезны тем, кто изучает язык.
Всех, кому интересно, прошу под кат!
Читать полностью »

Эта статья написана по следам создания плагина для чтения SVG файлов для анимационного векторного редактора NanoFL. В ней вы найдёте некоторые особенности того, как устроены файлы SVG изнутри и какие проблемы возникают при их разборе и последующем выводе на HTML5/Canvas средствами JavaScript.
Интерфейсы в Go представляют собой одну из отличительных особенностей языка, формирующих способ решения задач. При схожести с интерфейсами в других языках, интерфейсы Go всё же имеют важные отличия и это поначалу приводит к избыточному переиспользованию интерфейсов и путанице в том, как и когда их использовать. Это нормально, но давайте попробуем разобраться, в чем же особенность интерфейсов в Go, как они устроены, почему так важны и что значит ортогональность интерфейсных типов и структурных типов в Go.
В этой статье вы узнаете:

От переводчика:
Данная публикация является третьей и последней статьей цикла, стихийно возникшего после публикации перевода статьи "How to C in 2016" в блоге Inoventica Services. Тут критикуются некоторые изложенные в оригинале тезисы и окончательно формируется законченная "картина" мнений о поднимаемых автором первой публикации вопросах и методах написания кода на С. Со второй публикацией можно ознакомиться здесь.
Мэтт (на сайте которого не указана фамилия автора, по крайней мере, насколько мне известно) опубликовал статью «Программирование на С в 2016 году», которая позже появилась на Reddit и Hacker News, именно на последнем ресурсе я ее и обнаружил.
Да, можно бесконечно "обсуждать" программирование на С, но есть аспекты, с которыми я явно несогласен. Эта критическая статья написана с позиций конструктивной дискуссии. Вполне возможно, что в отдельных случаях прав Мэтт, а заблуждаюсь я.
Я не цитирую всю публикацию Мэтта. В частности, решил опустил некоторые пункты, с которыми согласен. Начнем.
Будучи активным игроком рынка, наша компания PayOnline, специализацией которой является организация платежей на сайтах и в мобильных приложениях, не может не отметить, что в наши дни сфера финансовых услуг претерпевает коренные изменения. Этому способствует развернувшаяся в последние десятилетия гонка вооружений в таких областях, как аналитика больших данных, нейронные сети, эволюционные алгоритмы, экспертные системы и машинное обучение. Данные технологии позволили обрабатывать значительно большие объемы разнообразных данных не только быстрее, но и эффективнее.
Читать полностью »
Сразу оговорюсь, эта статья тематически похожа на опубликованную около года назад автором SemenovVV «Нерекурсивный алгоритм генерации перестановок», но подход тут, на мой взгляд, принципиально иной.
Я столкнулся с необходимостью составления списка всех перестановок из n элементов. Для n = 4 или даже 5, задача решается вручную в считанные минуты, но для 6! = 720 и выше исписывать страницы мне уже было лень – нужна была автоматизация. Я был уверен, что этот «велосипед» уже изобретён многократно и в различных вариациях, но было интересно разобраться самостоятельно – поэтому, намеренно не заглядывая в профильную литературу, я засел за создание алгоритма.
Читать полностью »

Продолжение цикла статей о физике в играх про Соника.
Читать полностью »