Александр Яковлев a.k.a. Oreolek

31 Январь 2010 г.

Стереозаписи

Filed under: музыка — Александр Яковлев @ 13:00

Купил второй звукосниматель, теперь я записываю всё в стерео. С одной эфы крепится один агрегат,во вторую я просовываю его брата. Сам я играю, опутанный проводами, они идут к двум компам, на которых идёт запись; после этого я свожу каналы, немного полирую – и готово.
Вот, выкладываю один из опытов. Я записал его со второй попытки:

Первый этюд в стерео :-) (~ 1 Мб)

Я одновременно и люблю,и не люблю спиккато. С одной стороны, это грандиозный штрих. С другой, мой китайский смычок «лысеет» при каждом моём применении на три-семь волос. Собственно, поэтому мне и приходится записывать все этюды с его применением как можно быстрее и без репетиций.Когда я учился в школе,мой тогдашний смычок это спокойно выдерживал. Чёртовы китайцы. Но в любом случае, стереозаписи рулят.

23 Январь 2010 г.

Анимация и интерактив в Web

Filed under: Веб-программирование — Александр Яковлев @ 19:47

Предположим,вам нужно сделать на сайте что-то интерактивно-анимированное. Скажем, кнопку в виде вращающихся цветов. Что можно взять? Казалось бы, такой простой вопрос – и такие привычные ответы, но почему-то он меня заинтересовал. Итак, какие для этого существуют технологии:

  • GIF+Javascript

Топорнее некуда. Любая анимация заранее нарисована, любой интерактив выполняется с помощью Javascript.
Преимущества: никакого дополнительного ПО для клиента, поддержка любого браузера, плавность анимации.
Недостатки: может быть большой объём файлов (представьте, что вы показываете небольшой мультик…в GIF’ах это будет весомо), сложный Javascript и трудоёмкость рисования.

  • Flash

Проще некуда. Несмотря на то,что для этой технологии есть только один (!) нормальный редактор и тот стоит кучу $$$, Флеш процветает и благоухает на всех просторах Интернет. Разбирать его досконально не буду, все видели.
Преимущества: распространённость просмотровщика, некая стандартизированность (действительно, мало у кого стоит Flash Player не от фирмы Adobe), векторность и, следовательно, малый объём файлов (скажем, мультик во Flash вполне возможно уместить в 10 Мб), простота рисования (среда разработки удобна и хороша).
Недостатки: на слабых компьютерах ваша супер-крутая анимация с офигенными эффектами будет неизбежно тормозить. Но для этого нужны действительно сложные эффекты и\или длинный ролик. Ну и корявый ActionScript, думаю, тоже.

Ладно, теперь обратимся к экзотике.

  • SVG+Javascript

Подробно возможности и примеры показаны здесь. Так как технология всё ещё довольно нова, она имеет много нюансов, и главный из них – отсутствие стандарта реализации. Нет, стандарт W3C есть, но когда и кто обращал внимание на их стандарты, кроме них самих? Плагин Adobe SVG Player имеет свои понятия о том,что надо проигрывать,а что – нет, встроенные поддержки в Chrome, Opera и Firefox всё ещё недоработаны (хотя в Opera уже сделано вдвое больше того,что есть в Firefox и Chrome вместе взятых), вне браузера вообще толком не проигрывается. Чёрт побери, каждый разработчик SVG плеера имеет своё мнение даже на то,стоит ли отрисовывать невидимые элементы!
Преимущества: открытость, обилие редакторов, встроенная поддержка в большинстве браузеров, малый размер роликов
Недостатки: медленная прорисовка даже элементарных эффектов, ОЧЕНЬ большие проблемы совместимости в отображении, сложность разработки (внедрять Javascript в SVG – это не так просто, а SMIL так вообще…), возможны проблемы даже в конфигурации веб-сервера (не у всех хостеров возможно корректно настроить отдачу svg)

  • VML+Javascript

Эта технология – продукт компании Microsoft. Не используется никем, кроме этой компании. Но я всё равно расскажу немного, потому что встроенная поддержка этого языка есть в Internet Explorer. W3C в своё время сделала стандарт и этого языка, но сейчас он считается устаревшим и заменённым на SVG. Что интересно, но компания Microsoft так не считает и поддержку SVG в свой браузер внедрить не спешит.
Хотя,что тут рассказывать? Свой вариант SVG. Редакторы формата? Microsoft Word. Проигрыватель? Microsoft Internet Explorer. Все недостатки SVG относятся и к нему тоже,а из преимуществ остаётся только малый размер роликов.

  • Native Client

Совершенно Экспериментальная Разработка от Гугла. Но тем не менее, она тоже стоит изучения. Собственно, для анимации её использовать очень мелко – основной задачей этой технологии является запуск полнофункциональных приложений в браузере клиента. То есть,вы можете сделать даже OpenGL и оно будет работать БЫСТРО, а не как на Javascript.
Преимущества: быстрота анимации и работы, относительное удобство программирования, относительно малый размер программ
Недостатки: клиенту необходим плагин, который до сих пор даже ещё не вышел из разработки; к тому же, он доступен пока что не для всех браузеров. Ну и конечно, что рисовать на SDL\openGL намного сложнее, чем во Flash.

  • VRML+Javascript

На сегодняшний день мертвее всех мёртвых, и возрождаться не собирается. Как бы заменён на X3D и xVRML, но эти умерли ещё до рождения. Тем не менее, на этих технологиях тоже можно что-то сделать, правда потребуется чей-нибудь плагин.

  • Javascript

Действительно, зачем привязывать к этому языку ещё одни? Он и сам вполне в состоянии создавать анимированные объекты, полностью (!) вычисляемые. Не стоит строить велосипеды: существует целый зоопарк фреймворков для рисования на Javascript. В качестве редактора подходит этот. Всё это ещё ново, но уже работает. Вот пример на библиотеке CAKE.
Преимущества: никаких дополнительных плагинов для браузера, малый размер страницы
Недостатки: в первую очередь, это – недостаток редакторов. Рано или поздно вам придётся лезть в код и править ручками координаты. Во вторую – скорость исполнения (это лечится тройной буферизацией, оптимизацией и прочим, но всё-таки, Javascript всё ещё выполняется не мгновенно) и хорошие затраты в производительности на антиалиасинг (особенно по сравнению с Flash). В остальном – рекомендую, за этим будущее.

  • Silverlight\Moonlight

Наконец-то что-то интересное. Что у нас тут? Интернет-технология для запуска .NET-программ. Её свободный аналог для запуска программ на Mono.Я никогда не сталкивался с .NET, поэтому лично меня надо сильно чем-нибудь возбудить в этой технологии,чтобы я решил вдруг выучить C# (или Ruby, или Python).Посмотрим…
Преимущества: поддержка всеми браузерами, быстрота и плавность исполнения, удобство разработки для .NET программистов и дизайнеров (в качестве редактора XAML прекрасно подходит Inkscape)
Недостатки: скачивать клиент; возможны глюки в Opera; плохая стандартизация (плагин Novell и реализация в Microsoft IE не совсем совпадают по возможностям)
…Нет, не возбуждает.

  • JavaFX

Старая,добрая Ява. Она использовалась для веб-приложений задолго до повсеместного ввода Flash.
Преимущества: относительная плавность анимации и быстрота выполнения, удобство разработки для Java программистов и дизайнеров (в качестве редактора JavaFX прекрасно подходит…да, тот же самый Inkscape), универсальность поддержки и стандартизованность языка (ни один нормальный человек не поставит себе в браузер OpenJRE).
Недостатки: большой клиент (Sun JRE – штука увесистая), «хороший» расход памяти, плохая интеграция с браузером
Что я имею в виду под плохой интеграцией? Криворукость. Если у вас на странице есть Java-приложение, то оно начинает подгружаться. На это время браузер попросту виснет (это справедливо для Оперы и Мозиллы, насчёт Хрома не знаю), вместе со всеми вкладками. Не самое хорошее начало для работы, правда? Конечно, Mozilla обещает исправить это, но – потом. Кроме того, если ваша программа зависнет, то это же сделает и весь браузер, опять же со всеми вкладками. По справедливости,это же верно и для других встраиваемых технологий – так, грохнуть браузер может и Flash, и Silverlight, но Ява грузит комп намного больше (одна загрузка JRE в память занимает довольно долгое время), к тому же, там намного проще напортачить, чем во Flash и Native Client.Нет, браузер может навернуться и от Javascript – но со стопроцентной вероятностью он зависнет только от Явы. При подгрузке,как минимум.

  • Своя технология

А также свой браузер, своя операционная система и свои компьютеры. Да, а ещё ваша компания называется либо Apple, либо Oracle :-)

Пожалуй,я пока не буду делать графических веб-приложений. Это слишком тернистый путь,чтобы вести по нему мелкие проекты.

22 Январь 2010 г.

Новая игра!

Filed under: текстовые квесты — Александр Яковлев @ 18:29

Подробности в разделе «Мои игры». (господи, как же я люблю новый сайт!)
Жанр – непонятный.
Название – «Как же называется эта игра?».
Платформа – самодельная, HTML+Javascript.
Геймплей основан на решении логических задач.
Что я говорю..поиграйте и сами всё увидите.
P.S.: Это не относится к теме записки, но: регистрироваться необязательно. Регистрироваться надо только если вы хотите оставить комментарий и только если вы хотите сделать это не-анонимно и у вас нет OpenID. А то люди регаются, а комментариев не оставляют. Зачем?

12 Январь 2010 г.

Горячая линия: Титульный лист и начало работы (LaTeX)

Filed under: LaTeX,Горячая Линия — Александр Яковлев @ 16:14

Я готовил серию постов по LaTeX ещё к Новому Году, но решил немного придержать их, чтобы подрихтовать оформление. Первым идёт по порядку титульный лист научной работы. Какая это именно работа, значения практически не имеет: это может быть семестровая, курсовая или лабораторная – оформляются они одинаково или почти так.
Я привожу только преамбулу и первую страницу. Преамбула немного перегружена («на будущее»), но лишь немного.
Итак, нормальное и качественное начало документа выглядит на LaTeX так:

\documentclass[a4paper,12pt]{report}
\usepackage{mathtext}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
%если не подключить английский, потеряете переносы в английских словах...очень плохо
\usepackage{indentfirst}
\usepackage{graphicx}
\usepackage{listings}
\lstloadlanguages{Perl}
%здесь проставить нужные языки и их диалекты...можно написать и свои правила подсветки
\lstset{extendedchars=false,%надо ставить false всегда при работе с UTF-8
commentstyle=\it,
stringstyle=\bf,
belowcaptionskip=5pt,
numbers=left, %нумерация строк
numberstyle=\tiny,
stepnumber=3,
numbersep=5pt,
breaklines=true, %автоперенос длинных линий
breakatwhitespace=true}
%перенос ТОЛЬКО по пробелам и табуляциям

\renewcommand{\lstlistingname}{Листинг}
\usepackage[labelsep=period]{caption}

\usepackage{fncychap}
\ChNameVar{\large}
\ChTitleVar{\Large \rm \bfseries}
%\ChTitleUpperCase %- почему-то не работает
\ChNameUpperCase

\makeatletter
\renewcommand{\DOTI}[1]{\CTV\FmTi{#1}\par\nobreak\medskip}
\makeatother

\setcounter{secnumdepth}{-1} % не хочу нумеровать главы
\setcounter{tocdepth}{1} % глубина оглавления

\usepackage{geometry} % Меняем поля страницы
\geometry{left=3cm} % левое поле
\geometry{right=1cm}% правое поле
\geometry{top=2cm}% верхнее поле
\geometry{bottom=2cm}% нижнее поле

\renewcommand{\theenumi}{\arabic{enumi}}
\renewcommand{\labelenumi}{\arabic{enumi}}
\renewcommand{\theenumii}{\arabic{enumii}}
\renewcommand{\labelenumii}{\arabic{enumi}.\arabic{enumii}.}
\renewcommand{\theenumiii}{\arabic{enumiii}}
\renewcommand{\labelenumiii}{\arabic{enumi}.\arabic{enumii}.\arabic{enumiii}.}

\renewcommand{\baselinestretch}{1.5}
%если поставить меньше, то дроби на строках будут сливаться друг с другом
\righthyphenmin=2 % Минимальное число символов при переносе - 2.

\begin{document}\renewcommand{\contentsname}{Содержание}
%Строго говоря, Оглавление - это когда текст разбит на главы.
%Когда текст разбит на секции - это Содержание.

\input{Title}

Нетрудно заметить,что оно оптимизировано для программистов: тонко настроен пакет listings. Для титульного листа этого вполне достаточно, но для всей работы надо будет написать ещё кое-что – в следующем посте уточню, что именно. А пока – титульник (Title.tex):

{
\thispagestyle{empty}
\newpage
\centering

\textbf{
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ РФ\\
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ\\
ОЧЕНЬ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ\\*
Сумасшедший факультет\\
Кафедра всякой хрени и сопутствующих областей}

\vfill

{\large КУРСОВАЯ РАБОТА}

\bigskip

<<ЗДЕСЬ НАЗВАНИЕ>>\medskip

студента какого-то курса, М-666 группы\medskip

Букова Аз Есьма\\
\medskip

Специальность 010503 - <<Математическое обеспечение и
администрирование информационных систем>>

\vfill

\begin{flushright}
Руководитель: \\
К.п.н., доцент \\
Е. Н. Какой-то-левов\\
\makebox[5cm]{\hrulefill}

\bigskip

Работа защищена с оценкой\\
<< \makebox[1cm]{\hrulefill} >> ( \makebox[3.6cm]{\hrulefill} )\\
<< \makebox[1cm]{\hrulefill} >> \makebox[3cm]{\hrulefill} \number\year г.

\bigskip

Зав. кафедрой триангуляции торсионных полей,\\
д.-р п. х. наук, профессор\\
\makebox[3.5cm]{\hrulefill} Д. Е. Какой-то-тамов

\end{flushright}

\vspace{\fill}

ВАШ_ГОРОД \number\year
\clearpage
}

Важно писать пробелы после инициалов (Ж._У._).Вместо «Курсовая работа» может стоять и «отчёт по семестровой работе», и что угодно, опять же. Не обрамляйте титульник в \begin{titlepage}…\end{titlepage}, тогда он не будет включён в нумерацию и содержание будет стоять якобы на первой странице.
На мой взгляд, сделано ладно. Но это только начало, дальше будет наверняка хуже. :-)
А. Я. Яковлев.

01 Январь 2010 г.

Genesis "Land of Confusion"

Filed under: переводы,стихи — Александр Яковлев @ 18:14

У этой песни ещё есть православный кавер Disturbed.
UPD: Перевод нужно переписать, на мой взгляд.

Да, видел я не первый сон
И сотней духов посещён
(И слышал духов миллион,)
Но слышится мне чей-то марш
Направлен в переулок наш

Да, ты читал газеты днём?
Те говорят, минул нас гром.
Но вижу я огонь, как в печи —
Они прожгли свой путь в ночи.
(И путь его горит в ночи)1

Как много мужчин, как много людей
От них много проблемы
Любви не так уж много здесь —
Видишь, это ведь земля смятений?

Вот мир, что жить мы взяли,
Вот руки, что нам дали.
С ними давай построим
Место, где жить охота.

О, супермен, где ты сейчас,
Когда всё расклепалось враз?
Те люди стали, люди власти
Теряют контроль ежечасно.

Нужное время, нужное место,
Смотрим мы на виденья.
Любви не так уж много здесь —
Расскажи, что за земля смятений?

Вот мир, что жить мы взяли,
Вот руки, что нам дали.
С ними давай построим
Место, где жить охота.

Я помню, давным-давно
Когда светило яркое солнце
И все звёзды были светлы в тёмной ночи,
В этом безумьи, объятья были горячи
Давным-давно…

Домой сегодня я не правлю.
То поколенье всё исправит
Мы не даём тех обещаний,
Что нам сдержать не позволяют

Как много мужчин, как много людей,
От них много проблемы
Любви не так уж много здесь —
Видишь, это ведь земля смятений?

Вот мир, что жить мы взяли,
Вот руки, что нам дали.
С ними давай построим
Место, где жить охота.

Вот мир, что жить мы взяли,
Имёна, что нам дали.
Встань и давай покажем
Как наша карта ляжет


1: Здесь есть разногласие исходных текстов.Либо «They’re burning into the night», либо «Burning into the night». Я дал два варианта.
P.S. Посмотрел клип Disturbed. Я давно так не смеялся.

Powered by WordPress