Архив за 21 сентября 2014 - 4

Лауреаты Шнобелевской премии 2014 года
Лауреат Шнобелевской премии 2009 года демонстрирует своё изобретение: лифчик, который при необходимости быстро превращается в пару защитных масок для лица; в церемонии участвуют три нобелевских лауреата (слева направо): Вольфганг Кеттерле, Орхан Памук и Пол Кругман

18 сентября 2014 года в Гарвардском университете состоялась очередная церемония вручения Шнобелевской премии. Этот приз дают за смешные, на первый взгляд, научные открытия, которые «заставляют сначала засмеяться, а потом — задуматься». Задача в том, чтобы «привлечь внимание и подстегнуть интерес людей к науке, медицине и технологиям».

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

На завершающейся сегодня выставке Photokina 2014 компания Samyang представила полнокадровый объектив Samyang 50mm f/1.4 AS UMC.

Объектив Samyang 50mm f/1.4 AS UMC будет стоить около $500

Читать полностью »

Привет! Меня зовут Сергей Константинов, в Яндексе я руковожу разработкой API Карт. Недавно я поделился опытом поддержки обратной совместимости со своими коллегами. Мой доклад состоял из двух неравных частей. Первая, большая, посвящена тому, как правильно разрабатывать API, чтобы потом не было мучительно больно. Вторая же про то, что делать, если вам нужно что-то рефакторить и не сломать по дороге обратную совместимость.

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

Для разработчика обратная совместимость в первую очередь подразумевает, что единожды принятое обязательство предоставлять какую-либо функциональность невозможно отменить, исправить или перестать поддерживать.
Читать полностью »

Компания Thermaltake на этой неделе представила корпусные вентиляторы Luna 12, 14 и 20 со светодиодной подсветкой разных цветов. В обозначении моделей есть указание на их размеры: в случае Luna 12 они равны 120 х 120 х 25 мм, Luna 14 — 140 х 140 х 25 мм, Luna 20 — 200 х 200 х 30 мм.

Каждая модель серии Thermaltake Luna выпускается в трех вариантах: с синей, красной и белой подсветкой

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

Прошедшая неделя ознаменовалась выходом iOS 8 и новых iPhone (их разобрали по винтику на Хабре, а для iOS 8 уже написали хабро-клавиатуру), появлением первых Android One смартфонов, историями создания мобильных игр и несколькими примерами тестирования мобильных приложений.

Дайджест интересных материалов для мобильного разработчика #71 (15 21 сентября)Читать полностью »

Как известно, при использовании интерфейса IEnumerable<> там, где подразумевается коллекция, могут случаться проблемы (см. например Проблемы использования IEnumerable и LINQ против LSP). К счастью, в .NET v4.5 в 2012-м году (немного поздновато, но лучше поздно, чем никогда), появились интерфейсы IReadOnlyCollection<>, IReadOnlyList<>, IReadOnlyDictionary<> (далее буду их обобщённо называть IReadOnly-интерфейсы). В отличие от IEnumerable<>, IReadOnly-интерфейсы дают возможность достаточно и без лишних требований обозначать функциональность коллекции, что и позволяет их рекомендовать для использования вместо IEnumerable<> везде, где подразумевается чтение коллекции. Но тут встречается одно затруднение. Одним из важных компонентов, потребляющим и создающим коллекции, является LINQ и, особенно, его часть «LINQ к объектам». К сожалению, IReadOnly-интерфейсы появились на 5 лет позже чем LINQ, и в нём не используются. Все входные и выходные коллекции LINQ-операций имеют базовый тип IEnumerable<>, исходя из ограниченных возможностей которого, многие операции подразумевают лишние затраты: полный последовательный перебор или даже создание промежуточных копий входных коллекций. Более того, возвращая из операций тот же IEnumerable<>, LINQ требует при дальнейшем использовании результата опять использовать полный перебор и создание промежуточных копий. В связи с этим, у меня давно зрела мысль «подружить» LINQ с IReadOnly-интерфейсами.
Читать полностью »

Разрабатываем хабраклавиатуру под iOS
Зачастую для чтения хабра я использую мобильное приложение Хабрахабр для iPhone и iPad. Оно достаточно удобное для чтения статей, но не очень удобное для написания комментариев, особенно если хочется написать что-нибудь этакое, с использованием тегов форматирования. Неудобно, потому что все теги необходимо набирать вручную, поэтому очень легко ошибиться и, как результат, оставить некрасивый комментарий.

Так у меня появилась идея написать свою клавиатуру, в которой по нажатию на клавишу добавляется открывающийся и закрывающийся тег в текстовое поле. Курсор при этом должен стать прямо между ними, чтобы сразу же приступить к написанию текста. Также необходимо иметь возможность перемещать курсор с помощью жестов свайпа, субъективно это удобней, чем тянуть палец к полю, ожидать появления лупы, перемещать палец и надеяться, что курсор попадет куда надо. И наконец, пора бы уже разобраться с тегами «Сарказм» и «Зануда», которые не поддерживаются парсером хабра. Клавиатура должна иметь специальные клавиши для этих целей, а оформление тегов должно быть конфигурируемым в настройках клавиатуры, чтобы каждый мог указать тот вид, который ему нравится.

С выходом iOS 8 Apple открывает новый API, который позволяет разрабатывать расширения к приложениям. Клавиатура (Custom Keyboard) является одним из представителей таких расширений. О ней и пойдет речь. В статье вы узнаете о том, какие возможности, ограничения и баги предоставляет новый API, как разработать хабраклавиатуру, и как сделать так, чтобы ваша клавиатура появилась в AppStore, а следовательно и на устройствах ваших пользователей.Читать полностью »

Аналитики IDC опубликовали отчет за второй квартал 2014 года на рынке мониторов. По их подсчетам, в период с апреля по июнь было отгружено 32,5 млн штук этих устройств, что на 2,9% меньше, чем во втором квартале 2013 года. Напомним, что тогда рынок тоже сократился по сравнению с предшествующим годом, и намного заметнее — на 6,7%.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js