Pull to refresh
73
0
Nevkontakte @Nevkontakte

Jack of all trades, master of none.

Send message

Аудио плеер под GNU/Linux — DeaDBeeF

Reading time1 min
Views12K
Сегодня обнаружил для себя очень симпатичный плеер DeaDBeeF. Да что уж говорить, после Audacious и Exaile это просто сказка, а не плеер. И так, что имеем:

DeaDBeeF — аудио плеер под системы GNU/Linux. Распространяется под General Public License version 2.

mp3, ogg vorbis, flac, ape, wv, wav, m4a, mpc, cd audio (и многие другие);
поддержка utf8, cp1251;
поддержка cuesheet (.cue файлы);
не зависит от GNOME, KDE;
трей;
drag and drop;
хоткеи;
плейлисты;
18-полосный эквалайзер (поддерживает пресэты от foobar2000);
радио;
плагины;
и многое другое
Читать дальше →

Скриншоты сайтов своими руками

Reading time2 min
Views13K
Проблема создания скриншотов web-страниц прямо на сервере встает достаточно редко, но, как говорится, метко. Хватишься иной раз, так гугль дает ссылки на какой-нибудь парсер уже существующего сервиса. Но, господа, это же не наш метод!

Покопавшись, можно найти что-нибудь типа связки xvfb (виртуальный фреймбуффер) с каким-нибудь браузером, например xvfb+opera, или khtml2png, который тянет за собой фигову тучу kde'шных либ. А ведь так хочется какого-нибудь легкого standalone скриптика...

Решив посвятить немного времени изучению вопроса, обстоятельно исследовал имеющийся инструментарий.

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

Appcelerator Titanium — что это и как оно там

Reading time3 min
Views40K
Данная статья посвящена Appcelerator Titanium — платформе для создания мобильных и десктопных кроссплатформенных приложений на JavaScript (HTML+CSS в придачу). Развитие платформы, особенности, варианты использования, личный опыт
Читать дальше →

За общественным транспортом Новосибирска теперь можно следить

Reading time1 min
Views43K
Как уже писали ранее на весь новосибирский транспорт установили системы спутниковой навигации. Теперь любой обладатель ноутбука, мобильного телефона или коммуникатора при помощи интернет сможет наблюдать за передвижениями на любом из маршрутов.

Систему, похоже, уже запустили окончательно.


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

Инструкция по выбору шрифта

Reading time1 min
Views5.6K
Выбираете шрифт? Можно сделать это просто отвечая на вопросы «да» и «нет», благодаря блок-схеме авторства Julian Hansen.

image

Ссылка на полную версию картинки:
julianhansen.com/files/infographiclarge_v2.png (1983×1402)

Шрифты классические, но, я думаю, каждый может открыть для себя нечто новое в этой схеме.

Nginx + серверный Javascript

Reading time7 min
Views10K

… или как перейти с PHP + JavaScript на JavaScript + JavaScript


Идея реализовать проект на сервер-сайд JavaScript была уже давно. Проблема была в отсутствии подходящего серверного программного обеспечения. Существующие открытые проекты не устраивали по разным причинам. Устанавливать дополнительный модуль для Apache было не самой хорошей идеей, потому что производительность и оптимизация использования памяти при этом были бы не на высоте. С помощью jslibs можно настроить FastCGI, но очень не хотелось оставлять ни малейших шансов «502 Bad Gateway», проект ngx_http_js_module так и остался в зачаточной стадии, а ngxv8 недостаточно развит для реализации реальных приложений. Поэтому я решил сделать собственную реализацию серверного javascript. Причем постараться сразу запрограммировать всю базовую функциональность, чтобы можно было ее тестировать в условиях, близких к реальности.

В качестве основного веб-сервера было решено использовать nginx, в качестве «движка» javascript — TraceMonkey (javascript-движок из Mozilla Firefox, бывший SpiderMonkey), и написать модуль для nginx, который бы их «склеил». Ничего сложного, на первый взгляд, но очень хотелось иметь определенную функциональность (и это получилось!), чтобы можно было нормально работать дальше. Большинство идей заимствованы, кстати, из PHP.
  • Корректная работа в multi-thread условиях
  • Возможность выполнять скрипт, указанный в URL, а не настраивать отдельно скрипт-обработчик и функцию-обработчик для каждого location
  • Возможность вызывать include(), sleep(), alert() из скрипта, использовать __FILE__ и __LINE__
  • Ограничение памяти, выделяемой каждому скрипту, и времени работы скрипта
  • Защита открываемых скриптом файлов, указав в настройках список разрешенных папок. Примерно как open_basedir в PHP
  • Автоматический разбор данных запроса (параметров GET, POST, и, конечно же, cookies), чтобы не писать обработку данных на javascript
  • Поддержка запросов application/x-www-form-urlencoded и multipart/form-data
  • Поддержка basic-авторизации
  • Работа с базами данных (в первую очередь, MySQL и SQLite)
  • Работа с файловой системой: чтение и запись файлов, проверка существования файлов, и т.п.
  • Кэширование байт-кода скриптов, как, например, в eAccelerator
Плюс некоторые другие возможности (инструменты для шаблонизации, для создания конфигурационных файлов, и т.п.), но их в основной список я не включил — их позволяют сделать языковые возможности TraceMonkey.

От слов — к делу! Как скомпилировать и настроить, как протестировать и сравнить...

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

ХХ полезных советов для пользователей Git среднего уровня. Часть 1

Reading time4 min
Views26K
Вообще-то изначально я планировал перевести статью Энди Джеффриса (Andy Jeffries) 25 Tips for Intermediate Git Users, но в процессе я отбросил бестолковые, общеизвестные или самые простые советы вроде «настройте первым делом user.name и user.email», которые явно не подходят людям, уже более-менее плотно знакомым с Git.
Взамен я дополню статью моментами из личной практики («Своя практика»! Звучит здорово, будто я частный врач или адвокат! :-] )

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

Закончен предварительный перевод книги «Волшебство Git»

Reading time1 min
Views26K
Я, как и многие программисты, после знаменитого выступления Линуса Торвальдса о Git на Google Talks заинтересовался распределенными системами управления версиями, а в особенно Git.

Я довольно таки свободно читаю на английском, но мне приятнее читать на русском языке, при условии нормального перевода.
Существует замечательная книга «Git Magic» Бена Лина (Ben Lynn).
Благодаря труду многих людей вышел первый черновой вариант этой книги. Всех желающих улучшить перевод — приглашаю под кат.
Читать дальше →

Превращаем Midnight Commander в консольный браузер для GIT

Reading time4 min
Views13K

Вместо предисловия...


Мне давно хотелось отсматривать код примерно как это сделано в meld, но только в консоли, и еще мне хотелось чтобы это все было увязано с системой управления версиями файлов GIT. В общем чтобы все делалось 1 кнопкой не выходя из mc.

Ydiff

Однажды у нас на канале (или это было на траке...) проявился некто Daniel Borca пошумел-пошумел и убежал, видимо не понравилась ему наша бюрократия, но зато оставил он после себя несколько сыроватых патчей, к готовившемуся релизу 4.7.0-pre1 миднайт коммандера. Один из них содержал в себе ydiff.[ch] и zdiff.[ch]… Как оказалось, то что я хотел получить, было давно уже реализовано в древнем форке mc-mp и в последней версии ru-fork. После 2-х дневного «перепиливания» я подключил функцию сравнения файлов к последней версии mc… Полдела было сделано. :)
Читать дальше →

Создаём тему для Drupal 6. Часть 1

Reading time11 min
Views29K
image
По созданию тем для друпала в интернете можно найти несколько статей (хорошая статья, советую почитать), однако обычно всё заканчивается банальным набором шаблонов и инфо-файлом. В этом топике я постараюсь доступно рассказать как создать гибкую и не самую простую тему.

Начало


Для начала нам потребуется создать директорию в каталоге sites/all/themes с названием нашей темы. Я назвал тему mytheme и создал каталог sites/all/themes/mytheme.
В созданном каталоге создаем директории css — для стилей, js — для скриптов, images — для картинок, templates — для шаблонов, preprocess — об этом позже. Также создаем файл template.php в котором мы будем писать всю логику темы и mytheme.info для описания темы. Можно еще добавить favicon.ico и logo.png.
Читать дальше →

Шпаргалка по API jQuery 1.4

Reading time1 min
Views6.3K
jquery_1_4_cheat_sheet

Сегодня (14 января) — дата релиза новой версии популярного JavaScript-фреймворка jQuery. К этому событию мы подготовили свою шпаргалку по API новой версии (1.4), которой хотим со всеми поделиться.

Шпаргалка существует в двух вариантах:
  1. Online-вариант с ссылками на описание каждой функции на сайте новой документации
  2. PDF-вариант для распечатки

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

Реализация 960gs в Drupal (NineSixty theme)

Reading time2 min
Views1.8K

О NineSixty


NineSixty это тема для Drupal на основе 960gs, предназначенная для использования в качестве базовой темы.
image

Преимущества NS:


  • контент-ориентированная разметка с использованием классов «push» и «pull»
  • динамическая ширина блоков в зависимости от контента
  • инструменты для отладки и визуализация сетки
  • поддержка языков с направлением письма справа налево

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

Brainstormblogger — система блогов на друпал

Reading time1 min
Views884
Есть Drupal, есть Wordpress, есть другие системы.

Но почему то Drupal не так популярен в среде блоггеров. А все достаточно просто.
Сделать базовые настройки для непосвященного на сайте — большая проблема. Соотвественно новичку проще поставить что-либо еще, тот же Wordpress в котором и редактор визуальный есть, и категории не надо мучаться крутить, в общем все есть для ведения блога из коробки.

Было решено создать инсталляционный профиль, который позволить создать настроенный сайт для блоггера парой кликов мышки, с выбором темы оформления, и т.д., с настроенным WYSIWYG, настроенными пермалинками и тд. То есть, распаковал архив, подготовил settings.php, запустил и получил результат.
Читать дальше →

Ввод произвольных символов при помощи Compose Key: настройка

Reading time5 min
Views32K
Многие знают, что в Linux есть специальная кнопка: Compose. Её действие аналогично виндовым сочетаниям Alt+NumPad (Например, нажатие Alt+0169 даёт символ ©), но не требует хранить перед глазами таблицу кодов символов :) Если настроить правый Alt как Compose Key, то нажав RAlt+O+C получаем тот же значок копирайта: ©.

В статье я опишу способ назначения произвольных сочетаний клавиш для символов. Это будет удобно в первую очередь математикам: не нужно будет лазить в таблицу символов чтобы ввести «∀ε>0 ∃δ(ε)≕δ>0: ∀x∈O(x₀) |f(x)<A|» в любом приложении, поддерживающем юникод. Кроме математических символов, будут доступны всевозможные стрелочки (→⇖⇔⟲⟽), галочки (✘), буллеты (•‣★), кавычки («»), длинное тире (—), дроби(⅓, ⅞), диа⃫кр͎е̃ти⃰ческие зн⃫аки и всё что душе угодно в необъятном юникоде! :)
Хочу так же

Безопасность сайтов с лирическими отступлениями

Reading time14 min
Views10K
Недавно я писал для одного заказчика обзорный документ по безопасности web приложений, после чего я подумал, что было бы неплохо выложить его на общее обозрение.
Статья написана для непрофессионалов, поэтому дабы сделать ее более интересной для притязательных пользователей хабра, я разбавил текст некоторыми случаями из жизни.
Читать дальше →

PastryKit: средство разработки сайтов для iPhone, написанное в Apple

Reading time1 min
Views1.2K
Обратите внимание вот на какую картинку:

[пример web-приложения PastryKit]

На экране этого iPhone вы видите приложение, которое выглядит как обычное приложение; тем не менее оно запущено через Интернет, оно является сайтом, который просматривается в мобильной версии браузера Safari. Этот эффект достигается использованием библиотеки PastryKit, разработанной в Apple: библиотека отключает адресную строку Safari, библиотека обеспечивает фиксированное позиционирование панелей инструментов, библиотека даже заменяет способ прокрутки сайтов Safari, добавляя к нему такое «сохранение импульса», которое свойственно именно приложениям iPhone, а не сайтам Safari.

Библиотека PastryKit состоит из CSS и джаваскриптов. Она используется в «iPhone User Guide», а также, до некоторой степени, в LP-файлах iTunes, но ещё не очень ясно, собирается ли Apple пропагандировать и документировать использование PastryKit; блоггер и разработчик Джон Грубер (John Gruber; это тот самый, который придумал язык разметки Markdown) сравнительно случайно обнаружил библиотеку PastryKit на сайте Apple и дал знать о её существовании другим заинтересованным разработчикам.

Подробнее обо всём этом вы можете прочесть во блоге Ajaxian; там же рассказывается, как и где можно скачать и подключить PastryKit.

Линусу — Нобеля!

Reading time1 min
Views730
Визит вице-президента США Альберта Гора в Портланд дал пищу разговорам о том, что Линуса Торвальдса (если кто не знает это создатель ядра Линукс) могут через пару лет выдвинуть на Нобелевскую премию мира.
Зачинщик, Keith Lofstrom, утверждает, что Линус вполне заслуживает этой награды так как является создателем одного из крупнейших международных коллективных проектов. Отрывок из письма:
It inspired Ubuntu, One Laptop Per Child, and many other global projects. Linux conquered the supercomputer space, the server space, the embedded computer space – by peaceful means!

Если выдвижение таки состоится, то его могут приурочить к 20-летию «рождения» ядра Линукс, которое наступит в 2011, либо к 50-летию награды Линуса Паулинга, лауреата Нобелевской премии, в честь которого назвали создателя Линукс.

Information

Rating
Does not participate
Location
Ирландия
Registered
Activity