Home

Dec. 22nd, 2009

Pyramid Head

Совмещение Yogitype и "электронной бумаги"

Идея устройства клавиатуры Yogitype может быть использована для лучшей формы ноутбука, чем стандатный его вид (экран сверху, клавиатура снизу). Сама реализация Yogitype имеет лишний элемент при слепой десятипальцевой печати - на внутренней части видна та же раскладка, но с надписями.

В рамках проекта с рабочим названием Uniweb есть план использовать в качестве единственного экрана "электронную бумагу". Последняя обычно встречается, как известно, в легковесных мобильных устройствах для чтения книг. Очевидно, что лишь для чтения в дороге форма лэптопа не очень удобна по сравнению с моделью планшета, которую имеют большинство "электронных книг". В связи с этим, возникла мысль о совмещении в одном устройстве и книги с разворотом на две страницы, и обычного компьютера с клавиатурой, пригодной для слепой печати. То есть два EPD (E-Paper Display) - по одному на каждую сторону - и разделенная клавиатура на обратной стороне. Гипотетическое устройство предполагает закрытие, как книги, но стороной с клавиатурой, а не дисплеями. Таким образом, можно было бы использовать его и для чтения, и для работы с переносимой операционной системой (POSIX), например, с выводом на дисплей через PostScript.

При рассмотрении данной задачи всплывает проблема с клавишей-пробелом и клавишами-модификаторами. Во-первых, не совсем ясно, где следует располагать пробельную клавишу, так как она не может находиться в нижнем ряду по физиологическим причинам: предполагается, что пользователь охватывает обеими руками устройство, как книгу. Возможно, что ее место либо на одной стороне с экраном, либо на боковой стороне. Во-вторых, в отличие от обычной клавиатуры, лежащей на горизонтальной поверхности или коленях пользователя, данное устройство не предполагает отрыв рук от домашней позиции, поэтому модификаторные клавиши тоже лишаются стандартного расположения. По-видимому, они могли бы быть сделаны для нажатия большим пальцем, как в клавитуре, описанной [info]ibnteo.

Dec. 7th, 2009

Pyramid Head

Замена фреймам в Живом Журнале

<lj-embed><object width="500" height="300" data="http://pygx.sourceforge.net/" type="text/html"></object></lj-embed>
Pyramid Head

Chromium OS and Web Console

Chromium OS is known to be an Open Source lightweight fast-booting operating system project which is based on the Linux kernel and the Chromium Web browser to provide user interface in general. The usual desktop applications are supposed to be Web-based ones, mainly provided by Google itself such as Google Documents, Gmail, Picasa, Google Maps, YouTube, etc.

However, there is a question about working with Unix programming environment, say, remotely, when using one of those netbooks aimed to be supported by the Chromium operating system. Since the only application a Chromium user is supposed to work with is the Web browser, one can consider an AJAX application to access remote machines, e.g. via SSH to eventually get access to Unix environment.

There are several AJAX implementations of terminal emulation: for instance, Anyterm, written in C++, AjaxTerm, written in Python, and Shell in a Box, written in C; as well as demos that run GNU nano text editor for each of the mentioned programs. Below is that of AjaxTerm (which is also available in Debian and Ubuntu as `ajaxterm' package):

Nov. 30th, 2009

Pyramid Head

Приглашения Google Wave

Запрошенная некоторое время назад учетная запись Google Wave была создана: alexo.uniweb@googlewave.com. Также стали доступными восемь дополнительных приглашений. Хотелось бы несколькими из них поделиться с не имеющими учетную запись заинтересованными в одновременном редактировании текстов людьми, которым небезразличны лямбда-исчисление, проект Uniweb, операционная система Debian и основанные на ней, программирование для POSIX, а также OpenGL и/или связанные вопросы.

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

Nov. 29th, 2009

Pyramid Head

Глобальное потепление

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

Nov. 28th, 2009

Pyramid Head

Регистрация письмом на CAPTCHA-адрес

Возникла идея регистрации в Web-системах с помощью отправления письма на адрес, показываемый на изображении CAPTCHA.

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

Также можно использовать адреса типа 53db-c45e-94ca@register.example.com и ограничиваться изображением кода, а не полного адреса.

Nov. 11th, 2009

Carrie Bradshaw

Совмещение "полезного" с "приятным"

Письмо Медведеву Бизнес газета РБКdaily
 
Письмо Медведеву
В России будет создана почта для переписки граждан с госорганами

Правительство России планирует создать почтовый сервер для государственных нужд в доменной зоне «.рф». Такое решение обсуждалось на встрече главы Минкомсвязи Игоря Щеголева с президентом Дмитрием Медведевым. Создание собственного почтового сервера может обойтись бюджету государства в сумму до 20 млн долларов, полагают аналитики.... Читать далее >

Газета РБК daily

Oct. 26th, 2009

Pyramid Head

Цитата на ibash.org.ru о возрасте системы

<@долбаный_космос> самая древняя часть моей системы - /var/log/installer
<@долбаный_космос> там логи того что происходило в момент большого взрыва :)


И действительно, даты на файлах соответствуют времени установки системы:
alexo@codedot:/var/log/installer$ ls -l
total 804
-rw------- 1 root   root  26297 2007-12-07 15:07 casper.log
-rw-r--r-- 1 root   root 293833 2007-12-07 15:34 initial-status.gz
-rw------- 1 root   root 228939 2007-12-07 15:19 partman
-rw------- 1 syslog adm  252533 2007-12-07 15:34 syslog
-rw------- 1 root   root     15 2007-12-07 15:09 version
alexo@codedot:/var/log/installer$

Oct. 13th, 2009

Pyramid Head

Дата создания корневой файловой системы

В сообществе [info]ru_linux [info]bsw_m, комментируя пост "Первый запуск Synaptic в Ubuntu", обратил внимание на хранящиеся в суперблоках, по крайней мере, файловых систем Ext2/Ext3 дат их создания:
alexo@codedot:~$ sudo tune2fs -l /dev/sda5 | grep created
Filesystem created: Fri Dec 7 15:18:05 2007
alexo@codedot:~$
Poll #1470498 Возраст корневой файловой системы
Open to: All, detailed results viewable to: All, participants: 36

Какой год указан в поле даты создания суперблока корневой файловой системы на наиболее часто используемой Вами операционной системе?

View Answers

До 2004
1 (2.8%)

2004
0 (0.0%)

2005
1 (2.8%)

2006
2 (5.6%)

2007
10 (27.8%)

2008
6 (16.7%)

2009
8 (22.2%)

Суперблок не хранит дату создания
3 (8.3%)

Нет персональной машины
3 (8.3%)

Это секрет
2 (5.6%)

Oct. 8th, 2009

Pyramid Head

Диалоги о клавиатурах

Состоялось несколько диалогов с [info]ibnteo, поднявшим вопросы о компьютерных клавиатурах. Вопросы небезразличны оказались потому, в частности, что касаются проекта Uniweb, для которого было выбрано в качестве клавиатуры стандартное "ядро" американской международной раскладки. Ветки обсуждений состредоточились в комментариях к записям "Эволюция клавиатуры" и "Правильная клавиатура".

Jul. 28th, 2009

Pyramid Head

Labyrinth Mind-mapping Software in Maemo

The Debian-based Maemo platform being used as operating system in Nokia devices such as N810 has the Labyrinth mind-mapping software's port currently available. It can be used for constructing and editing schemes like the following one representing some of current Uniweb project-related and other tasks, for instance:



The mind-mapping approach to brainstorming projects is going to be generalized to organizing and note-keeping tasks in Maemo. In order to operate graphs without any of keyboard-input, touchscreen clicks, or buttons on the device that control the system, this is going to be implemented using dontclick.it's interface concept to provide designing pages and text typing capabilities in addition to browsing with positioning-only input. In turn, the task of text typing within such a system has been already considered in Dasher Project by Inference Group. Unfortunately, current implementations of this idea are not comfortable and not easy to be ported for the Maemo platform, and have proof-of-concept nature. That's why a new implementation of it which would be based on OpenGL for output (available in the upcoming Fremantle distribution of Maemo as OpenGL ES, OpenGL for Embedded Systems) is being planned, firstly as a GLUT-based application for its prototype. Later, the Dasher OpenGL implementation is supposed to provide graphical user interface in general using the idea of dontclick.it mentioned above and be used as the desktop environment in a Maemo-like mobile device.

Such a project which can be annotated as "integration of OpenML objects and dontclick.it's idea into Web" can be regarded as the opposite of the Uniweb project from the viewpoint of input devices to be used.

Oct. 24th, 2008

Pyramid Head

Нетбуки на китайских процессорах

На сайте 3DNews прошла новость о дешевом легковесном ноутбуке с низким энергопотреблением на основе архитектуры MIPS, с системой механической "доводки" при закрытии крышки-экрана. Примечательно также, что одной из операционных систем, поставляемых с данным персональным компьютером, предлагается Debian, которая является одним из старейших дистрибутивов GNU/Linux, поддерживаемых для наибольшего среди открытых, свободных и бесплатных проектов количества платформ при наличии одного из самых мощных репозитариев программного обеспечения. Таким образом некоторые задачи проекта Uniweb уже выполнены в анонсированном так называемом нетбуке:

http://www.3dnews.ru/news/netbuki_na_kitaiskih_protsessorah/

Текст новости )

Gdium

Oct. 13th, 2008

Pyramid Head

Предварительное описание системы Uniweb

Подготовлен плоский граф с нагрузкой в узлах, двумя видами связей (пунктирные линии обозначают нежелательные или временные связи), а также нумерацией в геометрическом порядке сверху вниз компонентов, с которыми связаны проблемы и задачи проекта Uniweb, описываемые ниже:



Jun. 9th, 2008

Pyramid Head

Отсутствие поддержки графики и звука в "qemu-system-mips"

После установки Debian GNU/Linux Etch на эмулируемую систему MIPS Malta 24K были рассмотрены почти все гипотезы относительно настройки графики и звука в "qemu-system-mips".

Устройство Cirrus Logic GD5446 PCI VGA, эмулируемое Qemu версии 0.9.1, которая доступна в репозитарии Ubuntu, отказалось работать. Позже было замечено упоминание об опции "-std-vga" в документации к эмулятору:

Simulate a standard VGA card with Bochs VBE extensions (default is Cirrus Logic GD5446 PCI VGA). If your guest OS supports the VESA 2.0 VBE extensions (e.g. Windows XP) and if you want to use high resolution modes (>= 1280x1024x16) then you should use this option.

Но при перезагрузке и с этой опцией симптомы остаются: окно графической версии эмулятора сжимается до размера в несколько пикселей, а команда "lspci" внутри гостевой ОС по-прежнему выдает информацию о "Cirrus Logic". Оказалось, что данная опция влияет лишь на некоторые из эмулируемых Qemu платформ. К примеру, в случае "qemu-system-x86_64" команда "lspci" показала отличное от "GD5446" устройство.

Далее, обнаружилась опция "-soundhw":

Enable audio and selected sound hardware. Use ? to print all available sound hardware.

К сожалению, для большинства архитектур, эмулируемых Qemu, звуковые карты не поддерживаются. И MIPS оказался в большинстве: команда "qemu-system-mips -soundhw ?" показывает пустой список.

Таким образом, можно считать поставленную задачу с настройкой графики и звука в "qemu-system-mips" решенной отрицательно. Тем не менее, ее можно решить положительно вне "qemu-system-mips". По этому поводу возникли следующие два соображения:

1) Qemu, судя по документации, может присоединять USB-устройства хостовой машины к гостевой, а значит, теоретически возможно сэмулировать USB-устройства, дающие на выходе видеосигнал и звук;

2) можно вернуться к поиску не слишком дорогой, как Malta Development Board (порядка нескольких тысяч долларов, как стало ясно из переписки с MIPS Technologies), системы на основе MIPS и попытаться ее приобрести для экспериментов.

May. 23rd, 2008

Pyramid Head

Измененный плоский граф для "Uniweb"

В плоском направленном графе с нагрузкой в узлах, показывающем связи некоторых компьютерных технологий, выбрано подмножество, которое позже было немного модифицировано. Таким образом удалось выделить предпочтительные для системы "Uniweb" стандарты и протоколы:

Изображение измененного плоского графа

Следует учесть, что стандарт USB неявно "втягивает" в рассмотрение огромное множество зарегистрированных USB-устройств, а POSIX, в свою очередь, неявно включает, в частности, стандарт C99, ссылаясь на него при определении системных интерфейсов, а также в спецификации команды "c99" (компилятора языка Си).

Тем не менее, прототип PyGX, как и запланировано в параметрах проекта, может быть написан на языке Python и использовать библиотеку "GTK+" для реализации графического интерфейса.

Исходный ODG-файл доступен по следующему адресу:

http://pygx.sourceforge.net/uniweb.odg

May. 20th, 2008

Pyramid Head

Плоский граф некоторых компьютерных технологий

С помощью программы "OpenOffice Drawing" подготовлена следующая схема, плоский направленный граф с нагрузкой в узлах. Нагрузка представляет собой краткое неформальное название метода, программы, протокола или стандарта. Также нагрузка в узлах содержит один из трех цветов, обозначающий субъективную оценку технологии: белый - предпочтительна поддержка идей, лежащих в основе технологии, при рассмотрении возможности построения системы с рабочим названием "Uniweb" (перенос сервисов так называемого "Web 2.0" в пользовательскую среду с клавиатурой, но без мыши и других устройств ввода 2D-информации), светло-серый - поддержка под вопросом, темно-серый - поддержка не предпочтительна.

Изображение плоского графа

Исходный ODG-файл (OpenDocument Graphics) доступен по следующему адресу:

http://pygx.sourceforge.net/standard.odg

Apr. 29th, 2008

Pyramid Head

Диалог о POSIX и PyGX

Состоялся очередной диалог с [info]nivanych, на этот раз - о стандарте POSIX как о модели универсальной операционной системы, а также о целях проекта PyGX и рассмотрения в его рамках возможности переноса сервисов так называемого "Web 2.0" в пользовательскую среду с клавиатурой, но без мыши и других устройств ввода 2D-информации:

Лог )

Apr. 24th, 2008

Pyramid Head

"Явная" эта-редукция и дальнейшие планы

После довольно продолжительного поиска и изучения литературы по "Explicit Substitions" и "Term Rewriting Systems" первой из найденных статей по эта-редукции к контексте "Explicit Substitutions" стала "Eta-Conversion for the Languages of Explicit Substitutions" (Therese Hardin). К сожалению, в ней не предлагается система, четко описывающая процесс вычисления. Поэтому дальнейший поиск был сосредоточен именно на TRS с эта-редукцией.

Позже была найдена статья "An explicit Eta rewrite rule" (Daniel Briaud), дополняющая вариант лямбда-ипсилон теории "Explicit Substitutions" правилом Eta, описываемым с помощью нескольких "Rewrite rules". Получаемая в результате теория лямбда-ипсилон-эта является TRS с конечным набором правил. Однако, для реализации в виде абстрактной машины эта теория не готова из-за того, что нормальная форма в ней не совпадает с бета-эта-нормальной и не сводится к таковой. Например, следующее выражение, уже находившееся в нормальной форме, редуцируется с помощью правил системы к выражению, по которому восстановить бета-эта-нормальную форму терма уже не представляется возможным:

\((1 1) 1) -Eta-> (1 1)[_|_/] -> 1[_|_/] 1[_|_/] -> _|_ _|_.

Быть может, стоит вернуться к рассмотрению "Optimal Lambda Reduction" и попытаться изменить систему обозначений так, чтобы она дала возможность реализовывать бета-эта-редукцию в реальном времени, то есть выполнять один шаг упрощения выражения за заранее гарантированный отрезок времени, не зависящий от самого выражения. При достижении такой цели можно было бы построить абстрактную машину для сильной редукции и рассмотреть ее свойства, в частности ее эффективность в каком-либо смысле.

В случае доказанной неэффективности машин такого класса, можно, наконец, заняться развитием и продвижением PyGX, Python, Launchpad, Bazaar, Ubuntu и MIPS, а также рассмотреть возможность переноса сервисов так называемого "Web 2.0" в пользовательскую среду с клавиатурой, но без мыши и других устройств ввода 2D-информации.

Mar. 31st, 2008

Pyramid Head

MIPS, сильная редукция и дальнейшие планы

Системы, основанные на MIPS, имеют очень лаконичный и простой ассемблер и могли бы быть по праву названы идеальными императивными вычислительными системами. Как известно, на основе MIPS работает множество бытовой аппаратуры, сетевое оборудование, а также игровые приставки Playstation и Playstation 2, и такие системы отличаются низким энергопотреблением и отличной масштабируемостью. К сожалению, корпорации Intel и Microsoft сделали достаточно, чтобы практически полностью вытеснить MIPS с рынка персональных компьютеров.

Ощущения подсказывают, что идеальной функциональной вычислительной системой может стать лишь машина для сильной редукции выражений - под сильной редукцией здесь и далее понимается бета-эта-редукция в бестиповом лямбда-исчислении или ее замена для другой эквивалентной теории (например, сильная редукция в комбинаторной логике). Сильная редукция при выборе подходящей нормализующей стратегии дает, по сути, алгоритм для определения, являются ли два вычислимых выражения одной и той же функцией или нет: сильная нормальная форма - бета-эта-нормальная форма в лямбда-исчислении или ее замена для другой эквивалентной теории - у эктенсионально равных термов совпадает, разумеется, с точностью до альфа-конверсии в лямбда-исчислении. Большинство существующих систем, основанных на слабой редукции в комбинаторной логике или бета-редукции в лямбда-исчислении, выражаясь языком школьных учителей математики, "не доводят решение до ответа", оставляя нечто вроде "арксинуса от синуса" неупрощенным.

К сожалению, в комбинаторной логике сильная редукция требует бесконечного набора аксиом, поэтому создание машины для сильной редукции на основе комбинаторной логики теряет смысл - гораздо легче при решении этой задачи обратиться к обычному лямбда-исчислению. С другой стороны, прямое примененение эта-конверсии в машинах для редукции графов является крайне неэффективным, так как требует прохода по дереву для проверки на свободное вхождение переменной в подвыражение. В свою очередь, попытки применить подход "Micro Lambda Calculus" (который, кстати, показал себя особенно неэффективным, по крайней мере, при выборе стратегии Gyorgy Revesz) к эта-редукции пока не увенчались успехом.

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