Турецкие власти приняли решение о блокировке крупнейшей социальной сети СНГ «ВКонтакте» на территории всей страны. При попытке зайти на vk.com пользователь получает уведомление о недоступности сайта со ссылкой на решение судебной инстанции.
На этот шаг чиновники пошли из-за многочисленных нарушений турецкого законодательства (размещение контента, защищенного авторскими правами) и обилия порнографических материалов в социальной сети.
СПАСИБО за скриншот. Я в курсе, что на моем сайте (Прим. переводчика — речь идет о www.zeldman.com) большой кегль шрифта. Я сам его таким сделал. Я вам благодарен за ваше желание помочь, но я в курсе, как выглядит сайт в браузере со стандартными настройками на настольном компьютере. Более того, я работаю в дизайн-студии. Там есть парочка.
В интернете с подачи ресурса PocketLint распространяются слухи, сопровождаемые дежурной фразой «стало известно из доверенных источников», о том, что компания Марка Цукерберга намерена приобрести норвежского производителя браузеров Opera Software. Основная цель покупки заключается в создании конкурирующего продукта, который призван составить достойного соперника Google Chrome и был бы максимально интегрирован с возможностями социальной сети.
Учитывая всем известную покупку Facebook модного сервиса Instagram — компании со штатом из 13 человек и фактически без прибыли, хотя и с солидной базой аудитории — за умопомрачительную сумму в один миллиард долларов, слухи или мысли редакторов PocketLint о покупке Opera не выглядят таким уж невероятными. Мало того, недавно прошедшее IPO Facebook, несмотря на то, что оно и вызвало нарекания инвесторов, является весьма успешным мероприятием — капитализация социальной сети даже с учётом подешевевших акций составляет около 100 млрд $: другими словами, финансовых ресурсов у Марка Цукерберга более чем достаточно.
Согласно разным источникам, рыночная капитализация Opera Software составляет около 700 $ млн; норвежская компания является безусловным лидером среди мобильных браузеров — Opera Mini пользуются 170 млн человек, причём с учётом десктопной версии Opera аудитория продуктов составляет около 270 млн человек.
Обозреватели ресурса TheNextWeb провели собственное расследование по этому вопросу и выяснили, что, во-первых, на данный момент топ-менеджмент Opera Software ведёт переговоры о покупке компании неназванным покупателем и, во-вторых, новых сотрудников в компанию уже некоторое время не принимают. Всё это в совокупности может говорить о том, что некие грядущие изменения в Opera всё-таки возможны.
Поначалу введение кнопок, заметно выпадающих из дизайна по своим размерам, встретила массу осуждений в топике, посвящённом обновлению сайта 22 мая. Представитель Хабра Boomburum вполне с этим согласен и предлагает дизайн кнопки отправлять ему на личное сообщение. Однако, красивость одного решения, которое созрело в течение дня, предлагаю оценить всем.
Инициализаторы объектов (Object Initializers) – это полезная возможность языка C#, которая позволяет инициализировать необходимые свойства объекта прямо во время его создания. Поскольку синтаксически эта «фича» очень близка к инициализации объекта с передачей параметров через конструктор, многие разработчики начинают забивать на принципы ООП (в частности на понятие инварианта) и использовать ее, где только можно.
Но даже если не переходить к холиварам и малопонятным терминам, давайте рассмотрим небольшой пример, и подумаем над тем, может ли он привести к проблемам или нет:
// position передается извне или настраиватся каким-то образом
long position = -1;
using (var file = new FileStream("d:\\1.txt", FileMode.Append)
{
// Мы точно знаем, что нужные данные расположены
// с некоторым сдвигом!
Position = position
})
{
// Делаем чего-то с файлом
}
В данном фрагменте внутри директивы using создается ресурс (файл) и устанавливается одно из его свойств (Position) с помощью инициализатора объекта. При этом самое главное в этом коде то, что setter этого свойства может генерировать исключение.
Удивительно, но факт: на хабре практически нет статей о Greensock — великолепной библиотеке для скриптовой анимации на Flash. Возможно, это связано с тем, что Flash-разработчиков тут меньше, чем веб-разработчиков?
Впрочем, теперь уже не важно: Greensock v12 (он же Greensock Animation Platform или GSAP) умеет анимировать на JavaScript. Любое свойство любого объекта можно проанимировать десятками способов, соединить анимации в таймлайн, поставить этот таймлайн на паузу или развернуть задом наперёд. Всего парой строчек.
Более того, Greensock работает значительно быстрее jQuery, YUI, MooTools или Dojo. Разработчики говорят о тысячах процентов, но зачем верить на слово, когда есть animation speed test.
Подробности на английском: www.greensock.com/v12/, а под катом — краткое изложение на русском языке.
В этой статье Джон Скит будет описывать как простейшие конструкции языка замедляют вашу программу и как их можно ускорить.
Как и в любой работе, сваязанной с производительностью приложений, результат может варьироваться в зависимости от условий (в частности, например, 64-разрядный JIT может работать несколько иначе), и в большинстве случаев это не должно вас волновать. Несмотря на это, относительно небольшое количество разработчиков пишут продакшен-код, состоящий из большого количества микрооптимизаций. Потому, пожалуйста, не принимайте этот пост как призыв к усложнению кода ради иррациональной оптимизации, которая якобы ускорит вашу программу. Используйте это только там, где это реально может понадобиться.
22 мая состоялся релиз LLVM 3.1, семейства компиляторных инструментов, построенных на модульной основе. Проект активно развивается как альтернатива GCC такими компаниями, как Apple и Google.
Наиболее заметные изменения включают в себя улучшенную поддержку нового стандарта C++'11 Clang'ом (включая лямбды, списки инициализации, константные выражения, пользовательские литералы и атомики); появление AddressSanitizer — инструмента для динамического отлова ошибок работы с памятью; серьёзные улучшения времени компиляции и появление новых фич для ARM архитектуры; заметно улучшенная поддержка архитектуры MIPS (включая MIPS64).
Для тех, кому интересны подробности — добро пожаловать под кат.
Сейчас почти не осталось препятствий для создания полноценного SIP клиента в браузере. Необходимый для видео конференций WebRTC уже можно протестировать, например, в Chrome Canary. Существует draft-ibc-sipcore-sip-websocket, который добавляет WebSocket в качестве еще одного транспорта для SIP. И уже появляются первые реализации SIP клиентов:
К сожалению, автор представленного на видео клиента еще не определился будет ли открывать исходники и под какой лицензией. Под катом альтернативные решения с демонстрацией передачи видео…