В феврале этого года в продажу поступил смартфон Motorola Atrix 4G, обладающей замечательной функцией webtop, которая позволяет при подключении телефона к одной из док-странций от Motorola использовать функции телефона на большом экране, а также десктопную версию Firefox. В этом топике я опишу, как подключить к телефону usb-устройства, запустить webtop без фирменных док-станций, используя лишь общедоступные устройства и кабели, а сам webtop превратить в полноценный декстопный Linux.
Vitaly Kramskikh @vkramskikh
User
PSGI — интерфейс между web-серверами и web-приложениями на perl
3 min
5.2KНе так давно появилась спецификация интерфейса между web-серверами и приложениями/фреймворками на perl PSGI — Perl Web Server Gateway Interface Specification. PSGI добавляет слой абстракции, позволяющий не заботиться о конкретном способе подключения к web-серверу, и реализовать единственный интерфейс для спецификации. Запустить такое приложение можно на cерверах, поддерживающих PSGI — на данный момент это Plack (набор серверов и утилит), nginx (с патчем для поддержки PSGI и встроенным perl) и Apache с mod_psgi.
+13
Пишем Comet-чат
20 min
16KХочу поделиться своим опытом создания простого Comet-чата. Периодически читал про эту технологию, и сейчас решил попробовать сделать что-либо сам. Получился небольшой чат, интерфейс которого я старался сделать похожим на интерфейс irc-клиента mIRC. Так как подобную вещь пишу первый раз, просьба прокомментировать возможные ошибки в программе и статье и описать более оптимальные пути решения задач. Посмотреть на работающий чат можно здесь: http://94.127.68.84:6884/
+36
Пример построения неблокирующего веб-приложения
7 min
5.7KЗа последнее время видел пару хабратопиков (раз, два), в которых описывается использование неблокирующих сокетов и событийно-ориентированного программирования в вебе. Хочу поделиться своим опытом создания веб-приложения на этой технологии.
Недавно захотел создать свой сервис проверки номеров ICQ на невидимость. Алгоритм проверки старый и известный, но до сих пор работающий — отправка специально сформированного служебного сообщения и анализ ответа сервера. Необходимо было держать несколько постоянных подключений к серверу ICQ, а также иметь веб-интерфейс для запросов на проверку. Очевидное решение — создание демона, который создает несколько потоков для ICQ-соединений, и как-либо получает команды от веб-приложения, использующего несколько процессов-воркеров (или на preforked архитектуре) — для возможности обрабатывать http-запросы от нескольких клиентов. Но я решил освоить новую для себя технологию и сделать приложение, поддерживающее несколько соединений и отвечающее клиентам, используя всего лишь один поток.
Недавно захотел создать свой сервис проверки номеров ICQ на невидимость. Алгоритм проверки старый и известный, но до сих пор работающий — отправка специально сформированного служебного сообщения и анализ ответа сервера. Необходимо было держать несколько постоянных подключений к серверу ICQ, а также иметь веб-интерфейс для запросов на проверку. Очевидное решение — создание демона, который создает несколько потоков для ICQ-соединений, и как-либо получает команды от веб-приложения, использующего несколько процессов-воркеров (или на preforked архитектуре) — для возможности обрабатывать http-запросы от нескольких клиентов. Но я решил освоить новую для себя технологию и сделать приложение, поддерживающее несколько соединений и отвечающее клиентам, используя всего лишь один поток.
+34
Вышел Parrot 1.4.0 «Mundo Cani»
2 min
1.1KЗа все время чтения хабра видел лишь несколько упоминаний Parrot VM. Тем временем, проект активно развивается, и сегодня вышел релиз 1.4.0. Parrot — виртуальная машина, предназначенная для эффективной компиляции и исполнения байткода для динамических языков программирования. На данный момент существуют реализации нескольких языков для Parrot: Tcl, Javascript, Ruby, Lua, Scheme, PHP, Python, Perl 6, APL, а также транслятор байткода .NET.
+37
Information
- Rating
- Does not participate
- Location
- Саратов, Саратовская обл., Россия
- Date of birth
- Registered
- Activity