среда, 14 июля 2010 г.

Самоорганизующаяся сеть связи

Я джва года хочу такую вещь: Австралийцы освободили мобильники от сети

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

понедельник, 5 июля 2010 г.

Программы на Tcl/Tk

Сегодня захотелось поискать что интересного из программ написано с испольованием Tcl и Tk.

Для получения предварительной заготовки для поиска воспользовался следующей командой:
apt-rdepends -r tk tcl | grep -v "  " | xargs -n1 apt-cache show | grep -E "^Description:|^Package:" | cut -d" " -f2-

После компоновки результатов и исправления глюков в списке, получилось следующее:
tk - The Tk toolkit for Tcl and X11 (default version) - run-time files
bwidget - A set of extension widgets for Tcl/Tk
ferret - CASE tool for data model editing
password-gorilla - a cross-platform password manager
setools - инструменты анализа стратегий защиты SELinux
survex-svxedit - survey data editor for Survex
therion - Cave surveying - 2D and 3D drawing software
therion-viewer - Cave surveying - 3D viewer for therion models
tkabber - GUI client for XMPP (Jabber) instant messaging protocol
tkabber-plugins - standard plugins for Tkabber, an XMPP (Jabber) client
libtk-img - Extended image format support for Tcl/Tk (runtime)
libtk-img-dev - Extended image format support for Tcl/Tk (development files)
saods9 - image display tool for astronomy
libtktable2.9 - Table extension for Tcl/Tk
openverse - A graphical chat client/server written in tcl/tk
tk-dev - The Tk toolkit for Tcl and X11 (default version) - development files
libace-tkreactor-dev - ACE-GUI reactor integration for Tk development files
libtao-tkresource-dev - TAO-GUI reactor integration for Tk development files
tk-tile - A themed widget set provider library for Tk
tkcon - Enhanced interactive console for developing in Tcl
tklib - the standard Tk Library
tcl - The Tool Command Language (default version) - run-time files
cdrbq - graphical cd burning frontend
cdrtoaster - Dummy package for cdrbq (rename of package)
libmemchan-tcl - Tcl extension for in-memory channels - runtime library
libmemchan-tcl-dev - Tcl extension for in-memory channels - development files
libsnack2 - Sound extension to Tcl/Tk and Python/Tkinter - Tcl/Tk library
amsn - MSN интернет-пейджер написанный на TCL
libsnack2-dev - Sound extension to Tcl/Tk and Python/Tkinter - development files
python-tksnack - Sound extension to Tcl/Tk and Python/Tkinter - Python library
wavesurfer - Sound Manipulation Program
libsnack2-alsa - Sound extension to Tcl/Tk and Python/Tkinter - Tcl/Tk library
libtrf-tcl - Tcl data transformations - runtime library
libtrf-tcl-dev - Tcl data transformations - development files
libudp-tcl - UDP sockets for Tcl
mysqltcl - Interface to the MySQL database for the Tcl language
tcl-dev - The Tool Command Language (default version) - development files
aolserver4-dev - AOL Web Server 4 (Development Tools)
tcl-tls - the TLS OpenSSL extension to Tcl
tclcurl - Tcl bindings to libcurl
tclex - A lexical analyzer generator for Tcl
transcriber - Transcribe speech data using an integrated editor
tcllib - the Standard Tcl Library
gpsmanshp - A Tcl interface to shapelib
xastir - X Amateur Station Tracking and Information Reporting
tclxml - Tcl library for XML parsing
tkremind - Tk GUI interface to remind
tclodbc - The ODBC extension to Tcl
tclreadline - GNU Readline Extension for Tcl/Tk
tclthread - Tcl extension implementing script level access to Tcl threading capabilities
tclvfs - Exposes Tcl 8.4's virtual filesystem C API to the Tcl script level
tclxapian - Xapian search engine interface for Tcl
tdom - A fast XML/DOM/XPath/XSLT extension for Tcl written in C
tdom-dev - A fast XML/DOM/XPath/XSLT extension for Tcl written in C - development files
xotcl - Extended Object Tcl (XOTcl): Object orientation for Tcl - shared library
aolserver4-xotcl - Extended Object Tcl (XOTcl): Object orientation for AOLServer - module
xotcl-dev - Extended Object Tcl (XOTcl): Object orientation for Tcl - development files
xotcl-shells - Extended Object Tcl (XOTcl): Object orientation for Tcl - shells

Из всего этого списка меня заинтересовали следующие программы:

1. ferret - программа для рисования UML-диаграмм. Привожу скриншоты.

Задаём настройки проекта:

Создаём таблицы с описанием полей, указываем взаимосвязи:

Смотрим на UML-схему для распечатки:

Генерируем схему БД для MySQL:

2. password-gorilla - программа для хранения паролей. В программе проявился всё тот же глюк со шрифтами, потому это убожество даже снимать не стал. Да и вообще, идея хранения паролей в одной программе мне кажется не особо привлекательной.

3. survex-svxedit - какая-то программа для рисования карт пещер. Спелеологией я не увлекаюсь, а потому программа меня не заинтересовала.

4. therion - похоже, что это то же самое, но здесь карты можно смотреть в объёме. При запуске программа ругнулась на отсутствие программы cavern. Дальше смотреть не стал, за отсутствием интереса к картам пещер.

5. tkabber - уже смотрел.

6. cdrbq и cdrtoaster - два брата-близнеца, программа для записи CD-дисков. Запись DVD не поддерживает, интерфейс прост как 5 копеек. Не заинтересовало.

7. amsn - программа обмена мгновенными сообщениями по Microsoft'овскому протоколу MSN. Заинтересовало. Попробовал зарегистрироваться в MSN - не получилось, разбираться лень. Программа не интересна.

8. wavesurfer - аудиоредактор. Обладал всё тем же шрифтовым глюком. Не интересно.

9. tkremind - календарь-напоминалка. Выглядит так:


Итог - ничего интересного. Пожалуй для любой из интересных программ можно найти более интересные и удобные аналоги, написанные на чём-нибудь вроде Python и GTK или C++ и Qt.

воскресенье, 4 июля 2010 г.

Красота

Вот тут Красота Витус Вагенр задаётся вопросом, чего же такого некрасивого в Tk? И приводит следующий сравнительный рисунок разных тулкитов:



Отвечаю. Вот что:



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

P.S. А вот и решение нашлось: Нормальный русский шрифт в Tk-приложениях

Ставим Tk версии 8.5:
# apt-get install tk8.5

Выбираем Wish версии 8.5 в качестве используемого по умолчанию:
update-alternatives --config wish

После этого tkabber выглядит значительно лучше: