Wednesday, November 23, 2011

Хабрахабр

КупиКупон - скидки от 50% до 90%

Хабрахабр:

В этой статье я расскажу об одной необычной проблеме, с которой мне однажды пришлось столкнуться по роду своей деятельности. Внимание: эта статья не для начинающих. Предполагается, что читатель уже имеет опыт веб-программирования и знаком с языком PHP, библиотекой CURL и основами HTTP. Перейдем к описанию проблемы. Мне нужно было написать скрипт бота для одного сайта с целью автоматизации некоторого процесса из нескольких шагов, не считая авторизации. Читать дальше →


Google продолжать совершенствовать HTML5-видеоплеер, который должен повсеместно заменить флэш-плеер на сайте Youtube. Пока что версия HTML5 работает не под всеми браузерами, отображает только видео, закодированное h.264 или WebM, и есть ряд других ограничений ? например, не поддерживается показ рекламы. Однако, возможности плеера постепенно дополняются: вот список того, что сделано за последнее время: качество 480p и 1080p для видео WebM; поддержка полноэкранного режима (работает только в Firefox Nightly и последней версии Chrome для разработчиков; контекстное меню с опцией копирования URL и кода для вставки; добавление аннотаций и подписей. Сейчас видеоплеер HTML5 активируется для тех, кто добровольно присоединился к испытаниям, а также изредка для других пользователей.



Всем привет! Сегодняший выпуск чарта под номером 79 получился дольше обычного, потому что в нем мы увидим сразу две новых программы для планшетов от Adobe, отличный 3D-файтинг из древнего Рима, пару удобных утилит для повседневного использования и еще кое-что. А вот и список всех участников: Any.DO: To Do List ? минималистичный менеджер задач с синхронизацией BLOOD & GLORY ? путь гладиатора vscreens photo sharing ? провода остались в прошлом Princess Punt ? сказка о принцессе и волшебном пенделе Photobooth ? великий комбинатор фотографий В рубрике ?Старший брат?: Adobe Photoshop Touch и Adobe Collage.


В море синем, как в аптеке, Всё имеет суть и вес - Кораблю, как человеку, Имя нужно позарез. Имя вы не зря даёте, Я скажу вам наперёд: Как вы яхту назовёте, Так она и поплывёт! Как вы яхту назовёте, Так она и поплывёт! Это песня из замечательного советского мультфильма, который был снят в разгар холодной войны. Войны, в которой капиталистическая и социалистическая система вели яростную пропагандистскую и экономическую борьбу за место под солнцем и возможность дальнейшего существования. В этой войне доблестные шпионы сражались на невидимом фронте с коварными разведчиками! Что то не так? Ах, да! Доблестными были именно разведчики, а шпионы были чертовски коварными! Игра слов или умысел пропагандистов? Эта война давно закончилась, но опыт и эффективность ее пропагандистов никуда не делась. Сегодня их знания породили SOPA ? Stop Online Piracy Act А сейчас, уважаемый читатель, я задам несколько вопросов, о которых сегодня обязан задуматься каждый мыслящий человек. 1. Кто и когда решил назвать свободное распространение информации грязным термином ?Пиратство? ? 2. Чем это грозит? 3. Что делать? Всех кто задумался приглашаю под кат


John D. Carmack, один из основателей и ведущий разработчик id Software в своем Твиттере объявил о доступности исходного кода игры Doom III. Компания долго не могла опубликовать исходный код движка в связи с использованием в нем запатентованного алгоритма расчета теней от Creative Labs, публикация которого могла бы стать правонарушением. Теперь же данный участок кода переписан и юристы Zenimax, материнской компании id Software, к нему претензий не имеют. Исходный код опубликован на GitHub и на официальном FTP компании под лицензией GPL v3 (версия выбрана теми же юристами Zenimax; Кармак не выяснял почему). Игровые данные по прежнему проприетарные и распространяются платно. Читать дальше →


Из ранних обзоров девайсов (а именно Galaxy Nexus) на новой версии Андроида 4.0 (он же ICS, он же ?мороженный бутерброд?) выяснилось, что они не поддерживают такую замечательную фишку, как USB Mass Storage, т.е. использование телефона как флешки, без дополнительных ухищрений. Пользователи андроид-аппаратов, вплоть до версии 3.0 ?Honeycomb? (а, как оказалось, изменения произошли именно в этой версии) знают, что чтобы перекинуть файлы на телефон или с него, достаточно было просто воткнуть его в компьютер без связи с тем какая операционная система или софт на нем установлены. Логично, что новости об исчезновении этой опции в новых версиях не вызвали энтузиазма среди пользователей андроида, и даже заставили многих задуматься о наличии некой проблемы или недоработки. К счастью, один их инженеров Google Дан Морилл (Dan Morrill) в комментариях к гневному посту в reddit, прояснил ситуацию, подробно объяснив о том, что, собственно произошло, и почему. По моему это очень любопытно, так что ниже перевожу перевод его комментариев. Читать дальше →


Доброе утро, Хабр! Мы начинаем вести новую серию постов в блоге, посвящённую лучшим трюкам и приёмам в фреймворке Qt Quick, концентрируя внимание на языке QML. Весь цикл постов пишет Майкл Хассельман. Он работает в Openismus и известен разработкой виртуальной клавиатуры для Nokia N9 (MeeGo Harmattan 1.2). Посты, написанные Хассельманом, должны показать лучшие приёмы разработки в Qt Quick путём изучения того, как использовать основные концепции рационально, и как оградить себя от распространённых ошибок. Сразу стоит отметить, что базовые знания Qt Quick в целом и языка QML в частности, приветствуются. Введение в QML и небольшой урок ? отличный способ освежить или получить эти начальные знания. Введение в язык можно по-шустрому прочитать во время завтрака ? этого будет достаточно для понимания цикла статей, ? а вот урок стоит прочитать внимательно, полностью разобравшись со всеми деталями. Серия постов начнётся на следующей неделе с изучения связывания свойств и демонстрации гибкости и мощности языка. Последующие записи этой серии будут публиковаться в этом же блоге с периодичностью раз в неделю. Посты другого плана, разумеется, никуда не денутся.


Добрый день. Несколько дней назад появилась необходимость использовать слайд-шоу на своём сайте, но оно должно было быть нестандартным, чтоб привлекало внимание пользователей, искал в течение дня и ничего нормального не мог найти, были более менее подходящие ?слайдеры?, но душа хотела клубнички, после того как я облазил весь рунет, переключился на ?забугорных? друзей и? удача! Забегая наперёд хочу сказать: этот обзор сделан потому что в рунете нет никакого упоминания про это слайд-шоу, отсюда и логика. Читать дальше →


Канал GTV представляет на суд Хабражителей очередной видеоразбор с комментариями ? LG Optimus 3D P92. Если выбирать телефон по двум простым параметрам ? что-нибудь новенькое и невысокая цена ? то LG Optimus 3D P920 станет прекрасным вариантом. Судите сами: рыночная стоимость на середину ноября, в среднем, всего 18,6 тысяч рублей. ?Всего? потому что перед нами один из первых телефонов, который предлагает трёхмерную картинку без каких-либо специальных очков. И на этом плюсы не заканчиваются: вы можете не только смотреть 3D фото и видео, но и сами снимать такие ?стерео-сюжеты? двумя фотокамерами на телефоне. Тут надо пояснить: речь не о ?классических? двух камерах (на лицевой стороне и на обратной), а о двух рядом расположенных камерах на обратной стороне телефона (и плюс на ?лице?). Именно в этом ? двух основных камерах ? кроется секрет трёхмерной картинки телефона. Читать дальше →


Специалисты из немецкой компании Recurity Labs разработали JavaScript-реализацию стандарта OpenPGP (RFC 4880) для подписи и шифрования писем в почтовых веб-интерфейсах. Таким образом, PGP-криптография доступна прямо в браузере без установки дополнительного софта. Модуль GPG4Browsers реализован в качестве расширения для Google Chrome и работает только с Gmail, но не должно стать проблемой переделать его для другого браузера и/или почтового сервиса, ведь исходные коды открыты. Читать дальше →



В голову случайно пришла идея, которой не могу не поделиться: сервис для народного подсчёта явки на избирательных участках. Назовём это условно РосЯвка. Цель: сделать факты незаконного подмешивания заранее заполненных бюллетеней очевидными на любых выборах, а, следовательно, уменьшить вероятность фальсификации за счёт тех, кто на самом деле не пришёл. Сценарий работы: любой желающий в день выборов встаёт у входа на избирательный участок, заходит на сайт РосЯвки. Сайт видит, что это мобила, определяет участок по GPS, передаёт авторизационный токен. Перед пользователем появляется единственная кнопка: ?+1?. Что с ней делать ? понятно: нажимать каждый раз, когда кто-то заходит. Можно встать прямо у урны и считать число брошенных бюллетеней, держа телефон в кармане. Надоело стоять ? пошёл домой, вместо тебя постоит кто-то другой, со своим телефоном. По завершению сбора данных пользователь получает ссылку на собранную статистику, которой может поделиться в блоге или социальной сети от своего имени. Если набрать критическую массу знающих о проекте активных граждан, в некоторых случаях удастся получить полное покрытие всего дня голосования, плюс иметь возможность усреднять значения, если несколько человек кликало параллельно. Читать дальше →


Тема портативного аудио на велосипеде часто становится актуальной после регулярных покатушек. Само по себе катание на велосипеде с группой алкобайкеров друзей не похоже на обычные встречи. Большую часть пути все находятся в молчании. От монотонного кручения педалей и относительно бедного ночного разнообразия перед глазами (днем ведь работаем, а катаемся вечером) нечто под названием желание переходит в скуку. Скучно долго монотонно молча крутить педали, одиноко. Какой выход? Верно, нужен связующий элемент ? музыка. Слушаешь ее ? знаешь что слушает сосед. Заместо невозможности говорить получаем возможность слушать. Часто ли в жизни у вас бывают моменты когда все люди слушают и молчат? ( маршрутки с радио не в счет, там водитель свои уши отдает радиостанции, видимо от страха незнания что с ними делать). Поэтому очень важно слушать то, что вы действительно считаете нужным и продуманным. Что-то я все не про то. Читать дальше →


Хочу представить описание методики защиты корпоративной почты от спама, позволяющей использовать преимущества отдельных инструментов фильтрации адресов, избегая недостатков этих же методов. Можно выделить, что эти приемы можно использовать на SMTP-прокси, закрывающем корпоративный почтовый сервер, находящийся в DMZ. Зачастую администраторы избегают некоторых эффективных приемов фильтрации, из-за недостатков того или иного подхода. Например ? фильтры DNSBL нередко дают ложные срабатывания на те узлы, которые попадают в него по ошибке ? например, в составе всего блока адресов отдельного провайдера. Часто используемый способ фильтрации на основе простого определения PTR-записи тоже имеет свойство давать сбои в случаях, когда записи A и PTR ? не совпадают, или просто возникли проблемы со службой DNS. В этой статье я хочу показать, как разбивать отдельные способы фильтрации на более мелкие и оперировать фильтрацией по совокупности данных об отправляющем узле, а не только по результату одного запрещающего правила. Данная методика существует давно, мне встречались разные реализации этой идеи разными специалистами, а эта вариация в более кратком виде была описана мною еще 5 лет назад в рассылке exim-users@exim.org (статью еще можно найти в архиве рассылки), но, несмотря на простоту реализации и наличие документации, сейчас они применяются почтовыми администраторами нечасто. На примере почты компании ?Horns'n'Hoofs? с доменом hornsnhoofs.com попробуем рассмотреть не выдуманные, а вполне работоспособные ?в бою? приемы фильтрации. Читать дальше →


Если мы (веб-студия или частный разработчик) делаем веб-проект для себя, мы сами вольны выбирать метод разработки: гибкий (Agile) или каскадный (?водопад?). Как правило, чем сложнее проект, тем меньше шансов у водопада. Но когда мы делаем сайт для заказчика, метод всегда один: каскадный. Эта статья о том, как (и зачем) убедить заказчика попробовать гибкую модель для сложных веб-проектов. Читать дальше →


Почти три месяца назад мы запустили новое интернет-издание для мужчин, аналогичный западному проекту Uncrate, в котором пробуем освещать интереснейшие новинки ? гаджеты, часы, автомобили, мотоциклы, фото- и видеотехнику, кинофильмы, игры и многое другое. Начав с альфа-версии, в которой был лишь поверхностный функционал, мы продумали дальнейший функционал, завоевали место в сердцах лояльных пользователей и, наконец, запустили освеженную версию, озаглавленную бетой. Во избежание неверной реакции хочу добавить, что мы ничего не продаем ? мы размещаем ссылки на интернет-магазины, который либо базируются в России, либо занимаются международной доставкой. Читать дальше →


Готовясь к собеседованию, я решил освежить память да и вообще поискать каверзные и малоизвестные нюансы языка Java. Выборку пяти наиболее интересных на мой взгляд моментов я вам и предлагаю. 1. Нестатические блоки инициализации. Всем, я думаю, известно, что в Java существуют статические блоки инициализации (class initializers), код которых выполняется при первой загрузке класса. class Foo { static List abc; static { abc = new LinkedList(); for (char c = 'A'; c <= 'Z'; ++c) { abc.add( c ); } } } Но существуют также и нестатические блоки инициализации (instance initializers). Они позволяют проводить инициализацию объектов вне зависимости от того, какой конструктор был вызван или, например, вести журналирование: class Bar { { System.out.println("Bar: новый экземпляр"); } } Такой метод инициализации весьма полезен для анонимных внутренних классов, которые конструкторов иметь не могут. Кроме того, вопреки ограничению синтаксиса Java, используя их, мы можем элегантно инициализировать коллекцию: Map map = new HashMap() {{ put("паук", "арахнид"); put("птица", "архозавр"); put("кит", "зверь"); }}; Очень даже мощное средство, не находите? JFrame frame = new JFrame() {{ add(new JPanel() {{ add(new JLabel("Хабрахабр?") {{ setBackground(Color.BLACK); setForeground(Color.WHITE); }}); add(new JButton("Торт!") {{ addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { System.out.println("Хабрахабр - торт!"); } }); }}); }}); }}; Остальные четыре пункта под катом. Читать дальше →



Идея #1: 1) Клёвый скворечник, который не портит вид города, из материала, который можно легко перекрасить под любую обстановку (примеры скворечников #1, #2 и др.) 2) Возле него есть кормушка, возможно даже поилка с подогревом, чтобы вода зимой не замерзала. 3) Скворечник находится высоко над землёй на дереве или другом высоком объекте. 4) Внизу, на уровне человека стоит приёмник денег + индикатор корма/воды у птицы. 5) Каждый, кто хочет, может положить денюжку (закинуть 5-10 руб.) и дать корм птичкам. 6) Допустим, 10 руб. хватит на 1 день еды и питья. 7) От скворечника идёт сигнал на какой-нибудь сайт, где фиксируется, сколько еды и питья осталось в данном скворечнике и показывается это на какой-нибудь Яндекс.Карте, чтобы каждый желающий смог съездить и покормить птичку. Читать дальше →


Отписаться от этой рассылки

No comments:

Post a Comment