LINUX.ORG.RU

Сообщения unDEFER

 

Вышел chuck-1.4.0.1

Вышел минорный релиз Chuck - языка программирования музыки и звуков: http://chuck.stanford.edu/

Язык интересный, и я использовал его для написания звуков для своей игры. Поэтому даже звуки у меня Open Source. Новостей о нём на LOR ни разу не было, поэтому очень хотелось поделиться, но во-первых релиз минор-минор (изменилось четвёртое число в версии), а во-вторых не осилил перевести список изменений.. Верней не перевести, а понять что я там напереводил - как частота дискретизации зависит от числа каналов?

Поэтому, вот. Пишу здесь.

 , ,

unDEFER ()

Суммы бесконечных рядов

Здравствуйте!

Интересует тема бесконечных рядов:

1 + 2^k + 3^k + 4^k + 5^k + 6^k + 7^k + ...

Копал ли кто-нибудь эту тему глубже чем Риман со своей Дзета-функцией? Я имею в виду факт того что

1+1+1+1+1+1+1+...
0+1+1+1+1+1+1+...

Если вычесть второе из первого то со всей очевидность получаем 1.

Я потянул за эту ниточку и получил универсальную формулу от трёх переменных для этих рядов. Результат я считаю интересен. Т.к. здесь формулы вставлять нельзя, то приведу сразу ссылку на статью.

Если кто осилит этот материал, то милости прошу к обсуждению.

 , ,

unDEFER ()

Генетика

Привет всем!

Кто-нибудь рубит в генетике? Толкового вообще ничего не гуглится, а вопрос интересный.

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

Но какова минимальная единица наследуемой информации? Ген целиком или всё же нуклеотид? Если ген целиком, а генов в геноме человека 28000, то получается что т.к. все люди отличаются только 0,1% генома, речь идёт о 28 генах отличающих разных людей. А при наследовании речь идёт о 14 генах наследуемых от матери и 14 генах наследуемых от отца (остальные т.к. они одинаковые, от кого наследуются всё равно не разберёшь). Это так? Если так то получается что уже через 4 поколения (2^4 = 16 > 14) от предка ничего не остаётся. Или если наследуются отдельные нуклеотиды, а не гены целиком, то получается что что-то общее от предка остаётся и через 100 поколений, но его геном как бы «расплывается» по всему генеалогическому древу.

Далее вопрос про доминантные и рецессивные признаки. Нигде не нашёл ответа на простейший вопрос «почему некоторые особенности передаются через поколение?». Но кажется это выглядит так: Мы наследуем не один цвет глаз на самом деле, а сразу 2 цвета. Один из них оказывается доминантным и мы его видим, а другой - рецессивным и он как бы скрыт, но тоже может наследоваться. По этой схеме получается, что вероятность передачи цвета глаз от отца или матери - по 25%, от бабушек с дедушками - по 6,25% и т.д.

Наконец интересно, если тёмный цвет глаз - всегда доминантный признак, то из этого следует что если у родителя - светлый цвет глаз (т.е. он у него оказался доминантным), но есть же ещё рецессивный, который по видимому оказался ещё более светлым. Так вот значит ли это что в этом случае вероятность передачи светлого цвета глаз потомку уже не 25%, а все 50%?

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

Перемещено leave из talks

 ,

unDEFER ()

Как оптимизировать Docbook для мобильных?

Здравствуйте!

Вот, есть у меня сайт сгенерированный из docbook. Google на него ругается - мол, не оптимизирован для мобильных. Ну и правда - не оптимизирован.

Я искал и нашёл всего одно решение как docbook превратить в сайт для мобильных:

http://gihankarunarathne.github.io/DocBook-xsl-mobile/content/index.html

Но во-первых, это чудо так чувствительно к swipe'у влево и вправо что просто листать содержимое страниц становится невозможным. Плюс прокрутка часто просто залипает и перестаёт работать.

Во-вторых, мне совершенно не ясно какого чёрта оно на ant и java, когда xml в xml преобразуется легко по правилам описанным в xsl-файлах.

В-третьих, почему оно бешено и люто использует Javascript там где по-идее надо бы использовать .css?

И вот вопрос - если оптимизация для мобильных производится через css, неужели эти css-ки для docbook-сайтов до сих пор никем не написаны и не выложены в открытый доступ?

 ,

unDEFER ()

За роботами будущее?

Навеяно новостью про то как русский робот Фёдор стреляет из двух пистолетов.

Ну а правда ведь, за роботами будущее! Достаточно только создать робота, который по умолчанию ничего не будет уметь кроме азов математики, но легко обучаем всему. И тогда институт семьи, я думаю, резко пошатнётся - а что? в развитых странах женщины и так рожать ленятся, а тут - какая замена? пеленать не надо, дома оставить можно без проблем, карьере не мешает.. Красота.. И поговорить есть с кем и приготовит то, чему научишь и вообще обслужит как хочешь..

А потом появятся первые компании без единого человека в персонале. Услуги их будут очень дёшевы если не бесплатны..

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

Более совершенная, я думаю, форма жизни. А что? Им еды, воды не надо. Питаться они могут и от возобновляемых источников энергии. Да хоть даже от солнца - а что ему «поспать» пока солнца нету - никто не расстроится. Роботы будут без лишних эмоций всегда принимать разумные решения. Им не надо ни скорой, ни полиции. Ну может пожарные ещё нужны. Они не будут врать, им не нужно хлеба и зрелищ. Они не будут боятся тотальной слежки. Они точно будут знать, кто их создал, им не нужна вера. Они будут сосредоточенно выполнять одну задачу - занять как можно большую территорию во вселенной. А что им даже 1000 лет пролететь на корабле до пригодной для жизни планеты? Ведь все технологии, о каких только мечтает человечество для них доступны - бессмертие? - без проблем, клонирование (вместе со всеми знаниями)? - пожалуйста, телепортация - вообще без вопросов.

Да, они будут также «умирать», но по расписанию, просто потому что так надо, а не потому что жить не хочется. И никто не будет об этом жалеть. Может быть у них даже будут семьи.. Пола не будет, а семьи будут.. И они будут жить очень мирно и счастливо.. Без скандалов, взаимных упрёков, вообще без эмоций, просто будут вместе двигаться к общей цели - воспитанию нового потомства.. Причём и жизненный цикл робота может быть очень разумным — скажем, 10 лет обучение, когда он будет в семье отслуживших роботов, 40 лет работа, когда его домом станет производство, 10 лет воспитание потомства, когда домом для семьи может быть сама природа..

В общем хорошо будет роботам. Я за них, как за более совершенную форму жизни..

P.S. Linux тут при том, что первые роботы вполне вероятно будут иметь ОСью Linux :-)

 

unDEFER ()

Школьникам и студентам: помогу освоить программирование

Здравствуйте!

Внезапно осознал, что очень хотел бы делиться своим опытом в программировании.

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

Разумеется всё на Linux, если в университете требуется работа программы под Windows, помогу освоить кроссплатформенную разработку.

Всё совершенно безвозмездно, т.е. даром. Кому интересно прошу стучаться в почту: undefer _na_ gmail.com

 ,

unDEFER ()

[РЕШЕНО] rsync на ntfs: не копирует

Здравствуйте!

Пытаюсь копировать файлы с помощью rsync на файловую систему NTFS, смонтированную с опцией umask=0000. rsync ругается и файлы не создаёт. Думал может файлы попадут в --partial-dir=, но этого тоже не происходит:

$ rsync -avu --partial-dir=Camera3 Camera/PRG001/ Camera2
sending incremental file list
rsync: failed to set times on "/mnt/win-d/Camera2/.": Operation not permitted (1)
./
MOV001.MOD
MOV001.MOI
MOV002.MOD
MOV002.MOI
PRG001.PGI
rsync: mkstemp "/mnt/win-d/Camera2/.MOV001.MOD.vonluu" failed: Operation not permitted (1)
rsync: mkstemp "/mnt/win-d/Camera2/.MOV001.MOI.QoPSh6" failed: Operation not permitted (1)
rsync: mkstemp "/mnt/win-d/Camera2/.MOV002.MOD.5zsu5H" failed: Operation not permitted (1)
rsync: mkstemp "/mnt/win-d/Camera2/.MOV002.MOI.YniqZj" failed: Operation not permitted (1)
rsync: mkstemp "/mnt/win-d/Camera2/.PRG001.PGI.f4GqTV" failed: Operation not permitted (1)

sent 17,669,953 bytes  received 675 bytes  35,341,256.00 bytes/sec
total size is 17,665,297  speedup is 1.00
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.1]

Пишет что передал 17,5 Мб, но куда они все пропали? Если ntfs примонтировать без umask, то копирование проходит и даже timestamp'ы копируются. Если попробовать без опции -a, с опцией -r, копирование так же проходит (без сохранения timestamp'ов). По ссылке полный strace:

https://drive.google.com/open?id=0ByWS85CFyRGwRC1BZWwybDZadDA

И в нём я не вижу ни намёка на попытку создания нового файла.

Файлы я, конечно, уже давно скопировал с помощью cp, но привязался я к этой проблемы вовсе не из-за этого. Дело в том, что я пишу файловый менеджер (не ещё один Explorer-подобный или Norton-подобный, а действительно уникальный, ссылка на проект в профиле) и рассчитываю использовать rsync для копирования файлов. Это даст интересные плюшки как лёгкое докопирование и лёгкое обновление backup'а. И понятно, что файловый менеджер должен нормально отрабатывать копирование и на ntfs и на что угодно.

Когда пытаюсь делать mkstemp ручками никакой ошибки не происходит, временный файл создаётся. А мне нужно способ как кратчайшим путём узнать что rsync -a не пройдёт, и переключится на rsync -r. Есть идеи?

 ,

unDEFER ()

BIOS не видит вариантов загрузки после установки Linux

Здравствуйте!

Рассказываю что делал попорядку.

Купил ноутбук ASUS R540SC. Хотел сделать на нём билд-ферму. ОС - Windows 10. Понятное дело, что нужно делать - накатить Linux.

Linux - странное дело грузиться вчера не хотел (останавливался на чёрном экране), перепробовал OpenSuse, CentOS, Ubuntu. А сегодня Ubuntu почему-то завёлся.

Ладно, устанавливаем Ubuntu. Он говорит - для установки сторонних драйверов видеокарты (а мне для nvidia надо бы проприетарные драйвера) надо бы отключить Secure boot, задайте пароль, бла-бла-бла..

Установить рядом с Windows или вместо? Выбираем рядом.

После установки, первая загрузка - входим в BIOS, видим две одинаковых опции загрузки Ubuntu и одну - Windows. Пока нас всё устраивает, грузим дальше. Действительно предлагает отключить Secure Boot для чего спрашивает то 3-й, то 10-й символ из пароля. Получилось, вроде отключили, теперь пишет, мол «booting in insecure mode». Далее, проходим grub, удивляемся что в grub нет опции загрузить Windows. Пытаемся загрузится, Linux не грузится, кажет чёрный экран.

Перегружаемся, вторая загрузка - компьютер входит в BIOS, хоть я его и не просил и внимание - где мои три опции загрузки? Нет ни одной!

С DVD по-прежнему грузится, пробовал boot-repair. Он просил создать bios_grub (если не путаю название) раздел больше мегабайта. Я его создал, прошёл все менюшки, вбивал в консоль все команды которые он просил. Но всё тщетно. Ничего кроме BIOS ноутбук показывать отказывается.

boot-repair создал отчёт, его загрузил на Google-Drive: https://drive.google.com/file/d/0ByWS85CFyRGwWDJPaGV1d3U1cTA/view?usp=sharing

Помогите! Спасите мою билд-ферму!

 , , , ,

unDEFER ()

Видео сервер, хранящий данные в БД

Здравствуйте! Хочется странного: видео сервер, который хранит данные о 3D-объектах в БД типа BerkeleyDB. Т.е. видео сервер, отдельный процесс, отслеживает изменения в БД и выводит их на экран, а другие процессы, чтобы что-то отобразить на экране меняют БД.

Причём данные об объектах упакованы в дерево вроде R-деревьев, только 3D, чтобы можно было хранить поистине огромные сцены, но лёгким запросом выделялись бы только объекты близкие к камере.

Особой фичей такого видео сервера должно стать создание «сценшотов». Это как скриншот, но копирует всю БД сцены и там можно посмотреть не только текущее положение камеры, но и обойти кругом всю сцену с замершими объектами.

Может уже есть такое? Или такого нет по какой-то элементарной причине, что это будет больно медленно. Но мне почему-то кажется, что может и быстро быть на современных-то машинах. Мечтатель?

 , , ,

unDEFER ()

Как сервер «подыхает» под нагрузкой?

Здравствуйте!

Имеется сервер c mysql/apache. И я бы отправил этот вопрос в web-development, если бы пользователи сидели за браузером, но они - за телеприставкой. Да и не в вебе суть.

Суть в том, что когда суммарная нагрузка на ядра процессора превышает 100%, некоторые пользователи сервиса начинают иметь проблемы - что-то у них не прогружается или прогружается медленно.

Ключевое слово - «некоторые». Вопрос в том - как такое возможно? Я всегда считал, что если сервер начинает проблемы с загрузкой, то их имеют все пользователи по чу-чуть, а тут некоторые имеют много проблем, а другие не имеют их вовсе. При этом в логах никаких ошибок. Хотя при тестовой стресс-загрузке сервера «Too many connections» к mysql сыпятся только в путь.

Mysql недавно был обновлён до 5.5 и переведён на InnoDB чтобы использовать все ядра, но это никак не помогло. Так как на самом деле должны выглядеть симптомы перегрузки сервера? И если они должны выглядеть как я себе представляю, то почему могут быть проблемы вроде тех что я имею?

 , , ,

unDEFER ()

Отладка в embedded linux

Здравствуйте! Есть embedded linux, и после изменения в voip-драйвере (обновления proslic-api) при запуске утилиты для voip-телефонии (pjsua) ядро падает следующим образом:

[CPU 0 Unable to handle kernel paging request at virtual address 00000000
, epc == 00000000, ra == 802b40b0
79Oops[#1]:
Cpu 0
$ 0   : 00000000 7f856db0 8055a7e0 00000001
$ 4   : 80f05798 7f856db0 00000000 00000000
$ 8   : 006e46cc 83f73df4 0064e260 006be044
$12   : c14e4545 00000000 00000000 00000000
$16   : 7f856d9c 7f856dbc 001408b2 00000003
$20   : 006be044 00000000 00000000 2ab2df80
$24   : 00000000 00000000
$28   : 83f70000 83f73dc8 7f856d80 802b40b0
Hi    : 00000000
Lo    : 00000000
epc   : 00000000 (null)
    Not tainted
ra    : 802b40b0 0x802b40b0
Status: 90000404    IEp
Cause : 00000008
BadVA : 00000000
PrId  : 0000dc02 (<NULL>)
Process pjsua-mips-unkn (pid: 969, threadinfo=83f70000, task=838bbc70, tls=00000
000)
Stack : 004ea3a8 838bbc70 83f73eb8 00000000 83e3ec94 83f7c80c 00000000 0000000c
        0064e260 006be044 006e46cc 00000008 00000007 83e6f460 7f856d9c 8007d574
        00000000 0000000c 90000401 801420bc 83a17d80 00030002 00000000 00000000
        80468cf0 00000001 00000002 00000004 7f856de8 8004a85c 000007d0 00000004
        53c016b0 00000000 8046788c 804b3c04 804b3c04 00000008 004003f0 83e6f460
        ...
Call Trace:[<8007d574>] 0x8007d574
[<801420bc>] 0x801420bc
[<8004a85c>] 0x8004a85c
[<8007d620>] 0x8007d620
[<8001ba44>] 0x8001ba44
[<80001c30>] 0x80001c30
[<8000040c>] 0x8000040c
[<800a0088>] 0x800a0088


Code: 00000000  00000000  00000000 <401a4000> 3c1b8059  8f7be000  001ad582  001a
d080  037ad821

Далее следует перезагрузка.

При этом расстановка отладочных сообщений показала, что падает оно ещё до того как voip начинает инициализироваться. Точнее падает на инициализации библиотеки для работы с flash-памятью. Аналогичная инициализация в других утилитах к падению ядра не приводит.

Смущает, что падение часто происходит так, что в консоль не успевает польностью вывестись очередное отладочное сообщение. Пробовал fflush(stdout), но не помогает.

Хотелось бы понять где же происходит ошибка, но Call trace к сожалению весь в циферках. Версию pjsua с отладочной информацией на устройство к сожалению поместить не представляется возможным — она 15 Мб. А addr2line не помогает.

Вопросы:

1) Если ошибка в части кода без системных вызовов (как следует из расстановки отладочных сообщений) почему это может приводить к падению ядра, а не одного приложения?

2) Если ошибка всё же в ядре, и просто что-то не успевает вывестись, как же гарантированно вывести всё, если не fflush'ом?

unDEFER ()

Zod 2011-04-25

Тихо и не заметно 3 дня назад вышла абсолютно играбельная версия игры Zod.

Оригинальная игра от Bitmap Brothers Z явилась прародителем многих игр в жанре RTS. В отличии от многих других в ней нет ресурсов, которые надо собирать. В ней есть только заводы и территории которые надо захватывать. И единственным ресурсом, который становится важным здесь - является время.

Ремейк Z - Zod не включает в себя от оригинала разве, что видеоролики, которые несомненно доставляли немало радости игрокам 90-х годов. В остальном же - графика, музыкальное и звуковое сопровождение в точности повторяют свой образец. Несмотря на то, что разработчики в первую очередь сосредоточились на многопользовательской игре, одиночный режим в ней также возможен, причём переход к следующему уровню осуществляется даже, если уровень был проигран.

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

Версия 2011-04-25 Zod не только примечательна тем, что это вторая версия игры скомпилированная для Linux, но и тем что наконец разработчики конвертировали все 35 карт оригинала (для двух игроков). Кроме этого в комплекте имеется 10 карт - для трёх игроков, ещё 10 - для четырёх и 1 - для восьми. При желании вы можете редактировать существующие карты или создавать новые при помощи прилагающегося редактора карт.

По ссылке ниже можно скачать исходные коды игры для Linux с вложенным 32-хбитным бинарником (проверено на Ubuntu 10.10). Для запуска лучше использовать zod_launcher.

Скачать

Перемещено maxcom из Игры

unDEFER ()

Обругайте Windows что ли..

Для сайта Всё - дерьмо! требуется знатная статья про недостатки Windows. Только ругать надо конкретную версию, желательно Windows 7.

Впрочем конкретные дистрибутивы Linux надо тоже обругать. Естественно последние версии.

Не поможете? Может ссылки на статьи покидаете? А можно просто свои «любимые» недостатки.. Естественно недостатки могут быть как «абсолютные», так и «в сравнении с..» (другой ОС или прерыдущей версией).

Верю в то, что здесь достаточно хорошо знают обе системы и уже натренированы во флеймах, поэтому обратился к Вам :-)

Заранее спасибо всем троллям и их кормящим, которые примут участие в дискуссии.

unDEFER ()

Можно ли вычислить трудоёмкость процесса (программы)?

Добрый день!
А можно ли как-нибудь вычислить в Linux трудоёмкость процесса (т.е. программы).
Как известно команда time позволяет замерить время потраченное системой на выполнение задачи (системное и пользовательское). Только, вот, запустив одну и ту же задачу несколько раз подряд числа (число секунд) получаются разные.
А хотелось бы каким-то образом получить для одной и той же задачи одно и тоже число (скажем тактов процессора) в любой момент времени.
Ещё лучше -- получить одно и тоже число для одного и того же бинарника запущенного на разных процессорах.
Вопрос -- возможно ли такое?

unDEFER ()

Дизайн FireFox на замену табов.

В новостях было сообщение о конкурсе "Придумай замену табов": http://www.linux.org.ru/view-message.jsp?msgid=3731499

Вот, мои эскизы и видео:
Эскизы (с подробным описанием): http://unde.sf.net/firefox-design
(внимание, "много букв")
Видео (MPEG-4): http://unde.sf.net/firefox-design.avi
Видео на YouTube (качество от пережатия к сожалению заметно упало): http://www.youtube.com/watch?gl=US&v=3chwSHi6AHc

Внимание, по ссылкам много "запаривших скришотов с LOR".

unDEFER ()

Счастье...

6 часов писал документ в OpenOffice.org
Всего было набрано (ну, по-большей, части методами copy&paste) 18 листов 12-м шрифтом, единичным интервалом. И как-то совсем не думал о сохранении.

Нет, никто не выключал свет, офис не упал.. но-таки в один прекрасный момент я взял, перепутал нужный мне документ с не нужным и начал закрывать его, и при вопросе "нужно ли сохранить?" ответил: "нет".

Когда я понял, что я наделал, у меня началась лёгкая истерика, т.к. как по открытии оказалось, что там осталось всего 4 страницы. Ни в /tmp, ни в ..openoffice.org2.0/ никаких следов от автосохранений не осталось..

Однако, делать было нечего, а писать с "нуля" (верней "с четырёх") никак не хотелось. Дистрибутив ALTLinux, в репозитории есть моя собственная разработка -- anyfs-tools (за что спасибо Виталию Липатову).

# apt-get install anyfs-tools
# anysurrect -b 4096 /dev/sdb1 -t archieve_ZIP sdb1.it

Часовое томительное ожидание для винта в 20 Гб...
# anyfuse sdb1.it /dev/sdb1 /mnt/1

Так нашлось не много не мало 734 zip-файла. Немного скриптовой магии, чтобы выделить среди них OpenOffice-документы:
# for i in *; do dd if=$i bs=1 count=100 2>/dev/null | grep -q "opendocument" && cp $i /mnt/sda15/undefer/RECOVER/$i.odt; done
$ cd /mnt/sda15/undefer/RECOVER/
Итого 399 документов..

Всё, конечно, openoffice'ом не просмотришь..
Делаем проще
$ mkdir RENAME
$ for i in inode_*; do cp $i RENAME/$i.zip; done
$ cd RENAME
$ sfupk * #(собственный скрипт позволяет распаковать всё одной командой)
$ cd UNPACKED

поиск по ключевому слову "радиац":
$ for i in */content.xml; do iconv -cf UTF8 $i | grep -q "радиац" && echo $i; done

Вывод -- три строки. Итого оказывается всего три документа.
Один -- теже 4 страницы.
Второй -- 18 страниц, версия с нехватающим одним абзацем.
Третий -- новейшая, без разве, что последних 10 минут работы.

И вот, тут наступает счастье!!!
6 часов работы восстановлено...
И так не впервой... Но в данном случае я совсем не был уверен что OpenOffice.org делает автосохранение в своём же родном формате, а не каком-либо промежуточном..
Вот так и живём..

unDEFER ()

Есть ли Человеческий DE?

Здравствуйте!
Вопрос обозначенный в заголовке пришёл мне на ум в ходе размышлений на тему чего не хватает нынешним DE для действительного человеческого удобства. К сожалению абсолютное большинство DE сейчас используют странную идеологию принятую в Windows, где все приложения выполняются в окнах, тем самым они сами становяться этими window'ами и по существу не отличаются от неё.
Конечно, появляются Tile WM, в которых организация работы в корне отличается от окошечного. Но проблема в том, что есть приложения (как Gimp), работу которых уже невозможно представить в них.
Идеи же, которые я изложу ниже, предлагают переработку (может быть не столь значительную) вообще всех (без исключения) приложений. Именно поэтому речь, конечно же, идёт не просто о WM, а о DE.
Также оговорюсь, что если когда-нибудь идеи "человеческого" DE будут воплощены в жизнь, то человек привыкший к оконным интерфейсам будет сперва скорее плеваться от него, но тем не менее я уверен, что уже на словах многие могут проникнуться его идеями. Человеку же, впервые севшему за компьютер, работа с ним будет, наверняка, удобней.

А начну я с трёх простых вопросов:
а) Почему неопытные пользователи ПК часто не знают куда они сохранили свой документ?
б) Почему хоть и хранение документов на рабочим столе "моветон", тем не менее многие пользователи (особенно из неопытных) этой возможностью пользуются?
в) Почему так популярны Tab'ы?

Ответ на первый вопрос вытекает из следующего житейского суждения:
В: Почему в жизни мы всегда знаем куда мы положили предмет, который только что держали в руках?
О: А потому, что в жизни мы всегда ложим его туда, где мы сами находимся. Потому что нельзя находиться в двух местах одновременно. Потому что мы всегда знаем, где находимся мы сами.

На второй же вопрос (под буквой б) можно ответить проще:
Потому, что это удобно! Потому что рабочий стол всегда под рукой, потому, что это первое, что мы видим на экране при загрузке. И когда мы ложим документ на рабочий стол, мы его точно не потеряем из виду. Это просто упрощает к нему доступ. Это делает возможным доступ к нему одним кликом.

Ответ в: На Tab'ах всегда удобно сгруппированы все нужные документы одного приложения с кратким его наименованием (без повторения названия самого приложения). Конечно, опытные пользователи могут добиться того же выделяя для одного приложения целый "Рабочий стол" когда их несколько. Но тем не менее табы часто проще закрывать чем окна.

Таким образом для решения этих проблем в "человеческом" DE предлагается:
1) Упразднить "рабочий стол". Как говорится: "нет рабочего стола, нет проблемы" :-)
2) Упразднить браузер каталогов как отдельное приложение.
3) "Рабочий стол" пусть будет теперь браузером каталогов.
4) Пусть он показывает содержимое не статично выбранной директории (~/.Desktop), а содержимое Текущей Директории (Current Directory). Даже в консоли есть Текущая Директория, поэтому там проблема (а) возникает гораздо реже.
5) Пусть все приложения сохраняют документы только в Текущую Директорию.
6) Пусть они вообще не спрашивают даже имени для сохранения, и тем более ни в коем случае пути.
7) Пусть каждый экземпляр приложения будет связан со своим документом. Тогда даже при закрытии можно анимировать его исчезновение, чтобы показать где находиться этот документ.
8) Пусть не будет кнопки свернуть, уменьшить размер. Пусть будет одна кнопка "закрыть" приложение.
9) Если приложение закрыто то документ должен быть записан на диск. Не нужно лишних вопросов о выходе.
10) Пусть DE решает пора ли приложению в действительности закрыться или ему ещё надо быть в памяти для ускорения повторного доступа к документу.

Естественно, все эти меры вызывают множество дополнительных вопросов.
В частности:
В: Несколько окон всё же полезно иногда иметь, когда требуется частично скопировать несколько строчек текста из одного документа в другой, или скопировать несколько файлов. Как же быть, если все приложения открываются только на полный экран?
О: В человечеком DE должны быть возможность разделить экран пополам или больше частей. В каждой части таким образом будет располагаться либо один открытый документ (одно приложение) либо тот же "рабочий стол", т.е. отображения Текущей Директории.
Что касается копирования/перемещения файлов (или чего либо ещё) то также должен быть реализован "карман" (по сути буфер обмена), в который можно что либо положить (либо положить копию), чтобы переместить. Человеку далёкому от компьютеров будет гораздо проще понять его суть, если содержимое "кармана" в отличии от буфера обмена будет визуализировано.


В: Если приложение не спрашивает имени для документа, то кто их будет спрашивать?
О: Для этого будет кнопка "создать пустой файл". Когда вы создали пустой файл, вы можете открыть его любым приложением (любым инструментом), которое и запишет в него новый документ. Вызвать же инструмент без привязки к файлу не должно быть возможным.

В: Как быть приложениям вроде браузеров, игр, консоли, которые не создают документов.
О: Замечание 7 будет касаться абсолютно всех приложений. Нет такого приложения, которому было бы не удобно использовать файл для хранения чего либо. Одним словосочетанием то, что они должны хранить в файлах можно назвать "сессией работы". Для консоли -- это история последних команд с их выводом, для браузера -- история последних посещений страниц, или теже открытые Tab'ы, для игры -- профиль игрока.

В: Что же насчёт Tab'ов? Почему в "человеческом" DE приложений их поддерживающих должно стать меньше?
О: Как говорилось выше, открывая документ мы вызываем ассоциированное с ним приложение и оно полностью закрывает "рабочий стол", который отображает Текущую Директорию. Но закрывать каждый раз документ, чтобы открыть другой, не очень удобно. Поэтому можно при этом "Текущую Директорию" оформить в виде тех же Tab'ов. Если вы грамотно складываете документы в директории по темам, то на Tab'ах у вас всегда будут ассоциированные с текущим документом подобные документы, доступ к ним значительно упроститься. Так, например, открыв любой файл проекта, на Tab'ах у Вас будут все другие файлы этого же проекта. Если хочется открыть в Tab'ах файлы из нескольких директорий, то пусть это будет возможно, но для каждой директории -- своя линейка Tab'ов.

В: Что насчёт идеи множества рабочих столов в "человеческом" DE?
О: Множество рабочих столов также может быть реализовано тут. На каждом рабочем столе может быть открыта своя "Текущая Директория" или свой документ со своими Tab'ми, соответствующими его "Текущей Директории".

Пожалуй пока, всё. Конечно, тут есть ещё над чем подумать и над чем поспорить, но в целом идея я думаю ясна. Она заключается в том, чтобы больше приблизить компьютерный мир к реальному, а потому более понятным и удобным..
Ведь, даже "рабочий стол" в подобном "человеческом" DE будет гораздо более похож на рабочий стол из реальности. На рабочий стол мы всегда ложим только нужные предметы для работы. И тут будет -- одна директория, для какой-то одной работы, и в ней будут лежать соответствующие файлы, т.е. директория и будет своеобразным "рабочим столом", рабочим пространством.
В связи с этим можно объяснить за одно, кому же удобно засорять свой рабочий стол документами в современных DE. Очевидно, всем тем, у кого за компьютером проходит не вся рабочая жизнь, у кого на нём храниться не десятки проектов, а только один, единственный -- например, работа над его рефератами в ВУЗ'е.

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

unDEFER ()

Новая услуга от Билайн?

На днях мне пришла SMS следующего содержания: "Я очень Люблю Тебя!И надеюсь, эта сила придаст уверенноjJ". Оборвалась она двумя непонятными символами Юникода, которые лучше как jJ я здесь не передам.. Но не в этом суть. Номер, с которого мне пришла SMS был мне совершенно не знаком.. Ну, ошиблись подумал я.. И забыл о ней до тех пор пока..

..На следующий день мне не пришла SMS точно такого же содержания, но уже не оборванная, и с известного мне номера, с номера моей любимой девушки. При встрече с девушкой состоялся примерно такой диалог:

- Ты мне SMS сегодня посылала?
- Да.
- А вчера?
- Да, но баланс был на нуле и система не дала послать SMS.
- Однако, она дошла и с чужого номера.
- Но мне не приходило уведомления о доставке.
- Правильно, подтверждение должно быть пришло на тот, другой номер.
- А деньги?
- Ну, и деньги, наверное, с того счёта снялись.

Новая услуга от Билайн: пошлите SMS с нулевым балансом и мы снимем деньги с кого-нибудь другого! :-)

>>>

unDEFER ()

100 Гб литературы для частотного анализа русского языка

Здравствуйте!
Взбрела мне тут в голову идея произвести по словный частотный анализ русского языка.
К счастью для этого имелся образ библиотеки Мошкова (4 Гб текстов).
Написал скрипт, который заносит информацию о частоте встреч пяти-словных фраз..
При этом оказалось, что ни одна пятисловная фраза вовсе не повторилась. Куда более интересный результат дал анализ 4-х словных фраз. 10 самых часто встречающихся 4-х словных выражений это:

1) В то время как
2) Дело в том что
3) Несмотря на то что
4) С тех пор как
5) В то же время
6) До тех пор пока
7) И в самом деле
8) До сих пор не
9) В том числе и
10) Одно и то же

Хе.. :-) Думаю такие результаты никого не удивили... В действительности, это самые общие выражения, которые могут применяться абсолютно во всех текстах самого разнообразного характера.

Однако, для получения более интересных результатов материала для анализа явно маловато. Слов, которые встретились в базе данных более 100 раз оказалось всего лишь 3362. Таким образом число встреч даже двусловных сочетаний не самых распространённых слов при таком раскладе в базе данных чаще всего окажется равным 1-2 штуки.
Надо проанализировать эдак раз в 100 поболее материала.

Вопрос в том где можно было бы набрать столько литературы на русском языке? И желательно в zip-архивах. Потому что 100 Гб мне явно не в жизни не выкачать.. А 10 Гб архивов мне кажется будет вполне достаточно..

>>>

unDEFER ()

bibtex и библиографическое описание электронных ресурсов

Здравствуйте!
Подскажите, если кто сталкивался, как проще оформлять в bibtex ссылки на электронные ресурсы по ГОСТ 7.82-2001?

Хорошие примеры всевозможных элементов списка литературы есть здесь:
http://lib.pomorsu.ru/elib/text/biblio/oformlenie_lit.htm

Вот пример оформления Internet-ресурса по ГОСТу оттуда:

История книги [Электронный ресурс]: учебник для вузов / ред. А.А.Говоров, Т.Г.Куприянова; Московский гос. ун-т печати, Лаборатория компьютеризации ФИДиКТ. - Электрон. текстовые дан. и граф. дан. - М.: Издательство МГУП "Мир книги", 1998. – 348 с.: цв. - Режим доступа: http://www.hi-edu.ru/e-books/HB/, свободный. - Электрон. версия печ. публикации.

В стилевых файлах gost71s.bst, gost71s.bst, gost780s.bst, gost780u.bst
электронные ресурсы к сожалению обойдены вниманием, стилевого файла вроде gost782.bst в интернет к сожалению не находится.

Кто как обходил эту проблему?

>>>

unDEFER ()

RSS подписка на новые темы