vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
Есть такой анекдот:

Диалог в бюрократическом учреждении:
- Имею ли я право?
- Конечно имеете!
- Так могу ли я?
- Нет, не можете!

Положение дел в области Free Software чем дальше, тем лучше описывается этим анекдотом.
Имею ли я право исправлять глюки и дописывать нужные мне фичи в Mozillу, OpenOffice, ядро Linux, Gimp etc - да сколько угодно. Лицензия позволяет.
Могу ли я? Увы, трудоемкость, необходимая для вникания в большой проект на несколько миллионов строк - соврешенно prohibitive. Даже при наличии квалификации. А протолкнуть свои изменения в upstream - еще сложнее.

Увы, свободу приспосабливать компьютер под наши потребности мы практически потеряли. Большая часть OpenSource продуктов используется так же, как и проприетарные - не как текст, который можно прочитать и адаптировать к своим нуждам, а как черный ящик.

Еще десять лет назад это было не так. Тогдашние OpenSource проекты были достаточно компактны, лучше документированы, и всё необходимое тайное знание содержалось в коде. Было дело в 99-м году я при каждом новом релизе ядра ветки 2.2 внимательно читал патчи чтобы решить - ставить это срочно на боевой сервер или погодить пока.

Сейчас я пожалуй, не пойму в этих патчах почти ничего. большая часть тайного знания необходимого для написания компонент ядра, из кода без больших усилий не извлекается. А отдельных источников этого знания почти и нет. Ну по ядру еще есть. А попробуйте найти вменяемое описание работы с Bluetooth. Содержащее внятные схемы стэка протоколов, описание общей идеологии и того как это раскладывается на API. Не существует такового в природе.

В 80-е годы, когда Столлман начинал проект GNU, взятая за основу модель - утилиты unix общающиеся между собой ыерез пайпы позволяла легко изолировать кусок кода, четко определить что у него на входе, а что на выходе и таким образом легко разобраться в его работе.

Сейчас reusable компоненты как правило делаются в виде динамических библиотек со сложным API. Где-то это реально необходимо, где-то это явный overkill. Особенно если учесть что с первого раза спроектировать хороший API для рещения любой задачи - весьма нетривиально. Поэтому API у многих opensource библиотек плывут. Совершенствуются. Но это приводит к головной боли при поддержке используещих их программ.

Более того, за последние 10 лет в Open Source пришло множество программистов воспитанных на Visual Basic и прочих изделиях Microsoft, где от программиста не предполагается четкого понимания задачи в целом - это понимание - коммерческая тайна Microsoft.
Вот пример в MSDN, делайте по образу и подобию. Воспринимайте эти слова как магическое заклинание, как ритуал.

Но там хотя бы сидят несколько сот человек, которые это дело документируют.

Заметим что микроядро в Hurd было на самом деле нужно не столько по тем техническим соображениям, которые приводил Таннебаум в споре с Линусом, сколько именно из соображений well-defined interfaces, которые позволили бы множеству независимых разработчиков работать над разными подсистемами ядра. Но ни Таннебаум, ни Столлман этого тогда сфонрулировать не могли. Потому что это на самом деле вопрос социальной психологии а не технологии.

Некторые решения, которые уже фактически приняты сообществом как стандарт, иначе как миной замедленного действия под идею свободного софта я назвать не могу. Ну про CUPS уже Раймонд всё написал. Ага, тот самый Раймонд, который выдумал термин Open Source как менее "страшный" чем "Свобода", чем немало способствовал возникновению данного положения. Еще большей миной замедленного действия я считаю D-Bus. Не то, чтобы плоха была самой идеи общесессионной или общесистемной шины сообщения. Но во-первых, реализация - нету стандартного набора утилит для работы с этим из shell. Не отладочних прибабахов вроде dbus-send и dbus-monitor, а полноценных инструментов для работы класса NetCat. Во вторых, документированность. Уже сколько лет в комплекте bluez, который иначе чем через dbus нынче с пинкодами не работает, идет passkey-agent, написанный настолько криво, что при его завершении libdbus ругается на stderr. И никто не соберется исправить.

К сожалению, в 96-97 году, когда начинались проекты KDE и GNOME не нашлось гения, который бы предложил архитектуру GUI-среды, способную развиватья в условиях Free Software, и при этом оставаться простой и понятной. Впрочем, это как раз был переломнымй момент, когда менялись условия Free Software - вместо немногочисленных, но весьма квалифицированных хакеров 80-х, кончавших одни и те же университеты, и понимавших друг друга с полуслова, повалила толпа любителей, осваивавших программирование на персональных компьютерах самостоятельно.

Как теперь из получившейся ямы вылезать я не знаю. Выкингуть существующие миллионы строк кода просто так не получится. Хотя место большей части этого кода - именно на помойке.
Page 1 of 2 << [1] [2] >>

Date: 2008-06-19 08:10 am (UTC)
From: [identity profile] alexkuklin.livejournal.com
Совершенно согласен с общей оценкой ситуации.
10 лет назад я, не имея и 10% от нынешнего опыта, мог реально залезть внутрь "ящика" и что-то исправить. Сейчас даже для меня эта задача крайне сложна, при том, что я, наверное, не худший специалист.

Зачастую в современных разработках забывают про принцип KISS и про необходимость работать с инструментами из командной строки (например, я так и не нашел, как можно получить PDF из ODT при помощи OpenOffice без запущенных иксов).

Тем не менее, попутно с усложнением, идет процесс систематизации и документирования. Медленнее, чем хотелось бы, но идет. Так что все плохо, но (пока) не фатально.

(no subject)

From: [identity profile] poor-sysadm.livejournal.com - Date: 2008-06-19 10:37 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 11:07 am (UTC) - Expand

(no subject)

From: [identity profile] shaplov.livejournal.com - Date: 2008-06-19 12:14 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 12:29 pm (UTC) - Expand

(no subject)

From: [identity profile] shaplov.livejournal.com - Date: 2008-06-19 01:06 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 01:32 pm (UTC) - Expand

(no subject)

From: [identity profile] shaplov.livejournal.com - Date: 2008-06-19 01:56 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 02:12 pm (UTC) - Expand

(no subject)

From: [identity profile] shaplov.livejournal.com - Date: 2008-06-19 02:19 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 02:33 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 02:37 pm (UTC) - Expand

...

From: [identity profile] shaplov.livejournal.com - Date: 2008-06-19 03:21 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 04:02 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 06:10 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 06:25 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 06:42 pm (UTC) - Expand

...

From: [identity profile] crazy-daemon.livejournal.com - Date: 2008-06-19 11:03 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 06:29 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 06:46 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 07:25 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 08:11 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 08:54 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 09:07 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-10 07:12 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-10 07:51 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-10 09:36 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-10 01:03 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-10 01:28 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-10 04:26 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-11 06:41 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-11 10:41 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-11 12:56 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-11 09:48 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-10 09:49 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-10 12:11 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-10 12:51 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-10 01:56 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-10 04:22 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-11 06:54 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-11 10:20 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-11 01:28 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-12 03:52 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-12 11:25 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-16 03:06 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-17 06:50 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-17 08:13 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-17 09:06 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-17 11:10 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-17 11:45 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-17 11:54 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-17 12:11 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-18 06:25 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-21 12:51 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-21 05:39 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-12 03:53 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-12 12:09 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-16 03:24 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-12 03:53 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-07-12 02:35 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-07-16 03:53 pm (UTC) - Expand

...

From: [personal profile] kuzmax - Date: 2008-06-20 08:16 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 12:14 pm (UTC) - Expand

...

From: [identity profile] zabivator.livejournal.com - Date: 2008-06-21 10:30 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-23 11:12 am (UTC) - Expand

(no subject)

From: [identity profile] --ronin--.livejournal.com - Date: 2009-10-02 10:26 am (UTC) - Expand

(no subject)

From: [identity profile] minaev.blogspot.com - Date: 2008-06-19 01:30 pm (UTC) - Expand

(no subject)

From: [identity profile] alexott.livejournal.com - Date: 2008-06-19 02:28 pm (UTC) - Expand

(no subject)

From: [identity profile] alexott.livejournal.com - Date: 2008-06-19 02:27 pm (UTC) - Expand

(no subject)

From: [identity profile] os80.livejournal.com - Date: 2008-06-19 07:24 pm (UTC) - Expand

(no subject)

From: [identity profile] shaplov.livejournal.com - Date: 2008-06-19 07:43 pm (UTC) - Expand

(no subject)

From: [identity profile] nepilsonis.livejournal.com - Date: 2008-06-20 11:06 pm (UTC) - Expand

(no subject)

From: [identity profile] minaev.blogspot.com - Date: 2008-06-20 08:29 am (UTC) - Expand

(no subject)

From: [identity profile] potan.livejournal.com - Date: 2008-06-19 09:21 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-19 09:36 am (UTC) - Expand

(no subject)

From: [personal profile] allter - Date: 2008-07-04 11:39 am (UTC) - Expand

(no subject)

From: [identity profile] belonesox.livejournal.com - Date: 2008-06-20 07:34 am (UTC) - Expand

(no subject)

From: [personal profile] abbra - Date: 2008-06-19 09:39 am (UTC) - Expand

(no subject)

From: [identity profile] alexkuklin.livejournal.com - Date: 2008-06-19 09:50 am (UTC) - Expand

(no subject)

From: [personal profile] abbra - Date: 2008-06-19 10:06 am (UTC) - Expand

Date: 2008-06-19 08:13 am (UTC)
From: (Anonymous)
> Заметим что микроядро в Hurd было на самом деле нужно не столько по тем техническим соображениям, которые приводил Таннебаум в споре с Линусом, сколько именно из соображений well-defined interfaces, которые позволили бы множеству независимых разработчиков работать над разными подсистемами ядра. Но ни Таннебаум, ни Столлман этого тогда сфонрулировать не могли. Потому что это на самом деле вопрос социальной психологии а не технологии.

никто не мешает well-defined interfaces делать в нынешнем ядре.
для большинства компонент они вполне даже defined. и местами даже очень well.
проблема только в том, что "просто" очень редко соседствует с "быстро".
поэтому интерфейсы сложные и постоянно меняются.

(no subject)

From: (Anonymous) - Date: 2008-06-19 09:36 am (UTC) - Expand

(no subject)

From: [personal profile] vladimir000 - Date: 2008-06-19 08:40 am (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2008-06-19 09:34 am (UTC) - Expand

(no subject)

From: [personal profile] vladimir000 - Date: 2008-06-19 09:44 am (UTC) - Expand

(no subject)

From: [personal profile] vladimir000 - Date: 2008-06-19 09:49 am (UTC) - Expand

(no subject)

From: [personal profile] vladimir000 - Date: 2008-06-19 01:07 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 05:59 pm (UTC) - Expand

(no subject)

From: [identity profile] slobin.livejournal.com - Date: 2008-06-19 01:37 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 06:01 pm (UTC) - Expand

(no subject)

From: [identity profile] slobin.livejournal.com - Date: 2008-06-19 06:12 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 06:22 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 08:40 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 07:03 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 07:20 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 08:17 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 08:25 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 11:51 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 11:12 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 08:41 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 07:07 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 07:58 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 08:19 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-20 11:45 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 01:04 pm (UTC) - Expand

...

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-20 01:08 pm (UTC) - Expand

(no subject)

From: [identity profile] slobin.livejournal.com - Date: 2008-06-19 09:31 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 11:06 pm (UTC) - Expand

(no subject)

From: [identity profile] slobin.livejournal.com - Date: 2008-06-19 11:13 pm (UTC) - Expand

(no subject)

From: [identity profile] slobin.livejournal.com - Date: 2008-06-19 11:15 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 07:09 am (UTC) - Expand

(no subject)

From: [personal profile] ramendik - Date: 2008-06-20 01:11 pm (UTC) - Expand

(no subject)

From: [personal profile] ramendik - Date: 2008-06-21 01:11 pm (UTC) - Expand

...

From: [identity profile] rdia.livejournal.com - Date: 2013-01-28 10:55 am (UTC) - Expand

(no subject)

From: [personal profile] sergey_ver - Date: 2019-08-07 08:43 am (UTC) - Expand

А выкинуть придётся.

Date: 2008-06-19 08:14 am (UTC)
From: [identity profile] volodymir-k.livejournal.com
Нужны интерфейсы? - делайте версии с идентификаторами, и сборки будут точными и шелковистыми. Да как бы уже.

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

Re: А выкинуть придётся.

Date: 2008-06-19 08:27 am (UTC)
From: [identity profile] ro-che.info (from livejournal.com)
Ну давайте придумаем систему оценок документации, пусть народ за баллы качества борется.
Уже есть. ohloh.net

Date: 2008-06-19 08:19 am (UTC)
From: [identity profile] shadow-aka-hf.livejournal.com
Если говорить о ядре, то идеи Singularity много интереснее чем Hurd. Не знаю, правда, на сколько такой OSS-проект будет конфликтовать с патентами.

Date: 2008-06-19 08:55 pm (UTC)

Date: 2008-06-19 08:28 am (UTC)
From: [identity profile] dennis_chikin.livejournal.com
Крепнет подозрение, что оверхед от всех этих API давно превзошел все мыслимые пределы.

Date: 2008-06-19 08:55 am (UTC)
From: [identity profile] tarkhil.livejournal.com
Что я могу сказать? Так оно и есть. Для того, чтобы собрать конвертер RAW, нужно сначала собрать какую-то библиотечку для работы с тайским языком.

Как оторвать гному корявые попытки автомонтировать флешку - я так и не понял. Причем, читать он ее не читает, но при попытке отцепить - валится в панику...

Date: 2008-06-19 09:44 am (UTC)
From: [identity profile] besm6.livejournal.com
Ну, гном, похоже, давно уже демонстрирует разницу между программой и программным продуктом. Он работает только так, как удобно его разработчикам, и только на их компьютерах.

Date: 2008-06-19 09:13 am (UTC)
From: [identity profile] potan.livejournal.com
В проекте Роса Руслана Богатырева вроде как эту проблему собираются преодолеть. Не знаю, есть ли у них шансы - "слишком далеки они от народа".

Date: 2008-06-19 09:14 am (UTC)
From: [identity profile] amarao-san.livejournal.com
Собственно, с позиции этой толпы любителей, несколько "умных хакеров" были странными и неудобными.

А концепция опен сорса подразумевает, что таки все, а не элита, могут писать, дописывать. А уж принцип "релизь чаще" и вовсе способствует к лёгкому (?) хаосу. Что просили, то и получили.

Когда человек получает право писать он получает в том числе и право писать как попало.

Date: 2008-06-19 09:27 am (UTC)
From: [identity profile] as-pushkin-by.livejournal.com
Идёт маргинализация отрасли, не только Free Software.

(no subject)

From: [identity profile] as-pushkin-by.livejournal.com - Date: 2008-06-19 01:29 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-19 05:52 pm (UTC) - Expand

(no subject)

From: [identity profile] as-pushkin-by.livejournal.com - Date: 2008-06-19 05:58 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-19 06:19 pm (UTC) - Expand

(no subject)

From: [identity profile] as-pushkin-by.livejournal.com - Date: 2008-06-19 06:42 pm (UTC) - Expand

Date: 2008-06-19 09:28 am (UTC)
From: [identity profile] booosh.livejournal.com
Виктор, на мой взгляд, вы мешаете в кучу последствия от двух явлений:

1. Отсутствия вменяемой школы программистов.

2. Существенного увеличения codebase.

(no subject)

From: [identity profile] booosh.livejournal.com - Date: 2008-06-19 09:52 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 09:45 am (UTC) - Expand

(no subject)

From: [identity profile] booosh.livejournal.com - Date: 2008-06-19 09:56 am (UTC) - Expand

а в позитиве чего?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 05:27 pm (UTC) - Expand

Re: а в позитиве чего?

From: [identity profile] booosh.livejournal.com - Date: 2008-06-19 06:00 pm (UTC) - Expand

Re: а в позитиве чего?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 06:15 pm (UTC) - Expand

Re: а в позитиве чего?

From: [identity profile] aceler.livejournal.com - Date: 2008-06-19 09:39 pm (UTC) - Expand

Re: а в позитиве чего?

From: [identity profile] booosh.livejournal.com - Date: 2008-06-20 07:18 am (UTC) - Expand

Re: а в позитиве чего?

From: [identity profile] aceler.livejournal.com - Date: 2008-06-20 08:42 am (UTC) - Expand

(no subject)

From: [identity profile] brusilov-14.livejournal.com - Date: 2009-10-08 11:03 am (UTC) - Expand

Date: 2008-06-19 09:31 am (UTC)
From: [identity profile] iakovz.livejournal.com
Есть хорошие примеры ведь - OpenBSD (полностью бесплатный пример)
и Apple Mac OS X и все остальное из этой лавки

Linux перестал использовать пару лет назад и сейчас со страхом смотрю на это "поделие" без царя в голове

(no subject)

From: [identity profile] ylevdik.livejournal.com - Date: 2008-06-19 10:11 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 10:46 am (UTC) - Expand

(no subject)

From: [identity profile] ylevdik.livejournal.com - Date: 2008-06-19 10:47 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 11:05 am (UTC) - Expand

(no subject)

From: [identity profile] ylevdik.livejournal.com - Date: 2008-06-19 11:07 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 11:22 am (UTC) - Expand

(no subject)

From: [identity profile] volodymir-k.livejournal.com - Date: 2008-06-19 09:07 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 11:09 pm (UTC) - Expand

(no subject)

From: [identity profile] strannick-ru.livejournal.com - Date: 2008-06-23 05:40 am (UTC) - Expand

(no subject)

From: [identity profile] edo-rus.livejournal.com - Date: 2008-06-19 10:28 am (UTC) - Expand

(no subject)

From: [identity profile] iakovz.livejournal.com - Date: 2008-06-19 10:55 am (UTC) - Expand

(no subject)

From: [identity profile] peter_lemenkov [lj.rossia.org] - Date: 2008-06-19 05:46 pm (UTC) - Expand

(no subject)

From: [identity profile] iakovz.livejournal.com - Date: 2008-06-20 09:14 am (UTC) - Expand

(no subject)

From: [identity profile] kisa-i-osya.livejournal.com - Date: 2008-06-20 01:13 pm (UTC) - Expand

(no subject)

From: [identity profile] slobin.livejournal.com - Date: 2008-06-19 01:38 pm (UTC) - Expand

(no subject)

From: [identity profile] pascendi.livejournal.com - Date: 2009-10-07 02:28 pm (UTC) - Expand

(no subject)

From: [identity profile] zabivator.livejournal.com - Date: 2008-06-19 09:51 am (UTC) - Expand

(no subject)

From: [identity profile] iakovz.livejournal.com - Date: 2008-06-19 10:58 am (UTC) - Expand

(no subject)

From: [identity profile] zabivator.livejournal.com - Date: 2008-06-19 11:02 am (UTC) - Expand

плюстыща

Date: 2008-06-19 09:42 am (UTC)
From: [identity profile] neo-der-tall.livejournal.com
Мечта: взять весь СтабФонд и потратить исключительно на рефакторинг Open Source.

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

Re: плюстыща

Date: 2008-06-19 09:50 am (UTC)
From: [identity profile] potan.livejournal.com
За время рефакторинга основная ветка станет совсем другой.
Хотя военные так и поступают - берут конкретную версию ядра Linux, анализируют и потом сертифицируют.

неочевидно.

From: [identity profile] neo-der-tall.livejournal.com - Date: 2008-06-19 03:09 pm (UTC) - Expand

Re: неочевидно.

From: [personal profile] allter - Date: 2008-07-04 11:51 am (UTC) - Expand

Date: 2008-06-19 09:43 am (UTC)
From: [identity profile] lupin-de-mid.livejournal.com
"А протолкнуть свои изменения в upstream - еще сложнее."
Ну это го вроде нам нитко а) не обещал б)и это есть хорошо, и хорошо весьма, а то хаотические измененияеще больше бы усугубили ситуацию нет?

Date: 2008-06-19 09:48 am (UTC)
From: [identity profile] behrk.livejournal.com
Ты говоришь о документации, но ни слова не говоришь о тестах. Меж тем, изобилие тестов и их регулярная прогонка -- это значительная часть ответа на вопрос, как бороться с растущей энтропией и уползающей семантикой. На мой взгляд.

Опыт, кстати, показывает, что заставить программистов писать тесты несколько легче, чем заставить писать документацию (потому что тесты всё-таки пишутся на языке программирования, а не на английском/русском/...)

Date: 2008-06-19 10:00 am (UTC)
From: [identity profile] besm6.livejournal.com
У тестов совершенно другое преимущество перед документацией. Прогон автомагически отслеживает соответствие тестов коду. Для документации такого средства не придумано.

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 05:22 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-19 05:55 pm (UTC) - Expand

Date: 2008-06-19 09:53 am (UTC)
From: [identity profile] leschinsky oleg (from livejournal.com)
Проблема есть, но она не смертельна. Если есть какой-то большой (возможно, очень большой) фрагмент кода, делающего то, что нужно (кроме всего прочего), отрываешь примерно нужный кусок и добиваешься нужной тебе функциональности. На выходе получается что-то новое, дающее нужный тебе результат, а также документация о том, что отрывалось, как отрывалось, как дорабатывалось, и что с этим делать дальше.

Тогда жизненный цикл любого проекта выглядит как "рождение(отпочковывание)-рост-разбухание-разрывание(почкование)".

Как ни старайся, в любом случае в OSS будет 90% отходов и только 10% полезного.

Date: 2008-06-19 10:03 am (UTC)
From: [identity profile] blacklion.livejournal.com
Даже при наличии квалификации. А протолкнуть свои изменения в upstream - еще сложнее.
Я протолкнул нужные МНЕ изменения в gecko/Mozilla. Заняло это год, из которых пол-года Я не правил патчи, потому что было не до того. Т.е. если бы я действовал активнее, думаю, управился бы вообще месяца за 4 :)
Но это — от грязного proof'o'concept до вылизанной реализации и юнит-тестов, итераций 10 патчей в багзилле.

Date: 2008-06-19 10:05 am (UTC)
From: [identity profile] blacklion.livejournal.com
Но в целом, да, согласен.

Date: 2008-06-19 10:17 am (UTC)
From: [identity profile] beldmit.livejournal.com
Ну да. Если помнишь, мы с тобой на это нарывались еще в Communiware - когда патч наш брать отказались, а потом функционал воплотили по-своему, и это еще цветочки.

А так как 90% чего угодно - полное дерьмо, то я с каждым ушедшим от нас программистом понимаю, почему OpenSSL team так стремится не связываться со сторонними патчами.

Date: 2008-06-19 10:42 am (UTC)
From: [identity profile] tzirechnoy.livejournal.com
Ты Mozilla к этому не примешывай — расшырений в Mozilla пишэтся вагон. Gecko я бы ещё понял (хотя там вроде тожэ не такой большой порог вхождения), а вот Mozilla — очень расшырябельный.

(no subject)

From: [identity profile] tzirechnoy.livejournal.com - Date: 2008-06-19 11:17 am (UTC) - Expand

(no subject)

From: [personal profile] allter - Date: 2008-07-04 12:29 pm (UTC) - Expand

Date: 2008-06-19 10:47 am (UTC)
From: [identity profile] tzirechnoy.livejournal.com
Ядро тожэ к этому примешывать не стоит. Менять ядро — достаточно стандартная задача, ничего сложного в большынстве модулей-драйверов или расшырений iptables нет.

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

Кто там остались? OpenOffice с GIMPом? Первый с рождения был тормозным ублюдком, мессивом из объектов для поддержки кривого стандарта. Второй — недееспособной пионерской поделкой, сделанной «на слабо». Ну, такими и остались, что тут такого спецыфичного для OpenSource?

(no subject)

From: [identity profile] tzirechnoy.livejournal.com - Date: 2008-06-19 11:21 am (UTC) - Expand

и не стыдно?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 05:16 pm (UTC) - Expand

Re: и не стыдно?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 05:27 pm (UTC) - Expand

Re: и не стыдно?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 05:50 pm (UTC) - Expand

Re: и не стыдно?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 06:14 pm (UTC) - Expand

Re: и не стыдно?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 06:34 pm (UTC) - Expand

Re: и не стыдно?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 08:39 pm (UTC) - Expand

Re: и не стыдно?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 07:24 am (UTC) - Expand

...

From: [identity profile] tzirechnoy.livejournal.com - Date: 2008-06-20 08:04 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 08:51 am (UTC) - Expand

Re: и не стыдно?

From: [identity profile] tzirechnoy.livejournal.com - Date: 2008-06-20 08:02 am (UTC) - Expand

Re: и не стыдно?

From: [identity profile] yushi.livejournal.com - Date: 2008-06-20 04:52 pm (UTC) - Expand

Re: и не стыдно?

From: [identity profile] tzirechnoy.livejournal.com - Date: 2008-06-20 07:59 am (UTC) - Expand

(no subject)

From: [identity profile] gdy.livejournal.com - Date: 2008-07-20 07:41 am (UTC) - Expand

(no subject)

From: [identity profile] tzirechnoy.livejournal.com - Date: 2008-07-20 07:50 am (UTC) - Expand

И что делать?

Date: 2008-06-19 11:20 am (UTC)
From: [identity profile] nicka-startcev.livejournal.com
Можно долго размышлять о том, почему всё плохо, можно много думать о том, как оно могло бы быть, но мне кажется, что всё это бесполезно и надо
1) сесть, ПОДУМАТЬ, написать с нуля общую-глобальную спецификацию того, как оно должно быть, почему и зачем.

2)На базе первого пункта расписать спецификации подзадач так, чтоб, условно говоря, один программист мог сесть и чуть ли не за один вечер написать маленький, но гордый модуль, который мог бы в этой системе работать.

Тогда народ и потянется..

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

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

Re: И что делать?

Date: 2008-06-19 12:35 pm (UTC)
ext_613079: Default userpic (Default)
From: [identity profile] shaplov.livejournal.com
1) сесть, ПОДУМАТЬ, написать с нуля общую-глобальную спецификацию того, как оно должно быть, почему и зачем.
Ты когда-нибудь пробовал такое писать?

Re: И что делать?

From: [identity profile] nicka-startcev.livejournal.com - Date: 2008-06-19 01:19 pm (UTC) - Expand

Re: И что делать?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 05:08 pm (UTC) - Expand

Re: И что делать?

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-19 05:57 pm (UTC) - Expand

Re: И что делать?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-19 06:36 pm (UTC) - Expand

Re: И что делать?

From: [identity profile] nicka-startcev.livejournal.com - Date: 2008-06-19 06:57 pm (UTC) - Expand

Re: И что делать?

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-19 06:58 pm (UTC) - Expand

Re: И что делать?

From: [identity profile] nicka-startcev.livejournal.com - Date: 2008-06-19 07:18 pm (UTC) - Expand

Date: 2008-06-19 11:35 am (UTC)
From: [identity profile] http://users.livejournal.com/_navi_/
Уже сколько лет в комплекте bluez, который иначе чем через dbus нынче с пинкодами не работает, идет passkey-agent, написанный настолько криво, что при его завершении libdbus ругается на stderr. И никто не соберется исправить.
Ох! А я думал это я один такой глупый и мучаюсь, а остальные нашли какие-то замечательные решения. Я было даже порывался написать нормальный агент, да времени так и не хватило.

(no subject)

From: [identity profile] http://users.livejournal.com/_navi_/ - Date: 2008-06-19 12:04 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_navi_/ - Date: 2008-06-19 12:45 pm (UTC) - Expand

(no subject)

From: [identity profile] wrar.livejournal.com - Date: 2008-06-19 03:26 pm (UTC) - Expand

(no subject)

From: [identity profile] wrar.livejournal.com - Date: 2008-06-19 03:27 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_navi_/ - Date: 2008-06-19 03:30 pm (UTC) - Expand

(no subject)

From: [identity profile] wrar.livejournal.com - Date: 2008-06-19 03:49 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 05:28 pm (UTC) - Expand

Date: 2008-06-19 12:09 pm (UTC)
From: [identity profile] ex-rivelt275.livejournal.com
>Имею ли я право исправлять глюки и дописывать нужные мне фичи в Mozillу...
Как ни странно, средний пользователь иногда не только имеет такое право, но и возможность его реализовать. В Мозилла Файрфокс есть механизм расширений, которые пишутся на порядок легче, чем изменения ядра. (:
Достаточно знать только диалект xml - XUL (http://ru.wikipedia.org/wiki/Xul) и Javascript. Ну и способ упаковки и установки. Компилировать не требуется.

(no subject)

From: [identity profile] leschinsky oleg - Date: 2008-06-19 02:11 pm (UTC) - Expand

Re: Оказывается так просто! ;)

From: [personal profile] ramendik - Date: 2008-06-20 01:25 pm (UTC) - Expand

...

From: [personal profile] ramendik - Date: 2008-06-20 01:53 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 03:30 pm (UTC) - Expand

...

From: [personal profile] ramendik - Date: 2008-06-20 03:40 pm (UTC) - Expand

...

From: [identity profile] http://users.livejournal.com/_navi_/ - Date: 2008-06-19 03:37 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 03:58 pm (UTC) - Expand

...

From: [identity profile] ex-rivelt275.livejournal.com - Date: 2008-06-19 04:15 pm (UTC) - Expand

...

From: [identity profile] zabivator.livejournal.com - Date: 2008-06-19 06:17 pm (UTC) - Expand

(no subject)

From: [identity profile] ex-rivelt275.livejournal.com - Date: 2008-06-19 02:59 pm (UTC) - Expand

(no subject)

From: [identity profile] ex-rivelt275.livejournal.com - Date: 2008-06-19 03:24 pm (UTC) - Expand

(no subject)

From: [identity profile] ex-rivelt275.livejournal.com - Date: 2008-06-19 03:41 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_arty/ - Date: 2008-06-19 05:16 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_arty/ - Date: 2008-06-19 09:13 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_arty/ - Date: 2008-06-19 09:26 pm (UTC) - Expand

(no subject)

From: [identity profile] ionial.livejournal.com - Date: 2008-06-19 10:56 pm (UTC) - Expand

Date: 2008-06-19 03:25 pm (UTC)
From: [identity profile] wrar.livejournal.com
> Уже сколько лет в комплекте bluez, который иначе чем через dbus нынче с пинкодами не работает, идет passkey-agent, написанный настолько криво

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

(no subject)

From: [identity profile] wrar.livejournal.com - Date: 2008-06-19 03:50 pm (UTC) - Expand

(no subject)

From: [identity profile] beldmit.livejournal.com - Date: 2008-06-19 08:25 pm (UTC) - Expand

(no subject)

From: [identity profile] cmike.livejournal.com - Date: 2008-06-20 03:16 pm (UTC) - Expand

(no subject)

From: [identity profile] beldmit.livejournal.com - Date: 2008-06-20 03:46 pm (UTC) - Expand

(no subject)

From: [identity profile] cmike.livejournal.com - Date: 2008-06-20 05:49 pm (UTC) - Expand

(no subject)

From: [identity profile] beldmit.livejournal.com - Date: 2008-06-20 05:51 pm (UTC) - Expand

(no subject)

From: [identity profile] cmike.livejournal.com - Date: 2008-06-20 06:04 pm (UTC) - Expand

Легким оффом... :)

Date: 2008-06-19 04:11 pm (UTC)
From: [identity profile] lliothar.livejournal.com
Это не анекдот, это, кажется, цитата из фильма :)

а задумывались вы?

Date: 2008-06-19 05:33 pm (UTC)
From: [identity profile] gineer.livejournal.com
что практически любая написанная в мире строчка кода... это практически миллионоразовое дублирование кода.
Вот там и ищите корень всех зол.

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

Re: а задумывались вы?

Date: 2008-06-19 06:03 pm (UTC)
From: [identity profile] metaclass.livejournal.com
По моему, это вторая часть описанной проблемы. Часто нереально проще написать свое, чем использовать существующее, потому что авторы существующих решений обобщили задачу до такой степени, что для использования их продуктов приходится указывать пару десятков несамоочевидных параметров, сводящих обобщенную задачу к данной частной.
Это как если бы кто-то написал один супералгоритм сортировки, в который передавались бы структуры, описывающие требования к этому алгоритму, типа "скорость O(N*log(N)), использование памяти O(N^2), возможность использовать кэш на диске), реализация для объектов, сортируемых по ключу типа int" и каждый раз при сортировке приходилось бы это все передавать.

Re: а задумывались вы?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 08:48 pm (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-19 11:03 pm (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 07:32 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 07:46 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 08:57 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 11:42 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 11:53 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 01:02 pm (UTC) - Expand

...

From: [identity profile] metaclass.livejournal.com - Date: 2008-06-20 01:12 pm (UTC) - Expand

...

From: [identity profile] max630.livejournal.com - Date: 2008-06-20 03:46 pm (UTC) - Expand

...

From: [identity profile] --ronin--.livejournal.com - Date: 2009-10-02 12:48 pm (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] winpooh.livejournal.com - Date: 2009-10-12 10:24 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 07:27 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 07:47 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 09:04 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 09:55 am (UTC) - Expand

Re: а задумывались вы?

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 10:11 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 11:35 am (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 11:54 am (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 01:01 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 01:14 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 01:41 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-20 02:22 pm (UTC) - Expand

...

From: [identity profile] besm6.livejournal.com - Date: 2008-06-20 03:01 pm (UTC) - Expand

...

From: [identity profile] gineer.livejournal.com - Date: 2008-06-24 09:06 am (UTC) - Expand
Page 1 of 2 << [1] [2] >>

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

July 2025

S M T W T F S
  12345
6789 1011 12
13141516 17 1819
20212223 242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 27th, 2025 10:49 am
Powered by Dreamwidth Studios