Обновить

Выпуск новостей ReactOS № 60

Так уж исторически сложилось, что на Хабре не представлен своим сообществом проект ReactOS, создающий операционную систему с открытой реализацией архитектуры Windows NT(2k/XP/2k3/7even) и бинарной совместимостью с приложениями/драйверами Windows. Стабильность ОС всё быстрее приближает к релизу бета-версии, в ближайшей перспективе должна появиться поддержка сборки в Visual Studio (об этом, в числе прочего, под катом), а потому, считаю необходимым поделиться информацией о ходе разработки.
Читать дальше →

PHP-CLI-Singleton

Недавно появилась задача реализовать пхп-скрипт одиночку (возможен запуск только одной копии этого скрипта.)
Пришёл вот к такому вот оригинальному(на мой взгляд) решению, без капли изврата:
<?php
class cli_singleton {
protected $sock;
protected $port;
public function __construct($port) {
$this->set_port($port);
$this->sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
}
protected function set_port($port) {
$this->port=$port;
}
public function lock() {
return socket_bind($this->sock, 'localhost', $this->port);
}
public function unlock() {
socket_close($this->sock);
$this->sock=NULL;
}
public function __destruct() {
if($this->sock) {
$this->unlock();
}
}
}
?>

Требует только установленной библиотеки sockets+СТО_ПРОЦЕНТНО_свободного_номера_порта.

UzeBox — приставка своими руками

Что такое UzeBox? Это Opensource проект 8-битной консоли. Она способна выполнять операции с частотой до 28.61818 Mhz, поддерживает 256 цветов с разрешением 240x224 пикселей, до 32 спрайтов одновременно на экране, а главное — UzeBox доставит вам чувство удовольствия от чего-либо, сделанного собственными руками.
UzeBox невозможно купить, ее можно только сделать самому. Основа консоли — микропроцессор ATmega644 и перекодировщик с RGB в NTSC AD725. Кроме двух вышеуказаных чипов, вам потребуются один или два джойстика NES — интерфейсом (такие как от денди), SD/microSD карточка на которой будут храниться программы и данные, и, конечно, телевизор, поддерживающий NTSC.

Здесь схема, пример программы HelloWord, демо-ролик, а также сайт аналогичного проект FuzeBox с доступным описанием процесса изготовления.

Настройка мелких но приятных мелочей в Gnome

Gconf — система, используемая в Gnome для хранения настроек рабочего стола и приложений. Через Gconf можно сделать много разных вещей :), но сегодня я расскажу как можно добавить флаги государств к индикатору раскладок клавиатуры и изменить формат вывода системных часов.
Для редактирования Gconf в Gnome есть стандартная системная утилиа gconf-editor. Чтобы её запустить введем в консоле gconf-editor.
Читать дальше →

Facebook украла инженера Google AdSense

image

Facebook наняла на работу Старшего Технического Директора Грега Бадроса, Бадрос присоединился к компании Google раньше 2003 года и пробивался вверх по карьерной лестнице. Его новая официальная должность Технический Директор.



В Google Бадрос был ответственным за комманду AdSence, начиная с ранних лет компании в 2004 году. Он также возглавлял команды Google Календарь, Google Reader и Gmail. С Марта 2009 он управлял группой Application Platform. Но опыт работы над AdSense является не главным интересом для Facebook, которая старается повысить прибыль их сервиса.


Бадрос сообщит Майклу Шроферу, которого Facebook украла из Mozilla в Июле прошлого года. Шрофер вице-президент по разработке и управлению.



Бадрос работал в компании Go2Net которая позже была продана InfoSpace. Он занимал должность Главного Технического Архитектора в обеих компаниях. Его Google страница не может рассказать многого о нем, кроме школы, где он учился и его блога — где он не часто оставляет сообщения.



Официальное Заявление от Facebook:



Грег Бадрос присоединился к Facebook как Технический Директор, сообщив Майклу Шроферу. Грег один из многочисленных талантлевых инженеров в Google, и это прекрасно что он решил привнести свой талант в компанию Facebook и взять на себя большие обязанности по инженерной организации.

Обмануть вирус

X-connect

Работая в техподдержке местного провайдера, часто сталкиваюсь с вирусом, рвущим соединения. Главный симптом — в папке сетевых подключений появляется новое vpn-подключение с названием вида X-connect (i-connect, v-connect, z-connect), которое обрывает сессии через 10-50 секунд после запуска. К слову, лечится любым адекватным антивирусом со свежими базами. Но вот беда — юзеры не могут скачать обновления: чтобы получить свежие базы, надо удалить вирус, а чтобы удалить вирус, нужны свежие базы. Замкнутый круг. Как быть?

Основная проблема в том, что простым delete'ом вирус удалиться-то удаляется, но появляется на своем «законном» месте секунд через 10-15. Путей обхода (без привлечения знакомых с хардами и Live-CD) нашлось пока два:

1) Залезть в свойства паразитного соединения и исправить его — вбить адрес сервера, поправить настройки шифрования и прочее. Минут на 30-40 обрывов не будет, что вполне хватает, чтобы скачать обновления.
2) Удалить его и по-быстрому создать новое подключение, обозвав его тем же именем, что и паразитное — Windows просто не позволит коварному вирусу создать еще одно подключение с одинаковым именем. Качаем обновления, убиваем заразу.

Надеюсь, статья поможет людям, столкнувшимся с этой проблемой или тем, кому она еще уготована судьбой. Предупрежден — значит вооружен.

Twitpocalypse будет сбой в работе Твиттера или нет?

image
В последнее время в Твиттере, особенно англоязычном, появлялись сообщения о твитпокалипсе. В потоке твит сообщений, появилась ссылка, клик.
На сайте идет отсчет количества твиттов до предполагаемой создателями проекта «Твитпокалипс» ошибки. Некое подобие всеми известного Y2K.
На момент написания поста набралось уже: 2,152,685,838

Что думаешь ты Хабраюзер?

Доступ к буферу обмена X-сервера из командной строки

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

Таким образом мне не нужно тратить время на создание и редактирование этого файла вручную: одна мысль об этом меня очень утомляет)
Поискал расширение для Firefox — не нашел, решил попробовать коммандную строку. Быстро нашел утилиту xsel — именно то, что мне нужно:
$ sudo apt-get install xsel

Небольшой скрипт делает все, как я мечтал:
$ while true; do link=`xsel -o -b -c`; if [ -n "$link" ]; then echo $link|tee -a links.txt; fi; sleep 0.5;done

Улучшаем зрение на дому

Привет ХабраЛюди!

Хочу поделиться одним очень необычным методом улучшения зрения.
Которым, лично я, пользуюсь уже больше 5ти лет.
Метод помогает тем у кого изначально было хорошее зрение, но в последнее время наблюдается его ухудшение.

В чем его особенности:
— Метод позволяет за минимальное время восстановить ослабившееся зрения.
— Сам процесс улучшения зрения вызывает интерес и упражнения могут затянуться =)

Вся фишка заключатся в стереокартинках. Я думаю, многие их видели, слышали и даже прекрасно умеют «обрабатывать» их.
Сам я познакомился с ними по окончании учебы в школе, но в упор их не мог видеть…
я сидел по полчаса чтобы разглядеть хоть что-нибудь необычное в абстрактном узоре.
Со временем навык просмотра стереоизображений развился так, что получалось просматривать не напрягаясь и не тратя время на фокусировку…

Далее началась учеба в ВУЗе, тогда я более плотно познакомился с программированием и вообще всё чаще приходилось работать и играть за компьютером :). Я стал чаще замечать, что зрение ослабевает. Номера машин было всё сложнее разглядеть, а монитор бывало приходилось подвигать в упор!
Спустя какое-то время я вспомнил стереокартинки и просто ради любопытства решил посмотреть пару-тройку… тогдашний просмотр затянулся на пару часов. Что называется, вошел в азарт. После такого глазного штурма мне стало чуть труднее видеть. Чтобы сфокусировать на обычных предметах приходилось напрягаться. Но положительный эффект возник уже на следующий день — я прекрасно видел! Исчезла прежняя мутность и с легкостью удавалось разглядеть номера машин вдалеке.
Давая глазам «положительную» нагрузку мы их тренируем и восстанавливаем зрение. Стереокартинки выступают в данном случае как тренажер, причем гораздо более интересный и продуктивный, чем смотреть на пятно в окне :)
С тех пор при любом сигнале ухудшающегося зрения я трачу пару вечеров всего по 5-10 минут на просмотр стереокартинок. Это не только полезно, но и интересно.

Сейчас я заканчиваю 5й курс и работаю уже больше года, провожу за компом более 10 часов в день, очень упорно читаю книжки в метро и могу похвастаться 100% зрением!

Успехов всем! Надеюсь статья окажется полезной Вам!

Дизайн коробочных версий Windows 7

Наверное многие, кто следит за новостями о Windows 7 знают, что старт продаж новой системы от Microsoft состоится 22 октября 2009 года, но еще остается множество вопросов, на которые пока нет ответов. Например, цена коробночной версии ОСи и каким же будет дизайн коробок. Но теперь появилась информация о дизайне коробок и одной тайной стало меньше…

image

Изначально дизайн коробочных версий Windows 7 появился на польском вебсайте CentrumXP.pl. Многие из наших читателей сочли это очередной подделкой, при этом никого не смутил тот факт, что сайт совместно с польским отделением Microsoft проводили некий конкурс.

Прочь все сомнения: упаковки нового дизайна появились на прилавке виртуального магазина Microsoft Store и любой желающий сможет убедиться в их подлинности.

image

P.S. Осталось узнать цену на коробочную версию, надеимся, что она будет в рамках разумного…
P.S.S. Спасибо всем, кто прочитает и оценит мою статью!

Текстовая игра «Гопник»

Всем привет! Я хотел бы рассказать про старенькую игру «Гопник». Может, уже кто-то слышал про нее, а кто-то нет. Мне лично она дико понравилась и я ее проходил несколько раз. Обалденно увлекательно =). Скрины под катом.
Читать дальше →

Please, call [me] later

Это, так сказать lite-версия событий:
Довольно часто возникают в жизни люди с которыми не то что видеться, разговаривать не всегда хочется. Это не обязательно должны быть недруги или бандиты. Просто назойливые, глупые или наоборот через чур умные товарищи, которые нам совсем не товарищи. И звонят они, как правило, на личный, сотовый телефон. И без устали тратят ваше драгоценное время своими глупостями и несуразностями.
Читать дальше →

Momento mori

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

Первое и самое главное. После смерти у человека остаётся не только квартира, машина и жена с двумя детишками, но и его виртуальные богатства. Такие как личные сайты, аська, виртуальные кошельки, аккаунт на торрентс.ру в конце концов. Что-то из этих вещей личное, например номер аськи, но коли народ не брезгует пользоваться украденными номерами, не стоит бояться использовать номер умершего человека. Что мы от этого получим? А получим мы полную ясность. Не будет внезапно исчезнувших контактов, с которыми общался много лет. А поскольку мы знаем пароль от красивого и короткого номера (о девятизнаках мы не говорим по понятным причинам) его нужно использовать. Глупо выбрасывать вещи только потому, что пользующийся ими человек умер.

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

И ведь ещё много таких вещей, которые могут пригодятся. И этим нужно пользоваться.

Читать дальше →

Ключевые понятия PHP-GTK

Как же организована PHP-GTK и как работают ее компоненты?

Понятие иерархии очень важно в PHP-GTK. Каждый объект в языке является производным от базового класса GtkObject. Каждый объект в языке также наследует методы и единственный сигнал destroy, реализованные в базовом классе GtkObject. Если в GtkObject есть поля свойств открытые свойства класса, непосредственно доступные программисту, каждый объект также наследует их. В дереве наследования есть несколько ветвей наследования, и некоторые графические элементы имеют до пятипредков, отделяющих их от базового класса GtkObject.

В PHP-GTK, как и в GTK+, графический элемент widget служит обозначением любого элемента GUI, например метки, переключателя или окна списка. Все графические элементы PHP-GTK являются производными от базового класса второго уровня с именем GtkWidget. Графические элементы PHP-GTK умеют возможность действительного наследования, в отличие от графических элементов GTK. Это делает программирование PHP-GTK значительно более интуитивным, но также способствует совершению ошибок из за непонимания иерархической структуры классов GTK.
Читать дальше →

Веб-сервис для тех кто не сидит на месте – Vdorogu.org

image

Всем привет!

Хочу рассказать о нашем новом стартапе – vdorogu.org.

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

В реализации проекта мы используем большое количество AJAX-функций и проработанный юзабельный интерфейс, максимально близкий и понятный нашей аудитории.

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

Все участники проекта полны энтузиазмом. Запуск первой фазы нашего проекта запланирован до конца июня.

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

Twitter. Новые возможности!

Когда я открыл для себя твиттер, он мне показался не таким уж и интересным, в конце концов что можно уместить в 140 символах? Оказалось же наоборот, если в блогах можно увидеть много воды, тот тут особо не разгуляешься. Все поменялось, когда число фоловеров перевалило за 100. Это получился такой мега мозг… который знает практически все. Где пообедать в Питере, какая камера лучше, как настроить VPN… И чем больше фоловеров тем умнее тот самый мозг. Так же при помощи твиттера можно с легкостью поднять посещаймость своего сайта\блога, или скрасить скучное пребывание на работе.

Теперь же перейдем к некоторым интересным особенностям, которые организованны сторонними сервисами:

Поиск



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

Ubuntu tips: Возвращаем прогноз погоды на место.

В ubuntu есть довольно приятная функция отображения погоды рядом с системным временем. И всё бы замечательно, но почему-то начиная с ubuntu 8.10 список городов, для которых можно настроить отображение погоды сильно сократился.
В попытке устранить это безобразие я докопался до конфига апплета, отвечающего за отображение погоды.
Конфиг находится по адресу: /home/<имя пользователя>/.gconf/apps/panel/applets/clock_screen0/prefs
Рекомендую перед тем как лезть в конфиг, задать любое расположение через Правый клик на часы > Параметры > Местности > Добавить, т.к. править готовый конфиг легче, чем писать с нуля.
Для примера добавим Москву, чтобы подправить её под наш город. Тогда конфиг будет содержать следующий блок:

<location name="Москва" timezone="Europe/Moscow" latitude="55.650002" longitude="37.266666" code="UUWW" сurrent="false"/>

Вместо символов [< > "] в конфиге возможно будут стоять их коды, начинающиеся на "&" если они сбивают вас с толку, можете заменить строку в конфиге той, что я привёл выше — разницы никакой.
Назначение параметров понятно из их названия.
Погода отображается в соответствии с параметром «code» — это код аэропорта в международном формате (ICAO). Код для вашего города можно поискать здесь http://avia.meteonovosti.ru/
У вашего города же есть аэропорт, правда? :)

Генерирование штрихового кода

Недавно наша газета наконец получила ISSN – индивидуальный идентификатор серийного издания. Для входа в сети розничной продажи также необходим штрих-код. Самый правильный способ получить штрих-код для газеты — это генерация последнего на основе ISSN. Штрих-коды эти соответствуют стандарту EAN-13, и он остается неизменным для каждого номера. Для кодирования номера выпуска используется добавочный штрих-код по стандарту EAN-5(Addon5).
Вместе с полученным ISSN, мы получили и архив с готовыми штрих-кодами в формате EPS. Одна беда — внутри EPS-а лежал обычный растр.
Штрих-код, который получили по почте. Растр.
Наш дизайнер, посмотрев на расклад, завил, что эти штрих-коды ему не нравятся, он хочет вектор, да и вообще, по высоте они довольно большие. На мои заявления, что высота такая, какая и должна быть он показал с десяток других газет, где штрих-код по высоте был намного ниже. После этого и начались мои поиски по приемлемому решению для генерирования штрих-кодов самостоятельно.
Читать дальше →