Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Oleg Tsymaenko
 Надежность, компактность, безопасность, продуманная архитектура,
 минимум кода, сложные вещи реализуются как набор утилит.

В дальнейшей переписке предлагаю называть эти критерии 
Alexey Pechnikov true UNIX way или сокращенно APTUW


-- 
Oleg Tsymaenko ts...@lafox.net TSYM1-UANIC


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Alexey Pechnikov
Hello!

On Thursday 07 January 2010 15:54:26 Oleg Tsymaenko wrote:
 К счастью мне даже после вашего поста кажется что mutt в отличии от
 kmail это UNIX way. И уж точно это _НЕ_ монстрообразная программа.
 
 Я не понял того что написано ниже. например почему использование в mutt
 своей системы шифрования вместо openssl это плохо и не по юниксовому. 
 
 Я вижу UNIX-way в первую очередь как много мелких узкоспециальных
 программ которые легко комбинировать во чтото сложное. Во вторую очередь
 это способ комбинации: каналы.
 
 теперь о том как я использовал mute: я использовал внешний текстовый
 редактор(vim), внешний просмотрщик(w3m), внешний шифровальщик(openssl),
 внешний проверщик орфографии(aspeel), внешнюю адресную книгу(abook),
 внешний spam-фильтр(spamassassin) и даже внешний доставщик
 почты(fetchmail). Плотно пользовался каналами. 
 
 (!) Вот такая сборка кубиков IMHO и есть UNIX way (!)

Вы серьезно _утверждаете_, что mutt состоит из компонентов, 
взаимодействующих через пайпы?

$ ldd `which mutt`
linux-gate.so.1 =  (0xb7769000)
libncursesw.so.5 = /lib/libncursesw.so.5 (0xb76fe000)
libgssapi_krb5.so.2 = /usr/lib/libgssapi_krb5.so.2 (0xb76d5000)
libkrb5.so.3 = /usr/lib/libkrb5.so.3 (0xb762d000)
libk5crypto.so.3 = /usr/lib/libk5crypto.so.3 (0xb7605000)
libcom_err.so.2 = /lib/libcom_err.so.2 (0xb7602000)
libgnutls.so.26 = /usr/lib/libgnutls.so.26 (0xb7565000)
libsasl2.so.2 = /usr/lib/libsasl2.so.2 (0xb754e000)
libgdbm.so.3 = /usr/lib/libgdbm.so.3 (0xb7548000)
libidn.so.11 = /usr/lib/libidn.so.11 (0xb7516000)
libc.so.6 = /lib/i686/cmov/libc.so.6 (0xb73cf000)
libdl.so.2 = /lib/i686/cmov/libdl.so.2 (0xb73cb000)
libkrb5support.so.0 = /usr/lib/libkrb5support.so.0 (0xb73c4000)
libkeyutils.so.1 = /lib/libkeyutils.so.1 (0xb73c1000)
libresolv.so.2 = /lib/i686/cmov/libresolv.so.2 (0xb73ab000)
libpthread.so.0 = /lib/i686/cmov/libpthread.so.0 (0xb7392000)
/lib/ld-linux.so.2 (0xb776a000)
libtasn1.so.3 = /usr/lib/libtasn1.so.3 (0xb7382000)
libgpg-error.so.0 = /usr/lib/libgpg-error.so.0 (0xb737e000)
libz.so.1 = /usr/lib/libz.so.1 (0xb7369000)
libgcrypt.so.11 = /usr/lib/libgcrypt.so.11 (0xb72f4000)

Для сравнения:
$ ldd /usr/sbin/qmail-smtpd
linux-gate.so.1 =  (0xb78c5000)
libc.so.6 = /lib/i686/cmov/libc.so.6 (0xb7757000)
/lib/ld-linux.so.2 (0xb78c6000)

И далее:
ve...@veter-laptop:/dev$ ls -lh `which mutt`|awk '{print $5}'
723K
$ ls -lh /usr/sbin/qmail-smtpd|awk '{print $5}'
32K

Посчитаем: 723K/32K=22. Факты вещь упрямая, mutt еще какой монстр.
Note: надо же ухитриться программу с десятками зависимостей причислить
к unix way...

 теперь о postgre: postgre я выбрал как UNIX way изза его модульности и
 расширяемости. И ничего плохого в модуле поддержки XML не вижу. Это
 кстати тоже UNIX way - человеко читамемые файлы (!!!) 

Покажите того человека, для кого они читаемые. Более того, они и для
машинной обработки неудобны. Unix way - это plain text. И замена 
текстовых конфигов на xml приводит только к росту сложности программ
(нужен дополнительный парсер) и увеличению числа ошибок в них.

 и в полнотекстном
 поиске ничего плохого не вижу. я его долго ждал. Да и как это отразилось
 на  качестве - я не понимаю.

В ядре СУБД? Так, что для включения этого самого поиска была 
модифицирована треть всего кода системы (см. примечания к релизу)?
Вас обманули, не этого вы ждали.

 Да и о фичах... у меня щас две версии PG
 крутятся: 7.4 и 8.1 и ОЧЕНЬ хорошо что разработчики не спешат в каждой
 версии кардинально трогать ядро. 8.4 я под нагрузкой не щупал.

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

Что касается тестов производительности, так и вовсе ситуация удручающая:
http://geomapx.blogspot.com/search/label/PostgreSQL
Это и синтетические тесты, и на реальных задачах. Есть еще целая охапка 
проблем, о которых я здесь не упоминаю, т.к. там и тестировать нечего - 
например, постгрес при обращении к view обсчитывает все поля возвращаемых
записей, включая невыбранные в запросе! Как следствие, view в постгресе - не
работают, поскольку их эффективность на реальных задачах стремится к нулю.

Best regards, Alexey Pechnikov.
http://pechnikov.tel/


Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Oleg Tsymaenko
В Чтв, 07/01/2010 в 18:37 +0300, Alexey Pechnikov пишет:
 Hello!
 
 On Thursday 07 January 2010 15:54:26 Oleg Tsymaenko wrote:
  К счастью мне даже после вашего поста кажется что mutt в отличии от
  kmail это UNIX way. И уж точно это _НЕ_ монстрообразная программа.
  
  Я не понял того что написано ниже. например почему использование в mutt
  своей системы шифрования вместо openssl это плохо и не по юниксовому. 
  
  Я вижу UNIX-way в первую очередь как много мелких узкоспециальных
  программ которые легко комбинировать во чтото сложное. Во вторую очередь
  это способ комбинации: каналы.
  
  теперь о том как я использовал mute: я использовал внешний текстовый
  редактор(vim), внешний просмотрщик(w3m), внешний шифровальщик(openssl),
  внешний проверщик орфографии(aspeel), внешнюю адресную книгу(abook),
  внешний spam-фильтр(spamassassin) и даже внешний доставщик
  почты(fetchmail). Плотно пользовался каналами. 
  
  (!) Вот такая сборка кубиков IMHO и есть UNIX way (!)

 Вы серьезно _утверждаете_, что mutt состоит из компонентов, 
 взаимодействующих через пайпы?

ага!!! Именно об этом я и писал выше. Не вижу никакой связи ldd и
UNIX :)


 $ ldd `which mutt`
   linux-gate.so.1 =  (0xb7769000)
   libncursesw.so.5 = /lib/libncursesw.so.5 (0xb76fe000)
   libgssapi_krb5.so.2 = /usr/lib/libgssapi_krb5.so.2 (0xb76d5000)
   libkrb5.so.3 = /usr/lib/libkrb5.so.3 (0xb762d000)
   libk5crypto.so.3 = /usr/lib/libk5crypto.so.3 (0xb7605000)
   libcom_err.so.2 = /lib/libcom_err.so.2 (0xb7602000)
   libgnutls.so.26 = /usr/lib/libgnutls.so.26 (0xb7565000)
   libsasl2.so.2 = /usr/lib/libsasl2.so.2 (0xb754e000)
   libgdbm.so.3 = /usr/lib/libgdbm.so.3 (0xb7548000)
   libidn.so.11 = /usr/lib/libidn.so.11 (0xb7516000)
   libc.so.6 = /lib/i686/cmov/libc.so.6 (0xb73cf000)
   libdl.so.2 = /lib/i686/cmov/libdl.so.2 (0xb73cb000)
   libkrb5support.so.0 = /usr/lib/libkrb5support.so.0 (0xb73c4000)
   libkeyutils.so.1 = /lib/libkeyutils.so.1 (0xb73c1000)
   libresolv.so.2 = /lib/i686/cmov/libresolv.so.2 (0xb73ab000)
   libpthread.so.0 = /lib/i686/cmov/libpthread.so.0 (0xb7392000)
   /lib/ld-linux.so.2 (0xb776a000)
   libtasn1.so.3 = /usr/lib/libtasn1.so.3 (0xb7382000)
   libgpg-error.so.0 = /usr/lib/libgpg-error.so.0 (0xb737e000)
   libz.so.1 = /usr/lib/libz.so.1 (0xb7369000)
   libgcrypt.so.11 = /usr/lib/libgcrypt.so.11 (0xb72f4000)
 
 Для сравнения:
 $ ldd /usr/sbin/qmail-smtpd
   linux-gate.so.1 =  (0xb78c5000)
   libc.so.6 = /lib/i686/cmov/libc.so.6 (0xb7757000)
   /lib/ld-linux.so.2 (0xb78c6000)
 
 И далее:
 ve...@veter-laptop:/dev$ ls -lh `which mutt`|awk '{print $5}'
 723K
 $ ls -lh /usr/sbin/qmail-smtpd|awk '{print $5}'
 32K
 
 Посчитаем: 723K/32K=22. Факты вещь упрямая, mutt еще какой монстр.

//--

 Note: надо же ухитриться программу с десятками зависимостей причислить
 к unix way...

Напишите чтото типа: 
ldd /bin/ls
linux-gate.so.1 =  (0xb80e1000)
librt.so.1 = /lib/i686/cmov/librt.so.1 (0xb80c1000)
libselinux.so.1 = /lib/libselinux.so.1 (0xb80a7000)
libacl.so.1 = /lib/libacl.so.1 (0xb809f000)
libc.so.6 = /lib/i686/cmov/libc.so.6 (0xb7f58000)
libpthread.so.0 = /lib/i686/cmov/libpthread.so.0 (0xb7f3f000)
/lib/ld-linux.so.2 (0xb80e2000)
libdl.so.2 = /lib/i686/cmov/libdl.so.2 (0xb7f3b000)
libattr.so.1 = /lib/libattr.so.1 (0xb7f36000)

а потом пишем сюда (в рассылку) отчёт о том что 'ls' это НЕ ЮНИКС ВЭЙ
ибо у него есть зависимости.


  теперь о postgre: postgre я выбрал как UNIX way изза его модульности и
  расширяемости. И ничего плохого в модуле поддержки XML не вижу. Это
  кстати тоже UNIX way - человеко читамемые файлы (!!!) 
 
 Покажите того человека, для кого они читаемые. Более того, они и для
 машинной обработки неудобны. Unix way - это plain text. И замена 
 текстовых конфигов на xml приводит только к росту сложности программ
 (нужен дополнительный парсер) и увеличению числа ошибок в них.

То есть вот тут вы говорите о том что XML это не plain text ???


  и в полнотекстном
  поиске ничего плохого не вижу. я его долго ждал. Да и как это отразилось
  на  качестве - я не понимаю.
 
 В ядре СУБД? Так, что для включения этого самого поиска была 
 модифицирована треть всего кода системы (см. примечания к релизу)?
 Вас обманули, не этого вы ждали.

Честно говоря в коде pg не колупался. 

Тем не менее осмелюсь выразить некоторые сомнения насчёт того что для
включения поиска модифицирована треть всего кода системы. Думаю это
преувеличение.


  Да и о фичах... у меня щас две версии PG
  крутятся: 7.4 и 8.1 и ОЧЕНЬ хорошо что разработчики не спешат в каждой
  версии кардинально трогать ядро. 8.4 я под нагрузкой не щупал.
 
 Проблемы многолетней давности в планировщике запросов, который работает
 существенно хуже, чем в SQLite, позиционируемой как замена файловому
 хранилищу, регулярные секьюрити-баги, невозможность восстановить базы 

Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Alexey Pechnikov
Hello!

On Thursday 07 January 2010 22:02:48 Иван Лох wrote:
  Впрочем, какой у сендмэйла конфиг, такой и код и такая же архитектура.
 
 Вы просто SNOBOL не любите. А зря.

Это на основе которого Lua? Странно тогда, как это синтаксис Lua - простой,
в отличии от конфига сендмайла. Впрочем, при желании все можно довести
до абсурда...

Best regards, Alexey Pechnikov.
http://pechnikov.tel/


Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Alexey Pechnikov
Hello!

On Thursday 07 January 2010 22:48:54 Иван Лох wrote:
 On Thu, Jan 07, 2010 at 06:37:49PM +0300, Alexey Pechnikov wrote:
  
  Вы серьезно _утверждаете_, что mutt состоит из компонентов, 
  взаимодействующих через пайпы?
 
 Да. Он умеет это делать. 

Опенофис тоже можно заставить работать с сокетами, что, от этого
он станет набором true unix утилит? Странная у вас логика.

 
  $ ldd `which mutt`
 
libgssapi_krb5.so.2 = /usr/lib/libgssapi_krb5.so.2 (0xb76d5000)
libkrb5.so.3 = /usr/lib/libkrb5.so.3 (0xb762d000)
 
 
 Ну так скомпилируйте его без них. И все будет работать.

Первое - он и знать не должен обо всех этих либах. Второе - разные
части (работающие с сетью, диском и т.п.) должны исполняться в
процессах с разными правами для обеспечения безопасности. А что
мы имеем - багтрекер mutt с кучей багов, как результат.

Best regards, Alexey Pechnikov.
http://pechnikov.tel/


Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Oleg Tsymaenko
В Чтв, 07/01/2010 в 23:23 +0300, Иван Лох пишет:

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

извините за оффтоп но: +1 !
сейчас не использую но пользовался раньше несколько лет. mutt это пример
для подражания.

P.S. Уважаемый Иван я помню вас в этой рассылке никак не меньше пяти
лет(а может и восьми). И если мне не изменяет память вы всегда
пользовались mutt.


-- 
Oleg Tsymaenko ts...@lafox.net TSYM1-UANIC


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Alexey Pechnikov
Hello!

On Thursday 07 January 2010 23:23:08 Иван Лох wrote:
 Если я хочу шифровать канал внешней программой, то я
 могу использовать ее. А могу и системную библиотеку через mutt.
 
 Для интерактивной программы пайп далеко не всегда самый простой
 и эффективный путь решения задачи. Даже наоборот.

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

  Второе - разные
  части (работающие с сетью, диском и т.п.) должны исполняться в
  процессах с разными правами для обеспечения безопасности. 
 
 Охренеть. Это, что IMAP сессию он с особыми правами проводить должен?
 Или каталог для локального сохранения почты с особыми правами создавать.

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

  мы имеем - багтрекер mutt с кучей багов, как результат.
 
 Я пользуюсь этой программой с момента ее создания. Иногда в сложных/
 изощренных/экспериментальных конфигурациях. Это одна из трех или четырех
 безглючных программ, которые я когда-либо видел. Что можно делать на ее
 багтрекере?

Интересно, из каких соображений mutt вдруг стал безглючнее, чем, скажем, Tex?
Найденные баги, видимо, для вас глюками не являются...

Best regards, Alexey Pechnikov.
http://pechnikov.tel/


Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Aleksey Cheusov
 Hello!

 On Thursday 07 January 2010 12:47:43 Oleg Tsymaenko wrote:
  Ваш клиент: KMail/1.12.1 (Linux/2.6.32-trunk-686; KDE/4.3.4; i686;
  * KDE (темболее KDE4) это не UNIX-way (IMHO)- см на gnome (для начала)
  * KMail это не UNIX-way (IMHO)- минимализм это mute/pine :)

 А еще я сижу на стуле, а не на табуретке. Надеюсь, на этом основании
 вы не откажете мне в интересующих меня знаниях ;-)

 Касаемо десктопа - тут у меня уже давно нет иллюзий искать unix way.
 Выбирая же из кучки безобразий, выбирают меньшее, а это как раз KDE,
 а вовсе не gnome (первое как минимум кроссплатформенное).

http://mova.org/~cheusov/pub/screenshots/UNIXs.png :-P

-- 
Best regards, Aleksey Cheusov.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Alexey Pechnikov
Hello!

On Friday 08 January 2010 02:52:16 Aleksey Cheusov wrote:
 http://mova.org/~cheusov/pub/screenshots/UNIXs.png :-P

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

http://mobigroup.ru/files/desktop-screen.png

Note: запущенный на удаленном сервере screen позволяет
игнорировать как качество десктопного софта, так и 
интернет-соединения.

$ uptime
 07:47:44 up 6 days,  5:02,  8 users,  load average: 0.12, 0.26, 0.19


Best regards, Alexey Pechnikov.
http://pechnikov.tel/


Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Artem Chuprina
Alexey Pechnikov - debian-russian@lists.debian.org  @ Fri, 8 Jan 2010 07:49:11 
+0300:

 AP И так можно. Хотя мне вот лениво уже для подключения 
 AP флэшки или внешнего диска каждый раз ее ручками монтировать

Мне тоже.  Поэтому я умею настраивать autofs :-)

-- 
The Eclipse Platform is an open and extensible platform
for anything and yet nothing in particular.
 -- apt-cache show eclipse-platform


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Утилиты в стиле true unix way

2010-01-07 Пенетрантность Игорь Чумак

Alexey Pechnikov пишет:

Hello!

Вопрос из рубрики расширения кругозора.

Существуют ли пакеты утилит, реализованные в духе следующих:
 - утилит от DJB (daemontools, ucspi-tcp, qmail)
 - ПО от DRH (sqlite, fossil)
 - Tc/Tk
и некоторые другие.

В список не включаю djbdns, т.к. я лично с ним не работал (по
документации видно, что сделано все для простого и удобного 
использования, как и в вышеперечисленных утилитах DJB).


Best regards, Alexey Pechnikov.
http://pechnikov.tel/
  

А что primary: чтобы unix-way или чтобы ехать? ;)

--
Head office 


Igor Chumak
System Administrator

OJSC “UIC Generali Garant” 
15/2 Chervonoarmiyska str.,

01004, Kyiv, Ukraine
Phone: +38(044)206 8820 
E-Mail: i.chu...@generali.garant.ua 
www.generali.garant.ua



--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Утилиты в стиле true unix way

2010-01-06 Пенетрантность Alexey Pechnikov
Hello!

Вопрос из рубрики расширения кругозора.

Существуют ли пакеты утилит, реализованные в духе следующих:
 - утилит от DJB (daemontools, ucspi-tcp, qmail)
 - ПО от DRH (sqlite, fossil)
 - Tc/Tk
и некоторые другие.

В список не включаю djbdns, т.к. я лично с ним не работал (по
документации видно, что сделано все для простого и удобного 
использования, как и в вышеперечисленных утилитах DJB).

Best regards, Alexey Pechnikov.
http://pechnikov.tel/


Re: Утилиты в стиле true unix way

2010-01-06 Пенетрантность Konstantin Matyukhin
2010/1/7 Alexey Pechnikov pechni...@mobigroup.ru:
 Существуют ли пакеты утилит, реализованные в духе следующих:
  - утилит от DJB (daemontools, ucspi-tcp, qmail)
  - ПО от DRH (sqlite, fossil)
  - Tc/Tk
Вы бы критерии духа сформулировали поточнее что-ли.

-- 
С уважением,
Константин Матюхин


<    1   2